B&RPCC及ACOPOS伺服在刻蝕線上的應(yīng)用
[摘 要] 以蔭罩刻蝕線的刻蝕腔體內(nèi)的搖擺電機控制對象為對象,采用了B&R的PCC和ACOPOS伺服控制器,對同步電機進行運動控制,使搖擺腔體內(nèi)電機能快速、穩(wěn)定地跟隨設(shè)定曲線,并按照設(shè)定曲線運動。PCC中PVI使PCC方便地與上位機進行通信;PowerLink使伺服間的通信實時快速;PCC的高級編程語言C使PCC完成傳統(tǒng)PLC不能完成的高級應(yīng)用, 如曲線的生成;而虛軸概念的引入更是提高了電機運行的可靠性。
1 簡介
1.1 系統(tǒng)簡介
系統(tǒng)為普通槽孔蔭罩刻蝕線,主要包括開卷部分、刻蝕腔體部分、第一水洗部分、電解剝離部分、最終水洗部分和最后的烘干及撕邊部分。 表面有光致抗刻蝕劑的成卷鋼帶,在開卷部分被拉開,并送入刻蝕腔體。腔體刻蝕液為FeCl3,與鋼帶的無光抗部分反應(yīng),形成槽孔。第一水洗的作用為停刻蝕,將蔭罩表面的FeCl3均勻地完全去除。剝離部分用于剝離鋼帶表面的光抗,剝離液為NaOH。最終水洗除去鋼帶表面的NaOH和雜質(zhì)。烘干部分烘干鋼帶表面的水分,防止生銹。之后鋼帶進入撕邊機,撕去蔭罩四周的廢邊??涛g生成的工藝過程如圖1所示。
圖1 刻蝕生產(chǎn)線工藝過程
刻蝕腔體部分為整個系統(tǒng)的關(guān)鍵,其刻蝕的效果直接影響到產(chǎn)品的合格率。整個刻蝕過程有6個腔體,每個腔體中有上下兩對噴嘴,分別由兩臺電機控制,電機控制噴嘴來回擺動。因此整個刻蝕部分由12臺電機組成。由于電機不斷來回擺動,這里稱之為搖擺電機。
1.2 搖擺電機運動簡介
根據(jù)工藝要求電機必須按照一定軌跡運行,而且不同的電機運行軌跡有所區(qū)分。由于對運行曲線的高要求,搖擺電機的控制選用了B&R的PCC及ACOPOS伺服控制器。
在上位機,工作人員給定一條軌跡上的16個點,如圖2所示,其中橫軸為位置,縱軸為速度。12臺電機每臺都有一條設(shè)定的曲線。PCC除了完成對電機的起動、停止、運行等邏輯控制外,主要的功能就是控制電機按一定的軌跡運動,使得這個軌跡同時經(jīng)過所設(shè)定的16個點,并且保證電機運行的平穩(wěn)。由于要求快速響應(yīng)和高控制精度,搖擺部分使用同步伺服電機進行運動控制。之前使用東芝公司的PLC,有擺動不平滑的問題,因此改用B&R開發(fā)的高性能控制器PCC。PCC在控制器中使用嵌入式操作系統(tǒng),且設(shè)備層網(wǎng)絡(luò)采用實時以太網(wǎng),可以實現(xiàn)非常高的實時控制要求。
圖2 搖擺電機軌跡點設(shè)置
2 B&RPCC及ACOPOS伺服
2.1 B&RPCC硬件配置
搖擺部分采用了B&R2005,2005系列CPU是B&R第四代控制系統(tǒng)SG4,采用的是Intel處理器,包括了電源模塊、CPU模塊、數(shù)字輸入輸出模塊。其中CPU的PCI總線插槽中插入了Power—Link網(wǎng)絡(luò)適配器。若采用PowerLink串聯(lián),最多只能串聯(lián)10臺伺服控制器,本系統(tǒng)采用Power—Link IF786及一個HUB將12臺電機分成兩條串聯(lián)支路進行實時控制。數(shù)字輸入模塊用于起動、停止、緊急停止、12臺電機的Readay、找原點信號輸入。數(shù)字輸出用于電機運行、電機故障、12臺電機尋找原點的狀態(tài)指示。
上位機與PCC可以通過RS232與以太網(wǎng)進行通信。RS232作為編程口。以太網(wǎng)作為實時通信口,用于數(shù)據(jù)的上傳與下載。將上位機設(shè)定的運動曲線實時傳給PCC,同時將實際運動位置、速度、電流及故障信息傳給上位機。
圖3給出了一臺電機的伺服控制器與其他硬件設(shè)備的連接圖。電機控制器采用了B&R的ACO—POS 1090伺服控制器。伺服控制器插入了Power•Link模塊ACll2,用于和前后兩臺伺服控制器相連;ACl22為旋轉(zhuǎn)編碼器模塊,用于電機的速度與位置檢測。ACOPOS 1090本身提供了溫度信號檢測(T+、T—),抱閘信號輸出(B—、B+)和其他控制信號。在現(xiàn)場,同時安裝了三個光耦給定電機運行的正向極限位置、反向極限位置和原點位置。在運行前電機首先找到原點光耦所在位置定為0位,然后根據(jù)設(shè)定曲線運行。而正、反向極限光耦信號起到了保護作用,當(dāng)光耦給出信號時,伺服將給出極限故障信息并且停止運行。
2.2 ACOP,OS伺服控制方式
ACOPOS的伺服控制如圖4所示,大致可以分為四個部分:初始值處理、位置控制、速度控制、實際值檢測。在初始處理時,根據(jù)給定的位置及最大允許速度和最大允許加速度,給出一個理想的定位過程,即得出加速、恒速、減速段,不同位置時的速度也相應(yīng)得到。位置控制主要有比例調(diào)節(jié)、比例調(diào)節(jié)限制p_max、積分限制i_max和積分調(diào)節(jié)。比例調(diào)節(jié)后的值為k*△s,若k*△s>pmax,則v_p=p_max;若k*△ S<一p_max,則v_p=_p_max。同理i_max用于限制積分調(diào)節(jié)
值v i。速度調(diào)節(jié)為一般的PI調(diào)節(jié)得到控制電流值送入矢量控制器,對電機進行控制。而電機的實際位置通過編碼器得到。
圖4 伺服控制框圖
3 B&RPCC軟件系統(tǒng)
整個軟件系統(tǒng)可分為過程可視化接口(PVI)和Automation Studio。PVI用于與上位機的通信,AutomationStudio則用于PCC的邏輯控制與運動控制等的編程。
3.1 PVI通信
PVI是所有Windows應(yīng)用程序訪問貝加萊工業(yè)控制器的統(tǒng)一接口。使用P~I,用戶在開發(fā)通信程序時不需要花大量時間考慮底層的通信過程,也不需要調(diào)用復(fù)雜而繁瑣的Winsock API函數(shù),只需在邏輯結(jié)構(gòu)上進行簡單的配置即可訪問PCC上的變量。PVI的最大特點就是能夠使應(yīng)用程序直接操作PCC任務(wù)中的變量,因此必須給每一個過程變量在PVI Manager中的映射指定唯一的路徑。
PVI通信的核心任務(wù)是建立過程變量的映像,建立的結(jié)果是每個映像都和網(wǎng)絡(luò)中唯一的一個變量一一對應(yīng)。這個變量可以是一個基本類型的數(shù)據(jù),如整型變量,也可以是一個自定義類型的數(shù)據(jù),如結(jié)構(gòu)體變量。這個映像包含了從應(yīng)用程序所在工作站到變量所在任務(wù)的路徑信息。如果把控制器和模塊也當(dāng)作通信中對象的話,每個映像路徑包括的對象有:基本對象(Pvi);線對象(Line);站對象(Slation);CPU對象(CPU);模塊對象(Mod-ule);任務(wù)對象(Task)和變量對象(Variable)。這個映射路徑由PVI Manager統(tǒng)一管理,每個對象包含對象名,對象描述和存取參數(shù)。對象名(包括路徑)是PVI中的名字。對象名由用戶任意確定,對象描述必須與PCC中待映射的變量名字一樣,PVI Manager依靠對象描述找到具體的過程變量,實現(xiàn)映象關(guān)系。存取參數(shù)包括數(shù)據(jù)類型說明、刷新時間、事件類型等。
在本系統(tǒng)中,伺服電機運行在16個位置的速度是確定的,位置和速度均可以在上位機上設(shè)置,然后發(fā)送至PCC。將這些數(shù)據(jù)封裝為一個結(jié)構(gòu)體:
struct MotorCommSet{float Position[16];//16個點的位置float Speed[16];//16個點的速度int MotorNumber;//標(biāo)示當(dāng)前設(shè)置的是第幾臺電機
};
3.2 AutomationStudio編程
AutomarionStudio為每個應(yīng)用與程序提供了多種編程方法。包括:梯形圖LAD,指令表IL,結(jié)構(gòu)文本ST,順序功能圖SFC,AB,ANSIC。其中ANSIC是使用于新一代Automation Studio的功能強大的高級編程語言。利用ANSIC編寫的語言可以實現(xiàn)更高級的功能。
在搖擺部分的電機控制中,利用了ANSIC來實現(xiàn)曲線生成的功能。
3.2.1對象建立
B&R的伺服運動控制采用了面向?qū)ο蟮目刂品绞?,使用高級語言C針對一個伺服控制器創(chuàng)建一個運用對象ax obi后,可以利用針對此運動對象創(chuàng)建的指針*p ax dat,對電機完成不同的運動控制。
ncalloc(ncACPl0MAN十ncPOWERLINK-IF,ACPl0_NODE,ncAXIS,1,(UDINT)&ax_obj);
每臺伺服控制器在硬件上都有一個節(jié)點設(shè)置部分,可以設(shè)置各自的節(jié)點號。在命令ncalloc中通過不同的ACPIO NODE可以為不同的伺服創(chuàng)建各自的運動對象。
3.2.2虛軸
在ACOPOS的伺服中,針對每一臺伺服而創(chuàng)建的運動對象,都有一個假想的軸,稱之為虛軸。這個虛軸跟實軸一樣一方面能夠作為從軸,跟著主軸完成同步軌跡。另一方面也能作為主軸,讓其他軸參與同步。由于虛軸的引入,使得一個伺服也能夠和自己的虛軸發(fā)生同步關(guān)系,即電機運行時以自己的虛軸作為主軸,實軸跟隨虛軸同步。
這里伺服要完成曲線運動,在設(shè)定的點之間有一個加速度突變的過程,因此為了保持電機的平穩(wěn)運行,采用了虛軸運動控制。虛軸是一個理論上的軸,因此可以應(yīng)用數(shù)學(xué)模型,設(shè)定虛軸的運行軌跡。在相鄰兩個點之間,虛軸為勻加速,運動到下一個點時以另外一個加速度進行勻加速運動。由于虛軸是假想的理論軸,加速的突變不會引起電機運行的不穩(wěn)定。因此這里將虛軸設(shè)為主軸。由于虛軸和實軸的同步關(guān)系為位置同步,而非速度同步,當(dāng)設(shè)定虛軸與實軸為1:1同步時,虛軸為主軸按既定曲線運動,而實軸則不斷地跟隨虛軸的位置進行運動,因此對于實軸來說虛軸的速度或加速度的突變并不會對電機產(chǎn)生影響,保證了電機運行的穩(wěn)定性。
Automation Studio提供了專門的實軸與虛軸的關(guān)系設(shè)定文件,在虛軸進行運動之前,必須把這個文件下載到伺服,建立伺服的虛軸與實軸的關(guān)系之后,實軸才能跟隨虛軸運動。
實軸與虛軸的關(guān)系設(shè)定文件名為“autogear”。
在autogear中,將412號參數(shù)(虛軸的位置)賦給503號參數(shù)(主軸設(shè)定),表明了將虛軸的位置作為主軸。
ncalloc(ncACPl0MAN十ncPOWERLINK-IF,ACPl0_NODE,ncAXIS,1,(UDINT)&ax_obj);
每臺伺服控制器在硬件上都有一個節(jié)點設(shè)置部分,可以設(shè)置各自的節(jié)點號。在命令ncalloc中通過不同的ACPIO NODE可以為不同的伺服創(chuàng)建各自的運動對象。
3.2.2虛軸
在ACOPOS的伺服中,針對每一臺伺服而創(chuàng)建的運動對象,都有一個假想的軸,稱之為虛軸。這個虛軸跟實軸一樣一方面能夠作為從軸,跟著主軸完成同步軌跡。另一方面也能作為主軸,讓其他軸參與同步。由于虛軸的引入,使得一個伺服也能夠和自己的虛軸發(fā)生同步關(guān)系,即電機運行時以自己的虛軸作為主軸,實軸跟隨虛軸同步。
這里伺服要完成曲線運動,在設(shè)定的點之間有一個加速度突變的過程,因此為了保持電機的平穩(wěn)運行,采用了虛軸運動控制。虛軸是一個理論上的軸,因此可以應(yīng)用數(shù)學(xué)模型,設(shè)定虛軸的運行軌跡。在相鄰兩個點之間,虛軸為勻加速,運動到下一個點時以另外一個加速度進行勻加速運動。由于虛軸是假想的理論軸,加速的突變不會引起電機運行的不穩(wěn)定。因此這里將虛軸設(shè)為主軸。由于虛軸和實軸的同步關(guān)系為位置同步,而非速度同步,當(dāng)設(shè)定虛軸與實軸為1:1同步時,虛軸為主軸按既定曲線運動,而實軸則不斷地跟隨虛軸的位置進行運動,因此對于實軸來說虛軸的速度或加速度的突變并不會對電機產(chǎn)生影響,保證了電機運行的穩(wěn)定性。
Automation Studio提供了專門的實軸與虛軸的關(guān)系設(shè)定文件,在虛軸進行運動之前,必須把這個文件下載到伺服,建立伺服的虛軸與實軸的關(guān)系之后,實軸才能跟隨虛軸運動。
實軸與虛軸的關(guān)系設(shè)定文件名為“autogear”。
在autogear中,將412號參數(shù)(虛軸的位置)賦給503號參數(shù)(主軸設(shè)定),表明了將虛軸的位置作為主軸。
’Unit=““
Remark=””/>
’ Name=“Cam automat:Mul—
tiplication factOr Ofslave axis”Value=“1000” Unit=““Re—
mark=””/>
將519號參數(shù)(主軸系數(shù))和520號參數(shù)(從軸系數(shù))值設(shè)為相同的大小,這里都設(shè)為1 000,表明了從軸與主軸以1 000:1 000進行位置同步。B&R為伺服參數(shù)的上傳與下載提供了專門的通道,稱之為SERVICE通道。通過SERVICE通道,既可以進行單個參數(shù)的傳輸,也可以進行參數(shù)塊的傳輸。將“autogear’作為一個參數(shù)塊,通過SERVICE通道下載到伺服后,虛軸與實軸的關(guān)系便建立了起來。
strcpy (&DatadOwnload•parameter.data_modul [0],
“autogear")//所要下載的文件名
p—ax—dat一> network.service.data—adr= (UDINT)
&DataDownload//sevrvice通道
ncaction (ax —obj,ncACP— PAR+ ncSERVICE, nc•
DOWNLOAD)/虛軸、實軸設(shè)定下載
一旦主軸與從軸的關(guān)系建立起來之后,只要對虛軸參數(shù)進行操作,實軸就會跟隨虛軸位置進行1 :1同步。而對于虛軸參數(shù)的操作同樣也可以通過SERVICE通道進行。
p — ax — dat 一 > network.service.request•par — id=
A-CPl0PAR—CMD—POS—MOVE—VAXl//所要賦值的參
數(shù)
p—ax—dat一>network.service.data—adr=(UDINT)
&par—dat//參數(shù)值
ncaction(ax—obj,ncSERVICE,ncSET)//參數(shù)設(shè)置
3.2.3程序設(shè)計
程序如圖5所示,主要分為兩塊:一塊為總的邏輯控制部分,由梯形圖完成;另一塊為運動控制部分,通過C語言完成。
找原點時,電機統(tǒng)一向正向運行,若收到原點信號就停下,定為。位;若收到正向極限信號就停下然后反方向運行,找到原點信號,定為0位。曲 線運動為一個子程序,點與點之間做勻加速運動, 通過位置的判斷,對虛軸進行加速度的切換。
4 設(shè)計結(jié)果
利用B&R的PCC的PVI完成了與上位機的通信。利用梯形圖進行邏輯控制啟動、停止、故障等。而高級語言C,則實現(xiàn)了曲線的運用。并且在曲線運動過程中,實時地將速度與位置信號傳給上位機,方便實時地觀測和調(diào)整曲線。
圖5 程序流程圖
目前,整條生產(chǎn)線已投入試生產(chǎn),刻蝕效果良好。圖6為伺服電機實時運動曲線,伺服按正向運動找到原點后開始按到給定的點運動。在相鄰的兩個點之間采用了勻加速運動,按照位置進行點與點的切換,改變各個曲線段的加速度。在運行過程中上位機對電機運行的實際位置與速度進行隨機采樣,將采樣得到的點顯示在上位機界面上,經(jīng)過一段時間后可以看到電機實際運行的軌跡。由圖可知,實際運行中,都經(jīng)過設(shè)定的點。工藝要求的誤差為2mm,而實際設(shè)計得到的結(jié)果誤差只有0.5mm,性能大大提高。在高速運行時,如1min運行40個周期,電機仍然運行平穩(wěn),而工藝上只要求15至30個周期。
圖6 伺服電機實際運用曲線
采用了B&R的PCC使通信、控制、運動變得更加方便、靈活、可靠。由于B&R的PVI功能,使通信更方便,成為一個單獨的任務(wù)。利用Power-Link實現(xiàn)了PCC與12臺伺服之間實時與快速的控制與傳輸。利用PCC的高級語言C,方便地實現(xiàn)了曲線的生成。而利用B&R特有的虛軸的概念,更使電機的運行平衡可靠。