实例讲解在伺服控制下伺服电机驱动工件行走的距离
发布时间:2018-10-30 15:20:04
某伺服电机编码器每转2500个脉冲,额定转速3000r/min(50Hz);电机与丝杠直连,丝杠螺距为5mm,伺服驱动器内部电子齿轮比为1。如何计算:伺服电机驱动工件在5S左右行走1m的距离?
首先计算所需要的脉冲数量:
(1).行走1m的距离,相当于丝杠转动1*1000/5=200转;
(2). 即伺服电机发出2500*200=500000(50万)个脉冲;
(3).二进制的16位可以代表“ 0~65535”(6万5千)或“-32768~+32768”的十进制,即16位数据不满足需要的脉冲数;
(4).二进制的32位可以代表“0~4294967295”(42亿9千)的十进制,远远大于需要的50万个脉冲,即32位数据肯定满足需要的脉冲数
综上,距离需要50万个脉冲即可行走需要的距离。
再确定伺服的行走速度:
(1).伺服电机额定转速3000r/min(50Hz),即50r/s;
(2).伺服电机额定发出的脉冲数,50*2500=125000脉冲/s;
(3).规定3s左右发出的脉冲数3*125000=375000脉冲/s(37万个脉冲),即需要超速或延时;
(4).规定3s左右完成,则500000/3=166667脉冲/s,166667*50/125000=67Hz,有点快;
(5).理论最快时间,500000/125000=4s,即最快4s,再加加减速20%,5~6s比较合适
综上,125000个脉冲,该距离,用时5s左右比较适合。
实际运行中,指令是这样的吗?以DRVI为例,说明该情况。DRVI是以相对驱动方式执行单速位置控制的指令,其使用格式如下。
[ S1 ]:输出脉冲数(相对指定的距离)
16位指令 -32768~+32767(数貌似变小了)
32位指令 -999999~+999999(数肯定变小了)
[ S2 ]:输出脉冲频率(相对指定的速度)
16位指令 10~+32767(Hz)
32位指令 10~+100000(Hz)(数肯定变小了)
[ D1 ]:脉冲输出起始地址(仅能指定Y000或Y001),可编程控制器输出必须采用晶体管输出方式。
[ D2 ]:旋转方向信号输出起始地址,根据[S]的正负,按照以下方式进行动作。
[+ (正)]→[D2]=ON
[- (负)]→[D2]=OFF
综上所述,DDRVI(K500000 K100000 Y0 Y4)一40Hz的频率,200mm/s的速度(K00000),用时5s行走1000mm。真的是这样吗?,最好时机操作试试吧。