以IPC+DSP作為六軸工業(yè)機器人的控制器, 設(shè)計了一種基于PMAC (Programmable Multi-Axis Controller)的開放式機器人控制系統(tǒng)。本文對控制系統(tǒng)的整體結(jié)構(gòu)、軟、硬件組成等進行了簡要的介紹。
機器人控制系統(tǒng)是一種典型的多軸實時運動控制系統(tǒng)。傳統(tǒng)的機器人控制系統(tǒng)基本上是設(shè)計者基于自己的獨立結(jié)構(gòu)和生產(chǎn)目的而開發(fā)的,它采用了專用計算機、專用機器人語言、專用操作系統(tǒng)、專用微處理器的封閉式體系結(jié)構(gòu)。這種結(jié)構(gòu)的控制器存在制造和使用成本高,開發(fā)周期長,升級換代困難,無法添加系統(tǒng)的新功能等一系列缺點。本文介紹了一種基于PMAC運動控制卡的開放式結(jié)構(gòu)機器人控制系統(tǒng),采用IPC+DSP的結(jié)構(gòu)來實現(xiàn)機器人的控制。這種機器人控制系統(tǒng)采用開放式硬件、軟件結(jié)構(gòu),可以根據(jù)需要方便地擴展功能,使之適應(yīng)于不同類型機器人或機器人自動生產(chǎn)線。它采用多個微機分級控制方式,具有良好的開放性和擴展性。
1 機器人控制系統(tǒng)硬件構(gòu)成
開放式機器人系統(tǒng)從概念上應(yīng)該是一個以公用平臺為基礎(chǔ)(如Windows),但windows存在實時性差的缺點,很難保證計算周期在毫秒級的伺服控制周期之內(nèi),為了解決這個問題,就需要使用快速DSP運動控制卡,讓W(xué)indows處理相對慢一些的任務(wù),而讓運動控制卡處理速度很快的運動伺服控制。在本文中,使用帶雙端口RAM的PMAC多軸運動控制卡,雙端口RAM作為windows和PMAC之間的高速緩沖區(qū),將IPC內(nèi)存中的軌跡插補數(shù)據(jù)下載到PMAC,或?qū)⒚總€關(guān)節(jié)位置的傳感器信息和伺服系統(tǒng)的總體狀態(tài)信息反饋到windows。根據(jù)以上分析和開放式機器人控制器的基本設(shè)計思想,設(shè)計了如圖1所示的機器人控制系統(tǒng)。
[align=center]

圖1 總體結(jié)構(gòu)[/align]
采用多個微機分級控制方式,即上級IPC負責(zé)整個系統(tǒng)管理、路徑規(guī)劃,下級PMAC則實現(xiàn)對各個關(guān)節(jié)的伺服控制。
1.1 PMAC多軸運動控制卡特點
PMAC是遵循開放式系統(tǒng)體系結(jié)構(gòu)標準開發(fā)的開放式可編程多軸運動控制器,它采用Motolora DSP56001數(shù)字信號處理器作為CPU,利用DSP的強大運算功能實現(xiàn)1-8軸的實時伺服控制。在許多應(yīng)用中,PMAC是一臺計算機,能夠同時執(zhí)行多個任務(wù)并能正確地進行優(yōu)先級的排序,使它能夠在處理時間和任務(wù)切換的復(fù)雜性這兩個方面減輕主機的負擔(dān)。PMAC能適應(yīng)多種硬件操作平臺,能和主機以各種總線或串口方式通訊,適用于所有電動機,對不同電動機可提供相應(yīng)的控制信號。標準的PMAC運動控制器提供了PID+速度和加速度前饋和階式濾波器(5~500Hz)實現(xiàn)位置閉環(huán)。
1.2 運動伺服系統(tǒng)
機器人關(guān)節(jié)驅(qū)動器使用松下的MSMA系列小慣量型交流永磁同步伺服電機,伺服電機同軸安裝有旋轉(zhuǎn)角度傳感器,能提供分辨率為2500p/r的增量
編碼器信號。使用速度控制方式,伺服系統(tǒng)完成扭矩(電流)和速度兩個閉環(huán)的控制。交流伺服系統(tǒng)電流環(huán)采用比例控制器進行電流閉環(huán)控制,而速度環(huán)采用比例積分控制器進行速度環(huán)控制。這類電機具有良好的速度控制特點,可以實現(xiàn)平滑控制,幾乎沒有震蕩出現(xiàn)。
2 控制系統(tǒng)聯(lián)結(jié)和調(diào)試
在本控制系統(tǒng)中采用的是松下交流伺服驅(qū)動器和伺服電機,電機編碼器和驅(qū)動器通過聯(lián)接器CN SIG連在一起,驅(qū)動器的CN 1/F聯(lián)接器和PMAC連在一起。采用的是速度控制方式,因此,驅(qū)動器和PMAC所用的信號連線主要有:編碼器差動輸入信號、速度指令輸入、模擬地及數(shù)字地、伺服使能、伺服報警、安全限位。在整個聯(lián)接過程中,特別要注意的是在選擇編碼器信號傳輸線上要使用雙絞屏蔽線,這對于整個系統(tǒng)工作的穩(wěn)定性、抗干擾能力以及信號的傳輸有非常大的影響。
2.1 開環(huán)零漂調(diào)整
本系統(tǒng)選用PMAC一型卡,輸出16位速度電壓模擬量信號,可以通過驅(qū)動器和PMAC卡雙方面調(diào)節(jié)零漂,但機器人的編碼器反饋電纜和動力線電纜之間的距離有限,不可避免地存在動力電纜的電磁場污染反饋信號。這樣,機器人本體上電瞬時各電機開環(huán)運行,各關(guān)節(jié)可能出現(xiàn)微小的偏移。必須通過控制驅(qū)動器SRV-ON和COM-的通斷,來釋放或者禁止電機的動態(tài)制動器,進而控制電流是否流入馬達,達到消除機器人各關(guān)節(jié)的漂移,如圖2所示。
[align=center]

圖2 控制關(guān)節(jié)開環(huán)漂移示意圖

圖3 單個關(guān)節(jié)工作示意框圖[/align]
2.2 位置閉環(huán)PID參數(shù)調(diào)整
圖3為單個關(guān)節(jié)工作于位置閉環(huán)方式時的結(jié)構(gòu)示意框圖。首先,計算機按絕對坐標或相對坐標方式將目標位置送給運動控制器,然后再發(fā)送運動開始命令,控制器接到運動開始命令后,根據(jù)當前的加速度和速度設(shè)置進行運動軌跡計算,給出每一時刻應(yīng)達到的理想位置坐標,PID控制部分負責(zé)實際位置對理想位置的跟蹤控制,跟蹤過程直至達到目標位置,或被計算機發(fā)出的新的位置目標及運動開始命令所更新。
PID控制是一種最優(yōu)的控制策略,其輸入e(k)和輸出u(k)之間成比例、積分、微分關(guān)系。

PMAC運動控制器提供了PID和前饋位置伺服環(huán)濾波器。要使系統(tǒng)伺服特性達到剛性好,又穩(wěn)定并且跟隨誤差少,需要調(diào)整PID參數(shù)。PMAC本身提供了調(diào)節(jié)PID參數(shù)的軟件PmacTuningPro,通過采集到系統(tǒng)的各種響應(yīng)特性曲線來改變改變比例、積分、微分參數(shù)而獲得最好的閉環(huán)穩(wěn)態(tài)特性和改變速度前饋增益、加速度前饋增益來獲得最小的跟隨誤差。典型的位置控制響應(yīng)過程如圖4所示。
[align=center]

圖4 腰關(guān)節(jié)位置閉環(huán)階越響應(yīng)曲線

圖5 安全功能[/align]
2.3 安全功能
在機器人運行過程中,有可能出現(xiàn)運動程序設(shè)計的欠缺或其他原因?qū)е玛P(guān)節(jié)超出了運動空間,這種情況很危險,有可能造成電機的飛車或損壞,因此必須在各關(guān)節(jié)上安裝限位開關(guān)和報警處理。PMAC為每個通道都設(shè)計了正限位LIM+、負限位LIM-、和報警信號FAULT用于故障保護。
這些輸入都作了數(shù)字信號和模擬信號的光電隔離,當正限位LIM+、負限位LIM-、和報警信號FAULT與模擬地相連時,PMAC認為是正常工作狀態(tài)。但當它們與模擬地斷開后,PMAC認為到了限位或者出現(xiàn)錯誤而停止DAC輸出,停止電機。
2.4 回零功能實現(xiàn)
機器人在空間要想準確的定位,首先必須要確定各個關(guān)節(jié)的零點,而松下的小慣量電機使用的是增量編碼器,不具備記憶功能,那么就必須在開機時首先確定哪里是機器人的零點。根據(jù)應(yīng)用的需要,使用限位開關(guān)回零??梢韵茸岆姍C運動到一個方向的限位開關(guān),然后再反向偏移這段限位開關(guān)到規(guī)定零點的距離,最后設(shè)定當前位置為零點。
2.5 手爪步進電機的控制
機器人末端使用一個步進電機來驅(qū)動手爪開合,而PMAC一型卡只具備模擬量輸出,不能直接控制步進電機,并且手爪運動還需要和其它軸的運動協(xié)調(diào)??梢酝ㄟ^PMAC的數(shù)字I/OJ5口發(fā)出脈沖信號經(jīng)過光電隔離后來控制手爪步進電機,PLC程序設(shè)計流程圖如圖6所示。
[align=center]

圖6 控制手爪流程圖

圖7 控制軟件設(shè)計[/align]
3 系統(tǒng)軟件設(shè)計
系統(tǒng)軟件采用模塊化結(jié)構(gòu)設(shè)計,系統(tǒng)分為上位機部分和伺服控制軟件部分。上位機采用高級語言進行開發(fā),界面友好,主要用于運動軌跡規(guī)劃、機器人動態(tài)分析、運動仿真、智能算法處理等管理模塊;下位機利用PMAC的DSP的高速運算速度來實現(xiàn)高速伺服插補運算、運動伺服控制等。圖7是系統(tǒng)的模塊化軟件結(jié)構(gòu)。而DeltaTau公司提供的PMAC通訊驅(qū)動函數(shù)庫Pcomm32作為Windows與PMAC通訊橋梁。采用中斷機制完成伺服控制、軌跡插補、速度處理等高實時性的任務(wù),當緩沖區(qū)清空時,PMAC會發(fā)出中斷請求信號,主機接收到該信號后,對后面的軌跡段進行路徑規(guī)劃控制,并將計算出的新的控制數(shù)據(jù)寫入到DPRAM中,PMAC則從DPRAM中讀出數(shù)據(jù)送入伺服驅(qū)動裝置,完成對機器人各關(guān)節(jié)的控制。
4 結(jié)論
本文介紹了一種工業(yè)機器人伺服控制系統(tǒng)。運行結(jié)果證明這種力矩、速度、位置三閉環(huán)控制系統(tǒng)滿足機器人控制要求,運行平穩(wěn)。分層的系統(tǒng)體系結(jié)構(gòu)極大的提高了系統(tǒng)的效率,模塊化的軟件設(shè)計則具有很強的可移植性、擴展性和開放性。