树莓派小车————循迹篇
生活随笔
收集整理的這篇文章主要介紹了
树莓派小车————循迹篇
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
所謂的循跡就是讓小車識(shí)別導(dǎo)引線,跟著導(dǎo)引線運(yùn)行,在導(dǎo)引線組成的賽道上運(yùn)行。循跡可以用紅外傳感器或者攝像頭完成。我選擇的是用紅外傳感器進(jìn)行黑線循跡。
- 該部分主要涉及到的硬件:兩個(gè)紅外循跡傳感器(型號見準(zhǔn)備篇)、樹莓派。
- 額外材料:準(zhǔn)備點(diǎn)黑色電工膠布,制作一個(gè)跑道。
- 兩個(gè)紅外傳感器循跡缺點(diǎn):無法完成對十字路線的正確識(shí)別。(如果你想讓它可以識(shí)別十字路線,需要三個(gè)傳感器,具體實(shí)現(xiàn)可以搜索)。下面我講解兩路循跡如何實(shí)現(xiàn)。
- 電路連接:
如果你用的循跡傳感器和準(zhǔn)備篇的中的一樣,它共有四個(gè)引腳,分別是VCC、GND、A0、D0。其中A0和D0分別代碼模擬信號和數(shù)字信號,這里我們選擇連接D0引腳,因?yàn)槲覀兘o的是數(shù)字信號,0或1也就是False和True。傳感器不需要特別的供電電源,和樹莓派連接即可。電路連接圖如下:
從上圖中可以看到,兩個(gè)傳感器的VCC分別接了樹莓派的2號和4號引腳,這兩個(gè)都是+5V引腳。兩個(gè)傳感器的GND都接了樹莓派的30號引腳(GND引腳),D0分別接了29和31號引腳(GPIO口)。當(dāng)然還是一樣,所有的引腳接線都不是固定的,你可以自己設(shè)計(jì)。 - 循跡原理:
紅外循跡傳感器有兩個(gè)指示燈,當(dāng)檢測到黑色時(shí),只有一個(gè)燈亮,此時(shí)為True。反之為False。所以我們可通過兩個(gè)傳感器的信號來處理小車如何轉(zhuǎn)向,進(jìn)而調(diào)整車身位置,保持跟著導(dǎo)引線行駛。循跡原理圖:
- 設(shè)計(jì)重點(diǎn):
在起初的設(shè)計(jì)中我有些“耿直”,看了資料后,直接開始設(shè)計(jì)賽道,兩個(gè)傳感器也是直接安在了小車前方,間距差不多和黑色電工膠布一樣寬。當(dāng)我一切都準(zhǔn)備好了,代碼跑起來后人傻了,一到彎道怎么就沖出賽道了,肯定小車太快,我將速度設(shè)計(jì)到最低,還是一樣。就這樣兩天都沒想明白該怎么解決。最后我就開始慢慢在賽道上試,我開始加寬彎道處的賽道,結(jié)果還是一樣。
最后我在不斷嘗試的過程中突然醒悟過來,小車在賽道直線部分沖的太快了,根本就不能讓它做太久的前進(jìn)動(dòng)作,直接讓它一開始就左轉(zhuǎn)或者右轉(zhuǎn)來調(diào)整自身,不就可以慢下來了,之后我便將兩個(gè)傳感器之間的距離調(diào)整到比黑色賽道略寬一點(diǎn),也就是保證兩個(gè)傳感器一個(gè)可以檢測到黑線,另一個(gè)檢測不到黑線。調(diào)整到合適的距離之后,小車便可以完成循跡功能了。(可能你光看是體會(huì)不到的,所以要?jiǎng)邮肿约簻y試,你就明白其中的“奧妙”了) - 代碼(程序中將之前基本運(yùn)動(dòng)的代碼省略了,你在運(yùn)行代碼時(shí)。需要將其補(bǔ)上,這里只展示循跡相關(guān)的代碼):
總結(jié)
以上是生活随笔為你收集整理的树莓派小车————循迹篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一文带你读懂 Android 手机为何总
- 下一篇: 遥控车Turbo与Boost技术详细解读