廣州城建職業(yè)學院 牟海榮
基于Arduino 循跡小車的設計
廣州城建職業(yè)學院 牟海榮
本設計采用Atmega328微處理控制器的Arduino單片機為主控制器,通過循跡傳感器實現(xiàn)無人小車自動循跡運動,同時在手機或PC上能實現(xiàn)遠程控制和顯示的溫度采集測控系統(tǒng)。采用RS232協(xié)議串行通信方式,將采集的數(shù)據(jù)發(fā)送至手機終端上的軟件程序,由手機上的軟件接收并處理數(shù)據(jù)。
基于Arduino主控板和循跡傳感器實現(xiàn)小車自動循跡控制系統(tǒng),通過傳感器回饋的數(shù)字信號傳入主控處理后,再輸出到L293D驅(qū)動板驅(qū)動直流電機實現(xiàn)小車的自動工作,實現(xiàn)工作站的無人工作。實時時鐘芯片實時對溫度傳感器采集溫度數(shù)據(jù),在手機上也能實現(xiàn)遠程控制和顯示時間、溫度數(shù)據(jù)。同時手機也能控制小車實現(xiàn)手動控制。溫度采集和小車的控制主要由手機上的軟件進行擔任。該軟件系統(tǒng)在VB環(huán)境下建立,通過接受單片機處理后上傳回到手機的溫度數(shù)據(jù)進行數(shù)據(jù)整理加工,并在軟件上顯示出來。實現(xiàn)直觀瀏覽和報警功能。另外,可對單片機進行遠程控制,實現(xiàn)了小車能夠有多種方式進行工作運行。
整個系統(tǒng)由Arduino單片機最小系統(tǒng)、L293D驅(qū)動電機模塊驅(qū)動直流減速電機,循跡傳感器模塊和藍牙模塊組成。小車在運動中時選擇一種模式進行工作是自主運動還是藍牙控制,如果小車的循跡傳感器開始工作,自動循線工作,同時超聲波檢測到障礙物時,超聲波接受到信號,傳輸?shù)絾纹瑱C中,執(zhí)行電機停止,退后再左轉(zhuǎn)的指令,然后繼續(xù)前進。如果小車選擇藍牙控制就根據(jù)手機上發(fā)送的指令來控制。
2.1 L293D驅(qū)動電路設計
如圖1所示為一個典型的直流電機控制電路。電路得名于“H橋驅(qū)動電路”是因為它的形狀酷似字母H。 H橋式電機驅(qū)動電路包括4個三極管和一個電機。要使電機運轉(zhuǎn),必須導通對角線上的一對三極管。根據(jù)不同三極管對的導通情況,電流可能會從左至右或從右至左流過電機,從而控制電機的轉(zhuǎn)向。要使電機運轉(zhuǎn),必須使對角線上的一對三極管導通。例如,如圖4.13所示,當Q1管和Q4管導通時,電流就從電源正極經(jīng)Q1從左至右穿過電機,然后再經(jīng)Q4回到電源負極。按圖中電流箭頭所示,該流向的電流將驅(qū)動電機順時針轉(zhuǎn)動。當三極管Q1和Q4導通時,電流將從左至右流過電機,從而驅(qū)動電機按特定方向轉(zhuǎn)動。如果要想電機反轉(zhuǎn)就是當三極管Q2和Q3導通時,電流將從右至左流過電機,從而驅(qū)動電機反轉(zhuǎn)。
圖1 直流電機控制電路
小車處于自動循徑狀態(tài)時, 由于小車需要自動搜索,如果小車速度過快,慣性過大,同時傳感器會有可能出現(xiàn)處理信號不及時,就很容易脫離控制,不能再自主的循線工作,此時可以通過輸出 PWM 波來控制小車的轉(zhuǎn)速。脈寬調(diào)制(PWM)基本原理:控制方式就是對逆變電路開關器件的通斷進行控制,使輸出端得到一系列幅值相等的脈沖,用這些脈沖來代替正弦波或所需要的波形。也就是在輸出波形的半個周期中產(chǎn)生多個脈沖,使各脈沖的等值電壓為正弦波形,所獲得的輸出平滑且低次諧波少。按一定的規(guī)則對各脈沖的寬度進行調(diào)制,即可改變逆變電路輸出電壓的大小,也可改變輸出頻率。
2.2 循跡單元電路設計
74HC140D循跡傳感器模塊對環(huán)境光線適應能力較強,其具有一對紅外線發(fā)射與接收管,發(fā)射管發(fā)射出一定頻率的紅外線,當檢測方向遇到障礙物(反射面)時,紅外線反射回來被接收管接收,經(jīng)過比較器電路處理之后,紅色指示燈會亮起,同時信號輸出接口輸出數(shù)字信號(一個低電平信號),可通過電位器旋鈕調(diào)節(jié)檢測距離,有效距離范圍 2~30cm,工作電壓為3.3V-5V。該傳感器的探測距離可以通過電位器調(diào)節(jié)、具有干擾小、便于裝配、使用方便等特點,可以廣泛應用于機器人避障、避障小車、流水線計數(shù)及黑白線循跡等眾多場合。
2.3 藍牙單元電路設計
采用 HC-05嵌入式藍牙串口通訊模塊。 該模塊具有兩種工作模式:命令響應工作模式和自動連接工作模式,在自動連接工作模式下模塊又可分為主(Master)、從(Slave)和回環(huán)(Loopback)三種工作角色。當模塊處于自動連接工作模式時,將自動根據(jù)事先設定的方式連接的數(shù)據(jù)傳輸;當模塊處于命令響應工作模式時能執(zhí)行下述所有AT命令,用戶可向模塊發(fā)送各種AT指令,為模塊設定控制參數(shù)或發(fā)布控制命令。通過控制模塊外部引腳(PIO11)輸入電平,可以實現(xiàn)模塊工作狀態(tài)的動態(tài)轉(zhuǎn)換。
采用目前較為常用的SPP串口軟件作為初期軟件平臺系統(tǒng)來完成小車的控制,這一個軟件不需要自己再去編程,只需要對每一個通道進行一個定義就可以了。
系統(tǒng)設計采用Arduino單片機系統(tǒng)的設計與實現(xiàn)具有成本低廉、設計簡單且性能較好,調(diào)節(jié)響應時間快,簡化了硬件結構,穩(wěn)態(tài)誤差小自主循跡效果好。該智能車可在黑色導引線上穩(wěn)定、可靠的自動行駛,能準確實現(xiàn)自主尋跡,具備抗干擾性強、速度調(diào)節(jié)響應時間短、穩(wěn)態(tài)誤差小等特點。
[1]趙津,朱三超.基于Arduino單片機的智能避障小車設計[J].自動化與儀表 2013.05.
[2]聶茹,嚴明.基于Arduino開發(fā)板的智能小車設計[J].微處理機,2015,04.
[3]戈惠梅,等.基于Arduino的智能小車避障系統(tǒng)的設計[J].現(xiàn)代電子技術,2014,11.
牟海榮(1981-),女,講師,廣州城建職業(yè)學院機電工程學院,研究方向:自動控制。