基于京微雅格CME-M7的智能機器人控制系統(tǒng)設計與實現(xiàn)
三、CME-M7硬件設計方案總成
本文引用地址:http://www.ex-cimer.com/article/268457.htm機器人總體構成
如圖1所示,以CME-M7微處理器為核心,接受傳感器傳來外部信息,進行處理,控制機器人的運行。
圖1 機器人總體構成
人型機器人的整體規(guī)劃
人形機器人是一種智能化機器人,在機器的各活動關節(jié)配置有多達16個服務器,具有16個自由度,特顯靈活,更能完成諸如手臂后擺90度的高難度動作。它還配一套設計優(yōu)良的控制系統(tǒng),通過自身智能編程軟件便能自動地完成整套動作。
系統(tǒng)電源供電部分
由于機器人電機,傳感器及系統(tǒng)采用+5V供電,CPU采用core 1V & I/O 3.3V供電,電源部分均考須慮電機功率和整體質量及摩擦阻力問題,電源我們采用鋰電池組串聯(lián)與同步降壓處理,功耗小、體積小和質量輕,安裝較為方便。
電機驅動及PWM調速部分
機器人需控制在一個合適的速度運行,速度快,因MCU對各傳感器傳來的信號有一個響應、處理時間,小車極易偏離軌道,此時需要搭配FPGA電路來實現(xiàn)實時運算處理后再提供給MCU。伺服的速度是由直流電機轉速控制,經由級聯(lián)減速齒輪進行降速后得到旋轉與更大扭力,改變伺服齒輪的控制角度通常采用調脈寬、調壓、調磁等方式來實現(xiàn)。其中,調壓方式原理簡單,但需要模擬輸出, 調脈寬方式需要FPGA邏輯搭成PWM控制模塊,在CME-M7容易實現(xiàn)。
可以使用FPGA、模擬電路、單片機來產生舵機的控制信號,F(xiàn)PGA容易生成穩(wěn)定且快速的脈寬調制信號的脈寬變換產生50Hz(周期是20ms)的信號,但須注意運放器件的選擇有較高要求。
若只用單片機作為舵機的控制單元,使PWM信號的脈沖寬度實現(xiàn)微秒級的變化,從而提高舵機的轉角精度。單片機完成控制算法,再將計算結果轉化為 PWM信號輸出到舵機,此時會因為單片機的指令周期不同與程序運行間隔不同而有不準確性,故采用CME-M7 FPGA PWM來直接控制,是一個數(shù)字系統(tǒng),其控制信號的變化完全依靠硬件計數(shù),所以受外界干擾較小,整個系統(tǒng)工作可靠,再由MCU下達參數(shù)給FPGA進行伺服的角度設置。
圖示:舵機的控制要求
舵機是一種位置伺服的驅動器,適用于需要角度不斷變化并可以保持的控制系統(tǒng)。舵機的控制信號是PWM信號,利用占空比的變化改變舵機的位置。
當控制信號由輸入纜線進入信號調制芯片,獲得直流偏置電壓。它內部有一個基準電路,產生周期為20ms,寬度為1.5ms的基準信號,將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負輸出到電機驅動芯片決定電機的正反轉電路。當電機位置與定位器不一致時,電機驅動芯片的正反轉電路輸出正反轉訊號驅動電機,通過級聯(lián)減速齒輪帶動電位器旋轉,使得電壓差為0,電機停止轉動。
舵機內安裝了一個電位器(或其它角度傳感器)檢測輸出軸轉動角度,控制板根據(jù)電位器的信息能比較精確的控制和保持輸出軸的角度。
舵機的主體結構如下圖所示,主要有幾個部分:外殼、減速齒輪組、電機、電位器、控制電路。
簡單的工作原理是控制電路接收信號源的控制信號,并驅動電機轉動;齒輪組將電機的速度成大倍數(shù)縮小,并將電機的輸出扭矩放大響應倍數(shù),然后輸出;電位器和齒輪組的末級一起轉動,測量舵機軸轉動角度;電路板檢測并根據(jù)電位器判斷舵機轉動角度,然后控制舵機轉動到目標角度或保持在目標角度。
舵機是一個微型的伺服控制系統(tǒng),具體的控制原理可以用下圖表示:
工作原理是控制電路接收信號源的控制脈沖,并驅動電機轉動;齒輪組將電機的速度成大倍數(shù)縮小,并將電機的輸出扭矩放大響應倍數(shù),然后輸出;電位器和齒輪組的末級一起轉動,測量舵機軸轉動角度;電路板檢測并根據(jù)電位器判斷舵機轉動角度,然后控制舵機轉動到目標角度或保持在目標角度。
舵機的控制脈沖周期20ms,脈寬從0.5ms-2.5ms,分別對應-90度到+90度的位置。如下圖所示:
利用CME-M7高性能硬件實現(xiàn)機器人的動態(tài)平衡,三軸傳感器獲得的姿態(tài)資料經過的FPGA與DSP直接運算后,傳遞給PWM生成控制訊號,達成即時控制要求。
評論