摘要:本文首先介紹了移動機器人的控制系統和主控芯片,并具體介紹了遙控器模塊、速度控制模塊、傳感器模塊、液晶顯示模塊和電源模塊的硬件設計。遙控模塊包括發射端和接受端的設計;速度控制模塊由鎖相環CD4046和電機驅動芯片KA3082組成。
關鍵詞:控制系統;模塊;功耗
中圖分類號:TP242 文獻標識碼:A 文章編號:1674-7712 (2012) 06-0096-01
控制系統是移動機器人的核心部分,它的優劣決定了系統控制性能的優劣。移動機器人采用MSP430F149單片機作為主控芯片,主要包括紅外遙控模塊、傳感器模塊、電機速度控制模塊、液晶顯示模塊、電源模塊和JTAG接口共六大模塊。其中傳感器模塊包括黑線檢測、障礙物檢測和金屬探測。
遙控器端的發射模塊PT2262通過異步串行方式發射信號,移動機器人上的接收模塊PT2272接收信號,并送往單片機MSP430F149進行處理。程序通過查詢方式判斷相應端口的高低電平信號,以調用相應模塊的程序,并通過鎖相環CD4046和電機驅動芯片KA3082驅動直流電機,實現設定的運動。光電碼盤以脈沖形式把移動機器人的實際運行速度反饋到鎖相環比較信號的輸入端和定時器A的捕獲寄存器,以達到對速度的精確控制。總電源通過低壓差線性穩壓器MAX603和低漏電調整器TPS77133進行電平轉換,以給不同模塊提供電壓。
目前,移動機器人普遍采用TI公司的DSP作為主控芯片,但其芯片本身及其仿真器價格偏高,不適合小規模開發。本文選用同是TI公司推出的另一種單片機MSP430F149作為控制核心。采用了JTAG技術、FLASH在線編程技術,省去了仿真器,使用自制的仿真接口即可實現在線仿真調試,具有很高的性價比。
紅外遙控模塊主要由PT2262發射模塊和PT2272接收模塊組成。PT2262和PT2272是一對帶地址數據編碼功能的紅外遙控發射和接收集成芯片。編碼器PT2262使不同的按鍵及按鍵方式唯一的對應一個碼字(一個完整的碼字由地址碼、數據碼和同步碼組成)。當按下某個按鍵,PT2262對其進行編碼并將碼字由17腳傳送到發射模塊中,再由發射模塊發射出去;接受模塊接受到碼字后,通過PT2272的14腳輸入,PT2272把自己的地址碼與碼字的地址碼(即PT2262的地址碼)經過兩次比較核對后,VT腳才輸出高電平,與此同時相應的數據腳也輸出高電平。
其中,按下D鍵后,通過按A鍵可以增加設定速度,按B鍵可以減小設定速度,速度設定完成后,按C鍵確認返回。設置移動機器人停止功能鍵的目的:當周圍環境發生大的變化或移動機器人避障功能失敗時,避免移動機器人與障礙物發生碰撞,對機械本體造成損壞。
遙控器的發射模塊主要由4個按鍵、編碼芯片PT2262和發射電路組成。其中TE端為編碼啟動端,低電平有效,使其接地(即編碼一直有效)。Dout為編碼輸出端,輸出數據信號到紅外發射管。
解碼芯片PT2272根據其后綴不同,輸出有“暫存”和“鎖存”兩種狀態。在此,選取“暫存”狀態。對于PT2272紅外接收芯片,為了調制紅外載波信號,PT2272之前由一紅外接收頭對信號進行處理,然后經放大器放大后輸入PT2272芯片,其輸出端與單片機端口相連,單片機中程序通過查詢的方式去檢測這幾個端口的高低電平情況,并根據電平信號去執行相應的功能。
PT2272的編碼地址必須和PT2262的編碼地址保持一致。從原理圖知PT2262和PT2272的編碼地址相同,其A0和A1均接地,其它六個腳懸空。
本文由16位定時器TIMER_B來產生PWM,并經CD4046鎖相環芯片和KA3082驅動芯片來控制電機速度。
TIMER_B支持同時進行的多種時序控制、多個捕獲/比較功能、多種波形輸出,也可以是上述功能的組合。并具有中斷功能,其中斷可由計數器溢出引起,也可來自具有捕獲或比較功能的捕獲/比較寄存器。有4種定時器模式(停止模式、增計數模式、連續模式和增減計數模式)。7個相同的捕獲/比較寄存器CCRX,為實時處理提供了靈活的控制手段。輸出單元用于發出輸出信號,每個輸出單元有8種工作模式(輸出模式、置位模式、PWM翻轉/復位模式、PWM置位/復位模式、翻轉模式、復位模式、PWM翻轉/置位模式和PWM復位/置位模式)。
本文使用TIMER_B的增減計數模式,輸出模式為PWM翻轉/置位。PWM波形的周期是CCR0寄存器數值的2倍,其占空比大小的改變可通過調節CCR1或CCR2寄存器的數值來實現,最終可實現對電機速度的調節。
電機驅動芯片選用KA3082,可以方便的完成對電機的控制。通過調節VCTL的外部電壓就可完成對速度的控制,設置VIN1和VIN2就可以控制電機正反轉和制動。
鎖相環選用CD4046,它是通用的CMOS鎖相環集成電路,其特點是電源電壓范圍寬(為3V~18V),輸入阻抗高,動態功耗小,在中心頻率為10KHz下功耗僅為600μw,屬微功耗器件。
選用CD4046鎖相環芯片的主要目的是為了提高速度控制的精度。CD4046鎖相環的信號輸入端輸入的是TIMER_B產生的PWM波,比較信號的輸入端輸入的是光電碼盤的反饋信號,其中光電碼盤以脈沖形式反饋的是移動機器人的實際速度,通過CD4046可求出兩個波形的相位差,將其接到KA3082的電機速度控制端,最終可使移動機器人的實際速度和PWM波輸出的速度相同,實現對速度的精確控制。
鎖相環芯片CD4046輸出端PH CMPR2接KA3082的電壓控制端VCTL。由VIN1和VIN2來控制電機的正反轉和制動。這兩端與單片機引腳相連,即正反控制由單片機來完成。同時光電碼盤測出左右輪轉速以脈沖形式反饋到MSP430F149的TIMER_A的捕獲模塊,通過模糊控制算法,以使實際速度快速的達到設定速度。
[基金項目]項目來源:黑龍江省教育廳高職高專院校科研項目;項目名稱:基于MSP的移動機器人控制系統的研究;項目編號:12515156