FX1S虽然非常老旧,但定位指令却基本是齐全的,所以就拿来学习用PLC控制伺服电机了。注意一定要是晶体管输出类型的才可以输出脉冲,而且FX1S只有Y0和Y1两个脉冲输出口。
1、接线
伺服驱动器主回路的线比较好接,主要是主电源线、控制电源线,以连接伺服电机的电源线。编码器线是端子直接插接的,不用烦神。麻烦一点的就是CN2控制信号线。
首先要查看伺服驱动器说明书,找到CN2各个端子定义,示例如下图。对于最简单同时也是最常用的“位置+方向”控制方式来说,找到控制电源线+-、伺服使能、脉冲输入puls+ -、脉冲方向sign+-总共7个端口,然后用万用表找出7个引脚对应的线。控制电源线+、puls+、sign+均接电源24+,控制电源线-接COM,puls+接PLC的Y0或Y1,伺服使能、sign-接PLC除Y0和Y1外的任意一个输出端子均可。
注意避免我刚开始犯的错误:FX1S的输出端子是分组的,有好几个公共端如COM、COM1、COM2……等,它们之间是互相不通的。所以如果puls+、伺服使能、sign-和COM不在同一组,就不能形成回路,接线无效。所以最好把各个COM口连接起来,以确保接线不出错。
接好线后强制伺服使能端口有输出,然后用手转动伺电机的轴,如果轴转不动被锁定了,说明伺服使能接线没问题;如果轴能自由转动,那就要检查伺服使能的接线。
2、调试
线接好后,在PLC中写入PLSY脉冲输出语句。如果伺服电机没有动作,先检查PLC中D8140的值。该寄存器保存脉冲输出的个数,如果其为0,表示PLC没有输出脉冲;其次检查伺服驱动器的参数监视项中的脉冲接收参数有没有数值。
3、脉冲输出指令PLSY
含义:Plus-Y。脉冲输出指令(D)PLSY: (D)PLSY + 脉冲频率(数值/字元件) + 脉冲个数 + 脉冲输出口(Y0/Y1)
例:PLSY K5000 K10000 Y0。D0的值如果在运行时发生变化,电机运行速度也会变化,即脉冲频率是可以实时变化的。如果脉冲个数设为0,则无限持续运行。
注意这个指令几乎没有加减速,对于步进电机来说,可能会造成失步。
多少个脉冲电机转一圈呢?这跟编码器的分辨率有关。从伺服驱动器的说明书中查看编码器是多少线的。比如是2500线的,一般编码器经过4分频,所以是2500x4=10000个脉冲转一圈。
脉冲频率和电机转速又是什么关系呢?比如设脉冲频率为10000,意思是1秒内发10000个脉冲。10000个脉冲电机转一圈,所以是1秒转一圈=60转/分钟。这里是假设电子齿轮比为1。如果不为1,还要除以电子齿轮比。所以电机转速n(r/min) = 脉冲频率(个/sec)*60/(编码器分辨率*4*电子齿轮比)
带加减速的脉冲输出指令(D)PLSR:(D)PLSR + 脉冲输出最高频率 + 脉冲输出个数 + 加减速时间 + 脉冲输出口
含义:Puls-Reduction
这个带加减速的脉冲输出指令可以使电机起步和停止更来稳,尤其适合步进电机。
可变速度脉冲输出指令(D)PLSV:(D)PLSV + 脉冲频率 + 脉冲输出口 + 方向(位元件)
例:PLSV D1 Y0 Y3。没有脉冲个数参数,可以持续运行,有方向参数。没有加减速,可以连续变化频率(PLSY也可以连接变化频率)。常用于多段速运行(与RAMP指令配合使用)。
含义:Plus-variable
4、PWM指令
PWM + 脉冲宽度(ms) + 脉冲周期(ms) + 脉冲输出端口
含义:Pulse Width Modulation.
可以自定义占空比的脉冲输出指令。对伺服和步进电机来说,脉宽数据无意义(只要达到最低时间要求),相当于只有脉冲频率的参数的脉冲输出指令。对变频器,不同的占空比可以调节电机的转速。
5、原点回归指令ZRN
含义:Z-Return
ZRN + 回归开始速度(HZ) + 爬行速度(HZ) + 近点信号 + 脉冲输出端口
这个指令适用于带有机械挡块DOG和到位信号(近点信号)的机械控制。开始时以回归开始速度指行,直到近点信号有效,按爬行速度运行,当近点信号无效时,停止运行。停止运行后当前值寄存器D8140、D8141数值归零。
6、相对定位指令(D)DRVI
DRVI + 脉冲个数 + 脉冲频率 + 脉冲输出口 + 方向输出信号
这个指令类似脉冲输出指令PLSY。不同点是脉冲个数可以指定为正或负,代表不同方向。同时有方向信号输出。大概是为了与PLSY区分吧,把脉冲个数和脉冲频率参数调换了位置。
7、绝对定位指令(D)DRVA
含义:Drive-Absolutely
(D)DRVA + 脉冲个数 + 脉冲频率 + 脉冲输出口 + 方向输出信号
移动到指定相对原点的绝对位置。所谓原点,就是D8140、D8141当前值寄存器值为0的位置。方向是以脉冲个数和当前值寄存器的当前值比较而定。
8、中断定长位置指令DVIT
含义:Drive-Interrupt
DVIT + 中断后输出的相对脉冲个数 + 脉冲频率 + 脉冲输出口 + 方向输出信号
持续运行,直至遇到中断信号后,再运行指定的脉冲个数后停止。中断信号由系统默认或可选。如M8336为OFF,Y0的默认中断信号端口是X0,Y1默认是X1;若M8336为ON,可以指定中断端口。