沈陽航空職業(yè)技術(shù)學院 徐 寧 張博舒 張連華 李 虹
步進電機是數(shù)字控制系統(tǒng)中的執(zhí)行電動機,改變輸入脈沖的數(shù)目就能控制步進電動機轉(zhuǎn)子機械位移的大小;改變輸入脈沖的通電相序,就能控制步進電動機轉(zhuǎn)子機械位移的方向,實現(xiàn)位置的控制[1]。
目前世界上主要的PLC廠家生產(chǎn)的PLC均有專門的步進電機控制指令,可以很方便地和步進電機構(gòu)成運動控制系統(tǒng)。PLC要和步進電機配合實現(xiàn)運動控制,還需要在PLC內(nèi)部進行一系列設(shè)定,或者是編制一定的程序。
本次研究中PLC要和步進電機配合實現(xiàn)運動控制,需要在PLC內(nèi)部進行設(shè)定并編制一定的程序。另外,步進電機控制是要用高速脈沖控制的,所以PLC必須是可以輸出高速脈沖的晶體管輸出形式,不可以使用繼電器輸出形式的PLC來控制步進電機。
由于此設(shè)計對PLC的要求并不是很高,輸入/輸出點所用不多,程序量不是很大,所以用西門子S7-200CPU226型PLC就可以滿足要求。西門子S7系列PLC體積小、速度快、標準化,具有網(wǎng)絡(luò)通信能力,功能更強,可靠性更高[2]。
在選擇步進電動機時主要考慮的是步進電動機的類型選擇,根據(jù)系統(tǒng)要求,確定步進電動機的電壓值、電流值以及有無定位轉(zhuǎn)矩和使用螺栓機構(gòu)的定位裝置,從而就可以確定步進電動機的相數(shù)和拍數(shù)。
這次設(shè)計所選用的步進電機為57BYG2 50C型,它的數(shù)據(jù)參數(shù)如表1所示。
表1 57BYG250C型步進電機的數(shù)據(jù)參數(shù)
步進電機的運行要由一電子裝置進行驅(qū)動,這種裝置就是步進電機驅(qū)動器,它是把控制系統(tǒng)發(fā)出的脈沖信號轉(zhuǎn)化為步進電機的角位移,或者說:控制系統(tǒng)每發(fā)一個脈沖信號,通過驅(qū)動器就使步進電機旋轉(zhuǎn)一步距角。所以步進電機的轉(zhuǎn)速與脈沖信號的頻率成正比。
一般來說,對于兩相四根線電機,可以直接和驅(qū)動器相連,以兩相混合步進電動機驅(qū)動器為例,主要由電源輸入部分、信號輸入部分、輸出部分組成[3]。所有型號驅(qū)動器的輸入信號都相同,共有三路信號,它們是:步進脈沖信號CP、方向電平信號DIR和脫機信號FREE。脫機信號FREE為低電平有效,這時電機處于無力矩狀態(tài)。若FREE端為高電平或懸空不接時,電機可正常運行。
此步進電機驅(qū)動器的電氣技術(shù)數(shù)據(jù)如表2所示。
表2 步進電機驅(qū)動器的電氣技術(shù)數(shù)據(jù)
本文研究的內(nèi)容為“PLC控制步進電機加減速運行的設(shè)計”,通過手動控制步進電機運行,可以通過PLC程序從外部輸入脈沖數(shù)值,并能實現(xiàn)正反轉(zhuǎn)運行。運行所走的路線按照下列包絡(luò)控制電機運行。如圖1所示。
圖1 控制電機運行的包絡(luò)線圖
根據(jù)圖1包絡(luò)中的數(shù)值分析運行的脈沖總數(shù)為1000個脈沖,起動頻率為500Hz,最大脈沖頻率為1000Hz,這要求PLC中的高級指令PTO發(fā)生器包括三段管線,由于包絡(luò)中的值是用周期而不是用頻率表示的,需要將頻率值轉(zhuǎn)換成周期值。
初始周期為2000μs,最高頻率的周期為1000μs,則對于第一段包絡(luò)線來說,脈沖發(fā)生器調(diào)整脈沖周期的增量值:
式中的ETC、ICT和Q分別是該段最高頻率的周期、初始時的周期和脈沖數(shù)[4]。由上面的計算過程式(1.1)可知,對于給定了初始頻率、運行頻率以及行程。可以根據(jù)公式計算出頻率上升的斜率,基于此原則,可以在子程序中設(shè)定外部給定的三個變量:初始頻率、運行頻率、脈沖數(shù),計算出各段運行脈沖數(shù)。根據(jù)此原理進行對程序的設(shè)計。
步進電機驅(qū)動器接線示意圖如圖2所示。
圖2 步進電機驅(qū)動器接線示意圖
PLC的I/O分配如表3所示。
表3 系統(tǒng)的I/O分配表
主程序是整個程序的支架部分,也是改變?nèi)齻€變量值的地方。網(wǎng)絡(luò)1為停止程序,因為停止指令的優(yōu)先等級高,所以將停止指令放在網(wǎng)絡(luò)1。網(wǎng)絡(luò)2為啟動指令(即脈沖的計算輸出)。網(wǎng)絡(luò)3、4為脈沖數(shù)的加、減指令,每次加、減的數(shù)值就是步進電機的行程。網(wǎng)絡(luò)5是數(shù)據(jù)類型的轉(zhuǎn)換,為后面計算所用。此外還包括2個調(diào)用子程序(脈沖的計算輸出程序和停止程序)。
當觸點I0.2每閉合一次時,脈沖個數(shù)的設(shè)定值從0開始增加1000,當觸點I0.3每閉合一次時,脈沖個數(shù)的設(shè)定值從當前值減少1000。當觸點I0.1閉合時,調(diào)用脈沖的計算輸出程序,啟用3段包絡(luò)線控制電機運行。當觸點I0.0閉合時,調(diào)用停止程序,停止電機,復(fù)位系統(tǒng),完成控制要求。
脈沖的計算輸出程序為一個子程序,它是根據(jù)式(1.1)計算出的周期的增量值,和主程序中的三個變量(初始頻率、運行頻率和脈沖數(shù)),再由式(1.1)反算出三段包絡(luò)線所需的數(shù)據(jù)。最后輸出脈沖,驅(qū)動步進電機運行。
停止程序是用于停止步進電機運行的,將SMB67的參數(shù)置為0,即不啟用脈沖輸出,將步進電機的當前值VD1200及VD10清零。
通過本次設(shè)計,從最開始的步進電機、步進電機驅(qū)動器以及整體控制功能的數(shù)據(jù)分析入手,在硬件上對PLC、步進電機以及步進電機驅(qū)動器進行了選擇,最后編制出PLC程序?qū)崿F(xiàn)了利用PLC發(fā)出高速脈沖對步進電機的加減速控制。
[1]胡幸鳴.電機及拖動基礎(chǔ)[M].北京:機械工業(yè)出版社,2008.
[2]徐國林.PLC應(yīng)用技術(shù)[M].北京:機械工業(yè)出版社,2008.
[3]王侃夫.數(shù)控機床控制技術(shù)與系統(tǒng)[M].北京:機械工業(yè)出版社,2009.
[4]廖常初.PLC編程及應(yīng)用[M].北京:機械工業(yè)出版社,2007.