張洋洋,李翔龍,陳 兵
(1.四川大學 機械工程學院,四川 成都 610065;2.東方電氣集團中央研究院,四川 成都 610097)
隨著物聯網技術、先進制造技術和5G等技術的不斷發展和應用,傳統制造向網絡化和智能化發展的趨勢更加顯現。如何整合制造加工過程中各個終端,使其信息互聯,成為面向智能制造轉型關鍵。5G技術的出現為其提供了網絡通信基礎,5G的大寬帶和低時延的特性,使得遠程控制能夠滿足實時控制的需要[1]。面向5G技術的邊緣計算,將計算能力下放到靠近數據端處,在靠近數據端處處理數據,能夠提供更低延遲和降低網絡傳輸的負擔[2]。結合5G和邊緣計算技術,實現機器人遠程控制,能夠使企業對生產制造過程做出方便和迅速的反應,以滿足智能制造的需要。
現如今的商用的機器人控制器,例如ABB、KUKA和FANUC等,其控制性能好,但存在控制成本高昂和開放性不足等缺點。對于通用的機器人控制器已有一些研究。文獻[3]設計開發了在實時操作系統基礎上,集成軟PLC和機器人運動控制功能模塊,并通過實時工業以太網總線通信的通用機器人控制系統。文獻[4]使用CODESYS軟件,設計了一個符合PLCopen標準的通用機器人軟件框架,并通過實驗驗證了其滿足設計精度和實時性要求。但上述研究對機器人的5G網絡遠程控制有所欠缺。
為了實現工業機器人5G網絡遠程控制,設計了基于5G和邊緣服務器的機器人控制系統。在該系統中,控制器被分為三部分:用戶交互、現場控制器和邊緣控制器。操作人員通過網頁界面與邊緣控制器進行交互,并下達控制命令。邊緣控制器被部署在邊緣服務器中,獲取來自用戶和現場控制器的數據,根據數據對現場控制器進行二次控制命令的下達。現場控制器獲取來自邊緣控制器的控制命令,控制機器人的運動。最后,搭建實驗平臺,并進行了實驗驗證。
機器人網絡控制系統由用戶交互、邊緣控制器和現場控制器三部分組成,其架構示意圖如圖1所示。邊緣控制器被部署在靠近現場控制器的MEC邊緣服務器中。操作人員使用電腦、筆記本和平板等終端設備,通過網頁進行交互,將運動控制信息發送邊緣控制器。邊緣控制器解析控制信息,進行數據處理后,再將二次控制信息發送現場控制器。現場控制器通過CPE接入5G網絡,接受來自邊緣控制器的二次控制信息,根據控制信息控制機器人運動。

圖1 機器人網絡控制整體架構示意圖
在交互的界面中,即遠程控制界面中,操作人員進行路徑信息的數據輸入和顯示當前機器人的位置信息,并通過5G網絡發送給邊緣控制器。在邊緣控制器中,解析路徑信息、進行正/逆運動求解和機器人的軌跡規劃。在5G網絡環境下,通過ModbusTCP協議,邊緣控制器獲取來自現場控制器的實時數據,根據對現場控制器數據和操作人員控制信息的處理結果,將規劃的軌跡數據和其他二次控制命令發送給現場控制器。現場控制器采用leetro i5運動控制器,它接受來自邊緣控制器的軌跡規劃數據和二次控制命令,進行邏輯控制、關節電機控制和I/O輸入輸出。其控制系統軟件架構示意圖如圖2所示。
采用網頁+邊緣控制器+現場控制器的架構,將邊緣控制器部署在邊緣服務器上,依托于邊緣服務器提供的計算能力,能更好地進行機器人的軌跡規劃和數據處理。采用網頁交互的方式對機器人進行遠程控制,使得操作人員的操作更加便捷。而現場控制器專注于電機控制、邏輯控制和I/O輸入輸出,降低了現場控制的所需要的計算能力、現場控制成本和提高了遠程控制的實時性。同時邊緣+現場控制器的架構,能讓機器人的控制接入企業其他系統,方便企業對生產制造過程做出迅速的反應。
關節空間軌跡規劃是在已知起始坐標點和目標坐標點情況下,通過逆運動求解得到每個關節的期望角度,然后采用某種插值方法,使得關節從起始關節角度平滑過渡到期望關節角度。關節空間下的軌跡規劃適用于對末端軌跡要求低的場合,例如點到點運動。常用的插值方法有三次多項插值方法、五次多項插值方法和樣條軌跡規劃。樣條軌跡規劃求解過程復雜,三次插值方法求解簡單,但其加速度不連續,所以采用五次多項式插值方法。一個五次多項插值函數為[5]:
θ(t)=a0+a1t+a2t2+a3t3+a4t4+a5t5
(1)
根據邊界約束條件:
(2)
則可求得:
(3)
2.2.1 空間直線軌跡
在笛卡爾空間中軌跡規劃包含三部分:直線軌跡規劃、圓弧軌跡規劃和姿態規劃。機器人的直線規劃是已知起始點S(xS,yS,zS)和目標點T(xT,yT,zT),通過關節的一系列運動,使機器人末端從S點到T點的運動軌跡為一條直線。為了使得S點到T點的機器人末端軌跡為一條直線,在S點到T點的線段之間,指定許多密集的插值點,并使用平滑函數將點與點之間進行連接,那么機器人末端的軌跡將為直線。
起始點S(xS,yS,zS)到目標點T(xT,yT,zT)的距離L:
(4)

(5)
2.2.2 空間圓弧軌跡
圓弧軌跡規劃和直線軌跡規劃類似,同樣需要在軌跡上指定密集的分散點,不同的是軌跡規劃需要已知空間中的三點P1(x1,y1,z1),P2(x2,y2,z2)和P3(x3,y3,z3),且三點不在同一條直線上。然后根據點P1、P2和P3可以確定一個平面,并在此平面上求得P1P2和P2P3的中垂線的交點,即為圓心坐標O(x0,y0,z0)。則圓弧半徑為:
(6)
在進行軌跡規劃時,需要將世界坐標系下的坐標轉換到由點P1、P2和P3確定的平面上,即圓弧所在的平面上。則世界坐標系中的插值點(x,y,z)與空間圓弧坐標系的點(x′,y′,z′)對應關系為:
[xyz1]T=T[x′y′z′ 1]T
(7)
式中,T為4×4轉化矩陣,文獻[6,7]給出了矩陣T的求解方法,在此不做贅述。式中x′、y′和z′分別為:
(8)
式中,α為圓弧的弧度值。在計算弧度值θ時,有θ>π和θ≤π兩種情況。當θ≤π時:
(9)
當θ>π時:
θ′=2π-θ
(10)
(11)
2.2.3 姿態規劃
完整的描述機器人末端在空間的位姿,除了末端坐標位置外,還需要其在空間中的姿態。在進行姿態插值中,采用單位四元數的插值方法,該方法可以避免歐拉角插值的“萬向鎖”問題。一個單位四元數Q可表示為:
Q=[q1q2q3q4]T
正確認識馬克思主義社會科學方法論對研究思想政治教育的指導作用,必須把握好以下兩點:恩格斯曾經指出:“馬克思的整個世界觀不是教義,而是方法。它提供的不是現成的教條,而是進一步研究的出發點和供這種研究使用的方法。”馬克思主義社會科學方法論雖然可以指導思想政治教育的研究,但我們并不能把它當作教條,在研究過程中將其生搬硬套,我們應該遵循具體問題具體分析的原則,一切以時間地點條件為轉移。所以,二者是緊密相連的,切記不可將其分開去談各自的作用與貢獻。
(12)
對于起始姿態矢量Q0和目標姿態矢量Q1,一般的線性插值:
r=Q0-λ(Q1-Q0)
(13)

SLERP(Q0,Q1,λ)
(14)
式中,θ為Q0與Q1之間的夾角,可以通過點積求得。
當四元數Q0·Q1<1時,即四元數之間的夾角大于90°時,使用上述插值方法,插值會沿著路徑遠的方向進行,通過將一個四元數取反的方式,可以解決上述問題,并且不會改變最終的姿態。
當sinθ趨近于0時,式(14)為:
SLERP(P0,P1,t)=(1-λ)Q0+λQ1
(15)
邊緣控制器與現場控制器之間的通信,通過5G網絡環境下的Modbus TCP協議實現。Modbus協議是工業領域通訊的標準之一,TCP協議是一種面向連接和可靠的網絡傳輸層協議。Modbus TCP協議將Modbus作為TCP/IP模型的應用層協議,與TCP/IP網絡協議結合,實現工業網絡通信。Modbus TCP協議采用主/從模式,即主設備主動進行請求,從設備對請求進行應答。在機器人邊緣控制體系中,邊緣控制器作為主設備,運行TCP客戶端,向現場控制器發送請求;現場控制器作為從設備,運行TCP服務端并對邊緣控制器的請求做出應答。客戶端與服務端的通信流程圖如圖3所示。

圖3 軌跡規劃流程圖

圖4 Modbus TCP通信流程圖
雖然5G網絡具有較低的時延,但在實際5G網絡環境測試中,其空口延遲在5 ms以上。而現場控制器的控制周期為1 ms,直接將數據發送到現場控制器,會導致運動控制的位置不準確。將所有數據發送到現場控制器,數據量過大會出現內部存儲空間不足的現象,導致部分位置數據丟失。針對此問題,設計了雙緩沖區機制。雙緩沖區機制示意圖如圖5所示。

圖5 雙緩沖機制示意圖
在現場控制器中,劃分了兩塊緩沖區,緩沖區A和緩沖區B。開始時,邊緣控制器向緩沖區A中寫入數據,當寫入完成時,現場控制器讀取數據,根據數據進行運動控制,邊緣控制器再向緩沖區B中寫入數據。等待A中數據被全部讀取完成后,現場控制器讀取B中數據,同時邊緣控制器向A中寫入數據。交替進行上述過程,直至數據被完全寫入和讀取。
操作人員通過網頁界面進行交互,這種交互方式使得操作人員能夠使用手機、電腦和平板等接入5G網絡的終端,方便地進行機器人的遠程控制。交互界面包含登錄、運動指令輸入和機器人運動界面。操作人員只有通過用戶名和密碼進行登錄后,才能進行遠程控制,登錄界面如圖6所示。在運動指令輸入界面中,進行多段機器人運動指令輸入和顯示當前位姿信息和關節角度信息,其界面如圖7所示。運動指令標準格式為:運動指令+中間點+目標點+目標姿態+時間或者速度,運動指令包括點到點運動moveJ、直線運動moveL和圓弧運動moveC。一段圓弧的標準指令格式示意圖如圖8所示。在機器人運動界面中,進行機器人的點到點運動、直線運動、圓弧運動和顯示當前的位姿信息,機器人運動界面如圖9所示。

圖6 登錄界面 圖7 運動指令輸入界面

圖8 運動指令示意圖

圖9 機器人運動界面
搭建現場驗證平臺進行驗證,包含一個leetroi 5運動控制器、3個I/O從站和6個電機。運動控制器和I/O從站之間通過EtherCAT連接。實驗所采用的機器人D-H參數如表1所示。

表1 連桿D-H參數表
為了測試機器人的點到點、直線和圓弧運動,給出了6個位置點P1-P6,其位置坐標和單元四元數表示的姿態信息如表2所示。其中,點P1到P2為點到點運動;P2、P3和P4為圓弧運動,P3為中間點;P4到P5為直線運動;P5到P6為點到點運動。

表2 位置點的坐標和姿態信息
通過網頁界面,輸入上述運動指令,并發送給邊緣控制器。邊緣控制器進行軌跡規劃后,并下發軌跡數據給現場控制器,現場控制器根據軌跡數據控制電機運動。從MultiProg Express軟件中,到導出各個關節的位置數據,如圖10所示。各個關節電機目標位置與理論位置誤差曲線如圖11所示。從圖10和圖11可知,電機運動過程連貫,且位置誤差小于0.03°。

圖10 各關節位置曲線圖

圖11 關節位置誤差曲線圖
為了實現機器人在5G網絡環境下的實時控制,提出了用戶交互+邊緣控制器+現場控制器的機器人遠程控制系統,并搭建了實驗平臺進行了驗證。實驗結果表明,操作人員能通過網頁進行運動指令的輸入,遠程控制機器人進行點到點、直線和圓弧運動。現場控制器實時控制電機進行上述運動時,電機運動過程連貫,且關節電機目標位置于理論位置誤差小于0.03°,驗證了該控制系統的可行性。