1. 模塊介紹與組裝
1.1 所需硬件
(1)燒制好的樹莓派4B
(2)小車車架(可在網(wǎng)上購買)。
(3)直流電機*4:用于驅(qū)動小車行駛。
(4)L298N電機驅(qū)動模塊:用于實現(xiàn)對電機的控制。
(5)超聲波測距模塊:用于實時測距,以實現(xiàn)自主避障。
(6)其余輔助器件:包括充電寶(樹莓派供電)、干電池組(電機供電)及杜邦線若干。
1.2 整體結(jié)構(gòu)
1.3 L298N電機驅(qū)動模塊
該模塊又叫L298N雙H橋直流電機驅(qū)動模塊,將模塊的四個輸出口(out1、out2、out3、out4)分別與直流電機正負(fù)極相連。供電口(12V、GND)分別與電池組正負(fù)極相連。四個輸入口(IN1、IN2、IN3、IN4)分別與樹莓派GPIO接口11、12、13、15相連。
L298N模塊通過四個輸入口電平信號的高低來實現(xiàn)對電機轉(zhuǎn)向的控制。其中IN1、IN2控制out1、out2(即左側(cè)電機),IN3、IN4控制out3、out4(即右側(cè)電機)。下面是對電機進(jìn)行控制的真值表:文章來源:http://www.zghlxwxcb.cn/news/detail-412713.html
IN1 | IN2 | 電機 |
---|---|---|
0 | 0 | 停止 |
0 | 1 | 反轉(zhuǎn) |
1 | 0 | 正轉(zhuǎn) |
1 | 1 | 停止 |
1.4 超聲波模塊
將超聲波模塊TRIG和ECHO分別連接到GPIO29和GPIO31上,TRIG負(fù)責(zé)發(fā)射超聲波,ECHO負(fù)責(zé)接收超聲波,VCC接樹莓派5V接口以實現(xiàn)對模塊的供電,GND接樹莓派GND接口。利用發(fā)射和接收的時間差來計算距離。文章來源地址http://www.zghlxwxcb.cn/news/detail-412713.html
2. 實現(xiàn)代碼
2.1 超聲波避障
#超聲波測距函數(shù)
def Distance_Ultrasound():
GPIO.output(TRIG,GPIO.LOW) #輸出口初始化置LOW(不發(fā)射)
time.sleep(0.000002)
GPIO.output(TRIG,GPIO.HIGH) #發(fā)射超聲波
time.sleep(0.00001)
GPIO.output(TRIG,GPIO.LOW) #停止發(fā)射超聲波
while GPIO.input(ECHO) ==
到了這里,關(guān)于【嵌入式開發(fā)】基于樹莓派實現(xiàn)超聲波避障小車(Python)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!