B&RPCC及ACOPOS伺服在刻蝕線上的應(yīng)用
[摘 要] 以蔭罩刻蝕線的刻蝕腔體內(nèi)的搖擺電機(jī)控制對(duì)象為對(duì)象,采用了B&R的PCC和ACOPOS伺服控制器,對(duì)同步電機(jī)進(jìn)行運(yùn)動(dòng)控制,使搖擺腔體內(nèi)電機(jī)能快速、穩(wěn)定地跟隨設(shè)定曲線,并按照設(shè)定曲線運(yùn)動(dòng)。PCC中PVI使PCC方便地與上位機(jī)進(jìn)行通信;PowerLink使伺服間的通信實(shí)時(shí)快速;PCC的高級(jí)編程語言C使PCC完成傳統(tǒng)PLC不能完成的高級(jí)應(yīng)用, 如曲線的生成;而虛軸概念的引入更是提高了電機(jī)運(yùn)行的可靠性。
1 簡介
1.1 系統(tǒng)簡介
系統(tǒng)為普通槽孔蔭罩刻蝕線,主要包括開卷部分、刻蝕腔體部分、第一水洗部分、電解剝離部分、最終水洗部分和最后的烘干及撕邊部分。 表面有光致抗刻蝕劑的成卷鋼帶,在開卷部分被拉開,并送入刻蝕腔體。腔體刻蝕液為FeCl3,與鋼帶的無光抗部分反應(yīng),形成槽孔。第一水洗的作用為停刻蝕,將蔭罩表面的FeCl3均勻地完全去除。剝離部分用于剝離鋼帶表面的光抗,剝離液為NaOH。最終水洗除去鋼帶表面的NaOH和雜質(zhì)。烘干部分烘干鋼帶表面的水分,防止生銹。之后鋼帶進(jìn)入撕邊機(jī),撕去蔭罩四周的廢邊??涛g生成的工藝過程如圖1所示。

圖1 刻蝕生產(chǎn)線工藝過程
刻蝕腔體部分為整個(gè)系統(tǒng)的關(guān)鍵,其刻蝕的效果直接影響到產(chǎn)品的合格率。整個(gè)刻蝕過程有6個(gè)腔體,每個(gè)腔體中有上下兩對(duì)噴嘴,分別由兩臺(tái)電機(jī)控制,電機(jī)控制噴嘴來回?cái)[動(dòng)。因此整個(gè)刻蝕部分由12臺(tái)電機(jī)組成。由于電機(jī)不斷來回?cái)[動(dòng),這里稱之為搖擺電機(jī)。
1.2 搖擺電機(jī)運(yùn)動(dòng)簡介
根據(jù)工藝要求電機(jī)必須按照一定軌跡運(yùn)行,而且不同的電機(jī)運(yùn)行軌跡有所區(qū)分。由于對(duì)運(yùn)行曲線的高要求,搖擺電機(jī)的控制選用了B&R的PCC及ACOPOS伺服控制器。
在上位機(jī),工作人員給定一條軌跡上的16個(gè)點(diǎn),如圖2所示,其中橫軸為位置,縱軸為速度。12臺(tái)電機(jī)每臺(tái)都有一條設(shè)定的曲線。PCC除了完成對(duì)電機(jī)的起動(dòng)、停止、運(yùn)行等邏輯控制外,主要的功能就是控制電機(jī)按一定的軌跡運(yùn)動(dòng),使得這個(gè)軌跡同時(shí)經(jīng)過所設(shè)定的16個(gè)點(diǎn),并且保證電機(jī)運(yùn)行的平穩(wěn)。由于要求快速響應(yīng)和高控制精度,搖擺部分使用同步伺服電機(jī)進(jìn)行運(yùn)動(dòng)控制。之前使用東芝公司的PLC,有擺動(dòng)不平滑的問題,因此改用B&R開發(fā)的高性能控制器PCC。PCC在控制器中使用嵌入式操作系統(tǒng),且設(shè)備層網(wǎng)絡(luò)采用實(shí)時(shí)以太網(wǎng),可以實(shí)現(xiàn)非常高的實(shí)時(shí)控制要求。

圖2 搖擺電機(jī)軌跡點(diǎn)設(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ái)伺服控制器,本系統(tǒng)采用Power—Link IF786及一個(gè)HUB將12臺(tái)電機(jī)分成兩條串聯(lián)支路進(jìn)行實(shí)時(shí)控制。數(shù)字輸入模塊用于起動(dòng)、停止、緊急停止、12臺(tái)電機(jī)的Readay、找原點(diǎn)信號(hào)輸入。數(shù)字輸出用于電機(jī)運(yùn)行、電機(jī)故障、12臺(tái)電機(jī)尋找原點(diǎn)的狀態(tài)指示。
上位機(jī)與PCC可以通過RS232與以太網(wǎng)進(jìn)行通信。RS232作為編程口。以太網(wǎng)作為實(shí)時(shí)通信口,用于數(shù)據(jù)的上傳與下載。將上位機(jī)設(shè)定的運(yùn)動(dòng)曲線實(shí)時(shí)傳給PCC,同時(shí)將實(shí)際運(yùn)動(dòng)位置、速度、電流及故障信息傳給上位機(jī)。
圖3給出了一臺(tái)電機(jī)的伺服控制器與其他硬件設(shè)備的連接圖。電機(jī)控制器采用了B&R的ACO—POS 1090伺服控制器。伺服控制器插入了Power•Link模塊ACll2,用于和前后兩臺(tái)伺服控制器相連;ACl22為旋轉(zhuǎn)編碼器模塊,用于電機(jī)的速度與位置檢測。ACOPOS 1090本身提供了溫度信號(hào)檢測(T+、T—),抱閘信號(hào)輸出(B—、B+)和其他控制信號(hào)。在現(xiàn)場,同時(shí)安裝了三個(gè)光耦給定電機(jī)運(yùn)行的正向極限位置、反向極限位置和原點(diǎn)位置。在運(yùn)行前電機(jī)首先找到原點(diǎn)光耦所在位置定為0位,然后根據(jù)設(shè)定曲線運(yùn)行。而正、反向極限光耦信號(hào)起到了保護(hù)作用,當(dāng)光耦給出信號(hào)時(shí),伺服將給出極限故障信息并且停止運(yùn)行。

2.2 ACOP,OS伺服控制方式
ACOPOS的伺服控制如圖4所示,大致可以分為四個(gè)部分:初始值處理、位置控制、速度控制、實(shí)際值檢測。在初始處理時(shí),根據(jù)給定的位置及最大允許速度和最大允許加速度,給出一個(gè)理想的定位過程,即得出加速、恒速、減速段,不同位置時(shí)的速度也相應(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é)得到控制電流值送入矢量控制器,對(duì)電機(jī)進(jìn)行控制。而電機(jī)的實(shí)際位置通過編碼器得到。

圖4 伺服控制框圖
3 B&RPCC軟件系統(tǒng)
整個(gè)軟件系統(tǒng)可分為過程可視化接口(PVI)和Automation Studio。PVI用于與上位機(jī)的通信,AutomationStudio則用于PCC的邏輯控制與運(yùn)動(dòng)控制等的編程。
3.1 PVI通信
PVI是所有Windows應(yīng)用程序訪問貝加萊工業(yè)控制器的統(tǒng)一接口。使用P~I,用戶在開發(fā)通信程序時(shí)不需要花大量時(shí)間考慮底層的通信過程,也不需要調(diào)用復(fù)雜而繁瑣的Winsock API函數(shù),只需在邏輯結(jié)構(gòu)上進(jìn)行簡單的配置即可訪問PCC上的變量。PVI的最大特點(diǎn)就是能夠使應(yīng)用程序直接操作PCC任務(wù)中的變量,因此必須給每一個(gè)過程變量在PVI Manager中的映射指定唯一的路徑。
PVI通信的核心任務(wù)是建立過程變量的映像,建立的結(jié)果是每個(gè)映像都和網(wǎng)絡(luò)中唯一的一個(gè)變量一一對(duì)應(yīng)。這個(gè)變量可以是一個(gè)基本類型的數(shù)據(jù),如整型變量,也可以是一個(gè)自定義類型的數(shù)據(jù),如結(jié)構(gòu)體變量。這個(gè)映像包含了從應(yīng)用程序所在工作站到變量所在任務(wù)的路徑信息。如果把控制器和模塊也當(dāng)作通信中對(duì)象的話,每個(gè)映像路徑包括的對(duì)象有:基本對(duì)象(Pvi);線對(duì)象(Line);站對(duì)象(Slation);CPU對(duì)象(CPU);模塊對(duì)象(Mod-ule);任務(wù)對(duì)象(Task)和變量對(duì)象(Variable)。這個(gè)映射路徑由PVI Manager統(tǒng)一管理,每個(gè)對(duì)象包含對(duì)象名,對(duì)象描述和存取參數(shù)。對(duì)象名(包括路徑)是PVI中的名字。對(duì)象名由用戶任意確定,對(duì)象描述必須與PCC中待映射的變量名字一樣,PVI Manager依靠對(duì)象描述找到具體的過程變量,實(shí)現(xiàn)映象關(guān)系。存取參數(shù)包括數(shù)據(jù)類型說明、刷新時(shí)間、事件類型等。
在本系統(tǒng)中,伺服電機(jī)運(yùn)行在16個(gè)位置的速度是確定的,位置和速度均可以在上位機(jī)上設(shè)置,然后發(fā)送至PCC。將這些數(shù)據(jù)封裝為一個(gè)結(jié)構(gòu)體:
struct MotorCommSet{float Position[16];//16個(gè)點(diǎn)的位置float Speed[16];//16個(gè)點(diǎn)的速度int MotorNumber;//標(biāo)示當(dāng)前設(shè)置的是第幾臺(tái)電機(jī)
};
3.2 AutomationStudio編程
AutomarionStudio為每個(gè)應(yīng)用與程序提供了多種編程方法。包括:梯形圖LAD,指令表IL,結(jié)構(gòu)文本ST,順序功能圖SFC,AB,ANSIC。其中ANSIC是使用于新一代Automation Studio的功能強(qiáng)大的高級(jí)編程語言。利用ANSIC編寫的語言可以實(shí)現(xiàn)更高級(jí)的功能。
在搖擺部分的電機(jī)控制中,利用了ANSIC來實(shí)現(xiàn)曲線生成的功能。
3.2.1對(duì)象建立
B&R的伺服運(yùn)動(dòng)控制采用了面向?qū)ο蟮目刂品绞?,使用高?jí)語言C針對(duì)一個(gè)伺服控制器創(chuàng)建一個(gè)運(yùn)用對(duì)象ax obi后,可以利用針對(duì)此運(yùn)動(dòng)對(duì)象創(chuàng)建的指針*p ax dat,對(duì)電機(jī)完成不同的運(yùn)動(dòng)控制。
ncalloc(ncACPl0MAN十ncPOWERLINK-IF,ACPl0_NODE,ncAXIS,1,(UDINT)&ax_obj);
每臺(tái)伺服控制器在硬件上都有一個(gè)節(jié)點(diǎn)設(shè)置部分,可以設(shè)置各自的節(jié)點(diǎn)號(hào)。在命令ncalloc中通過不同的ACPIO NODE可以為不同的伺服創(chuàng)建各自的運(yùn)動(dòng)對(duì)象。
3.2.2虛軸
在ACOPOS的伺服中,針對(duì)每一臺(tái)伺服而創(chuàng)建的運(yùn)動(dòng)對(duì)象,都有一個(gè)假想的軸,稱之為虛軸。這個(gè)虛軸跟實(shí)軸一樣一方面能夠作為從軸,跟著主軸完成同步軌跡。另一方面也能作為主軸,讓其他軸參與同步。由于虛軸的引入,使得一個(gè)伺服也能夠和自己的虛軸發(fā)生同步關(guān)系,即電機(jī)運(yùn)行時(shí)以自己的虛軸作為主軸,實(shí)軸跟隨虛軸同步。
這里伺服要完成曲線運(yùn)動(dòng),在設(shè)定的點(diǎn)之間有一個(gè)加速度突變的過程,因此為了保持電機(jī)的平穩(wěn)運(yùn)行,采用了虛軸運(yùn)動(dòng)控制。虛軸是一個(gè)理論上的軸,因此可以應(yīng)用數(shù)學(xué)模型,設(shè)定虛軸的運(yùn)行軌跡。在相鄰兩個(gè)點(diǎn)之間,虛軸為勻加速,運(yùn)動(dòng)到下一個(gè)點(diǎn)時(shí)以另外一個(gè)加速度進(jìn)行勻加速運(yùn)動(dòng)。由于虛軸是假想的理論軸,加速的突變不會(huì)引起電機(jī)運(yùn)行的不穩(wěn)定。因此這里將虛軸設(shè)為主軸。由于虛軸和實(shí)軸的同步關(guān)系為位置同步,而非速度同步,當(dāng)設(shè)定虛軸與實(shí)軸為1:1同步時(shí),虛軸為主軸按既定曲線運(yùn)動(dòng),而實(shí)軸則不斷地跟隨虛軸的位置進(jìn)行運(yùn)動(dòng),因此對(duì)于實(shí)軸來說虛軸的速度或加速度的突變并不會(huì)對(duì)電機(jī)產(chǎn)生影響,保證了電機(jī)運(yùn)行的穩(wěn)定性。
Automation Studio提供了專門的實(shí)軸與虛軸的關(guān)系設(shè)定文件,在虛軸進(jìn)行運(yùn)動(dòng)之前,必須把這個(gè)文件下載到伺服,建立伺服的虛軸與實(shí)軸的關(guān)系之后,實(shí)軸才能跟隨虛軸運(yùn)動(dòng)。
實(shí)軸與虛軸的關(guān)系設(shè)定文件名為“autogear”。
在autogear中,將412號(hào)參數(shù)(虛軸的位置)賦給503號(hào)參數(shù)(主軸設(shè)定),表明了將虛軸的位置作為主軸。
ncalloc(ncACPl0MAN十ncPOWERLINK-IF,ACPl0_NODE,ncAXIS,1,(UDINT)&ax_obj);
每臺(tái)伺服控制器在硬件上都有一個(gè)節(jié)點(diǎn)設(shè)置部分,可以設(shè)置各自的節(jié)點(diǎn)號(hào)。在命令ncalloc中通過不同的ACPIO NODE可以為不同的伺服創(chuàng)建各自的運(yùn)動(dòng)對(duì)象。
3.2.2虛軸
在ACOPOS的伺服中,針對(duì)每一臺(tái)伺服而創(chuàng)建的運(yùn)動(dòng)對(duì)象,都有一個(gè)假想的軸,稱之為虛軸。這個(gè)虛軸跟實(shí)軸一樣一方面能夠作為從軸,跟著主軸完成同步軌跡。另一方面也能作為主軸,讓其他軸參與同步。由于虛軸的引入,使得一個(gè)伺服也能夠和自己的虛軸發(fā)生同步關(guān)系,即電機(jī)運(yùn)行時(shí)以自己的虛軸作為主軸,實(shí)軸跟隨虛軸同步。
這里伺服要完成曲線運(yùn)動(dòng),在設(shè)定的點(diǎn)之間有一個(gè)加速度突變的過程,因此為了保持電機(jī)的平穩(wěn)運(yùn)行,采用了虛軸運(yùn)動(dòng)控制。虛軸是一個(gè)理論上的軸,因此可以應(yīng)用數(shù)學(xué)模型,設(shè)定虛軸的運(yùn)行軌跡。在相鄰兩個(gè)點(diǎn)之間,虛軸為勻加速,運(yùn)動(dòng)到下一個(gè)點(diǎn)時(shí)以另外一個(gè)加速度進(jìn)行勻加速運(yùn)動(dòng)。由于虛軸是假想的理論軸,加速的突變不會(huì)引起電機(jī)運(yùn)行的不穩(wěn)定。因此這里將虛軸設(shè)為主軸。由于虛軸和實(shí)軸的同步關(guān)系為位置同步,而非速度同步,當(dāng)設(shè)定虛軸與實(shí)軸為1:1同步時(shí),虛軸為主軸按既定曲線運(yùn)動(dòng),而實(shí)軸則不斷地跟隨虛軸的位置進(jìn)行運(yùn)動(dòng),因此對(duì)于實(shí)軸來說虛軸的速度或加速度的突變并不會(huì)對(duì)電機(jī)產(chǎn)生影響,保證了電機(jī)運(yùn)行的穩(wěn)定性。
Automation Studio提供了專門的實(shí)軸與虛軸的關(guān)系設(shè)定文件,在虛軸進(jìn)行運(yùn)動(dòng)之前,必須把這個(gè)文件下載到伺服,建立伺服的虛軸與實(shí)軸的關(guān)系之后,實(shí)軸才能跟隨虛軸運(yùn)動(dòng)。
實(shí)軸與虛軸的關(guān)系設(shè)定文件名為“autogear”。
在autogear中,將412號(hào)參數(shù)(虛軸的位置)賦給503號(hào)參數(shù)(主軸設(shè)定),表明了將虛軸的位置作為主軸。
’Unit=““
Remark=””/>
’ Name=“Cam automat:Mul—
tiplication factOr Ofslave axis”Value=“1000” Unit=““Re—
mark=””/>
將519號(hào)參數(shù)(主軸系數(shù))和520號(hào)參數(shù)(從軸系數(shù))值設(shè)為相同的大小,這里都設(shè)為1 000,表明了從軸與主軸以1 000:1 000進(jìn)行位置同步。B&R為伺服參數(shù)的上傳與下載提供了專門的通道,稱之為SERVICE通道。通過SERVICE通道,既可以進(jìn)行單個(gè)參數(shù)的傳輸,也可以進(jìn)行參數(shù)塊的傳輸。將“autogear’作為一個(gè)參數(shù)塊,通過SERVICE通道下載到伺服后,虛軸與實(shí)軸的關(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í)軸設(shè)定下載
一旦主軸與從軸的關(guān)系建立起來之后,只要對(duì)虛軸參數(shù)進(jìn)行操作,實(shí)軸就會(huì)跟隨虛軸位置進(jìn)行1 :1同步。而對(duì)于虛軸參數(shù)的操作同樣也可以通過SERVICE通道進(jìn)行。
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è)計(jì)
程序如圖5所示,主要分為兩塊:一塊為總的邏輯控制部分,由梯形圖完成;另一塊為運(yùn)動(dòng)控制部分,通過C語言完成。
找原點(diǎn)時(shí),電機(jī)統(tǒng)一向正向運(yùn)行,若收到原點(diǎn)信號(hào)就停下,定為。位;若收到正向極限信號(hào)就停下然后反方向運(yùn)行,找到原點(diǎn)信號(hào),定為0位。曲 線運(yùn)動(dòng)為一個(gè)子程序,點(diǎn)與點(diǎn)之間做勻加速運(yùn)動(dòng), 通過位置的判斷,對(duì)虛軸進(jìn)行加速度的切換。
4 設(shè)計(jì)結(jié)果
利用B&R的PCC的PVI完成了與上位機(jī)的通信。利用梯形圖進(jìn)行邏輯控制啟動(dòng)、停止、故障等。而高級(jí)語言C,則實(shí)現(xiàn)了曲線的運(yùn)用。并且在曲線運(yùn)動(dòng)過程中,實(shí)時(shí)地將速度與位置信號(hào)傳給上位機(jī),方便實(shí)時(shí)地觀測和調(diào)整曲線。

圖5 程序流程圖
目前,整條生產(chǎn)線已投入試生產(chǎn),刻蝕效果良好。圖6為伺服電機(jī)實(shí)時(shí)運(yùn)動(dòng)曲線,伺服按正向運(yùn)動(dòng)找到原點(diǎn)后開始按到給定的點(diǎn)運(yùn)動(dòng)。在相鄰的兩個(gè)點(diǎn)之間采用了勻加速運(yùn)動(dòng),按照位置進(jìn)行點(diǎn)與點(diǎn)的切換,改變各個(gè)曲線段的加速度。在運(yùn)行過程中上位機(jī)對(duì)電機(jī)運(yùn)行的實(shí)際位置與速度進(jìn)行隨機(jī)采樣,將采樣得到的點(diǎn)顯示在上位機(jī)界面上,經(jīng)過一段時(shí)間后可以看到電機(jī)實(shí)際運(yùn)行的軌跡。由圖可知,實(shí)際運(yùn)行中,都經(jīng)過設(shè)定的點(diǎn)。工藝要求的誤差為2mm,而實(shí)際設(shè)計(jì)得到的結(jié)果誤差只有0.5mm,性能大大提高。在高速運(yùn)行時(shí),如1min運(yùn)行40個(gè)周期,電機(jī)仍然運(yùn)行平穩(wěn),而工藝上只要求15至30個(gè)周期。

圖6 伺服電機(jī)實(shí)際運(yùn)用曲線
采用了B&R的PCC使通信、控制、運(yùn)動(dòng)變得更加方便、靈活、可靠。由于B&R的PVI功能,使通信更方便,成為一個(gè)單獨(dú)的任務(wù)。利用Power-Link實(shí)現(xiàn)了PCC與12臺(tái)伺服之間實(shí)時(shí)與快速的控制與傳輸。利用PCC的高級(jí)語言C,方便地實(shí)現(xiàn)了曲線的生成。而利用B&R特有的虛軸的概念,更使電機(jī)的運(yùn)行平衡可靠。