徐威,梁全,趙文川
(沈陽工業大學 機械工程學院,沈陽 110870)
走鋼絲機器人能夠替代人類在野外、未知及危險復雜環境中進行作業,從而在節省人力、物力的同時,提高作業安全性[1-3]。2009年北京師范大學宋杰文等[4]基于模糊模型對走鋼絲機器人進行控制研究,雖然能夠驗證控制算法具有準確性,但未能制作走鋼絲機器人的物理樣機;2012年北京郵電大學盧光磊等[5]基于轉動桿和平動桿耦合原理試制出走鋼絲機器人,但是結構復雜、操作有難度并且穩定性也有待提升;2017年北京郵電大學莫新虎等[6]對走鋼絲機器人進行動力學建模,并通過仿真分別驗證4款控制器具有有效性,然而沒有對控制器進行實物測試;2020年弗吉尼亞大學Guo等[7]對兩輪自平衡機器人的穩定性進行控制算法建模和求解,提出一種最優化的控制方案。
本文在他人理論和應用研究的基礎上,以平衡桿原理研究走鋼絲機器人的平衡穩定性,對其力學原理進行建模,推導出相關理論模型,再利用MATLAB工具箱SimScape對走鋼絲機器人模型進行仿真分析,建立走鋼絲機器人虛擬樣機,在驗證理論具有正確性的同時,研制出走鋼絲機器人實驗樣機,進行走鋼絲實驗。
對他人研究成果進行綜合比較和總結[8-11],在簡化平衡桿走鋼絲機器人動力學模型的同時,采用平衡桿原理作為研究機器人的主要平衡手段,得到原理圖如圖1所示。
根據圖1可知,為了能夠模仿機器人在鋼絲上穩定站立,將車體部分簡化成連桿L1,通過鉸鏈將連桿L1與地面連接,將機器人平衡桿簡化成連桿L2,通過鉸鏈將連桿L2質心與連桿L1連接。

圖1 走鋼絲機器人動力學建模原理圖
機器人的動力學模型可以被表達為

將式(1)展開成兩個獨立的微分方程,可得:

根據線性化方程(4)可知,機器人的傾角θ1只與控制轉矩T相關。因此,可以將這個復雜的系統看成單輸入、單輸出控制系統。
為了減少試制樣機的調試時間,避免復雜理論推導,提高開發效率,本文對走鋼絲機器人進行PID控制研究。通過計算機仿真建立虛擬樣機,在虛擬環境中調試PID參數,再在實驗中參考仿真結果進行參數設置,使機器人保持直立狀態。需要注意的是,可以采用多種仿真平臺進行虛擬樣機建模,由于MATLAB的SimScape工具箱更適合將機電系統和控制算法仿真相結合,有利于走鋼絲機器人的項目開發,因此選擇MATLAB的SimScape工具箱作為仿真平臺。走鋼絲機器人共有2個轉動關節,通過SimScape模塊庫中的“Revolute Joint”(轉動關節)元件對關節進行設置,采用“Solid”(實體)元件對機器人主體進行建模,最后再根據“Rigid Transform”(剛性坐標變換)對機器人各部分進行位置調整。其中,為了提高仿真的真實性,加入了白噪聲干擾模塊,最終獲得走鋼絲機器人的SimScape仿真模型如圖2所示。

圖2 走鋼絲機器人SimScape仿真草圖
通過Simulink中的PID模塊對機器人進行控制,并記錄機器人傾斜角度和經過PID校正后的輸入轉矩。其中,設置機器人的初始傾角為5°,通過多次試湊,最終確定的PID參數的比例參數為5,積分參數為1,微分參數為0.5。另外,由于仿真模型與實際存在差異,PID參數還需要在樣機實驗中進行調整。根據所確定的PID參數,運行SimScape中所建立的仿真模型,繪制機器人的傾斜角度和平衡桿驅動電動機轉矩隨時間的變化曲線如圖3所示。

圖3 走鋼絲機器人傾斜角度隨時間變化曲線
獲得走鋼絲機器人動力學仿真動畫截圖如圖4所示。
由圖4可知,能夠表現出機器人的姿態修正過程,起初機器人平衡桿左右傾斜嚴重,隨著平衡的逐漸調整,機器人本體左右傾斜程度逐漸趨于平緩,直至最終穩定。

圖4 走鋼絲機器人動態仿真動畫截圖
為了驗證走鋼絲機器人理論設計的正確性,需要研制實驗樣機,主要可分為機械、電氣及軟件部分。
由于亞克力是一種近似塑料的透明材料,其質量輕、美觀性好,用戶只需提供二維圖樣便能夠加工,因此機身結構采用亞克力加工制造。為了充分利用空間,有利于安排更多的電氣元件,小車整體劃分成多層結構,層與層之間的支撐部分采用帶螺紋銅柱,銅柱的兩端分別帶螺紋孔和外螺紋結構,可以頭尾相連,其余的連接部分采用螺釘、螺帽連接。需要注意的是,機器人平衡桿部分是平衡的主體,平衡桿和控制電動機通過自制連接器進行連接,不僅能夠方便拆卸和預調整平衡重心,而且可用一臺直流電動機控制平衡桿轉角。此外,機器人小車的車輪采用鋁合金材料車削加工,通過支架直接安裝在兩臺直流電動機上,控制小車前進和后退。其中,車輪個數為2個,并且2個車輪都可以是主動輪,不僅能夠解決小車的動力問題,同時兩個車輪前后布置,還能夠解決小車在前后方向上的傾倒問題。
SolidWorks中走鋼絲機器人及系統整體結構效果圖如圖5所示。

圖5 走鋼絲機器人機械結構
為了能夠使控制算法得以實現,電氣部分采用Arduino 單片機作為控制中樞。由式(4)可知,系統的輸出變量是機器人的傾角,控制變量是電動機的轉矩,因此能夠使系統得到機器人的實時傾角。其中,為了得到機器人的傾斜角度,采用MPU-6050三軸加速度陀螺儀測量機器人的傾角,能夠實時反饋給Arduino單片機,單片機再通過PID算法,計算輸入給直流電動機,進而產生輸入轉矩。另外,小車的前后運動是由L298N驅動控制直流電動機完成的。
系統軟件部分采用C語言進行編寫,并調用Arduino開源庫函數,能夠實現的主要功能包括:直流電動機的PWM轉速控制;紅外線遙控;上下位機串口通信;PID控制算法;卡爾曼濾波算法。其中,通過PID算法能夠提升小車的平衡穩定,使其姿態平穩;通過卡爾曼濾波算法能夠檢測小車左右傾倒的姿態問題。
將機械、電氣和軟件部分進行整合,最終研制出走鋼絲機器人樣機,如圖6所示。

圖6 機器人樣機運行試驗圖
本文對走鋼絲機器人建模、仿真及控制進行了系統研究,研制出結構簡單、實用性強、可操作性強、系統穩定性更高的走鋼絲機器人,并且研究過程和方法能夠減少試制樣機的調試時間,避免復雜理論推導,提高開發效率。
1)根據所簡化的走鋼絲機器人,通過平衡桿原理研究運動平衡穩定性,建立了走鋼絲機器人動力學系統模型。
2)根據所建立的走鋼絲機器人虛擬樣機,進行PID參數調試,確定比例參數為5,積分參數為1,微分參數為0.5。再根據所確定的PID參數,運行SimScape中所建立的仿真模型,繪制出機器人傾斜角度和平衡桿驅動電動機轉矩隨時間變化的曲線。
3)給出走鋼絲機器人機械、電氣及軟件的設計方案,成功研制并調試出走鋼絲機器人樣機,使機器人在鋼絲上實現穩定行走。最終能夠驗證本文研究方法具有可靠性,對開展機器人控制系統研究有一定的借鑒作用。