智能小車現在差不多是電子競賽或者DIY中的主流了,尋跡,壁障,遙控什么的,相信大家也都見得很多了,這次就大家探討一下尋跡小車的制作方法,不同于以往的是這次的程序不用C語言寫,而是要使用python語言寫。 1.實驗目的 研究智能小車結合紅外探頭尋跡前進。 2.實驗材料 TPYBoard開發板1塊(能跑python語言的開發板,小車 的大腦。) 四路紅外感應探頭(小車的眼睛)。 數據線一根。 充電寶一個(給整個系統供電)。 智能小車底盤(包括驅動模塊)。 杜邦線若干。 實驗目的和實驗材料準備齊了,先來介紹一下各個主要部件。 2.1PYBoard開發板 MicroPython是在單片機上可以跑的Python,也就是說,你可以通過Python腳本語言開發單片機程序。由劍橋大學的理論物理學家喬治·達明設計。和Arduino類似,但MicroPython更強大。MicroPython開發板讓你可以通過Python代碼輕松控制微控制器的各種外設,比如LED等,讀取管腳電壓,播放歌曲,和其他設備聯網等等。TPYBoard是TurnipSmart公司制作的一款MicroPython開發板,這款開發板運行很流暢,關鍵是價格很便宜。 2.2四路紅外感應探頭 1、當模塊檢測到前方障礙物信號時,電路板上紅色指示燈點亮,同時OUT端口持續輸出低電平信號,該模塊檢測距離2~60cm,檢測角度35°,檢測距離可以通過電位器進行調節,順時針調電位器,檢測距離增加;逆時針調電位器,檢測距離減少。 2、傳感器屬于紅外線反射探測,因此目標的反射率和形狀是探測距離的關鍵。其中黑色探測距離最小,白色最大;小面積物體距離小,大面積距離大。 3、傳感器模塊輸出端口OUT可直接與單片機IO口連接即可,也可以直接驅動一個5V繼電器模塊或者蜂鳴器模塊;連接方式:VCC-VCC;GND-GND;OUT-IO 4、比較器采用LM339,工作穩定; 5、可采用3.3V-5V直流電源對模塊進行供電。當電源接通時,綠色電源指示燈點亮。 2.3智能小車底盤 雙電機驅動,萬向輪改變方向。這是實驗中最常用到的小車底盤,使用差速的方法進行轉彎。配合使用L298N電機驅動模塊,使用方法很簡單,不多做介紹。 3.尋跡原理 說完了原料的問題,下面說一下小車尋跡的原理。 3.1紅外探頭的安裝 小車尋跡的原理其實就光的吸收,反射和散射。大家都知道,白色反射所有顏色的光,而黑色吸收所有顏色的光,這就為小車尋跡提供了有力的科學依據。在小車的車頭上安裝上紅外探頭(我是安裝了四個),一字順序排開。哪個探頭接收不到反射或者散射回來的光時,說明這個探頭此時正在黑色的尋跡帶上。 3.2返回信號的判斷 如果要是正前方的探頭接收不到光,那么說明小車此時走在黑色的尋跡帶上?梢允剐≤囍本行走。如果左面的探頭接收不到光,那么說明小車左面出現了黑色尋跡帶,此時小車應該執行左轉彎。右轉彎同左轉彎原理。 如果要是小車前面,左面,右面三個方向全都接收不到光,或者是兩個方向上的探頭都接收不到光,到底是左轉彎,右轉彎還是繼續直行,這個就要看你自己在程序里怎么做判斷了。 4.硬件接線: 接線其實很簡單四路紅外探頭接線很簡單,雖然有十八根線,但是有十二根是三根三根的分成四組的,對應著很好接線,剩下的六根,VCC和GND不多說了,還有四根是直接接到單片結IO口上就可以的。 L298N的接線更簡單了,這里不多介紹。 上個簡單的幫助理解的原理圖(其實我們做實驗都是插線,不做PCB圖和原理圖的)。 ![]() 再上個實物圖給大家看看。 ![]() 5.運行與調試 制作完成后,剩下的就是該調試了,調試中應該注意細節和小車穩定性的優化。 6.代碼編寫 再把我寫的程序給大家看一下,有需要的可以看一下。 源代碼:
|