康雅微
(天津機電職業(yè)技術(shù)學院,天津300131)
移動機器人馬達的智能控制,使機器人能夠穩(wěn)定、快速、平滑地行駛和精確地定位。因此,硬件與軟件的選用及配合,就顯得極為重要。本文介紹選用AVR AT mega 128單片機作為核心控制板、內(nèi)置編碼器的DC馬達作為驅(qū)動、雙路H橋馬達驅(qū)動芯片L298作為單電源H橋電路驅(qū)動DC馬達硬件,能夠簡化電路,功能全面穩(wěn)定;軟件編寫采用精度為1/10的圓周、PID算法,實現(xiàn)閉環(huán)控制,使系統(tǒng)更加精確、精準。
(1)移動機器人馬達的智能控制過程。當單片機mega 128發(fā)出信號后,由于馬達之前未動,反饋信號為0,偏差信號等于單片機發(fā)出信號減去反饋信號,通過PID(比例積分微分)算法,使單片機發(fā)出信號能夠快速、準確地傳遞給L298芯片,最終控制DC馬達旋轉(zhuǎn)。由于馬達內(nèi)置的編碼器,能將旋轉(zhuǎn)的方向和角度以電信號反饋給單片機mega 128,如果偏差信號為0,則說明馬達旋轉(zhuǎn)不能達到預設值,偏差信號越大,則離預設值越遠。利用這個偏差信號,最終達到預設值,實現(xiàn)精確控制。
圖1 機器人馬達控制系統(tǒng)框圖
(2)DC(direct current)馬達。DC(direct current)馬達應用廣泛,由可充電電池供電,攜帶方便,非常適用于移動機器人。機器人DC馬達實際上使用的是DC減速馬達,即在DC馬達上加上一個齒輪箱子,隨著DC減速馬達齒輪比率,來減少馬達旋轉(zhuǎn)速度,馬達轉(zhuǎn)矩增加。根據(jù)齒輪箱子,我們這里選擇的是減速比為1/50、額定轉(zhuǎn)矩為0.19 N·m、旋轉(zhuǎn)速度為102 r/min。4個馬達中只有后方的2個馬達安裝了磁氣式增量型編碼器,根據(jù)編碼器的輸出脈沖A相、B相的相位差,判斷馬達的轉(zhuǎn)向:A相為計數(shù)器,檢測B相的為LOW的情況,馬達按照順時針旋轉(zhuǎn);若檢測B相的為HIGH的情況,馬達按照逆時針旋轉(zhuǎn)。當馬達旋轉(zhuǎn)1周時,編碼器上發(fā)生13個脈沖信號,由于馬達減速比為1/50,所以馬達旋轉(zhuǎn)1周時發(fā)生650次脈沖,則馬達旋轉(zhuǎn)數(shù)為Z/650。
(3)利用獨立電源控制DC馬達的正反轉(zhuǎn),H橋型電路是必要的。L298內(nèi)置2路H橋型驅(qū)動馬達電路,最大電源電壓為46 V,能夠驅(qū)動2組DC馬達,每一組可流過2 A的電流。當2組被連接到一排時,能流過的電流高達4 A,機器人4個馬達中同側(cè)的2個使用1個L298 H橋型芯片,4個馬達共需2個芯片即可。
圖2 減速比為1/50馬達特性
(4)單片機mega 128中16位定時器/計數(shù)器實現(xiàn)PWM(Pulse Width Modulation)脈沖寬度調(diào)制。脈沖寬度傳輸信號的變化,取決于PWM調(diào)制方法(保持脈沖的周期不變,只改變高低電平之比),用來控制馬達的電壓,進而控制馬達轉(zhuǎn)速。
圖3 PWM調(diào)制方式
(1)PID(比例積分微分)控制機器人車輪速度保持固定。
操作控制量=KP×誤差+Ki×誤差累積值+Kd×與旋轉(zhuǎn)誤差的差。
其中,KP,Ki,Kd分別為比例、積分時間、微分時間常數(shù)。
根據(jù)系統(tǒng)響應曲線可得:合理的比例項能實現(xiàn)減少上升時間,使車輪盡快達到目標旋轉(zhuǎn)速度;積分項使得超調(diào)量很小,即誤差在最?。晃⒎猪検窃诒壤棞p少上升時間的同時,也減小過沖,并減小趨穩(wěn)時間。通??刂朴蠵I、PD和PID。以下兩條語句分別是PID控制右輪和左輪轉(zhuǎn)速的指令。
(2)馬達旋轉(zhuǎn)周數(shù)的細化。馬達旋轉(zhuǎn)一周時發(fā)生650個脈沖,若要馬達繼續(xù)旋轉(zhuǎn),只能按650整數(shù)倍,即旋轉(zhuǎn)周數(shù)為整數(shù)。這樣車輪走過的距離,為車輪圓周的整數(shù)倍,顯然若想讓車輪的距離更短,就有些困難了。這里通過軟件編程可以實現(xiàn)1/10圓周的距離。原程序為goal_cnt*=650;修改后的一部分程序為:
使用Atmel公司的AVR Studio集成開發(fā)環(huán)境,通過新建工程建立一個文件并輸入源程序,選擇所用單片機型號及其頻率和優(yōu)化參數(shù),編譯無誤后,在線串口下載到“機器人”中。安裝好機器人電池,即可根據(jù)已下載好的指令穩(wěn)定運行,精確定位。
移動機器人馬達的智能控制,不僅需要以ATmega 128為核心的合理硬件架構(gòu),更需要軟件方面相得益彰的配合,這樣才能發(fā)揮其最大的功能。
[1]梅麗鳳.單片機原理及接口技術(shù)[M].北京:清華大學出版社,2006.
[2]李 軍.51系列單片機高級實例開發(fā)指南[M].北京:北京航空航天大學出版社,2004.
[3]金鐘夫.AVR ATmega128單片機C程序設計與實踐[M].北京:北京航空航天大學出社,2007.