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