基于可編程控制器的同步控制指令
兩個或多個獨立電機間的同步控制,在現(xiàn)有的可編程控制器應(yīng)用中步驟繁瑣,同步性差。本文主要介紹了采用雙芯片的可編程控制器,只使用一條指令,即可完成電機間的同步控制,從軸延遲時間小,使用方便。
可編程控制器;同步控制
可編程控制器PLC由于在惡劣的環(huán)境中工作可靠性高,實時性好,功能強大,編程方便,所以被廣泛應(yīng)用于工業(yè)現(xiàn)場控制中。高速脈沖輸出功能和高速計數(shù)器功能是PLC在位置控制和運動控制領(lǐng)域中的重要組成部分。通過高速脈沖輸出來驅(qū)動電機,利用脈沖編碼器可以采樣電機的轉(zhuǎn)速和轉(zhuǎn)動方向,轉(zhuǎn)化為脈沖形式,然后通過高速計數(shù)器對其高頻率的脈沖進行精確計數(shù),從而實現(xiàn)PLC對電機的控制。具備這兩種功能的PLC可以應(yīng)用在位置控制和運動控制如紡織機械、小型包裝機械等各個工業(yè)領(lǐng)域。
在上述位置控制和運動控制的閉環(huán)控制中,特別是用于兩個獨立電機間的同步控制,一般需要PLC多條指令的配合。通過PLC的高速計數(shù)器采集裝在電機上旋轉(zhuǎn)編碼器的數(shù)據(jù),得到電機的速度信息。然后在PLC程序中加入計算過程,再通過PLC的高速脈沖輸出將計算結(jié)果通過脈沖形式輸出到驅(qū)動電機。這樣的做法會使PLC程序量比較大,更重要的是,PLC采用順序掃描的方式執(zhí)行指令,采用多條分離指令的方式會大大增加PLC掃描周期的時間,使得運動控制的輸出滯后于輸入的變化,同步性不好。實際控制效果不理想,例如會使生產(chǎn)線傳送帶堆料或者產(chǎn)生牽拉現(xiàn)象。
另外,目前多數(shù)PLC的高速計數(shù)器功能和高速脈沖輸出功能集成在主CPU中,占用主CPU的資源,影響整個PLC的掃描周期,使得輸出滯后于輸入現(xiàn)象更加明顯,這大大縮小了此種PLC的使用范圍。并且即便是一些國外知名品牌的PLC在多個端口同時工作時,標稱的最高頻率也大打折扣,往往幾路同時使用,實際頻率只能達到單路使用時最高頻率的幾分之一,這在他們的說明書和技術(shù)參數(shù)上都有說明。
為了達到兩個或多個獨立電機間同步控制的目的,在需要高精度同步控制的場合,就不得不選用價格昂貴的專用同步控制器,或者需要PLC編寫復(fù)雜的同步算法應(yīng)用程序,并且須配備獨立的運動控制模塊、高速計數(shù)器模塊。這增加了整個系統(tǒng)的成本,對資源造成了很大的浪費。而本設(shè)計使用小型PLC和普通不帶通信功能的伺服即可完成以上功能,節(jié)約了成本。
本設(shè)計僅使用一條指令即可完成主從軸同步功能。PLC主機采用一塊ARM芯片和一塊大容量可編程邏輯器件FPGA作為主控制器。FPGA負責(zé)高速脈沖輸入采樣、同步算法處理以及高速脈沖輸出等功能。同步功能的實現(xiàn)在FPGA中完成,和主芯片ARM的分離設(shè)計大大減輕了主芯片的工作量,減少了整個PLC的掃描周期。本設(shè)計和傳統(tǒng)的PLC多指令同步控制系統(tǒng)相比,提高了同步性能,降低了應(yīng)用難度,節(jié)約了成本。
如圖1所示,可編程邏輯器件FPGA主要分成4個大的模塊。高速計數(shù)器模塊對編碼器的脈沖信號進行精確的計數(shù),主電機通過旋轉(zhuǎn)編碼器將轉(zhuǎn)動轉(zhuǎn)化為脈沖信號輸入FPGA。通信模塊主要負責(zé)和主芯片ARM的數(shù)據(jù)交換。ARM根據(jù)用戶設(shè)定的同步參數(shù)傳送給FPGA,通信模塊將收到的這些參數(shù)分別傳送給輸入、輸出模塊和同步處理模塊。最終又將實時數(shù)據(jù)和處理結(jié)果傳回到ARM主控制器,用戶可對指令進行監(jiān)控和數(shù)據(jù)的讀取。同步算法模塊將高速計數(shù)模塊采集的數(shù)據(jù)進行分析,計算出主軸實時的運行頻率、運行距離,再通過特定的算法計算出從軸應(yīng)當維持怎樣的頻率保持和主軸同步。并且同步算法模塊有預(yù)判功能,根據(jù)一段時間內(nèi)主軸的運行和用戶輸入的參數(shù),事先計算從軸的運行參數(shù)。這種算法使得從軸同步精度高,延時小。最終同步算法處理模塊將從軸的跟隨頻率和跟隨距離實時發(fā)送給高速脈沖輸出模塊。這樣就完成了一個同步周期的工作。
圖1 軟件框圖(M表示電機,G表示編碼器)
本設(shè)計將這些功能集成到一條指令,通過這種控制,后級電機只滯后于前級電機一個同步采樣周期,這個延時是可以設(shè)定的、固定的并且可控的。這種方法同步性能高,同步精確。
本設(shè)計采用的可編程邏輯器件FPGA,實際上是一種可編程的硬件電路,最大特點是可進行多組并行工作。這種方法使得每一組高速輸入輸出在硬件上完全獨立,不會互相影響干擾。實施中可同時進行多組脈沖同步控制,每一組互相獨立。
雙軸同步控制指令的一種典型應(yīng)用是飛剪系統(tǒng)。如圖2所示,在飛剪系統(tǒng)中一般主軸輸送待切割物體,從軸上安裝飛剪刀頭,定長切割主軸上的物體。根據(jù)切割物的長短不同,從軸需要調(diào)節(jié)幾段速度,并且在切割前后的一段區(qū)域內(nèi)需要和主軸保持相同的速度,這樣才能使刀口平整。當切割長度小于從軸周長時,從軸在切割完成需要加速趕上下一次切割點;當切割長度大于從軸周長時,從軸在切割完成后減速到達下一次切割點。從軸的速度變化調(diào)整由PLC指令自動計算,達到雙軸同步控制的目的。
圖2 飛剪系統(tǒng)示意圖
在嵌入式系統(tǒng)中,同步控制的算法流程如圖3所示,分為以下幾個步驟:
(1)讀取用戶設(shè)定參數(shù)。計算出虛擬原點位置,計算從軸所需要的各個參數(shù),包括加速或減速至同步起始位置的加減速度及脈沖個數(shù)。計算主軸離開同步區(qū)后,走完剩余長度所需的時間。從軸必須在此時間內(nèi)回歸到虛擬原點,計算出從軸必須達到的回歸速度。
(2)從軸運行至虛擬原點后停止。等待色標傳感器信號到達,從軸開始加速運行,到達同步起始點后,采樣主軸的速度,根據(jù)從軸半徑和主軸保持線速度一致。
(3)同步完成后,從軸以當前速度加速或減速到計算所得的回歸速度。
(4)運行至內(nèi)部計算所得的虛擬原點,減速停止從軸。
(5)等待色標傳感器信號或者高速計數(shù)器的主軸切割長度脈沖數(shù),接收到信號后,啟動下一輪同步,周而復(fù)始。
當主軸在啟動時的加速階段,從軸同步控制有別于主軸已達到勻速運動的情況。如圖3所示,在機械裝置安裝色標傳感器時,對準材料的色標點,這時有個待同步點到實際同步起始點的距離,我們稱之為初始距離Lini。
Lini的長度按照主軸已經(jīng)達到勻速時來計算,Lini =主軸加速時間*主軸速度。在主軸起始加速段過程中,加速度a= ( V1 - V0 ) / T,根據(jù)加速度求距離公式Lini=V0t+1/2at2,可求得t,也就是主軸到達同步起始點的時間。從軸只在加速段加速到主軸當時的速度,后面將跟隨主軸作同步運行。從而算出從軸在起始段需要等待的時間為(t-從軸加速時間),在經(jīng)過這個等待時間以后,從軸開始啟動工作,即從軸在規(guī)定加速時間內(nèi)加速到此速度,然后跟隨主軸運動,最終能與主軸在同步起始點吻合。
之后的過程,主軸勻速運動。從軸每次運行至虛擬原點,然后加速與主軸同步,如上一節(jié)所述。
圖3 同步算法流程圖
本設(shè)計使用一條PLC指令實現(xiàn)了主從軸的同步功能。只需設(shè)定以下參數(shù)即可運行PLC指令,使用方便,同步計算自動在PLC中實現(xiàn)。下面以PLC中IEC61131-3中的IL語言來說明。
SYNC MLEN,SLEN,SYNSTR,SYNLEN,STIME,INMOD,MFRQ,RATIO,PORT
其中SYNC為指令的名稱,后面跟著的都是指令參數(shù):
MLEN,主軸長度,即送料軸每段同步長度,單位 pulse。
SLEN,從軸長度,即從軸周長,單位 pulse。
SYNSTR,同步起始位置,即Lini長度,單位 pulse。
SYNLEN,同步區(qū)長度,單位 pulse。
STIME,從軸加減速時間,單位ms
INMOD,輸入脈沖模式,高速計數(shù)器共有3種輸入,包括模式脈沖+方向;增減脈沖輸入;A/B相正交輸入。
MFRQ,主軸運行頻率,單位Hz。
RATIO,從軸與主軸的同步倍率,浮點數(shù)。
PORT,同步軸的通道號,即同時可使用多組。
這本來在其他公司高功能型PLC里需要多步完成的復(fù)雜功能,或者必須采用價格昂貴的專用同步控制器,在本PLC里用一條指令即可實現(xiàn)。如果使用多條指令完成,采樣周期往往依賴于PLC的掃描周期,當PLC程序龐大的時候,掃描周期非常長,造成輸出響應(yīng)滯后,輸出脈沖間隙大,電機運行不平穩(wěn),定位精度差。本設(shè)計的同步指令使用方便,同步性能好。同時大大提高了PLC的執(zhí)行效率,縮短了整個PLC的掃描周期。使得工業(yè)運動控制響應(yīng)更快,位置控制更加精確。本設(shè)計指令可以應(yīng)用于飛剪,定長裁切等需要兩個或多個電機間同步的裝置,具有良好的社會經(jīng)濟效益。
[1] 鄒麗梅, 郭波. 基于微型PLC通信的多軸伺服同步控制[J]. 宜春學(xué)院學(xué)報, 2015, 3 ( 37 ).
[2] 周秀君, 鄧榆林. 基于PLC的電機同步數(shù)字控制模型研究[J]. 電氣傳動自動化, 2013, 4 ( 35 ).
[3] 朱茂林. 多電機速度同步控制策略的研究與應(yīng)用[C]. 合肥工業(yè)大學(xué), 2013.
Synchronous control of two or more independent motors is fussy and lacks synchronization in existing PLC applications. This paper describes the use of dual-chip programmable controller, which uses only one instruction to achieve the synchronization. This results in small delay time of the slave motor, and the advantage that the instruction is easy to use.
PLC; Synchronous control
B
1003-0492(2017)01-0103-03
TP273
上海人才發(fā)展資金資助項目(201533)
應(yīng)成(1982-),男,浙江寧波人,工程師,本科,研究方向為嵌入式軟件,工業(yè)控制、通信。
薛吉(1978-),女,江蘇江陰人,高級工程師,碩士,研究方向為工業(yè)控制、通信研究與產(chǎn)品開發(fā)。