去年搞了一设备,当时已经定正确运行了,前几天空突然发生问题,总是报警停机,所以只有重调
报警的原因,伺服电机用位置模式,GALIL卡发出脉冲后,过50MS(WT50)后,判断电机的实际位置与发生的脉冲数
是否一致,如果差超过一定的数,就停机断电,
将程序列如下:#AUTO
DC,,,41580000 设加速度
AC,,,41580000
SP,,,415800 设速度
V1=0
STEP=1 STEP为+1或者-1 表示向前走,还是向后走,伺服电机带动一丝杠
AI1 IN【1】为一接近开关信号,开机时,第一个信号,电机不转动
AI-1
#WAIT
AI -1 等信号变低
PR ,,,step*8370 发脉冲给电机
BGW 电机转动
WT60 等待60MS,按上面的加速度,速度值,发8370个脉冲大约需要30MS
if step=1 测误差
V1=8370-_TPW
endif
if step=-1
v1=_tpw
endif
IF @ABS【V1】>50
SB1 SB1 CB3是断电源,整个设备断电
CB3
ENDIF
STEP=step*-1 换方向
AI 1 等特信号变高
JP #WAIT
EN
以上为程序,为了方便说明,做了简化,
大体就是发出8370个脉冲,过60MS,看电机的位置是否正确,如果超差,就停机
现在的问题是发出8370个脉冲,60MS,电机不能完成定位,所以就超差,但是最后电机是能到位的
请问这时应调什么,我一直在调安川伺服的PT100,PT101,PT102,但是一直不能及时定位
请各位高手指点一下
谢谢刘工,
将WT60,改为MCW,WT30
对我来说是一样的效果,因为设备运转时,给有70MS的时间给伺服电机运行,必须在70MS内完成,否则就要报警停机
STEP是我的笔误
KS的初始值应该是多少?
如何测试安川的完成时间,我需要咨询安川公司
那么,就单独写个程序实际测试一下,看看实际时间是多少。另外,KS的初始制值对您应该没什么意义,建议直接设置成0.5。KS是用于调整输出脉冲频率平滑的参数。KS值越大,输出脉冲的频率变化越平滑,(在同样的速度、加速度设置下)实际完成脉冲输出的时间也就越长。KS值越小,实际完成脉冲输出的时间越接近理论计算的结果短。对于步进电机系统,适当调整KS的值可以明显改善机械的震动情况。对于您用伺服的情况来说,可能KS直接给最一小值0.5就够了。
#TEST
DCW=41580000
ACW=41580000
SPW=415800
STEP=1
#WAIT
AI -1
PAW=8370*STEP
MYTIME=TIME
BGW
MCW
MG TIME-MYTIME
V=0
#LOOP
V1=_TDW-_TPW
IF@ABS[V1]<50
V=V+1
ELSE
V=0
ENDIF
WT
JP#LOOP,V<5
MG TIME-MYTIME
STEP=1-STEP
AI 1
JP #WAIT
EN