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