羅慶生,朱立松,牛鍇,司世才
(1.北京理工大學 機電學院,北京100081;2.北京理工大學 機械與車輛學院)
相對于輪式及履帶式機器人,足式機器人對復雜地形具有更強的適應能力,在搶險救災、物資運輸和軍事應用等領域有著廣闊的發展前景。四足機器人由于具有較強的運動穩定性和較低的機構復雜度,得到了人們的青睞,是目前業界競相研究的對象。筆者所在團隊研制了一款液壓仿生四足機器人(如圖1所示),該機器人的每一條腿均含有3個旋轉關節,分別是側擺關節、髖關節以及膝關節。其中側擺關節位于機體上部,負責整條腿的側擺運動;髖關節和膝關節位于其下,實現大腿和小腿的屈伸運動。3個關節均為液壓缸驅動,通過控制液壓缸的行程距離和動作時序來實現機器人的各種運動步態,如行走、小跑等。該機器人的結構雖不算復雜,但四足機器人特有的多關節屬性,以及對機器人傳感器信息融合、液壓缸伺服精度的特殊要求,使得其控制是一個十分復雜的問題[1],有必要開展系統研究和深入探索。

圖1 液壓仿生四足機器人
根據液壓仿生四足機器人的工作特性與設計要求,其控制總系統由若干子系統組成。其中的數據采集子系統、位姿估計子系統、路徑規劃子系統屬于上層控制系統,主要根據數據采集子系統獲得數據,并對路徑進行規劃,完成頂層決策控制任務;而運動控制子系統及驅動子系統屬于下層控制系統,主要執行上層決策控制系統生成的控制參數,通過多軸聯動軌跡規劃、插補運算以及對各個液壓執行機構的位置、速度和壓力伺服控制,實現對液壓缸的穩定控制[2]。
根據上述控制任務,首先分析現有機器人常用控制系統的3種結構形式[3],即集中控制系統、分布式控制系統和分層式控制系統,了解其使用特性和適用范圍,以確定最終采用哪種控制系統架構。集中式控制系統雖然結構簡單、實現方便,但是對單CPU的性能提出了更高要求,不適合復雜的控制對象;分布式控制系統雖然擁有較好的擴展性,但是系統卻過于復雜;分層控制系統的特點是層次清晰、結構穩定,但擴展性不好。
液壓仿生四足機器人運動關節多達12個,若要實現良好的控制,一方面要對12個關節進行準確高效的控制,另一方面各關節之間還要相互協調,此外,還要對各種環境信息進行處理作出反應。因此結合分層控制和分布式控制的優點,設計了一種復合控制系統。該復合控制系統首先依據功能劃分子系統,再依據優先級為系統劃分層次,設計的控制系統結構如圖2所示。

圖2 液壓仿生四足機器人控制系統結構框圖
具體來說,該系統按照功能分為3個層級,決策層和步態生成層各設計一個CPU,伺服控制器每個腿各一個,共4個。決策層的主要任務是接收并處理環境信息,接收操控指令,同時向步態生成層發送命令;步態生成層的任務是規劃機器人步態,并將生成的相應動作指令發送給關節運動器;伺服控制器采用分布式結構,用來驅動各個液壓缸。
在液壓仿生四足機器人的控制系統中,決策層需要采集和處理自身及外界的大量信息,同時還需要根據環境實時判斷,屬于典型的機器傳感探測和伺服控制相互協調、并行工作的系統,因此決策層的處理芯片必須具有良好的性能。基于ARM Cortex-A8內核的S5PV210芯片具有較高的工作主頻,運算功能強大,并且端口豐富,可以十分方便地接入外圍器件,故決策層芯片選擇S5PV210芯片。
步態生成層需要快速插補,因而需要較高的主頻和位寬,要求具有浮點運算單元,以實現高精度的插補運算工作。綜合以上考慮,選擇具有浮點運算單元的基于ARM Cortex-M4內核的STM32F407芯片。
實際上,伺服控制器除了滿足實時伺服算法所需的運算性能開銷外,還需要具有盡可能功能強大的片上外設,如12位、8通道、1 MHz采樣頻率的高性能ADC,功能完善的定時器,以及豐富且響應靈活的中斷資源。STM32F407能滿足伺服控制器的要求,故伺服控制層也選擇STM32F407[4]。
控制層到步態生成層(主通信接口)用于機器人下位機主控進行數據交互、接收動作指令信息、反饋工作狀態。本接口屬于點對點接口,不需要考慮接口的總線特點。常用的點對點通信方式主要包括UART、SPI、USB和Ethernet。上述幾種的信號傳輸接口的各自性能比較略——編者注,綜合比較,本文選擇Ethernet作為通信方式。
伺服總線接口是指由步態生成層到伺服控制器的接口,主要職能是向4個伺服驅動器傳輸各液壓伺服指令和向上反饋各液壓伺服單元的工作狀態,因此該總線接口需要具備一對多的特性。常用的總線主要包括I2C總線、RS422/485串行通信總線、SPI總線、CAN總線、以太網,各種總線技術的特性對比略——編者注,綜合比較,本文選擇CAN總線為系統的伺服總線。
CAN總線設計電路如圖3所示[5]。

圖3 CAN總線電路設計
液壓仿生四足機器人所配置的伺服控制器具有相應物理量的傳感檢測信號采集接口(如液壓缸位置傳感器、流量傳感器、油壓傳感器、溫度傳感器等),現場傳感器的信號都可以在傳感器選型階段指定為0~10 V電壓型和4~20 m A電流型。為了接口兼容,所選傳感器信號在接入伺服控制器之前都預先調理為0~10 V電壓型信號。對應傳感反饋接口,即為0~10 V電壓信號采集接口。本接口使用STM32F407的片內12位高速ADC來實現[6],配合集成運算放大器搭建阻抗和信號匹配電路,實現采集功能,原理圖如圖4所示。

圖4 伺服閥控制接口
本電路的功能有兩個,即阻抗匹配與電壓匹配。第一,將SA_IN1端輸入的電壓信號進行一級電壓跟隨放大,降低電壓型傳感器的輸出阻抗,進行阻抗匹配;第二,通過在運放輸出端配置電位計R10和1 kΩ電阻R11,通過分壓設計將輸出電壓由0~10 V轉換為0~3 V,匹配MCU ADC 0~3.6 V輸入電壓范圍。如果通過簡易增益后阻抗仍然不匹配,可在原輸出級再加入一級跟隨放大器,進一步降低輸出阻抗。
在A/D采樣部分中,系統伺服頻率為1 kHz,傳感器采樣頻率選擇10 kHz以上,才能有效還原目標信號,再加大一個數量級,用以對采樣結果進行數字濾波,傳感器采樣頻率確定為100 kHz,STM32F407片內ADC采樣頻率為2.4 MHz,可以滿足指標要求。使用DMA進行連續數據采樣,可以在一個伺服周期讀取全部緩存樣本進行數字濾波,節約CPU時間資源。
液壓仿生四足機器人的電液伺服系統使用國內某公司提供的HY130電液伺服閥,該伺服閥為噴嘴擋板兩級放大伺服閥,其電機械轉換裝置為力矩馬達,由力矩馬達驅動噴嘴擋板放大級,然后驅動功率級四邊閥閥芯。力矩馬達線圈內阻為80Ω,滿偏驅動電流為40 m A。
伺服閥控制接口是電液伺服控制系統的輸出端,輸出一個電流信號到伺服閥輸入級力矩馬達線圈,產生偏轉力矩,改變伺服閥前級噴嘴擋板閥的噴嘴間隙,通過液壓放大作用,驅動伺服閥功率級四邊閥閥芯移動,最終改變出油方向和流量,推動液壓缸以一定的速度向有桿腔或無桿腔方向移動。伺服閥控制接口的任務就是在精度要求內,輸出符合伺服閥輸入范圍的電流。STM32F407具有內部的DAC,但是只有兩個通道,無法滿足本系統每個伺服控制器3通道輸出、控制機器人每條腿3個液壓缸的任務需要,因此本設計使用具有獨立外部DAC的DAC8565,支持4通道模擬輸出。DAC8586電路略——編者注。
通過DAC直接輸出的是高輸出阻抗、缺乏推挽能力的電壓信號,還需要經過運算放大器降低輸出阻抗,并設計恒流源,將電壓輸出形式轉換為電流輸出形式,直接驅動伺服閥輸入級。同時伺服閥控制需要雙向電流,放大電路不僅需要進行功率放大,還要將DAC輸出的直流電壓轉換為電流,原理圖如圖5所示。
至此,機器人控制系統的硬件部分設計完成,未經包裝的PCB電路板略——編者注。

圖5 電壓轉電流電路
液壓仿生四足機器人控制系統的軟件系統架構設計如圖6所示,根據硬件架構設計分為決策層、步態生成層、伺服控制器3個部分。決策層采集環境信息,生成決策,向下發送命令。步態生成層部分主要包括軌跡規劃算法(位置、速度插補)、工作狀態分析處理;伺服控制器共有4個,主要負責伺服控制算法,參數自整定及模糊自適應PID算法,傳感器信號采集處理3個部分以及伺服總線驅動、伺服閥控制接口驅動、傳感器反饋接口驅動等硬件驅動。

圖6 軟件功能圖
液壓仿生四足機器人的控制系統包含多個子系統,涉及分布式多傳感器信息采集、算法實現、數據通信等,屬于多任務、高復雜性的系統,并且任務間需要相互協調。同時,平臺對實時性提出很高要求,以滿足平臺工作時對外界激勵的快速響應。
采用無操作系統平臺的方式開發控制軟件,在多任務管理、事件管理等方面存在不足,因而采用多任務實時操作系統(RTOS),以分時方式運行多個任務,根據任務之間的優先級進行切換。實時操作系統優點是能夠管理多個任務,具有高實時性,當外界事件或數據產生時,能夠迅速接收,且控制系統能夠迅速作出響應,從而保證平臺的高效可靠工作。目前,實時操作系統主要有QNX、Linux、μC/OS-II、Vx Works等[7]。
綜合考慮,采用Linux作為嵌入式實時操作系統,在該系統平臺上開發相關軟件,不但能滿足整個控制系統軟件平臺性能要求,而且會大大縮短開發周期。
步態生成層在接收到決策層命令之后,生成步態,然后根據步態原始數據按照次樣條曲線進行插補運算。將數據通過CAN總線送達伺服控制器,伺服控制器通過參數自整定對系統響應進行測試,修改PID參數,模糊自適應PID可以對這個非線性、參數時變的系統進行穩定控制。同時伺服控制將采集到的傳感器信息再逐級返回到決策層,供決策層決策。
為了測試機器人控制系統的性能,分別進行了倒置的半體節實驗和整體性能實驗。試驗中模擬整個通信過程,使用PC機發送運動指令,決策層接收命令后向下發送給步態生成層,步態生成層對步態插補,再向下發送給伺服驅動器。同時伺服控制器采集液壓缸位置信息,再逐級上傳給PC,保存數據以便后期分析。
為了給機器人整機實驗積累經驗,首先進行機器人半體節的倒置實驗,該實驗的目的是驗證通信是否通暢和了解機器人伺服驅動的能力。實驗場景略——編者注。機器人半體節實驗表明,控制系統的通信十分通暢,伺服驅動系統亦能滿足機器人的運動要求。
在進行機器人半體節試驗后,開始對控制系統整體性能進行全面檢驗,將控制系統搭載在四足機器人身上,為了安全防護,特別設計了一個支架裝置,圖略——編者注,機器人在15 MPa壓力,按1 Hz的步頻進行對角小跑實驗。實驗結果表明,機器人以小跑步態順暢運動,控制系統能夠滿足四足機器人的運動要求。
根據液壓仿生四足機器人的結構特點、作業條件和工作特性,設計了一種分層和分布式系統相結合的控制系統架構。液壓仿生四足機器人半體節和整機的運動實驗結果表明,機器人能以給定步態順暢運動,充分表明所研究的控制系統能滿足四足機器人的運動要求。
編者注:本文為期刊縮略版,全文見本刊網站www.mesnet.com.cn。
[1]殷勇華,卞新高,汪赟,等.基于FPGA的四足機器人控制系統[J].制造業自動化,2014(20).
[2]榮學文.SCalf液壓驅動四足機器人的機構設計與運動分析[D].濟南:山東大學,2013.
[3]蘇曉東,羅慶生,李華師,等.仿生四足機器人控制系統設計[J].機械設計與制造,2013(2).
[4]范甜甜,俞志偉,楊屹巍,等.基于STM32F103 VET6的四足機器人控制系統設計[J].機械與電子,2012(12).
[5]吳鑫,齊鉑金,吳紅杰.基于CAN總線的弧焊機器人控制系統的設計[J].制造業自動化,2000(7).
[6]張鵬翔,廖啟征,魏世民,等.液壓驅動的四足機器人控制系統研究[J].液壓與氣動,2011(1).