這次的diy項(xiàng)目,是避障循跡小車。此小車為四驅(qū)驅(qū)動(dòng) 車底盤網(wǎng)上買的現(xiàn)成的。使用stc89c52rc芯片、l298n電機(jī)驅(qū)動(dòng)模塊、四路紅外尋跡、超聲波避障。
小車主要邏輯是檢測(cè)到黑線 按黑線行走 沒(méi)有黑線 轉(zhuǎn)到避障模式。
一、底盤
小車的底盤,我是在網(wǎng)上買的現(xiàn)成的。建議想做的朋友,如果動(dòng)手能力強(qiáng)就自己做個(gè)底盤,然后買幾個(gè)電機(jī)和輪子。
二、焊接最小系統(tǒng)
這一塊基本了解一些,所以基本還可以。
三、測(cè)試電機(jī)驅(qū)動(dòng)模塊
電機(jī)驅(qū)動(dòng),我使用的網(wǎng)上現(xiàn)成的L298n模塊。使用了兩個(gè),一個(gè)模塊驅(qū)動(dòng)兩個(gè)電機(jī)??刂品绞绞且粋€(gè)模塊控制前兩個(gè)輪子,另外一個(gè)控制后兩個(gè)輪子。這塊的連線應(yīng)該還是比較容易的
網(wǎng)上搜索有一堆資料。這塊還是強(qiáng)調(diào)一下,要和單片機(jī)共地。 另外說(shuō)一嘴,電機(jī)的導(dǎo)線接的長(zhǎng)一點(diǎn)。我的驅(qū)動(dòng)因?yàn)榉旁诘讓拥牡妆P,所以弄的短了些。當(dāng)時(shí)我手頭沒(méi)有104電容,所以電機(jī)也沒(méi)焊接電容。但是還好,我沒(méi)遇到干擾的問(wèn)題。建議焊接上,具體什么作用,我就不大了解了,說(shuō)是濾波。
四、測(cè)試舵機(jī)
舵機(jī)這塊調(diào)試時(shí)間最長(zhǎng)。程序調(diào)了好久,電路也調(diào)整好幾次。我一開(kāi)始連接到p0上了,怎么弄都不好用。后來(lái)查了一下,p0端口需要焊接上拉電阻。正好在單位撿了一塊抽屜底下的小木板,就自己用壁紙刀切了一個(gè)舵機(jī)云臺(tái)。感覺(jué)還不錯(cuò)。哈哈
五、避障模式
電機(jī)驅(qū)動(dòng)、電機(jī)、舵機(jī)都拼到一塊。用12v的變壓器,測(cè)試都是正常的。當(dāng)時(shí)晚上鼓搗的,不知怎么鬼使神差的居然把芯片燒掉了。然后換個(gè)芯片,又燒掉了。后來(lái)發(fā)現(xiàn)應(yīng)該是有一個(gè)驅(qū)動(dòng)模塊穩(wěn)壓模塊壞了,輸出的電壓不是5v。直接變成高電壓了。最后的最后才發(fā)現(xiàn),最終的損失不止兩個(gè)芯片一個(gè)驅(qū)動(dòng)模塊,居然連超聲波也燒壞了一個(gè)。沒(méi)辦法沒(méi)芯片了,又得等好幾天了。最后就采用單片機(jī)和驅(qū)動(dòng)單獨(dú)供電。兩節(jié)電池供電機(jī),一節(jié)電池供單片機(jī)。基本穩(wěn)定下來(lái)了。程序就比較容易了。
六、循跡模式
我一開(kāi)始沒(méi)控制電機(jī)驅(qū)動(dòng)的通道使能。小車都是全速前進(jìn)的。在循跡這塊發(fā)現(xiàn)不行了,跑的太快了。小車都沖出跑道。唉 真心覺(jué)得不能偷懶 又都都拆開(kāi),重新接上杜邦線。這塊也發(fā)現(xiàn),因?yàn)槲覀€(gè)人不算有潔癖,但還是希望
小車整體看起來(lái)利索點(diǎn)。所以驅(qū)動(dòng)和紅外模塊都放在底層底盤了。這個(gè)其實(shí)不是特別方便。因?yàn)樵谡{(diào)試的時(shí)候 看不到紅外模塊的指示燈。大家可以注意點(diǎn)。
調(diào)整程序 通過(guò)占空比 控制輪子轉(zhuǎn)速。這塊程序也比較順利 程序基本是一次性通過(guò)。
電路圖就是參考網(wǎng)上焊接的。程序放上來(lái),入不了大神的法眼,請(qǐng)勿見(jiàn)笑!
制作過(guò)程中的一些截圖: