智能小車涉及到高級計算機控制、電子機械、自動化等諸多學科,隨著科技的不斷進步,智能電子產品發(fā)展步驟不斷加快,各種應用層次的機器人等大量出現(xiàn),目前應用在智能小車或機器人的微控制器主要是8/16單片機或ARM和數(shù)字信號處理器DSP等。本設計采用TI公司生產的功耗低運行速度快且價格便宜的MSP430F2274為核心,避障檢測采用測距精準的超聲波傳感器,該傳感器采集小車周圍的環(huán)境信息并傳遞給MSP430進行程序判斷處理,從而達到控制小車自動避障的目的。
1 系統(tǒng)的總體結構框圖
該系統(tǒng)主要由MSP430控制器,超聲波避障模塊,電機驅動,測速,語音模塊,溫度模塊,小車的機械運動部分采用四輪差速轉向式結構,前2個輪是驅動輪,分別由電機控制其運動,后兩輪為隨動輪。采用MSP430F2274單片機作為主控制單元,小車裝有超聲波模塊來負責探測障礙物,做出避障決策。在小車的驅動輪上裝有光電編碼器對小車進行測速。為消除溫度對測距的影響,使用溫度傳感器模塊時刻檢測小車周圍的溫度情況并修正。在小車上裝配語音播報功能模塊,能知道小車的位置和運行狀態(tài),總體結構框圖如圖1所示。
圖1 系統(tǒng)的總體框圖
2 智能小車的硬件設計
2.1 主控芯片
該設計是以MSP430F2274單片機為控制的核心部件。MSP430是一款16位的超低功耗單片機,采用了精簡指令集(RISC)結構,具有豐富的尋址方式,片內資源豐富,處理能力強大、系統(tǒng)工作穩(wěn)定,主要是它具有多路PWM輸出,以作為該設計電機控制的有利資源,系統(tǒng)主控設計圖如圖2所示。
圖2 系統(tǒng)主控設計圖
2.2 超聲波模塊
避障是智能小車運動過程中最基本的功能,而避障首要是確定機器人自身與障礙物的距離并且定位。小車的避障探測模塊采用SRF08超聲波收發(fā)模塊,其波頻率為40 kHz,檢測距離范嗣為3 cm~6 m,SDA和SCL分別為控制端和接收端,設計共采用4個超聲波收發(fā)模塊分別安裝在小車的正前方,右前方和左前方和后方,4個模塊分別接在MSP430單片機的I/OP1.0、I/OP1.1、I/OP1.2、I/OP1.3、I/OP1. 4、I/OP1. 5、I/OP1.6、I/OP1.6端口上,采用I/O觸發(fā)測距,單片機給SDA提供25μs高電平信號,模塊自動發(fā)送8個40 Hz方波,并且檢測是否有返回信號,若有返回信號,SCL管腳輸出高電平,高電平持續(xù)的時間就是超聲波從發(fā)射到返回的時間,從而計算出超聲波從發(fā)射到接收所用的時間t,常溫下聲波在空氣中的傳播速度(其中T為攝氏溫度)
此時可得到是否避障的距離為s=vt/2。
2.3 測溫和電源模塊
為了使計算的距離更精確而不受溫度影響,該設計中加入了DS18B20溫度傳感器接在I/OP4.6上,實時檢測機器人周圍環(huán)境的溫度T(T的值要精確到小數(shù)點后3位),以修正聲速的傳播公式V,從而提高測距的精確度。由于MSP430工作電壓最大是3.3 V,電機驅動采用12 V電壓,測速模塊和超聲波模塊采用5 V電壓,所以采用LM7812、LM7805和LM1117組成穩(wěn)壓電路。
2.4 語音模塊
語音電路采用ISD2560芯片為核心器件,結合外圍電路與單片機接口連接,進行分段尋址,分析所測量數(shù)據(jù),并設計出語音元素,包括前方、左前方、右前方、后方、厘米等語音元素,然后分別錄制好語音元素,把這些信息存儲在ISD2560的存儲器單元內,測量的數(shù)據(jù)經過軟件處理后,單片機發(fā)送語音地址和音控指令,通過和存儲在ISD2560內的地址數(shù)據(jù)匹配,然后由語音電路通過揚聲器播出測量數(shù)據(jù)的結果。語音芯片的地址碼接口A4、A5、A6、A7、A8分別接在I/OP2.2、I/OP3.0、I/OP3.1、I/OP3.2、I/OP3.3。
2.5 電機驅動模塊
電機驅動模塊是智能車的重要組成部分,它和電機共同組成智能小車的運動控制系統(tǒng)。該設計的驅動輪是由2個M1和M2交流永磁同步電機,因此采用的電機驅動器是高電壓大電流高功率的L298N雙H橋集成電路,L289N可以驅動兩個電機,通過控制輸入端IN1-IN4信號,來控制H橋的通斷,使得電機形成正反轉或停止,通過控制L298N的使能端EnA、EnB,采用技術成熟的PWM調速原理來控制電機的轉速,從而達到控制小車運行的快慢和轉向的目的。為了防止在啟停電機的瞬間所形成的反饋電流損壞L298N,因此在L298N輸出端與電機之間加入8個二極管形成續(xù)流達到保護的作用,再則為了防止L298N輸出負載端電機對輸入端信號傳輸產生影響,以及對MSP430芯片產生不利的干擾,在L298N的信號輸入端通過連接TLP521可控制的光電電耦合器件,達到對L298N信號輸入前端的信號電路與負載的完全隔離,從而增加了電路的安全性,減少了電路信號干擾。本設計中的驅動電機采用的是方波驅動的交流永磁同步電機,該電機的轉速與驅動信號的頻率成正比,結構簡單,調速性能優(yōu)良,運行可靠且便于維護。其電機驅動和控制模塊電路如圖3所示。
圖3 電機驅動模塊
2.6 測速模塊和PID控制
對速度的檢測、調節(jié)控制能夠保證小車穩(wěn)定的運行,避免小車在避障時由于車速過高來不及躲避等問題。該設計中采用256線光電編碼器作為速度檢測,2個編碼器和電機同軸相連。它直接利用光電轉換原理輸出3組方波脈沖A、B和Z相,A、B兩組脈沖相位差90°,從而可方便地判斷出旋轉方向,而Z相為每轉一個脈沖,用于基準點定位。在此采用M/T法測速,單片機通過定時器對電機速度進行10 ms定時采樣,把采樣所得速度信息與給定的速度信息所得的速度差傳給PID控制器,來實現(xiàn)對電機速度的最佳閉環(huán)控制。從而在小車在前進、后退、轉彎、剎車等動作能快速響應且超調量小,因此系統(tǒng)采用積分分離的PID控制算法,開始取消積分作用,當被調量相差不大時再引入積分作用,實現(xiàn)算法的具體步驟如下:
1)根據(jù)實際情況,人為的設定一個值w>0,E(k)=R(k)-H(k),其中R(k)為給定值,H(k)為測量值。
2)當E(k)>w時,采用PD控制調節(jié),可以避免超調過大,還可以使系統(tǒng)有較快的反應。
3)當E(k)
3 軟件的設計
MSP430單片機實時監(jiān)控超聲波模塊傳送的信號并對其信號進行避障決策判斷,小車在不需要做出避障時沿直線行駛或停止,并且等待定時器的中斷信號產生,當需要避障時,小車就向有障礙物相反的方向調整出(左轉、右轉、倒退并轉向)最佳的運行路線,軟件主要采用C語言進行編程。主控程序流程圖如圖4所示。
圖4 主控程序流程圖
在小車運行的速度調控中加入PID算法來調控PWM對小車的運行速度進行決策控制,能夠很好的實現(xiàn)小車運行的穩(wěn)定性和可靠性,PID調控PWM的程序流程圖如圖5所示。
圖5 PID調控PWM程序流程圖
4 實驗結果
該智能小車做成后對其性能測試:小車的正常運行速度約為0.11 m/s,在遇到的障礙物后做出的避障決策,跟程序中預先設定避障距離15 cm相差不多,根據(jù)試驗的測量數(shù)據(jù),小車預先設定的避障距離和實際的情況上下浮動0~3 cm,到達了預期設計的目標。
5 結論
該設計采用的以MSP430單片機為平臺智能小車,能夠滿足控制要求,采用的超聲波避障、PID控制算法以及PWM速度控制,使得小車穩(wěn)定靈活可靠的運行。后續(xù)研究為改進小車實現(xiàn)更高智能化,采用ARM嵌入式、Linux操作系統(tǒng)和DSP,并加入各種智能傳感器等來實現(xiàn)小車的更高的人性化智能化。