陳健,楊亞威,鄭天江,宋孫浩
(1.浙江省特種設(shè)備檢驗(yàn)研究院,浙江杭州 310016;
2.中國科學(xué)院寧波材料技術(shù)與工程研究所,浙江寧波 315201)
基于軟PLC和EtherCAT總線的DELTA2機(jī)器人控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
陳健1,2,楊亞威2,鄭天江2,宋孫浩2
(1.浙江省特種設(shè)備檢驗(yàn)研究院,浙江杭州 310016;
2.中國科學(xué)院寧波材料技術(shù)與工程研究所,浙江寧波 315201)
由于傳統(tǒng)PLC需要依賴于特定的軟硬件,其硬件、軟件系統(tǒng)封閉,系統(tǒng)開放性和擴(kuò)展性不足,并且現(xiàn)場數(shù)據(jù)傳輸實(shí)時性不高。針對這些問題,提出了一種利用實(shí)時以太網(wǎng)EtherCAT協(xié)議通訊,基于PC的軟PLC運(yùn)動控制方案。該方案通訊總線采用分布式時鐘技術(shù),使用標(biāo)準(zhǔn)以太網(wǎng)協(xié)議,無需專用網(wǎng)卡,便能夠?qū)崿F(xiàn)多軸精確同步控制,適合高速機(jī)器人的高精度伺服控制。通過在DELTA2高速并聯(lián)機(jī)器人上的測試分析,結(jié)果表明:該控制方案使機(jī)器人的運(yùn)動控制性能得到了很大的提升。
軟PLC;EtherCAT;DELTA 2;電子凸輪
目前國內(nèi)外大部分運(yùn)動控制器均采用基于DSP和FPGA的多軸運(yùn)動控制卡方式,其一般帶有PCI接口,集成于PC的PCI插槽。但其系統(tǒng)布線復(fù)雜、可靠性差,可以控制的軸數(shù)有限,且技術(shù)封閉、拓展性差、價格昂貴,不易和工廠其他設(shè)備集成在一個控制系統(tǒng)中。
軟PLC是集控制、人機(jī)界面、數(shù)據(jù)處理、通訊功能等集成于一臺PC的解決方案。隨著PC機(jī)性能的不斷提升,數(shù)值計(jì)算、程序運(yùn)行和邏輯處理能力大幅度提高。目前各大廠商都不斷致力于把傳統(tǒng)的硬PLC移植到PC平臺上,通過不斷的實(shí)踐這種軟PLC技術(shù)已經(jīng)日趨成熟。例如西門子公司的WinAC、亞控的KinACT、3S公司的Codesys、然而這些公司的軟PLC控制方案,應(yīng)用范圍還不太廣泛,應(yīng)用案例不多,實(shí)時性和穩(wěn)定性得不到保證。德國的倍福公司在基于實(shí)時以太網(wǎng)EtherCAT的基礎(chǔ)上,開發(fā)了一系列的軟PLC集成方案,其應(yīng)用結(jié)構(gòu)簡單、實(shí)時性高、開發(fā)調(diào)試方便,因此,本文作者選用了倍福的的TwinCAT控制平臺進(jìn)行了相關(guān)研究,該平臺將修改了Windows的內(nèi)核結(jié)構(gòu),結(jié)合倍福公司的EtherCAT技術(shù),能夠?qū)崿F(xiàn)多達(dá)256軸的實(shí)時運(yùn)動控制。
EtherCAT技術(shù)是德國倍福公司提出的一種新型實(shí)時工業(yè)以太網(wǎng)總線,其網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)簡單靈活,具有分布時鐘的精確校準(zhǔn),100 Mb/s的傳輸速率,是目前最安全、可靠、高效的總線之一,特別適合那些快速而高性能的機(jī)械控制系統(tǒng)。EtherCAT技術(shù)的使用保證了軟PLC的控制指令有效快速地傳遞到下位機(jī)執(zhí)行,同時下位機(jī)接收的反饋信息也可以及時地傳送到上位機(jī)進(jìn)行處理。
軟PLC將傳統(tǒng)PLC的控制功能封裝在軟件內(nèi)移植到了PC機(jī)上。如圖1所示,根據(jù)傳統(tǒng)的PLC體系結(jié)構(gòu),軟PLC可以分為開發(fā)系統(tǒng)和運(yùn)行系統(tǒng)兩部分。開發(fā)系統(tǒng)和運(yùn)行系統(tǒng)是客戶/服務(wù)模式,上下間通過C-OM/DCOM模式通訊,運(yùn)行環(huán)境作為服務(wù)器提供了標(biāo)準(zhǔn)通信接口。開發(fā)環(huán)境作為C-OM客戶端應(yīng)用,可以訪存問這些接口后進(jìn)行操作。
圖1 軟PLC體系結(jié)構(gòu)
開發(fā)系統(tǒng)就是帶有調(diào)試和編譯功能的PLC編程器,現(xiàn)在實(shí)際是按照IEC61131-3標(biāo)準(zhǔn)設(shè)計(jì)的[1]。如圖2所示,IEC61131-3軟件模型是一種分層結(jié)構(gòu),描述了很多概念包括配置 (Configuration)、資源 (Resource)、任務(wù) (Task)、程序 (Program)、功能塊(Function Block)以及功能 (Function)等和它們之間的關(guān)系,將一個復(fù)雜的項(xiàng)目分成若干獨(dú)立的單元,每個單元下又有單元。
圖2 基于IEC61131-3標(biāo)準(zhǔn)軟件模型
運(yùn)行系統(tǒng)是軟PLC的核心部分,是連接開發(fā)系統(tǒng)和具體硬件的樞紐。它通常包括虛擬機(jī)、I/O驅(qū)動程序、OPC服務(wù)程序等模塊[2-3]。虛擬機(jī)解釋執(zhí)行由開發(fā)系統(tǒng)生成的目標(biāo)代碼,調(diào)取命令區(qū)的控制指令,代碼區(qū)執(zhí)行目標(biāo)代碼通過I/O驅(qū)動模塊進(jìn)行數(shù)據(jù)的輸入輸出處理,通過狀態(tài)描述區(qū)可查看虛擬機(jī)運(yùn)行狀態(tài)。I/O口采用標(biāo)準(zhǔn)的OPC接口,OPC包括了一套接口、屬性和方法的標(biāo)準(zhǔn)集,過程中無論是什么軟件或設(shè)備,OPC都可以為控制設(shè)備間通信提供公共接口。例如通過OPC接口與SCADA相連實(shí)現(xiàn)監(jiān)控功能。
軟PLC將本來有DSP或者FPGA完成的功能全部集成到了計(jì)算機(jī)中處理,因此對于信號傳輸?shù)膶?shí)時性要求較高。所以必須運(yùn)行在實(shí)時系統(tǒng)上。
DELTA2機(jī)器人如圖3所示,由基座、動平臺、以及兩組分支運(yùn)動鏈構(gòu)成,各關(guān)節(jié)間采用鉸接連接,兩組從動臂由與肘關(guān)節(jié)相連的平行四邊形機(jī)構(gòu)構(gòu)成,中間裝有交叉加強(qiáng)筋用來消除鉸鏈間隙,其中連架從動臂和右臂上增設(shè)了一根平行外從臂增強(qiáng)了運(yùn)動平面的靜、動剛度。工作時,伺服電機(jī)轉(zhuǎn)動經(jīng)由減速器減速后帶動主動臂旋轉(zhuǎn),根據(jù)平行四邊形姿態(tài)保持性原理,兩從臂帶動末端平臺平動,在末端平臺上可以根據(jù)需要安裝不同的末端執(zhí)行器來完成相應(yīng)的工作。
圖3 DELTA2機(jī)器人機(jī)構(gòu)示意圖
DELTA2機(jī)械手主要用于平面內(nèi)物體的抓取和放置操作。如圖4所示,在一個工作周期內(nèi),機(jī)械手經(jīng)過上升 (AD段)、平移 (DE段)和下降 (EH段)3個階段,設(shè)計(jì)其最大行程為250 mm+680 mm+150 mm。為防止與抓取物件干涉,要求手抓在上升和下降階段須有一定距離的直線運(yùn)動 (AB段和GH段),且要保證一定的軌跡精度。
圖4 DELTA2機(jī)器人運(yùn)動示意圖
在軌跡規(guī)劃中,把末端的運(yùn)動軌跡可粗分為AC,CF,F(xiàn)H三段,這里為進(jìn)一步減小運(yùn)動周期,將BD、EG段軌跡設(shè)計(jì)為弧線段,每段的運(yùn)動過程為靜止-加速-減速-靜止,這樣就要求其速度和加速度在起點(diǎn)和末點(diǎn)都為零。
在空間中先取8個關(guān)鍵點(diǎn),通過運(yùn)動學(xué)逆解解得關(guān)節(jié)空間中對應(yīng)的關(guān)節(jié)變量,關(guān)節(jié)變量之間通過Spline插值,可以在關(guān)鍵點(diǎn)中加入更多的插值點(diǎn),來節(jié)點(diǎn)控制彎曲程度的順滑的自由曲線,這樣很容易調(diào)節(jié)曲線的曲率和走向。由輸出軸的速度、加速度和加加速度曲線圖如圖5所示,其速度大小小于等于100 rad/s,加速度大小均小于等于1 530 rad/s2,加加速度大小均小于等于12 000 rad/s3,運(yùn)動時間過程沖擊和終端抖動較?。?]。
圖5 關(guān)節(jié)空間擬合曲線圖
整個控制系統(tǒng)采用一臺普通的工控機(jī)作為上位機(jī)硬件平臺,使用倍福的TwinCAT作為軟件控制平臺,該平臺主要完成系統(tǒng)管理、插補(bǔ)運(yùn)算、運(yùn)動學(xué)與動力學(xué)計(jì)算、機(jī)器人邏輯控制等任務(wù)。TwinCAT開發(fā)環(huán)境分為兩部分,System Manager主要完成整個系統(tǒng)設(shè)置和I/O硬件的配置,而邏輯程序的編寫和調(diào)試,都在PLC Conltrol中進(jìn)行。此外運(yùn)用PTP的電子凸輪功能控制機(jī)器人機(jī)械手臂,提高了機(jī)械手臂的速度和柔性[4]。
上位機(jī)與下位機(jī),下位機(jī)內(nèi)部之間采用級連方式連接,物理連接介質(zhì)使用普通網(wǎng)線或光纖即可。DELTA2機(jī)器人采用2臺倍福EtherCAT伺服電機(jī)經(jīng)蝸輪蝸桿減速器減速后驅(qū)動機(jī)械臂運(yùn)動。在兩臺伺服電機(jī)軸上安裝有12位的絕對式編碼器,通過倍福EtherCAT端子模塊EL5001直接連接增量式編碼器SSI接口。SSI接口電路產(chǎn)生一個脈沖信號來讀取數(shù)據(jù),并將數(shù)據(jù)流提供給控制器。這樣整個系統(tǒng)構(gòu)成一個半閉環(huán)的控制系統(tǒng)。由于整個控制系統(tǒng)采用了Ether-CAT的通訊方式,一跟網(wǎng)線一網(wǎng)到底,簡化了布線和調(diào)試工作,節(jié)省很多空間,降低了系統(tǒng)成本。
在整個系統(tǒng)的設(shè)計(jì)當(dāng)中,軌跡規(guī)劃和運(yùn)動插補(bǔ)計(jì)算都在上位機(jī)的軟PLC中進(jìn)行,計(jì)算結(jié)果在上位機(jī)轉(zhuǎn)換為數(shù)字信號通過太網(wǎng)EtherCAT總線實(shí)時傳輸?shù)较挛粰C(jī)的伺服驅(qū)動器從而控制兩個伺服電機(jī)聯(lián)動,上位機(jī)控制單元每次根據(jù)編碼器反饋的信息調(diào)整插補(bǔ)指令,控制機(jī)械臂運(yùn)動。
DELTA2機(jī)器人的上位機(jī)控制程序主要分為三部分:(1)在TwinCAT System Manager里配置各個伺服軸的參數(shù)、虛擬一根時間軸作為主軸和兩根NC軸作為從軸、繪制凸輪曲線表、加載PLC程序;(2)在TwinCAT PLC Control里編寫控制程序,包括主從軸的啟動、使能、停止、點(diǎn)動,以及調(diào)用凸輪表、凸輪的耦合與解耦[5];(3)基于ADS通訊,通過TwinCAT提供的通訊連接庫文件,在Visual Studio軟件中用C#編寫機(jī)器人的控制界面。圖6為系統(tǒng)控制圖。
圖6 系統(tǒng)控制圖
整個系統(tǒng)主要運(yùn)行步驟如下:
(1)在I/O-configuration選項(xiàng)卡中掃描I/O設(shè)備和從站讀取所驅(qū)動電機(jī)的狀態(tài),并設(shè)置電子齒輪比。
(2)在NC-Configuration中添加一個NC-task1的任務(wù),在Aixs中添加Master、Axis_L、Axis_R三根軸,其中Master作為時間主軸,Axis_L軸和Axis_R軸作為從軸跟隨Master軸運(yùn)動。
(3)在Tables添加一個DELTA2的電子凸輪表,在DELTA2下中添加兩個從軸表,Axis_L表對應(yīng)Axis_L軸,Axis_R表對應(yīng)Axis_R軸,Master軸作為Axis_L軸和Axis_R軸共同的時間軸,這樣即指定了主軸和從軸的耦合對應(yīng)關(guān)系。
凸輪表有關(guān)鍵點(diǎn)模式和描點(diǎn)模式,前者可以指定關(guān)鍵點(diǎn)的主從軸位置并且可以自己定義相鄰兩點(diǎn)的差值方式,而后者僅僅指定每個點(diǎn)的主從位置,兩相鄰點(diǎn)之間為直線插值,因此選用描點(diǎn)方式的凸輪表,位置點(diǎn)必須很密集。這里使用關(guān)鍵點(diǎn)模式繪制凸輪表,在DELTA2的工作空間中選取8個關(guān)鍵點(diǎn),經(jīng)過運(yùn)動學(xué)逆解得到相應(yīng)的關(guān)節(jié)空間點(diǎn)后插入表格中。
TwinCAT PLC Control主要完成邏輯程序的編寫和調(diào)試,PLC程序主要分為三部分,PLC軸配置模塊、PLC軸控制模塊和參數(shù)讀取模塊。其中配置模塊主要實(shí)現(xiàn)各軸的使能和凸輪表的耦合功能。控制模塊有勻速運(yùn)動、主從軸的點(diǎn)動、絕對運(yùn)動、相對運(yùn)動及急停等功能。參數(shù)讀取模塊主要是讀取運(yùn)行軸的主要參數(shù)及系統(tǒng)運(yùn)行信息。
ADS通信是BECKHOFF公司定義的一種協(xié)議,用于TwinCAT設(shè)備間的非周期性的通訊。在Visual Studio通過編寫C#程序調(diào)用twincat.ads庫對PLC中的變量進(jìn)行連接和修改,在Winform上設(shè)計(jì)一個控制界面。
為驗(yàn)證基于軟PLC和EtherCAT總線的DELTA2機(jī)器人控制系統(tǒng)的性能,對基于EtherCAT總線通訊的從站同步精度等實(shí)時性參數(shù)和機(jī)器人的運(yùn)動控制參數(shù)進(jìn)行了測試分析,實(shí)驗(yàn)結(jié)果達(dá)到了120次/min的抓取頻率,位置跟蹤精度小于1 mm的設(shè)計(jì)指標(biāo)。
啟動控制程序使DELTA2機(jī)械手按規(guī)劃的軌跡運(yùn)動。使用網(wǎng)絡(luò)抓包工具WireShark抓取上位機(jī)與下位機(jī)的通訊數(shù)據(jù)包。從WireShark捕獲的EtherCAT報(bào)文信息中沒有發(fā)現(xiàn)錯誤報(bào)文信息,說明EtherCAT數(shù)據(jù)傳送的準(zhǔn)確性較高。從數(shù)據(jù)幀捕獲的時間可見其循環(huán)周期基本穩(wěn)定在1 ms左右,報(bào)文延時為1.89μs,體現(xiàn)了EtherCAT協(xié)議優(yōu)異的性能和高速響應(yīng),以及高精度設(shè)備同步,滿足了現(xiàn)場總線的實(shí)時性要求[6-7]。
通過TCatScopeView實(shí)時采集和追蹤伺服軸的參數(shù) (圖7)。
圖7 實(shí)驗(yàn)采集伺服軸的參數(shù)
從采集的數(shù)據(jù)繪制的曲線可以看到實(shí)際位移曲線和規(guī)劃的曲線有±5%的誤差,速度、加速度和加加速度都有一定的鋸齒形波動,誤差在8%以內(nèi)。
介紹了軟PLC的系統(tǒng)結(jié)構(gòu),并基于軟PLC和EtherCAT總線設(shè)計(jì)了一套DELTA2并聯(lián)機(jī)器人的高速運(yùn)動控制系統(tǒng)。在運(yùn)動學(xué)分析的基礎(chǔ)上提出了一種電子凸輪的方式實(shí)現(xiàn)了機(jī)器人的運(yùn)動控制。通過實(shí)驗(yàn)分析EtherCAT總線通訊,和執(zhí)行電機(jī)的運(yùn)動參數(shù),證明了該系統(tǒng)具有良好的運(yùn)動控制性能。該控制系統(tǒng)開放性好、硬件結(jié)構(gòu)簡單、可移植性高,大大縮短了工業(yè)機(jī)器人研發(fā)的周期[8]。
[1] IEC61131-3Programmable Controll-er-Part3:Programming Languages[C]//International Eleetroteelmieal Commission,1993.
[2]周峰,王新華.軟PLC編輯系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2005(7):45-49.
[3]白江,王宇晗,金永喬.數(shù)控系統(tǒng)軟PLC模塊的研究與開發(fā)[J].機(jī)床設(shè)計(jì)與制造,2011(2):138-140.
[4]郎需林,靳東,張承瑞,等.基于實(shí)時以太網(wǎng)的DELTA并聯(lián)機(jī)械手控制系統(tǒng)設(shè)[J].機(jī)器人,2013.00576.
[5]2013.00576 Beckhoff TwinCAT 軟 PLC 編程手冊[S].2011.
[6]PRYTZG.A Performance Analysis of EtherCAT and Profinet IRT[C].Ha-mburg,Germany:IEEE International Conference on Emerging Technolo-gies and Factory Automation,2008:408 -415.
[7]ROSTAN M,STUBBS JE,DZILINO D.EtherCAT Enabled Advanced Cont-rolArchitecture[C].2011 IEEE/SE-MI Advanced Smiconductor Manu-facturing Conference(ASMC),2010:39 -44.
[8]畢輝,程良鴻.關(guān)于軟PLC技術(shù)的研究及發(fā)展[J].機(jī)電產(chǎn)品開發(fā)與創(chuàng)新,2006,19(2):118-119.
Design and Implementation of DELTA2 Robot Control System Based on Soft-PLC and EtherCAT
CHEN Jian1,2,YANG Yawei2,ZHENG Tianjiang2,SONG Sunhao2
(1.Zhejiang Provincial Special Equipment Inspection and Research Institue,Hangzhou Zhejiang 310016,China;2.Ningbo Institute of Materials Technology & Engineering,Chinese Academy of Sciences,Ningbo Zhejiang 315201,China)
Most of traditional PLC rely on special hardware or software,their software and hardware system are unique and closed,with insufficient openess and expansibility,and field data has low real time transmission ratio.Aimed at these problems,a soft-programmable logical controller(PLC)motion control scheme was presented based on industrial personal computer(IPC)which utilized EtherCAT fieldbus protocol communication.The communication bus of scheme had functions of distributed clock technology,with using of standard ethernet protocols,without special network card,which was able to implement synchro-control ofmultiple-spindle with high accuracy,suitable for high speed robot in need of high precision servo control.Experimental analysiswas carried out on the high speed parallel robot DETLA2 by using this scheme.The result shows that the control schememakes themotion control performance of robot a great improvement.
Soft-PLC;EtherCAT;DELTA 2;Electronic cam
TP 39;TP241
A
1001-3881- (2015)21-042-4
10.3969/j.issn.1001 -3881.2015.21.009
2014-08-07
寧波市科技計(jì)劃項(xiàng)目 (2014D10008)
陳健 (1989—),男,碩士,研究方向?yàn)闄C(jī)電系統(tǒng)智能控制及應(yīng)用開發(fā)。E-mail:18667813206@qq.com。