彭登峰
(湖北職業技術學院機電工程學院,湖北孝感 432000)
隨著人工智能技術的不斷發展,各種關于智能小車的研究也就備受關注。文中以四驅小車為結構載體,設計了一款能夠自動避障及循跡功能的四驅智能小車。
智能小車系統設計框圖如圖1所示,本系統由單片機控制模塊、電源及電機驅動模塊、循跡模塊及超聲波模塊組成。
電源及電機驅動模塊,由電源電路及電機驅動電路組成。
循跡模塊采用8路循跡,通過8個反射式紅外光電傳感器對循跡線(黑線)進行檢測,實現四驅小車循跡功能。
避障模塊利用超聲波測距模塊測距,可檢測前方是否存在障礙物以及障礙物的距離,由單片機控制電機轉向和速度,可實現避障功能。
單片機控制模塊由STC12C5A60S2單片機、復位電路、時鐘電路、USB轉串口通信電路、電源開關及指示電路、液晶顯示接口電路、聲光報警電路、超聲波傳感器接口等組成。
2.1.1 單片機最小系統
單片機最小系統包括STC12C5A60S2單片機電路及時鐘與復位電路。STC12C5A60S2單片機具有兩路可編程計數器陣列(PCA)模塊,通過編程可用作脈寬調制(PWM)輸出。本設計中,智能小車的速度控制就是通過改變單片機輸出兩路P W M 信號的占空比來實現的。

圖1 系統設計框圖
2.1.2 USB轉串口通訊電路
單片機有一個全雙工的串行通訊口,為了實現單片機與計算機之間的通信,在電路設計中采用USB轉串口芯片CH340T[1]。如圖2所示,通過USB接口,可以實現程序的在線下載,方便單片機程序下載與調試。
2.1.3 液晶顯示電路
本模塊采用LCD1602液晶作為顯示器。單片機與LCD顯示模塊數據傳輸形式可分為8位和4位。本設計中采用4位連接方式,如圖3所示:單片機的P1.0-P1.3與液晶顯示器的4條數據線連接,P2.6、P2.5、P2.4分別于液晶的3個控制端RS、R/W、E連接。LCD1602的3腳為液晶顯示器對比度調整端,將第3腳接入一個10K的電位器,用來調整液晶顯示器對比度。
2.1.4 發光二極管及蜂鳴器電路
本設計中,采用發光二極管來顯示小車的各種運行狀態,如前進、后退等,狀態指示可根據需要自行設定。蜂鳴器發聲,可用于起步、停車,或報警提示等。發光二極管及蜂鳴器驅動電路如圖4所示。
循跡傳感器采用TCRT5000紅外光電傳感器進行設計[2]。本設計中,共有8路循跡模塊,采用8個紅外對管對循跡線(黑線)進行檢測,8路檢測信號接到單片機P0口的8個I/O口。8路循跡電路完全相同,以其中一路為例進行說明。
某一路四驅小車循跡模塊電路原理圖如圖5所示,當施加電源后,光電發射二極管由R3限流后導通,不斷發射紅外光。當循跡傳感器檢測到黑線時,由于黑色吸光,光電晶體管因接收不到光線而截止,傳感器輸出高電平, 此時,比較器LM339的“+”端電壓大于“-”端電壓,比較器輸出高電平。當紅外光照射到非黑線時,光電晶體管因接收到反射光線而導通,傳感器輸出低電平。此時,比較器LM339的“+”端電壓小于“-”端電壓,比較器輸出低電平。調節電位器Rp1,可以調節傳感器的靈敏度。
單片機對8路傳感器的輸出信號進行接收和處理,判斷四驅小車是否沿黑色循跡線行駛,實時調整小車的運行方向,可以實現循跡功能。
2.3.1 電源電路原理圖
系統電池提供的電源為+12V,考慮到為單片機提供穩定的+5V電源,并為循跡模塊提供電源,利用LM2596設計了如圖6所示的電源電路。
電源電路由開關型電源芯片LM2596構成,并由12V可充電鋰電池提供電源。LM2596開關電壓調節器具有良好的線性和負載調節特性。其5V固定輸出端,能穩定的輸出5V直流電壓,為其他模塊提供5V電壓。
2.3.2 電機驅動電路原理圖
電機驅動模塊電路如圖7所示,整個電路以L298N為核心。STC12C5A60S2單片機P1.3、P1.4引腳輸出兩路PW M信號控制L 29 8N 的使能端實現兩路電機的轉速控制;P1.1、P1.2、P1.5、P1.6輸出四路開關量信號實現兩路電機的正反轉運行控制。

圖2 USB 轉串口電路

圖3 液晶顯示電路

圖4 發光二極管及蜂鳴器電路

圖5 某一路小車循跡模塊電路原理圖

圖6 電源模塊電路原理圖
避障模塊采用超聲波測距傳感器HC-SR04。超聲波測距傳感器與單片機的接口電路如圖8所示:超聲波測距傳感器的TRIG端(2腳)與ECHO端(3腳)與單片機的P3.4、P3.3連接。利用超聲波測距模塊測距,可檢測前方是否存在障礙物以及障礙物的距離,由單片機控制電機轉向和速度,可實現避障功能[3]。

圖7 電機驅動模塊電路原理

圖8 超聲波測距傳感器與單片機的接口

圖9 主程序流程圖
實現循跡及避障功能的智能小車主程序流程圖如圖9所示,系統上電后,執行PWM模塊、液晶顯示及定時器初始化處理,然后進入主循環。在主循環中,60ms執行一次超聲波測距,以判讀前方是否存在障礙物,若存在障礙物,則進行避障處理。若無障礙物,則采集循跡模塊信號執行循跡動作。程序設計中,可根據小車循跡線(黑線)及行駛路線要求,調整控制程序。
本文介紹了具有避障及循跡功能的智能小車硬件電路及軟件設計方案,硬件電路設計簡單,程序下載及調試方便,電機運行速度及方向控制容易實現,能夠實現避障及循跡功能。在此基礎上,可增加其他功能的傳感器,如聲音傳感器、溫濕度傳感器,顏色傳感器等,可設計更加復雜的智能小車控制系統。