陳公興
(廣東科貿職業學院 信息學院,廣東 廣州 510430)
機器人作為目前工業、商業以及農業領域中重要的工具,其通過中心控制系統,實現不同領域中的工作任務。機器人運動控制的高效性是工業機器人技術發展中所面臨的難題。為解決此類問題,國外通常將機械結構模塊的控制與機器視覺模塊的控制相結合,實現三維空間下的運動控制;而國內學者在抗干擾和保持系統性能穩定的處理方面有充分優勢。其中,為了優化機器人工作效果,文獻[1]、文獻[2]將控制系統分為3個環節,分別為命令下達、接收以及執行環節。但在后續應用過程中,發現該系統距離預期目標有一定差距,存在系統補插效果不佳、機器人控制的可靠性和精度低的問題。
因此,研究基于伺服驅動的機器人控制系統精度控制與可靠性優化,具有重要的意義和應用價值。伺服驅動是工業機器人、數控機床等機械控制的關鍵技術之一,具有數字化的特點[3]。本研究根據伺服驅動硬件與軟件特點,優化機器人末端執行器的控制效果,進而提高傳統系統的控制精度和可靠性,為機器人的精準控制提供更加完善的技術支持。
當驅動裝置的輸出慣量無法實現負載所需慣量要求時,會發生驅動裝置振動的現象;當不匹配計算而直接下達驅動指令時,伺服電機的控制精度會下降。由于電機經常處于高轉速工作狀態,因此應加入減速器控制轉速,加強電機運轉的穩定性;當利用減速器優化控制系統時,應考慮減速器的傳動比;而機電時間常數作為額定激勵電壓和空載情況下電機由靜止狀態加速到空載轉速所需的時間,可以衡量電機反應速度。因此優化機器人控制系統的精度和可靠性,需要保證伺服驅動電機具備慣量匹配、負載計算與匹配、傳動比、最高轉速以及機電時間常數最優[4-5]。通過上述分析與設定,為機器人的各個關節選擇合適的驅動電機驅動器,如表1和表2所示。

表1 機器人各個關節選用的伺服驅動電機型號

表2 機器人各個關節選用的伺服驅動電機參數
此次設計采用的伺服電機末端旋轉編碼器為17位絕對式編碼器,利用該編碼器測量光電碼盤各道刻線,可以得到唯一的位置信號,沒有累計誤差。
完成驅動電機選型工作后,再設計一套驅動電機和驅動器的連接方案。
根據驅動電機和驅動器的各項基本參數,設計驅動電機和驅動器連接方案。控制硬件環境如圖1所示。

圖1 驅動電機和驅動器連接設計圖
根據圖1可知,伺服驅動器有個7段LED顯示面板,用來顯示輸入、輸出信號變化次數以及絕對式編碼器信號。利用“M”和“S” 按鈕設定驅動器參數、寫入模式以及功能模式。依據基本控制算法控制驅動器,實現電機的運轉[6],實現對不同負載特性下增益等參數的調整,進而優化整個控制系統。
由于移動速度應具有均勻性,且機器人在空間中的直線運動軌跡需要定位伺服控制,系統插補速度控制受限。因此,需要對直線軌跡進行插補,控制機器人在每一控制點處的位姿[7]。假設三維空間中,存在一個全局坐標系,令機器人的末端執行器,沿著直線從任務點D1點到達任務點D2。如果兩個任務點的坐標分別為(x1,y1,z1)和(x2,y2,z2),那么根據三維空間中機器人的活動軌跡,計算兩個任務點之間的有效距離,公式為
(1)
利用矢量的形式,描述OD1和OD2兩個任務點,則存在
(2)
則根據上述變化形式和式(1)的計算方程,得到始末兩點距離為
D1D2=(x2-x2)i+(y2-y2)j+(z2-z1)s
(3)
式中:i、j、s表示補插坐標[8]。則上述計算結果的單位方向矢量為
(4)
因此,假設M為插補點數,則在機器人末端執行器的直線軌跡上插入任意一個插補點Di為
(5)
式中12.2 機器人圓弧軌跡插補
在全局坐標系中,還存在圓弧軌跡,弧上有3個不共線的隨機節點,這些點的坐標分別為:A(xA,yA,zA)、B(xB,yB,zB)以及C(xC,yC,zC)。假設圓弧插補的次數為N,則根據機器人末端執行器在三維空間中的圓弧軌跡,計算圓心、半徑和圓弧平面的法向量。假設確定平面ABC,則經過三點的圓的計算公式為
d11x+d12y+d13z+d14=0
(6)
已知線段AB的垂直平分面為S1,線段BC的垂直平分面為S2,則兩組數據的計算方程為
(7)
根據空間幾何基本定理可知,平面ABC、S1、S2的交點為圓心[10]。設置該點為三角形外接圓的圓心。假設圓心坐標為O′(xO,yO,zO),則根據式(6)和式(7),得到所求圓弧的半徑:
(8)
同理,默認平面ABC的法向量為n,計算圓心角。設弧ABC的圓心角為α,E為與弧ABC在同一圓上另外一條弧線上的隨機節點,令β=∠ABC,θ=∠AEC,則根據圖2中的各項參數,計算圓心角[11]。

圖2 圓心角示意圖
由基本數學定理可知,圓的內接四邊形對角之和為180°,所以θ=1800-β。因此利用余弦定律,計算圓心角α的值,公式為
(9)

(10)
式中:a、b、d表示Wi點弧上的切向量坐標;K、Δq表示常量[12]。至此,按照上述計算過程,完成機器人圓弧軌跡插補工作。
通過上述兩個插補設計,利用模糊控制算法降低機器人運動誤差。
首先,定義語言變量函數和語言值隸屬度。其中,語言變量用模糊集合表示。假設機器人誤差的語言變量為u;誤差變化率的語言變量為p;比例增益為ΔZ1;積分增益為ΔZ2;微分增益為ΔZ3。因此定義上述5個變量的模糊子集為負大、負中、負小、0、正小、正中、正大,則要求這些參數的范圍在0~1之間[13]。根據專家經驗和相關文獻,設置隸屬函數的取值表,如表3所示。

表3 隸屬度函數值表
其次,定義規則庫。描述模糊條件語句,用“或”連結多個模糊條件語句,形成模糊規則。當模糊條件語句的輸入、輸出語言變量已知,把模糊規則轉變成相應的數值,建立比例增益為ΔZ1、積分增益為ΔZ2、微分增益為ΔZ3的模糊規則表,實現對模糊規則庫的建立。
最后,對照系統輸入變量和建立的規則庫,比較系統輸入與輸出關系[14]。因此令誤差和誤差變化率的語言變量均等于負大,則比例增益ΔZ1的模糊關系為
(11)
參考表3中的數據,則根據隸屬度函數fu,計算模糊關系,則ΔZ1的輸出結果為
∪ΔZ1=[f負大·f負大]T⊕G
(12)
式中:⊕表示模糊關系;f負大表示語言變量的負大模糊子集。依據模糊推理得到模糊控制下系統的輸出值,并使用加權平均法進行模糊判決[15]。至此,在伺服驅動的要求下,完成對機器人控制系統的精度控制與可靠性優化。
選擇工業機器人作為實驗測試對象,利用此次設計的控制系統,操控該機器人的活動軌跡。
為了測試控制系統的控制精度和可靠性,根據不同測試組的系統硬件,設置系統的各環控制周期和通信周期,結果如表4所示。

表4 測試條件及參數設置 單位:ms
測試條件與參數設置完畢后,在不同的控制系統與機器人之間建立連接,試運行工業機器人是否運動流暢。將此次設計的系統作為實驗組測試對象,將傳統設計下的系統作為對照組測試對象(文獻[1]方法和文獻[2]方法)。實驗共分兩個階段進行。
圖3、圖4為無精插補(給定起點和終點的曲線之間插入若干個點,即用若干條微小直線段來逼近給定曲線,粗插補在每個插補計算周期中計算一次)、有精插補(計算出的每一條微小直線段上再做“數據點的密化”工作,這一步相當于對直線的脈沖增量插補)測試條件下,位置、速度、電流參數與時間的關系曲線。

圖3 無精插補下的參數波形

圖4 有精插補下的參數波形
根據圖3和圖4的系統測試結果可知,無精插補下機器人控制系統的位置、速度、電流參數和時間的關系曲線與有精插補下的機器人控制系統之間,存在巨大的功率差異,可見此次設計的系統,在有精插補方面有更好的控制效果。
以某蝶形驅動裝置為例,驅動其上下擺動,蝴蝶腹部鉸接的蝴蝶翅膀也隨之擺動,對3種系統進行對比實驗。圖5為不同系統應用下,機器人末端執行器的運動軌跡控制效果。

圖5 運動軌跡控制效果對比
根據圖5測試結果可知,在3種機器人運動軌跡控制系統測試下,本文設計的系統,通過更加精準的控制,與實際蝶形驅動裝置運動軌跡重合率更高,而其他系統與實際蝶形驅動裝置運動軌跡無法精準重合,控制精度較差。這是因為本文系統對機器人的直線軌跡和圓弧軌跡進行插補分析,采用模糊控制算法減小了機器人運動控制誤差。
綜合上述兩個階段的測試結果可知,此次設計的系統,實現了精度控制與可靠性優化兩個研究目標。
本文設計的機器人控制系統,基于伺服驅動優化了驅動電機與驅動器的連接方案,引入模糊控制算法對機器人的直線軌跡和圓弧軌跡進行插補分析,取得了更加接近預期目標的控制效果。
由于軟件設計過程的計算量較大,因此該系統的工作效率有待提升。在今后的研究中,可以將這一問題作為研究重點,在保證系統控制精度與可靠性的前提下,優化系統的整體工作效率。