找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4418|回復(fù): 0
收起左側(cè)

“YYQ霹靂一號”升級啦!

[復(fù)制鏈接]
ID:262 發(fā)表于 2014-10-21 16:19 | 顯示全部樓層 |閱讀模式
本次升級后機(jī)器小車命名為“YYQ霹靂二號”
本次升級的內(nèi)容見最后升級完成時的說明,嘿嘿,這里先不提。
本次升級項(xiàng)目是開源的。程序代碼將在升級完成時隨著日志發(fā)布。如果大家對程序代碼有什么修改、優(yōu)化建議的話,也歡迎提出,小弟洗耳恭聽。
—————————————————————————————————— YYQ霹靂一號升級開始。
我計(jì)劃設(shè)計(jì)雙層。下層放電機(jī)驅(qū)動和紅外檢測模塊等。上層放主控芯片及其外圍電路等。
原來的主板基本廢棄,因?yàn)槟菚r是第一次搞這項(xiàng)目開發(fā),缺乏很多經(jīng)驗(yàn),焊接也很馬虎。電路板背面慘不忍睹。。!,F(xiàn)在使用新的電路板焊接。
自從焊接那個“自行車安全行駛監(jiān)控器”后,學(xué)會了一個新的焊接技術(shù),就是用錫來當(dāng)導(dǎo)線連起來,那樣會比較干凈利落。
本次升級還有功能上的增加!嘿嘿。廢話不多說,開始從結(jié)構(gòu)升級。
2012年7月27日12:17:08
用了兩塊萬用版,鉆孔后開始校準(zhǔn)我安裝的四個螺絲,使兩層電路板保持兩個方向水平。
為簡略起見,校平過程的照片此處略去。若要看請移步到相冊“YYQ的智能車”。以后總裝測試時還會再做一次的。 qsb1.jpeg
2012年7月28日1:59:04 此時我既想看倫敦奧運(yùn)會開幕式,又想把它繼續(xù)焊接完成。目前我已經(jīng)焊接完了基本電路。 MCU使用ATmage16L芯片,由于是我自己的第一個作品的升級,比以前用它所做的作品不同的是: ①系統(tǒng)時鐘源不再是使用片內(nèi)自帶的,我外部接上了11.0592MHz的無源石英晶振,對于串口的波特率,更為精準(zhǔn)點(diǎn),官方PDF資料說該晶振頻率對于9600Bps和38.4KBps這兩種我以后要用到的波特率來說,理論誤差為0%。 ②復(fù)位電路也焊上了。對于這款芯片來說,外圍復(fù)位電路簡單的其實(shí)就是一個開關(guān),一頭連著RESET引腳,一頭接地。只要按下開關(guān),RESET引腳被拉低,然后放開就完成外部復(fù)位操作了。 ③主電路板上,設(shè)了4個開關(guān),分管各個部分的電路。 ④電路板上多用黑色簽字筆注釋一些必要的部分,方便以后檢查和升級電路,也是因?yàn)槲液附舆@個電路板沒計(jì)劃好在電腦上畫過電路圖嘛。。也懶得畫了,參考技術(shù)文檔的接口定義,直接拿電子元件焊上去。如果是要印刷電路板的話,這是必要的。 ⑤熔絲位設(shè)置了使用了外部晶振,我燒寫程序不再像以前那樣插到開發(fā)板上一通電就可以燒了,因?yàn)殚_發(fā)板上對于晶振的接口不支持AVR單片機(jī)。所以我必須要在這里焊接上至少一個SPI接口,即使不是因?yàn)闊龑懗绦虻穆闊,以后也必有用處!但是,現(xiàn)在我進(jìn)入了“最省資源模式”,呵呵,因?yàn)槲野l(fā)現(xiàn)焊接完復(fù)位電路后,我僅剩4cm左右的焊錫絲。 拼著這一點(diǎn)點(diǎn)焊錫絲,嘿嘿,最起碼的我還能把十個SPI接口的針腳固定好了。 2012年7月28日17:39:03 AVR單片機(jī)的系統(tǒng)電路已經(jīng)焊接完成。 qsb2.jpeg qsb3.jpeg
201272911:16:47
藍(lán)牙模塊調(diào)試始終未成功,該模塊是HC-05 。賣家發(fā)的是默認(rèn)從機(jī)模式。官方PDF文檔說上電的同時KEY拉高,可進(jìn)入AT命令模式。并且該模式下串口通訊的波特率是38400 。我先在開發(fā)板上測試:用AVR單片機(jī)代替該模塊,波特率一樣,數(shù)據(jù)位8位,停止位1位,無校驗(yàn)無流控,這些屬性都和PDF文檔說的一樣。然后接上電腦串口后,電腦和這單片機(jī)的通訊完全沒有問題。
然后把單片機(jī)取出,把藍(lán)牙模塊RXD、TXD、GND、VCC接到開發(fā)板。一上電,藍(lán)牙模塊的LED燈閃的頻率大概2秒一次。然后我用電腦發(fā)“AT\r\n”
里面的\r\n是轉(zhuǎn)義字符,實(shí)際上分別是0x0D0x0A,換句話說發(fā)出去的數(shù)據(jù)用十六進(jìn)制表示就是“41 54 0D 0A”而且我之前也用AVR單片機(jī)檢查過,電腦發(fā)的數(shù)據(jù)能正確、完完整整地接收。
官方PDF文檔說,如果發(fā)了AT\r\n,該模塊AT模式下,會自動響應(yīng),返回一個“OK\r\n”。可是我的電腦端發(fā)出去后,過了好幾秒,還是沒有收到任何數(shù)據(jù)。模塊的燈的閃動頻率也沒有變化。然后我試了下RXD、TXD交叉相連,仍是不行。
我又試了下用AVR單片機(jī)和模塊通信。照樣我也這么發(fā)了,不說返回的是不是OK\r\n了,連一個數(shù)據(jù)都沒返回,串口接收完成中斷函數(shù)一直沒有被執(zhí)行。交叉了一下RXDTXD,仍是沒有返回?cái)?shù)據(jù)。
從機(jī)模式的話,KEY腳拉低,即進(jìn)入工作模式,此時藍(lán)牙上的LED燈也在快閃。一秒鐘兩次吧大概。官方PDF說此時可以被主機(jī)搜索到。我用我的手機(jī)【HUAWEI C8650+】的藍(lán)牙去搜索,一個信號也搜不到。
2012729日中午
固定好原來的電機(jī)驅(qū)動模塊和四個紅外檢測模塊。
qsb4.jpeg
20128523:39:39
重寫整個項(xiàng)目的程序代碼,不繼承第一代。
優(yōu)化避障算法
更改總開關(guān)的控制線路:一號控制MCU和紅外避障模塊;二號控制電機(jī)驅(qū)動模塊;三四號預(yù)留空位。
美化跳線
⑤更換電機(jī)電源接口,改為USB接口,但輸入的仍是9V直流電。主要是因?yàn)槲艺也坏竭@個電源的以前那條線了,大的圓孔沒法插。電源的9V輸出孔是小小的圓孔,不是大圓孔接口。
psb11.jpeg
2012年8月6日16:50:05
激動啊~~~~藍(lán)牙模塊調(diào)試成功了,原來還真是以前那個藍(lán)牙模塊的問題,F(xiàn)在換了一個,好了。
現(xiàn)在霹靂二號能和手機(jī)通訊了。我用我手機(jī)的藍(lán)牙串口調(diào)試軟件,成功收發(fā)數(shù)據(jù)。目前可以用手機(jī)控制小車的前進(jìn)、倒車、左拐、右拐、停車以及避障開關(guān)。
我準(zhǔn)備打算在手機(jī)上開發(fā)一個軟件,專門控制這輛小車的,總是用別人的串口調(diào)試軟件不太好。
耶~~~不過寫到這的時候鼻子酸酸的,不知為啥 psb12.jpeg 這是來自YYQ霹靂二號發(fā)來的信息。每當(dāng)MCU啟動的時候,就會發(fā)送出來。藍(lán)牙是從機(jī)模式。
psb13.jpeg 幕后亮相 呵呵
2012年8月7日16:25:09
耶~~基于Android系統(tǒng)的YYQ霹靂二號控制軟件開發(fā)完成。
psb14.jpeg
界面雖然有點(diǎn)丑陋,但功能卻是樣樣俱全~~~現(xiàn)在我手機(jī)也可以當(dāng)遙控器啦~~不用像第一代那樣隨身帶個紅外遙控器,而且要對準(zhǔn)才行,藍(lán)牙無線的話,全方位的喔~~
另外我還發(fā)現(xiàn)一個問題,僅僅靠這四個紅外傳感器來避障的話,有很多盲區(qū)。這個將在以后跑上Linux操作系統(tǒng)后,使用攝像頭來取代紅外傳感器吧。到時候功能會更強(qiáng)大~~~期待
2012年12月13日0:04:28 不會吧?!學(xué)校的科技作品展,居然說參加的作品不夠?還只是七八個而已?那我再帶一個作品去哈!帶上我的霹靂二號。不過霹靂二號目前沒有實(shí)用價(jià)值,可以說僅是一個高級玩具,所以這個不參加比賽,僅為增添現(xiàn)場的科技?xì)夥,而且科技含量我估?jì)相對于其他作品來說可是很高的喲!參賽的是旋轉(zhuǎn)LED。各位捧場吧!星期五,就是明天下午! 2012年12月14日18:06:44 展覽已成功結(jié)束。在今天中午,我把機(jī)器手成功安裝上去了。。。。昨晚我主要解決的就是手機(jī)的安卓應(yīng)用程序編寫,程序通過藍(lán)牙與車上的AVR單片機(jī)通訊,昨晚我弄到凌晨3點(diǎn),因?yàn)檫@種通訊涉及的條件參數(shù)很多,我不得不一個個控制調(diào)試程序,終于在凌晨3點(diǎn)左右成功通過手機(jī)一個舵機(jī)。隨后在中午一口氣做完5個舵機(jī)的控制。 這體現(xiàn)出我的一個調(diào)試經(jīng)驗(yàn),我與大家分享下: 先從簡單的代碼寫起,每寫到一個看得見現(xiàn)象的地方,就停下來運(yùn)行看看有沒有問題,然后繼續(xù)寫。 如果先前一口氣寫完了,然后總體一運(yùn)行,某個功能不正常。這時你需要把寫過的代碼不停地簡化,把那個功能分散開來,對每一部分進(jìn)行運(yùn)行測試,把其他部分的代碼注釋掉,就這樣一步步一點(diǎn)點(diǎn)的運(yùn)行測試,很快會發(fā)現(xiàn)問題。 這是我常用的調(diào)試程序的技巧。 另外,尤其是安卓的程序界面布局這塊,我覺得完全沒有必要花時間在這方面的,原先我是用RelativeLayout但是它布局有時候運(yùn)行程序會錯亂,不知道是手機(jī)系統(tǒng)問題還是別的問題,容易出現(xiàn)重疊的控件。于是我為了臨時快速解決,直接采用AbsoluteLayout。 --------------------------------------------- 隨著展覽的結(jié)束,此次升級也完成了。 本次升級增加了ARM開發(fā)板。增加了藍(lán)牙通訊模塊,手機(jī)程序部分實(shí)現(xiàn)通過藍(lán)牙控制機(jī)器手和車子行進(jìn)。 ARM開發(fā)板目前只能顯示圖片,沒法參與小車的控制。 5個自由度的機(jī)器手,AVR單片機(jī)共同工作。 psb4.jpeg psb3.jpeg psb2.jpeg psb1.jpeg 其實(shí)從使用單片機(jī)進(jìn)行程序開發(fā) ,并實(shí)現(xiàn)人機(jī)交互,用身邊常用的手機(jī)來控制它。圍觀展覽的人說這一點(diǎn),相比其他選手作品來說科技含量確實(shí)不少的。我也這么覺得,但是我覺得這并不能作為領(lǐng)先的標(biāo)準(zhǔn),最注重的是實(shí)用性。以現(xiàn)在這兩小車的狀況,我自己都不忍心說是一個高級的玩具。
所以,為了更高級,為更加實(shí)用,我會繼續(xù)在現(xiàn)有基礎(chǔ)上進(jìn)行第二次升級! AVR單片機(jī)里的程序源代碼: 115網(wǎng)盤提取碼:eilus9sf http://115.com/file/eilus9sf
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表