張李軍
摘 要:步進(jìn)電機(jī)時常用的開環(huán)控制電器,控制精度較高,但實(shí)際使用中容易出現(xiàn)過沖或者失步現(xiàn)象,所以需做好升速和降速處理,本文主要闡述基于PLC實(shí)現(xiàn)步進(jìn)電機(jī)S型曲線加速的方法。
關(guān)鍵詞:步進(jìn)電機(jī);S型曲線加速;PLC;可編程序控制器
DOI:10.16640/j.cnki.37-1222/t.2018.04.131
1 系統(tǒng)簡介
在當(dāng)前數(shù)字控制系統(tǒng)中,步進(jìn)電機(jī)的應(yīng)用十分廣泛,步進(jìn)電機(jī)是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰频拈_環(huán)電機(jī)。在正常工作狀態(tài)下,電機(jī)的轉(zhuǎn)速和轉(zhuǎn)動角度(或圈數(shù))只由控制脈沖信號的頻率和脈沖數(shù)決定。
步進(jìn)電機(jī)和交流伺服電機(jī)同為常用驅(qū)動電器,但在對定位精度要求不是非常高的場合,使用步進(jìn)電機(jī)比伺服具有明顯優(yōu)勢:①步進(jìn)電機(jī)對脈沖信號的跟隨性優(yōu)于伺服電機(jī);②步進(jìn)電機(jī)和步進(jìn)電機(jī)驅(qū)動價格低于伺服電機(jī)。
由于步進(jìn)電機(jī)為開環(huán)控制電器,當(dāng)旋轉(zhuǎn)角度發(fā)生錯誤時無法自動修正。當(dāng)步進(jìn)電機(jī)在啟動時脈沖頻率過高或負(fù)載過大,在慣性作用下容易出現(xiàn)失步或堵轉(zhuǎn)的現(xiàn)象。若啟動時啟動扭力過大,會出現(xiàn)堵轉(zhuǎn)現(xiàn)象,使實(shí)際旋轉(zhuǎn)角度小于脈沖控制角度。若停止時轉(zhuǎn)速過高容易出現(xiàn)電機(jī)過沖現(xiàn)象,使實(shí)際旋轉(zhuǎn)角度大于脈沖控制角度。為了保證步進(jìn)電機(jī)的控制精度,必須在控制脈沖上做好升速和降速過程的處理。
步進(jìn)電機(jī)常用加速方式由直線型加速和曲線型加速。直線型加速由線性加速、梯形加速等;曲線型加速由指數(shù)型加速和S型加速等。直線型加速控制簡單容易實(shí)現(xiàn),但加速過程不夠平滑,實(shí)際加速效果不如曲線型加速。曲線型加速過程平滑,但不容易實(shí)現(xiàn)。
本文主要論述基于PLC(可編程控制器)的S型曲線加速應(yīng)用和實(shí)現(xiàn)方法。PLC是當(dāng)前主流的工業(yè)自動化控制器之一,也小批量生產(chǎn)的設(shè)備控制中應(yīng)用最多的控制器,PLC編程靈活,方便拓展,成本低,選用具有高速脈沖的PLC型號可直接輸出控制脈沖和方向脈沖來對步進(jìn)電機(jī)進(jìn)行控制。
PLC選用臺達(dá)DVP-EH3系列,它是臺達(dá)DVP-E系列的最高級主機(jī),具備優(yōu)異的運(yùn)動控制功能,可實(shí)現(xiàn)直線插補(bǔ),圓弧插補(bǔ)功能,性能質(zhì)量穩(wěn)定,性價比高。DVP-EH3系列本身帶有高速脈沖發(fā)生器,可發(fā)出最大100KHZ脈沖,滿足對步進(jìn)電機(jī)的控制要求,并可通過程序進(jìn)行函數(shù)計(jì)算,通過函數(shù)計(jì)算結(jié)果實(shí)時改變脈沖頻率,達(dá)到變速或變加速控制。
2 波形曲線
S型加速曲線選用余弦函數(shù)π-2π段波形,圖1所示即為實(shí)際速度曲線,其中V0為目標(biāo)速度(頻率),T為加速時間,曲線波峰為,波谷為0,周期為2T。0-T段波形為余弦函數(shù)左移半個周期(即T)上移一個波峰(即V0),角頻率 ,故加速段的函數(shù)為:
由于PLC內(nèi)三角函數(shù)是以角度單位進(jìn)行計(jì)算,且計(jì)算范圍為,故在PLC中進(jìn)行運(yùn)算時應(yīng)將弧度換算為角度,PLC內(nèi)計(jì)算函數(shù)為:
3 S型加速曲線在PLC中的實(shí)現(xiàn)
臺達(dá)DVP-EH3系列PLC的Y0為脈沖輸出,Y1為方向脈沖輸出,可直接接入步進(jìn)電機(jī)驅(qū)動器的控制脈沖輸入接口,PLC輸出電壓為24VDC,24VDC電壓在大多數(shù)步進(jìn)電機(jī)驅(qū)動器的控制脈沖輸入接口上可以通用,若步進(jìn)電機(jī)驅(qū)動器的控制脈沖輸入接口為5VDC或12VDC輸入電壓,可外接獨(dú)立電源,防止電壓過高。根據(jù)實(shí)際需要設(shè)置步進(jìn)電機(jī)的細(xì)分,則當(dāng)PLC程序控制Y0、Y1輸出脈沖時,輸出脈沖通過細(xì)分驅(qū)動器控制步進(jìn)電機(jī)旋轉(zhuǎn)一個角度,旋轉(zhuǎn)速度為PLC的脈沖輸出頻率。
子程序P001為函數(shù)式計(jì)算程序,根據(jù)控制需求選用0.01s計(jì)時,臺達(dá)DVP-EH3系列PLC的T200定時器計(jì)時單位為10ms(即0.01s),將T200計(jì)時結(jié)果存入寄存器D90,D90即為t(當(dāng)前時間)。T(加速時間)為設(shè)定值,可根據(jù)需求設(shè)置1-30000(單位為10ms)任意整數(shù)值,設(shè)定值存于寄存器D200,D200寄存器有斷電保持功能,當(dāng)設(shè)備斷電后可自動保存,無需重新設(shè)置。因當(dāng)前加速時間小于所設(shè)定的加速時間,所以 的結(jié)果為小數(shù),在對寄存器D90和D200 進(jìn)行除法運(yùn)算時需用浮點(diǎn)數(shù)運(yùn)算,程序“DEDIV D90 D200 D102”中寄存器D102即為浮點(diǎn)數(shù)除法運(yùn)算的結(jié)果,即 的值。寄存器D108為運(yùn)算后的結(jié)果,結(jié)果為浮點(diǎn)數(shù)。將D108進(jìn)行DCOS運(yùn)算后所得結(jié)果即為。寄存器D124的值為函數(shù)式中v的當(dāng)前值,脈沖頻率必須為整數(shù)型,所以需通過程序“DINT D124 D126”將D124轉(zhuǎn)為整數(shù)型,D126即為所需要的當(dāng)前頻率,即運(yùn)行速度。
通過DDRVI指令將所需要的控制脈沖由Y0和Y1端口輸出,其中D204為脈沖數(shù)。如果需要進(jìn)行減速,則需要提取當(dāng)前已發(fā)脈沖數(shù)再進(jìn)行計(jì)算,DVP-EH3中已發(fā)脈沖數(shù)目寄存器為D1030(Y0 脈沖輸出個數(shù)Low word)、D1031(Y0 脈沖輸出個數(shù)High word)、D1032(Y1 脈沖輸出個數(shù)Low word)和D1033(Y1 脈沖輸出個數(shù)High word),具體計(jì)算方法本文不做闡述。
參考文獻(xiàn):
[1]朱曉春,屈波,孫來業(yè),汪木蘭.S曲線加減速控制方法研究[J].中國制造業(yè)信息化,2006(23).
[2]黃兆斌,黃云龍,余世明.幾種步進(jìn)電機(jī)加減速方法的對比研究及其應(yīng)用[J].機(jī)電工程,2011(08).endprint