劉妍萍
(西安工程大學,西安 710600)
輪式機器人在探索未知領域方面有很大的優勢,其應用已從工業延伸到服務業、教育、國防等領域,輪式機器人在各個領域的應用已經對人類社會的生產和生活產生了積極而深遠的影響。在輪式機器人的實際應用環境中,各種不確定性因素影響著控制系統的性能,甚至使控制系統不穩定,降低了控制精度。車輪移動機器人是一個典型的非完整控制系統,在考慮輪滑的運動模型時,不可避免地要考慮輪轂的滑移系數,因為車輪一旦發生滑移,若在復雜情況下,理想運動學控制器不再適用,則使其跟蹤精度降低,使其軌跡偏離預期軌跡。為此,應對輪式機器人的運動誤差進行控制。
目前已有相關學者對輪式機器人運動誤差控制器進行設計研究。文獻[1]提出基于黎卡提微分方程的移動機器人運動誤差控制研究方法,構建黎卡提微分方程,以此推導輪式機器人動力學方程。通過設計黎卡提微分控制器,推導機器人運動的相關狀態,實現機器人運動控制的穩定性;文獻[2]結合綜合位姿誤差控制方法,在機器人逆運動學模型基礎上,構建誤差傳遞矩陣模型,根據求解結果,確定機器人姿態,根據相關姿態數據,控制機器人運動狀態。然而,這兩種方法受到不確定性因素干擾,使得控制效果不理想,為此,結合滑模變結構,設計了一種輪式機器人運動誤差控制器。
輪式機器人運動誤差控制系統硬件結構是由基于TMS320F2812DSP、FB900C/E角度變送器、自校正角度變送器和陀螺組成的。該硬件結構分為俯仰通道和傾斜通道兩個通道,除了進動速度快或慢之外,其他情況相同。該系統的硬件結構如圖1所示。

圖1 控制器硬件結構示意圖
由圖1可知,陀螺儀是系統的控制對象,為系統提供電力;角度變送器由FB900C/E角度變送器實現角位移或線位移輸出,兩者共同組成系統的信號采集部分;采用TMS320F2812DSP作為控制系統控制器的電路板,用于控制整個系統各部分的工作狀態及各部件間的數據傳輸,并通過調整陀螺儀控制電壓,為系統各部分提供電平轉換。
雙框陀螺儀由兩個機架組成,分別為俯仰和傾斜機架,為交流力矩電機提供驅動力。扭矩電機可以接受的最大供電電壓為25 V的400 Hz交流電,通過改變電壓來控制電動機的速度,通過改變正負向功率來改變其方向。雙框式陀螺儀有3種控制方式,一是改變進動速度,二是改變陀螺儀框架的方向,三是改變的復位信號。采用自校正裝置,利用數模變換將陀螺儀兩通道進動角度位置轉換為比例交流信號,然后輸出。通過一個32孔插座,將陀螺儀自帶的內部信號進行采集和處理。
圖2中顯示了改變陀螺儀速度的程序控制放大器。

圖2 程控放大器電路示意圖
由圖2可知,該程控增益放大器電路由數據鎖存器74LS373、4SPST模擬開關MAX313、運放0P07 和一個電阻網絡組成。其功能是將 DSP輸出的數字量轉換為模擬量,即幅度可調電壓。通過選擇電阻網絡電阻R1~F4和電阻RI的阻值,經模擬開關4個通道的切換與組合,可得到15個不同的放大/衰減增益。此電路的輸入、輸出交流電壓幅值很小,可使信號在傳輸時保持電壓相位不變。該方法利用 DSP對給定的輸入值進行調節,進而改變陀螺儀的進動速度。
反饋部分采用FB900C/E角變送器作為傳感器,其內部采用自調節的陀螺儀作為檢測部件。利用對接收到的交流信號進行處理,可將陀螺儀兩個通道旋轉的角度轉換為角位移或線位移,并輸出模擬量或數字量。選取發送數位,即通過串口將陀螺儀的進動角以特定格式發送給DSP,由DSP程序從中提取進動角度值。角變送器分辨率為10位,用于360°角的檢測。如此,發射器至少能感覺到0.3°的角度位置進動。
FB900C/E變送器具有串口輸出RS232C和RS485,每次只能使用其中的一個,資料由串行端口傳送。發射機可以編號,以便主機能通過串口存取來自多個發射機的數據。傳送器串行通信協議有兩種選擇,一個是使用 ASCII碼,另一個是十六進制數。角位變送器存在兩種輸出模式,分別是數據連續輸出和指令單獨輸出。其中數據連續輸出指的是在串口處連續發送數據,而指令單獨輸出指的是通過上位機發送相關命令。因DSP2812在設計中使用了兩個串行接口,一種是用于與計算機通訊,另一種是用于采集兩個通道的角位置信號,所以本設計采用了 ASCII編碼的指令輸出。
選擇TI公司的C2000系列 DSP:TMS 320 f 2812。TMS320F2812程序空間與數據空間分離,CPU可同時存取程序和數據,有效提高了DSP的運算速度。采用 DSP采集陀螺儀的進動信號,調節控制電壓,實現與計算機的通訊,由于TMS320F2812芯片具有相應的存儲器控制系統,因此外部存儲器接口問題無需考慮。TMS320F2812正常工作所需的電壓包括兩個部分:1.8 V芯片核心電壓和3.3 V Flash電壓。該控制器還具備去耦合電容作用,一是可用于抑制電源產生的噪聲對數字信號處理機的正常工作;二是作為儲能電容器;三是可以濾除 DSP芯片工作時產生的高頻噪聲。
DSP用于控制整個系統各部分的工作狀態及各部件間的數據傳輸,根據滑模變結構誤差控制計算結果設置DSP指令,能夠實現數字信號的處理,將數字信號轉換為控制指令,輪式機器人運動誤差控制。
利用數字輸入來控制數字電位器,產生模擬輸出。數字電位器,也叫 CNC可編程電位計,是一種新型的 CMOS集成電路,取代了傳統的機械電位計(模擬電位計)。最常見的Max5432型數字電位計是一種是由Maxim公司制造生產的7位,且具有32個可選擇的螺桿,不容易丟失的線性數字電位計,它包括了7位的移位寄存器、數據鎖存器、電位器和控制時鐘邏輯電路。該數字電位計的控制主要包括3個部分,分別是晶片選擇(Circuit Select)、 DIN (Digital Input, DIN)、 SCLK (SCLK)。電路采用2.7 V至5.25 V供電,它的內部電阻上的電壓是由VDD和 VSS外部提供的。VDD和VSS的電壓應該在9 V以上,在31.5 V以下。這樣,Max5432就可以很好地選擇輸入電壓。另外,Max5432的外部線路也很簡單,該系統無需外部器件即可調整輸入電壓及輸出。
數字電位器芯片使用I2C串行總線作為接口,以400 kbps的數據通訊速度對芯片和電位計進行調速。當上電時,電可擦可編程只讀存儲器(EEPROM)能使滑動端回到上次關機時所儲存的位置。該裝置接收到的最大分電流能夠達到幾百微安或幾毫安,這與數字電位器的性能有關。數字電位器具備數控調整功能,能夠取代機械式電位計,是一種半導體集成電路,取消了傳統的基板和電阻。在自動控制過程中,能夠精準地測量電刷上的電阻。在系統控制過程中,也能夠精準地測量控制角度,并根據輸出的反饋信號,通過旋轉軸來調整輸出。數字電位器一般都有一個總線接口,它既可以用單片機也可以用邏輯電路來實現。
自整角機具有兩個自調節裝置和一個雙極型調節方式,它是一種利用自整定步進特性,可以把角變換成交流電壓的異步電動機。在伺服系統中,該裝置起到了位移檢測的作用。同時,它還可以進行遠距離的傳輸、轉換、接收、顯示等功能。通過導線連接的兩個以上的電機,能夠使兩個以上沒有機械連接的轉軸實現自轉或同步轉動,該過程的工作模式被稱為自調整模式。
在兩個自調整裝置中,一個是用來傳送角信號的,它的激勵線圈連接到一相交流電源上。另一個是利用角度信號,將角度信號轉換為感應電勢,由感應線圈所輸出,也就是自調節角度接收機。采用兩臺自調角機的定子上的全步進線圈組成一星形,三相的相位繞組構成環形。將單相 AC電流加到同步變頻器的勵磁繞組上,在兩個同步器的間隙處形成一個脈沖磁場,該脈沖磁場的幅值隨時間變化,脈動磁場使自整角傳感器產生了一個全步進線圈的相感電位。全階繞組的電勢最大值是由各相繞組的軸與激發線圈軸的相對位置決定的,全階繞組的電勢最大值是由各相繞組的軸與激發線圈軸的相對位置決定的。
n
階線性定常系統的相位變量形式,所構造的運動方程矩陣如下:
(1)
公式(1)中,a
和b
分別表示已知的常規參數。滑模變結構控制,存在如下不連續形式,可表示為:

(2)
公式(2)中,f
(x
)表示滑模切換函數,當λ
(x
)≠λ
(x
)時,滑模變結構控制律應滿足如下條件:
(3)
滑模切換函數也可稱為狀態向量的線性函數,其公式為:
f
(x
)=ε
x
+ε
x
+…+ε
-1x
-1+x
(4)
公式(4)中,ε
,ε
,…,ε
-1表示相變量參數。在n
維相空間中,滑模變結構控制滑動面可表示為:ε
x
+ε
x
+…+ε
-1x
-1+x
=0(5)
由于運動方程矩陣為相變量形式,所以為了保證滑模變結構模態控制階段的穩定,需選擇合理的相變量參數,使特征方程的所有特征根都具有負實數。
當滑模變形輪式機械手的運動軌跡達到轉換流型后,便會沿著它的運動方向繼續向前,這時,滑模變結構的輪式機器人的運動軌跡仍停留在轉換流形上,這就是所謂的“理想滑模”狀態。但在實際工作中,由于機械臂的慣性延遲,使其無法維持原有的運動軌跡,只能在接近轉換流形的地方來回移動,這就是所謂的抖振。為此,理想狀態下的滑模與實際情況滑模存在一定偏差。在理想情況下,當滑模變結構的輪式機器人進入滑模運動狀態后,由于滑模變結構的輪式機器人的運動軌跡停留在其上面,所以運動點趨近切換面的運行速率為0,為此可確定在輪式機器人上施加的力是等效或平均作用力。輪式機器人在滑模上運動的微分方程實質上是對滑模運動的一種極限狀態,在該狀態下,輪式機器人處于滑模運動狀態時,是無法用連續控制方式來實現非連續控制的。因此,在滑模變結構模態控制階段,使滑模切換函數f
(x
)=0,由此可得到:ε
x
+ε
x
+…+ε
-1x
-1=-x
(6)
抖振是滑模變結構控制研究中的一個重要問題,抖振的加劇會導致機器人的穩定偏差,從而對滑模變結構的性能造成一定的影響,而且還會不斷地消耗輪式機器人的能源。基于此該問題,提出了一種等效控制方法。利用指數逼近律,使機械臂在一定的時間內進入穩定的工作狀態,并能滿足輪式機械臂的良好的運動平順性,極大地減少了抖振;在滑模片狀態下,當移動點靠近切換表面時,移動速度為0時,滑模變結構模型的運動方程也為0,此時,由于不存在高頻率分量,使得滑模抖振更趨近等效控制,因而可以有效地防止滑模抖振。
基于此,構建的滑模變結構模態控制階段的運動方程矩陣可改寫為:

(7)
因此,在滑模變結構模態控制階段的動態行為可以由n
-1階狀態方程來表征。當控制器工作狀態穿越滑模面f
(x
)=0進入f
(x
)<0時,控制量λ
(x
)從λ
(x
)切換到λ
(x
)而達到條件公式(2),使得控制器狀態迅速穿越滑模面,并進入f
(x
)>0,由此完成了滑模面的滑變運動。充分考慮非線性時變系統,在狀態空間中,存在一個超曲面ε
為0,如圖3所示,可將其狀態空間分為ε
>0和ε
<0兩個部分。
圖3 滑模面的滑變運動示意圖
滑動模變結構與傳統控制不同,滑模變結構是一種不連續控制,甚至系統的“結構”在切換特性上是動態變化的。其主要目標是利用滑模變結構控制的不連續狀態設計狀態空間中的超平面,即在有限條件下按預定狀態軌跡連續改變系統結構。該系統的狀態逐漸滑向某一超平面的平衡點并最終移動到接近平衡點邊界的邊界區域,即滑模運動。一般而言,控制器狀態空間存在一個超平面ε
=0,這3個點分別為普通點,初始點和截止點,當它通過超平面的控制器,使其接近一個超平面時,如A點所示;當控制器的初始點靠近超平面時,將運動到超平面的兩邊,如B點所示;當控制臺在接近超平面的時候,切斷點從超平面的兩側移動到此點,如C點所示。滑動模變結構控制中,截止點相對于共同點和初始點具有特殊的意義。假如某一切面上的某一區域只有一個截止點,那么當系統移動到該區域時,就會被“吸引”到該區域的移動。所以,包含開關平面上所有截止點的區域稱為“滑動模域”,這一地區的系統性運動稱為“滑模運動”。滑動模變結構控制主要是通過控制目標來設計滑模切換面,使系統的狀態點向滑模切換面移動,從而最終實現控制目標。
DSP程序主要由主程序和定時中斷子程序組成。DSP程序流程如下所示。
步驟一:在DSP主程序中,首先對系統進行初始化,包括 CPU的初始化和相關外設的初始化。在 DSP主程序中,需要對系統進行初始化,并對 CPU及外部設備進行初始化。其次,對數字式電位計進行初始化,也就是把電位計的滑臂放在規定的位置。最后,通過啟動計時器中斷來接收主機的運行指令。一旦接到指令,計時器就會被觸發,并進入一個死循環。在中斷時限結束時,將會執行一個中斷子程序;在接收到一個系統終止命令時,停止該系統的運行。
步驟二:啟動數字電位計,也就是將電位計的滑動臂放在指定位置。數字式電位計和機械式電位計一樣,具有很好的實用價值。3個端子中的兩個與電阻器的兩個端子相接觸,而另一個(也就是電阻器)可以將不同的點連接到一個電阻的長度,由此設置了一個期望的電阻值。區別于機械電位器和數字電位器,它是對電阻型接觸的控制。當數字電位計由串行總線或數字控制線路來實現時,機械電位計是用來實現電阻觸點的連接的。數碼可程式電位計的體積也較小,使得它更適用于便攜使用。該裝置具有新的接口,便于與系統集成,并能直接由微處理器進行控制。另外,它對干擾的影響也不是很大。DSP電位儀的電阻接觸位置可以被儲存在不同的易失性存儲器或電位儀自身的非揮發存儲器中,這樣以前的設定信息就不會丟失,而在系統重新調節后,又會重新進行。
步驟三:開啟計時器,接受上位機系統運行命令,如果接收到打開定時器的命令,進入循環,中斷時間執行中斷子程序。
步驟四:當接收到停止指令時,停止系統移動。
步驟五:將讀取指令發送到角度變送器,并接收其反饋數據;
步驟六:在誤差控制的基礎上,將滑模變結構控制指令送至數字電位器。把陀螺儀的運行數據最終發送給 PC。
綜上,可得出控制器的軟件流程圖如圖4所示。

圖4 控制器的軟件流程圖
由圖4可看出,首先構造滑模變結構控制器的運動方程矩陣,設計滑模變結構控制律,控制機械臂在一定的時間內進入穩定的工作狀態,通過控制目標來設計滑模切換面,使系統的狀態點向滑模切換面移動,并設計DSP程序流程將控制指令傳輸至從而最終實現控制目標。
為驗證基于滑模變結構的輪式機器人運動誤差控制器設計的有效性,以圖5所示輪式機器人為對象進行輪式機器人運動誤差控制器實驗。

圖5 輪式機器人實驗對象
分別采用分別使用基于黎卡提微分方程、綜合位姿誤差控制優化仿真方法和基于滑模變結構的誤差控制器對輪式機器人運動軌跡進行跟蹤控制,實驗選定的目標是直線軌跡。輪式機器人機身幾何中心到兩輪中心的距離均為0.2 m,輪子半徑均為0.25 m,車身總質量為5 kg。
在直線軌跡誤差控制實驗中,圖6顯示了關節1、2的軌跡跟蹤及控制輸入曲線。

圖6 關節1、2軌跡跟蹤和控制輸入曲線

圖7 3種方法關節1、2軌跡跟蹤和控制輸入結果對比
由圖6可知,未經過處理的曲線受到不確定性因素干擾,關節1、2軌跡跟蹤和控制輸入曲線均出現毛糙現象。
基于此,分別使用基于黎卡提微分方程、綜合位姿誤差控制優化仿真方法和基于滑模變結構的誤差控制器,對比分析輪式機器人運動誤差控制情況,對比結果如圖7所示。
由圖7可知,使用基于黎卡提微分方程的控制方法,關節1位置控制力矩在0.2~1.6 s內,最大值為250 N·m,最小為0 N·m.關節2位置控制力矩在0.2~1.6 s內,最大值為550 N·m,最小為200 N·m;使用綜合位姿誤差控制優化仿真方法,關節1位置控制力矩在0.2~1.6 s內,最大值為100 N·m,最小為-150 N·m。關節2位置控制力矩在0.2~1.6 s內,保持不變,力矩值為200 N·m;使用基于滑模變結構的誤差控制器,關節1位置控制力矩在0.2~1.6 s內,最大值為0 N·m,最小為~150 N·m。關節2位置控制力矩在0.2~1.6 s內,保持不變,力矩值為0 N·m。
通過上述分析可知,使用基于黎卡提微分方程、綜合位姿誤差控制優化仿真方法受到不確定性因素干擾,沒有消除滑模抖振,且在跟蹤時間范圍內,關節運動軌跡與實際運動軌跡不一致;使用基于滑模變結構的誤差控制器通過自適應調整參數后,滑模抖振得到明顯消除。且在短時間內,關節運動軌跡與實際運動軌跡一致。
分別使用這3種方法,對比分析輪式機器人運動誤差控制精準度,對比結果如圖8所示。

圖8 3種方法輪式機器人運動誤差控制精準度對比
由圖8可知,使用基于黎卡提微分方程、綜合位姿誤差控制優化仿真方法存在軌跡跟蹤誤差,最大誤差分別為0.3 rad和0.6 rad。使用基于滑模變結構的誤差控制器,最大誤差為0.01 rad。
針對傳統滑模變結構變結構控制方法受到不確定性因素影響而出現控制效果不佳的問題,設計了一種基于滑模變結構的運動誤差控制器,消除了常規滑模變結構控制的趨近模態環節,模擬結果表明該方法是有效的。該方法的研究是在系統初始狀態下進行的,使得滑模面在很大程度上取決于系統工作狀態,因此,該方法不具有普適性。而且,該方法受到環境噪聲影響,使得系統偏離了滑模面,引起強烈抖振。因此,在今后研究進程中,需加入一種神經網絡來干擾信號,并設計補償控制器,使滑模顫振得到一定的抑制。