牛鍇,羅慶生,李超,司世才
(1.北京理工大學機電學院,北京 100081;2.北京理工大學機械與車輛學院)
仿生液壓四足機器人伺服控制器設計※
牛鍇1,羅慶生1,李超2,司世才2
(1.北京理工大學機電學院,北京 100081;2.北京理工大學機械與車輛學院)
本文結合仿生液壓四足機器人的研發(fā)指標,設計了基于STM32F405的分布式電液伺服控制器??刂破魉欧偩€基于雙CAN總線設計,將控制指令總線和狀態(tài)反饋總線獨立分離,并基于CAN總線通信協(xié)議設計了單幀伺服指令。設計了純數(shù)字伺服閥驅動電路,使用PWM驅動MOSFET全橋方式實現(xiàn)。實驗結果證明,仿生液壓四足機器人電液伺服控制器符合預期的性能指標要求,達到預想的設計效果。
仿生液壓四足機器人;電液伺服;CAN總線;自適應PID;STM32F405
近年來各類軍用機器人在國防領域和地緣戰(zhàn)略中發(fā)揮著重要的作用。在我國廣大西部地區(qū),由于地形復雜、道路崎嶇,傳統(tǒng)的輪式或履帶式機器人無法滿足地形通過性要求,而仿生四足機器人能夠較好地滿足在非結構化地形條件下可靠行進的任務需求。液壓驅動的仿生四足機器人是近年國內外的研究熱點與主攻項目,在其關鍵技術群中,電液伺服控制技術則是保障仿生液壓四足機器人實現(xiàn)穩(wěn)定行進功能的核心技術。
1.1 控制對象分析
本文依托北京理工大學特種機器人技術創(chuàng)新中心正在研發(fā)的一款仿生液壓四足機器人展開研究,機器人每條腿具有3個主動自由度和1個被動自由度,分別為髖側擺關節(jié)、髖正擺關節(jié)、膝關節(jié)和足部二階彈簧減震器,全部12個主動關節(jié)均由液壓缸驅動。機器人的結構尺寸長為120cm,寬為50cm,大腿腿節(jié)桿件等效長度(髖關節(jié)軸到膝關節(jié)軸距離)為40cm,小腿腿節(jié)桿件等效長度(膝關節(jié)軸到足端包絡圓心距離)為40cm。在未集成機載液壓油源的實驗條件下自重118.5kg。四足仿生機器人整體結構如圖1所示。
1.2 系統(tǒng)架構設計
綜合考慮伺服控制任務可以發(fā)現(xiàn),系統(tǒng)性能要求有若干矛盾,如多通道并行伺服控制和單一通道伺服控制精度的時間資源沖突以及多輸入/輸出接口設計的硬件資源沖突。使用單一控制器的集中式控制系統(tǒng)很難在時間資源與硬件資源的分配上實現(xiàn)平衡,從而無法達到任務指標要求?;谏鲜瞿繕耍鞠到y(tǒng)采用一種分布式系統(tǒng)架構進行電液伺服控制系統(tǒng)的設計工作。本系統(tǒng)在運動控制器下設計4個伺服控制器,如圖2所示,并通過伺服總線連接構成分布式電液伺服控制系統(tǒng)。
圖1 四足仿生機器人整體結構
圖2 電液伺服控制系統(tǒng)結構框圖
4個伺服控制器分別負責機器人一條腿上3個液壓伺服單元的伺服控制。通過分布式系統(tǒng)架構設計,一方面,拆分簡化了控制任務,使得單個控制器的任務時序更加具有規(guī)律性,提高了軟件系統(tǒng)的穩(wěn)定性;另一方面實現(xiàn)了控制系統(tǒng)和機械結構相對應的模塊化設計。該設計兼顧了系統(tǒng)任務中對精度和實時性的要求。
伺服總線接口是位于運動控制器與4個伺服控制器之間的總線接口,負責傳遞下行的各液壓伺服單元伺服指令和反饋上行的各液壓伺服單元工作狀態(tài),需要具備網絡特性。常用的總線主要包括RS422/485串行通信總線、以太網、I2C總線、SPI總線和CAN總線。CAN總線拓撲結構靈活多變,無主從特性。網絡上任何一個處于工作狀態(tài)的節(jié)點都可以隨時發(fā)送數(shù)據(jù),實現(xiàn)點對點、點對多的數(shù)據(jù)傳輸。采用非破壞性仲裁技術,郵箱和ID決定了節(jié)點數(shù)據(jù)的優(yōu)先級,ID越小,優(yōu)先級越高。采用短幀結構傳輸時,每幀8個有效字節(jié),傳輸時間短,抗干擾能力強[1]。本設計選擇CAN總線作為系統(tǒng)的伺服總線,拓撲結構如圖3所示。
伺服總線更新頻率為200Hz,伺服指令幀長度為每軸6字節(jié),可以使用CAN協(xié)議設計單幀伺服指令,單周期指令總長為72字節(jié),每周期吞吐量計算如下所示:
其中,bpf是位每幀,f為幀,可計算得總線波特率為374.4kbps,CAN總線在40m內通信波特率可達1Mbps,能夠滿足總線通信速率要求??紤]到伺服指令的高實時性要求,需要考慮避免反饋信息數(shù)據(jù)包占用總線影響數(shù)據(jù)時效性的問題,因此在設計時使用雙線設計,CAN1只用于運動控制器對伺服控制器下發(fā)指令數(shù)據(jù)包,CAN2用于伺服控制向運動控制器返回傳感反饋信息。CAN收發(fā)器電路原理圖如圖4所示。
選擇SN65HVD232CAN總線收發(fā)器。圖4中R1為CAN總線的端負載電阻,按照伺服控制器所處總線位置決定是否短接跳線JP1。當對應伺服控制器位于總線端點時,為了防止信號反射,短接跳線JP1,將端接負載電阻傳入差分信號環(huán)路,抑制信號反射干擾。CAN總線控制器使用STM32F4系列MCU的片內外設bxCAN,兩個bxCAN外設分別控制指令總線和傳感反饋總線。伺服控制器總線驅動設計如圖5所示。
圖3 CAN總線結構簡圖
圖4 CAN收發(fā)器電路原理圖
圖5 伺服總線驅動流程圖
常用的輸出級設計包括模擬直驅、DAC功率放大半數(shù)字驅動、數(shù)字功率驅動[2]。本文使用PWM驅動MOSFET全橋的方式實現(xiàn)數(shù)字功率驅動,使用MOSFET SI4405P和SI4404N搭建功率驅動全橋。使用STM32F405內部定時器產生互補PWM驅動對應橋臂,這種控制方式首先實現(xiàn)了直接的數(shù)字控制,沒有使用模擬器件;其次使用單電源供電實現(xiàn)雙極性控制,簡化了電源和電路設計,并且可以通過對PWM載波頻率的調整,來實現(xiàn)伺服閥驅動信號中顫振信號的疊加[3]。
機器人液壓驅動單元使用的位置傳感器和壓力傳感器均使用電壓信號輸出形式,STM32F405集成有2個16通道的12位高性能內部ADC,單通道采樣頻率可達2.4 Msps,6通道輪詢采樣最快可保證每通道400ksps,可以滿足1kHz伺服頻率以及精度要求,因此本設計不使用獨立的外部ADC,直接使用內部外設。傳感器輸出信號為0 ~10V,調理電路如圖6所示。
圖6 無源增益?zhèn)鞲行盘栒{理電路原理圖
ADC使用STM32F405內部外設,單通道采樣頻率設置為16ksps,通過DMA寫入16字節(jié)滾筒緩存,進行數(shù)字濾波。軟件流程如圖7所示。
圖7 傳感反饋接口驅動設計
配置CAN總線通信ID為標準11位ID。通過對11 位ID的配置,設計伺服指令ID格式如下所示。
ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0讀寫標志 控制字 廣播標志 伺服控制器號 關節(jié)編號
ID0、ID1位為伺服控制器編號編碼位,按照左前腿0號、右前腿1號、左后腿2號、右后腿3號的順序進行編碼。ID2、ID3位為關節(jié)編號編碼位,對單腿自上而下的髖側擺、髖正擺和膝關節(jié)分別編碼為0、1和2。具體編碼如表1所列。
ID5~9位用于指令編碼,因為伺服總線和反饋總線相互獨立,所以對伺服控制和狀態(tài)反饋分別進行設計。ID4位為廣播標志位,該位置為1時,對應指令以廣播的形式發(fā)給每個通道。ID10位為伺服總線的讀寫標志位,該位置為0時,控制指令代表對相應控制量的讀指令,伺服控制器通過CAN2發(fā)出回包數(shù)據(jù)。
表1 lD低4位編碼
5.1 伺服控制總線指令協(xié)議
伺服控制指令由運動控制器通過CAN1下發(fā),按照CAN總線對ID的響應機制進行設計,高優(yōu)先級指令控制字較小,總線仲裁優(yōu)先級較高。設計的控制指令略——編者注。
5.2 狀態(tài)反饋總線指令協(xié)議
狀態(tài)反饋指令用于通過CAN2反饋自檢信息和回傳工作狀態(tài)略——編者注。
仿生液壓四足機器人的運動由液壓執(zhí)行機構系統(tǒng)驅動,而機器人自身具有負載可變、環(huán)境時變的特點,因此控制對象是一個非線性、參數(shù)時變的系統(tǒng)。模糊PID控制在這種系統(tǒng)控制方面有很大優(yōu)勢,可提高控制性能[5]。
為了降低模糊控制器的復雜度,本系統(tǒng)使用了一種誤差分段智能控制算法,其控制方案的原理如圖8所示。圖中的辨識開關通過判斷誤差閾值,選擇Bang-Bang控制或模糊自適應PID控制。當誤差大于設定閾值時,進行Bang-Bang控制;當誤差小于設定閾值時,進行模糊自適應PID控制。模糊推理專家?guī)斓膮?shù)通過自整定系統(tǒng)在調試模式獲?。?]。
圖8 非對稱前饋補償模糊自適應PlD控制器結構圖
針對液壓控制系統(tǒng)的非對稱性和滯環(huán)特性,在以上控制器設計基礎上加入速度和加速度前饋控制參數(shù),以補償系統(tǒng)的滯環(huán),提高響應速度。通過對兩個運動方向設置不同的前饋參數(shù),實現(xiàn)對有桿腔和無桿腔運動方向的非對稱補償。具體的實現(xiàn)方式是,由一個方向判斷開關來選擇兩個運動方向的補償參數(shù),從而實現(xiàn)控制,同時,液壓缸控制參數(shù)的非對稱性在模糊策略表中體現(xiàn)。
將液壓缸一端固定在實驗平臺上,另一端空載或者串聯(lián)10kg負載,使用具有功率冗余的21MPa大功率外油源供油。
7.1 正弦位置控制實驗
對于85mm行程液壓伺服系統(tǒng),輸入20mm幅值、4.5Hz正弦波激勵所獲得的響應結果略——編者注。其表現(xiàn)了性能對稱、位置速度跟蹤情況良好的伺服控制效果。
7.2 階躍響應實驗
對膝關節(jié)100mm行程液壓伺服系統(tǒng)施加幅值30mm的方波激勵,實現(xiàn)正反雙向60mm行程的階躍信號。能在三次震蕩之內達到0.01mm的穩(wěn)態(tài)誤差,實驗響應曲線略——編者注。記錄實驗數(shù)據(jù)表略——編者注。
本文基于STM32F405設計了分布式電液伺服控制架構,使用CAN總線搭建了伺服總線,并對電液伺服輸入和輸出接口進行了有針對性的設計,引入了具有非對稱前饋補償?shù)哪:赃m應控制算法。經過實驗檢驗,控制器伺服控制水平滿足性能指標要求,達到了良好的控制效果。
編者注:本文為期刊縮略版,全文見本刊網站www. mesnet.com.cn。
[1]滿慶豐.CAN總線的應用與發(fā)展[J].電子技術應用,1994(12):2-4.
[2]李言軍.電液伺服/比例放大器的研究[D].杭州:浙江大學,2007.
[3]袁銳波.電液比例施力控制系統(tǒng)的設計及動態(tài)特性研究[D].昆明:昆明理工大學,2001.
[4]蔣建文,林勇,韓江洪.CAN總線通信協(xié)議的分析和實現(xiàn)[J].計算機工程,2002(2):219-220,248.
[5]方一鳴,黃鎮(zhèn)海,焦曉紅.液壓伺服位置系統(tǒng)模型參考模糊自適應PID控制器的設計[J].自動化與儀器儀表,2002(3):9 -11,14.
[6]劉金錕.先進PID控制及其MATLAB仿真[M].北京:電子工業(yè)出版社,2004.
牛鍇(碩士研究生)、羅慶生(教授),研究方向為特種機器人運動控制技術、機器人伺服驅動技術。
Servo Controller of Hydraulic Driven Bionic Quadruped Robot※
Niu Kai1,Luo Qingsheng1,Li Chao1,Si Shicai2
(1.School of Mechatronical Engineering,Beijing Institute of Technology,Beijing 100081,China;
2.School of Mechanical and Vehicular Engineering,Beijing Institute of Technology)
The paper designs a distributed electro-hydraulic servo controller based on STM32F405,combining with the parameters of hydraulic driven bionic quadruped robot.The servo bus is designed based on dual CAN bus,it separates the state feedback bus and control instruction bus,and the servo command is designed based on the CAN bus communication protocol.A pure digital servo valve drive circuit is designed,which uses PWM to drive the MOSFET full bridge.Experimental results show that the distributed electro-hydraulic servo controller can reliably complete the motion control and servo control tasks.
hydraulic driven bionic quadruped robot;electro-hydraulic servo control;CAN bus;adaptive PID;STM32F405
TP242.6
A
??楊迪娜
2015-01-14)