本篇內(nèi)容介紹了“python怎么制作紅外防墜落小車”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
站在用戶的角度思考問題,與客戶深入溝通,找到魯山網(wǎng)站設(shè)計(jì)與魯山網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)絡(luò)空間、企業(yè)郵箱。業(yè)務(wù)覆蓋魯山地區(qū)。
1.實(shí)驗(yàn)?zāi)康?/strong>
研究智能小車結(jié)合紅外探頭尋跡前進(jìn)。
2.實(shí)驗(yàn)材料
TPYBoard開發(fā)板1塊(能跑python語言的開發(fā)板,小車
的大腦)
四路紅外感應(yīng)探頭(小車的眼睛)
數(shù)據(jù)線一根。
充電寶一個(gè)(給整個(gè)系統(tǒng)供電)
智能小車底盤(包括驅(qū)動(dòng)模塊)
杜邦線若干
實(shí)驗(yàn)?zāi)康暮蛯?shí)驗(yàn)材料準(zhǔn)備齊了,先來介紹一下各個(gè)主要部件。
2.1 TPYBoard開發(fā)板
MicroPython是在單片機(jī)上可以跑的Python,也就是說,你可以通過Python腳本語言開發(fā)單片機(jī)程序。 由劍橋大學(xué)的理論物理學(xué)家喬治·達(dá)明設(shè)計(jì)。和Arduino類似,但Micro Python更強(qiáng)大。 MicroPython開發(fā)板讓你可以通過Python代碼輕松控制微控制器的各種外設(shè),比如LED等,讀取管腳電壓,播放歌曲,和其他設(shè)備聯(lián)網(wǎng)等等。TPYBoard是TurnipSmart公司制作的一款MicroPython開發(fā)板,這款開發(fā)板運(yùn)行很流暢,關(guān)鍵是價(jià)格很便宜。詳細(xì)信息可參考其官網(wǎng)http://www.micropython.net.cn
2.2 四路紅外感應(yīng)探頭
1、當(dāng)模塊檢測到前方障礙物信號時(shí),電路板上紅色指示燈點(diǎn)亮,同時(shí)OUT端口持續(xù)輸出低電平信號,該模塊檢測距離2~60cm,檢測角度35°,檢測距離可以通過電位器進(jìn)行調(diào)節(jié),順時(shí)針調(diào)電位器,檢測距離增加;逆時(shí)針調(diào)電位器,檢測距離減少。
2、傳感器屬于紅外線反射探測,因此目標(biāo)的反射率和形狀是探測距離的關(guān)鍵。其中黑色探測距離最小,白色最大;小面積物體距離小,大面積距離大。
3、 傳感器模塊輸出端口OUT可直接與單片機(jī)IO口連接即可, 也可以直接驅(qū)動(dòng)一個(gè)5V繼電器模塊或者蜂鳴器模塊;連接方式: VCC-VCC;GND-GND;OUT-IO。
4、比較器采用LM339,工作穩(wěn)定;
5、可采用3.3V-5V直流電源對模塊進(jìn)行供電。當(dāng)電源接通時(shí), 綠色電源指示燈點(diǎn)亮。
2.3 智能小車底盤
雙電機(jī)驅(qū)動(dòng),萬向輪改變方向。這是實(shí)驗(yàn)中最常用到的小車底盤,使用差速的方法進(jìn)行轉(zhuǎn)彎。配合使用L298N電機(jī)驅(qū)動(dòng)模塊,使用方法很簡單,不多做介紹。
3.尋跡原理
說完了原料的問題,下面說一下小車尋跡的原理。
3.1紅外探頭的安裝
小車尋跡的原理其實(shí)就光的吸收,反射和散射。在小車的前端有安裝孔,使用螺絲把紅外傳感器固定在安裝孔上。保持發(fā)射端和接收端都保持豎直向下。
3.2返回信號的判斷
在上面已經(jīng)說了,紅外探頭在檢測到物體存在的時(shí)候,在OUT端會(huì)持續(xù)的輸出低電平。那么調(diào)節(jié)調(diào)距電阻,調(diào)節(jié)到一個(gè)適合的檢測距離。在小車行駛路面檢測到物體的時(shí)候,說明是前面是有路的,不是懸空的。那么小車 保持直行。如果前方檢測到?jīng)]有返回,沒返回說明沒有檢測到物體,媽就說明前面是沒有路的,是懸空的,那么小車就先進(jìn)行后退,在進(jìn)行右轉(zhuǎn)(也可以左轉(zhuǎn),也可以一次右轉(zhuǎn)一次左轉(zhuǎn),這個(gè)比較隨意。)。
4.硬件接線
接線其實(shí)很簡單四路紅外探頭接線很簡單,雖然有十八根線,但是有十二根是三根三根的分成四組的,對應(yīng)著很好接線,剩下的六根,VCC和GND不多說了,還有四根是直接接到單片結(jié)IO口上就可以的。L298N的接線更簡單了,這里不多介紹。
5.運(yùn)行與調(diào)試
制作完成后,剩下的就是該調(diào)試了,調(diào)試中應(yīng)該注意細(xì)節(jié)和小車穩(wěn)定性的優(yōu)化。
6.代碼編寫
再把我寫的程序給大家看一下,有需要的可以看一下。
源代碼:
import pyb from pyb import UART from pyb import Pin M0 = Pin('X1', Pin.IN) M1 = Pin('X2', Pin.IN) M2 = Pin('X3', Pin.IN) M3 = Pin('X4', Pin.IN) N1 = Pin('Y1', Pin.OUT_PP) N2 = Pin('Y2', Pin.OUT_PP) N3 = Pin('Y3', Pin.OUT_PP) N4 = Pin('Y4', Pin.OUT_PP) print('while') while True: print('while') if(M2.value()|M1.value()|M3.value()|M0.value()==0): N1.low() N2.high() N4.high() N3.low() pyb.LED(2).on() pyb.LED(3).off() elif(M2.value()|M1.value()|M3.value()|M0.value()==1): N1.high() N2.low() N4.low() N3.high() pyb.delay(300) N1.low() N2.high() N3.high() N4.low() pyb.delay(200) pyb.LED(3).on() pyb.LED(2).off()
“python怎么制作紅外防墜落小車”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!