基于DSP的雙足機器人運動控制系統(tǒng)電路設計
近年來,仿人機器人一直是自動控制領域研究的熱點。在模仿人類進行邁步行走時,由于仿人機器人的重心經(jīng)常要處于中心線以外的區(qū)域,使得它的身體很難保持站姿平衡,能夠穩(wěn)定地實現(xiàn)雙足行走是仿人機器人研究的重點也是難點。人類需要大腦和肢體的相互配合來協(xié)調動作,機器人需要的則是運動控制器和驅動裝置的強大支持,尤其是運動控制器,需要有高效率的芯片為基礎,才能最迅速地采集數(shù)據(jù)、完成計算和發(fā)送指令。在本次設計中機器人關節(jié)使用的是大功率三相無刷直流電機,控制器采用TMS320F2812芯片,它是TI公司推出的一款針對控制領域做優(yōu)化配置的數(shù)字信號處理器,器件上集成了多種先進的外設,為電機高速度和高精度控制提供了良好的平臺。
1 系統(tǒng)概述
雙足機器人每條腿設有5個自由度,這樣既可以實現(xiàn)基本的步行功能,又盡可能的簡化了控制變量,系統(tǒng)整體結構如圖1所示,L1~L5分別對應左腿髖側向、髖前向、膝前向、踝前向、踝側向關節(jié)電機,R1~R5對應右腿??紤]到成本因素和驅動性能,選用Maxon的EC-max系列三相無刷直流電機來驅動關節(jié)活動,其中1號和5號電機選用EC-max35型,其他均為EC-max30型。受安裝空間所限,每條腿的運動控制器都為獨立的個體,各運動控制器通過主控計算機進行協(xié)調控制并可基于運動指令單獨完成動作,類似于人類反射弧的原理,減輕主控計算機的工作量,加快反應速度,主控計算機和運動控制器之間通過CAN總線來傳遞數(shù)據(jù)。
機器人雙足步行時,主控計算機根據(jù)運動周期向底層運動控制器發(fā)送運行和停止等指令,完成對行走狀態(tài)的監(jiān)控和數(shù)據(jù)運算。單個運動控制器由DSP處理和電機控制兩部分組成:DSP處理電路負責與主控計算機和傳感器之間交換各類信息、分析接收到的數(shù)據(jù)并運算輸出相應關節(jié)電機的控制信號;電機控制電路根據(jù)控制信號驅動相應的電機動作,達到要求的速度和角度,并對光電編碼器信號進行處理,將執(zhí)行結果反饋給DSP形成閉環(huán)控制,保證執(zhí)行的精度。
數(shù)據(jù)處理器選用的是TMS320F2812,它擁有基于C/C++高效32位DSP內核,提高了運算的精度;時鐘頻率高達150 MHz,增強了系統(tǒng)的處理能力;集成了128 KB的FLASH存儲器、4 KB的引導ROM、數(shù)學運算表以及2 KB的OTP ROM,改善了芯片應用的靈活性;兩個事件管理器模塊為電機及功率變換控制提供了良好的控制功能;16通道高性能12位ADC單元提供了兩個采樣保持電路,可以實現(xiàn)雙通道信號同步采樣,適合整個運動控制器的開發(fā)需求,其代碼和指令與F24x系列完全兼容,更是保證了項目開發(fā)和產(chǎn)品設計的可延續(xù)性。
2 電機調速原理
系統(tǒng)用PWM波形給出無刷直流電機的轉速信息,即利用電路一周期內的占空比變化,達到平均電壓值的改變,以對應電機不同的速度值。
在TMS320F2812中可以通過配置定時周期寄存器的周期值和比較單元的比較值來產(chǎn)生PWM,周期值用于產(chǎn)生PWM波的頻率,比較值用于產(chǎn)生PWM波的脈寬,改變比較值可以改變PWM波的占空比,改變周期值可以改變PWM波的頻率。以事件管理器A為例,單路PWM信號的產(chǎn)生過程如下:
定時器1作為產(chǎn)生PWM信號的時基,通過控制寄存器T1CON和周期寄存器TlPR設置時鐘周期,通過寄存器COMCONA設置比較單元的各個參數(shù),產(chǎn)生出三角波信號,在寄存器CMPRl和ACTRA中分別設置比較值和比較輸出方式,設定的比較值實時與三角波信號比較,得到相應占空比的PWM信號。將定時器計數(shù)器T1CNT設置為連續(xù)增計數(shù)方式時,產(chǎn)生非對稱PWM波形,設定為連續(xù)增減計數(shù)方式時,可以得到對稱的PWM波形。
圖2所示是對稱PWM波形產(chǎn)生的原理:若PWM輸出為高電平有效,則當三角波的當前值小于比較值時輸出為低電平,當三角波的當前值大于比較值時輸出為高電平;低電平有效時,則反之。
如果在寄存器DBTCONx中設置了死區(qū)時間值,則相應事件管理器所有PWM輸出通道使用同一個死區(qū)值。由于加入了死區(qū),PWM波高電平脈沖的寬度減少了一個死區(qū)時間,但是周期沒有變化,所以高有效和低有效的PWM波形的占空比可分別用式(1)和(2)來計算。
通過調節(jié)占空比,可以調節(jié)輸出電壓,用這種無級連續(xù)調節(jié)的輸出電壓可以給出速度信息,因此可以通過調整PWM信號有效電平的寬度達到控制轉速的目的。
pwm相關文章:pwm是什么
c++相關文章:c++教程
評論