一、PLC定位及伺服控制系统介绍
通过PLC给伺服驱动器发驱动脉冲,通过改变脉冲频率来控制移动速度,通过改变脉冲数量来改变移动量。
伺服驱动器是执行机构,在接收到PLC发来的信号,控制电机来运动,通过位置编码器精准定位。
1、定位控制基本单元
通过一个FX3U的CPU就可以带三个轴的伺服驱动器。PLC的脉冲输出端是固定的,Y0、Y1、Y2。具体是否具备脉冲输出可看模块的手册。其余的Y可以作为方向的输出端。输出的最大脉冲频率为100KHz。
2、FX3U PLC特殊适配器扩展单元
基本单元的脉冲输出Y不起作用,只能用特殊适配器扩展单元的输入Y来输出脉冲。
3、PLC输入端内部电路(漏型输入)
4、PLC输出端内部电路
Y0可以提供脉冲频率和脉冲数量。利用Y4输出方向。由定位指令来实现,不需要单独编程Y4.
二、FX3U-PLC定位控制指令
(一)、原点回归指令:ZRN
首先以S1的速度快速运动,当到近点S3后切换到爬行速度S2,D为输出。只能在原点的正方向才能使用原点回归指令,在反向是不能使用ZRN指令的。
2、原点回归指令ZRN运行过程
3、原点回归指令ZRN,速度变化过程及清零信号说明
1)Y0脉冲输出端的清零信号选择(1)
M8341=ON;清零信号有效
M8464=OFF;清零信号输出端固定有效
Y4--清零信号固定输出端。
2)Y0脉冲输出端的清零信号选择(2)
M8341=ON;清零信号有效
M8464=ON;清零信号输出指定有效
D8464--清零信号指定寄存器。
例:
上图中当执行条件满足,将M8341=1,M8464=1,将Y20送到D8464.
注意:若设置H0028,对应的Y028,由于没有Y028,则出现运算错误。
3)清零信号输出端固定(与脉冲输出端一致性)
4)清零信号输出端可指定(可任意选择)
4、定位指令的最高速度设定
最高速度限定了PLC输出最高脉冲频率,为定位指令的上线频率。
输出是32位,所以要用两个寄存器
5、定位指令基底速度(最小速度)的设定
通常对于伺服电机,设置基底速度=0Hz
对于步进电机,设置基底速度≠0Hz,否则步进电机会失步。
6、定位指令加速时间的设定
加速时间是指从基底速度加速到最高速度所需的时间,合理设置加速时间,避免电机冲击。
7、定位指令的减速时间的设定
减速时间是指从最高速度减速到基底速度所需的时间
8、定位指令的标志位说明(相对应Y0脉冲输出端标志位)
定位指令的标志位表明了定位指令在执行过程中的状态。
1)M8340 脉冲输出监控标志位
要Y0端有脉冲输出,M8340=on
当Y0端停止输出脉冲,M8340=off
2)M8348 定位指令驱动中
指令输入触发,M8348=on,即使指令执行结束,但指令输入条件还接通,则M8348=on
只有指令输入断开,M8348=OFF
3)M8349 脉冲停止指令
Y0端脉冲输出停止标志位
当M8349=on,Y0端输出脉冲立即停止
要再次输出脉冲:M8349=off,指令输入条件再次从OFF变为ON,再启动一次。
用途:当遇到紧急情况下,如急停按钮,使用M8349=ON;立即终止脉冲输出,电机立即停止。这个只是PLC侧的急停,但最好急停按钮要接到伺服驱动器侧。
4)M8029 定位指令执行正常结束标志位
它是一个定位指令共用的标志位。
当定位指令执行正常结束时,M8029就发出一个扫描周期长的脉冲。
5)M8329 指令执行异常结束标志位
是定位指令共用的标志位
在工作台运动方向如碰到极限开关,电机减速停机,M8329发出一个扫描周期长的脉冲信号,并结束指令执行
6)当前值寄存器:D8341,D8340
当前值寄存器D8341,D8340,它实时记录并存储工作台距原点位置。当定位执行输出正转脉冲时,当前寄存器中的值增加,当定位指令输出反转脉冲时,当前值寄存器中的值递减。
一旦PLC断电OFF,当前值寄存器被清零,所以上电后,务必要将工作天的机械位置恢复到原点,即执行回原点指令。
如果PLC使用电池,做寄存器电源后备时,只要一开始时,操作一次原点回归指令即可。
9、正传极限开关和反转极限开关
这里用了了两套限位开关,限位1接PLC,限位2接伺服驱动器,为了保护。
Y0 M8343 M8344 当极限标志位为ON,电机减速停机。
Y1 M8353 M8354
Y2M8363 M8364
Y3 M8373 M8374
10、Y0脉冲输出端的近点信号可以逻辑取反
M8345=off,是正逻辑,Xi=on 信号有效
M8345=ON 是负逻辑,Xi=OFF 信号有效
(二)带DOG搜索的原点回归指令 DSZR
零点输入信号取值Z相脉冲,电机旋转一圈,输出一个脉冲。
要将机械原点与电气原点要重合上,
当收到Xi近点信号,触发降速到爬行速度,进入DOG区,再接触到零点信号Xj后停止运行。
简单看个原点回归程序,一起理解下:
今天简单介绍了原点回归程序如何编写,包括一些指令及寄存器的应用,这些都是固定的,大家知道这么用就可以了。