經(jīng)常看到有的工控朋友問起用PLC控制步進(jìn)馬達(dá)的問題,在這里我舉個(gè)最簡單的例子,只能提供思路,更深入的研究就靠大家自己了。
步進(jìn)電機(jī)的步距角為1.8度,驅(qū)動(dòng)器有細(xì)分的功能,考慮到精度和速度的問題,我們選用了半步運(yùn)行的方式。絲桿的螺距為5mm,即步進(jìn)電機(jī)旋轉(zhuǎn)一周,它所拖動(dòng)的工件移動(dòng)5個(gè)mm,PLC則輸出400個(gè)脈沖,即每毫米需要輸出80個(gè)脈沖。5號(hào)腳高電平則電機(jī)正轉(zhuǎn),反之亦反。
設(shè)計(jì)的要求是這樣的:在人機(jī)界面上輸入工件要到的位置(以mm為單位),輸入完成后工件自動(dòng)運(yùn)行到指定位置停下。如果設(shè)定的位置大于實(shí)際的位置,則工件正向運(yùn)轉(zhuǎn)到位,反之亦反。
D200:人機(jī)界面輸入的工件要求位置
D202:工件的實(shí)際位置
D204:實(shí)際位置與設(shè)定位置之差值
程序如下:
LDD> D200 D202
DSUBP D200 D202 D204 ;將差值送到D204
SET Y2 ;如果設(shè)定值大于實(shí)際值則正轉(zhuǎn)
LDD<= D200 D202
DSUBP D202 D200 D204 ;將差值送到D204
RST Y2 ;如果設(shè)定值小于實(shí)際值則反轉(zhuǎn)
LDD<> D200 D202 ;設(shè)定值與實(shí)際值不等
PLS M0
ANI M0
DPLSY K1000 K206 Y0 ;以1000赫茲的頻率輸出脈沖所需的脈沖數(shù)
LD M0
DMUL D204 K80 D206 ;所需輸出的脈沖數(shù)
LD M8029
DADDP D202 D204 D202 ;脈沖輸出完成后實(shí)際位置與設(shè)定位置一樣
END
這是最簡單的控制了,希望對(duì)大家有一定的啟發(fā),沒有上機(jī)調(diào)試,應(yīng)該是沒什么問題了。