MOTEC智能步进驱动器内置PLC功能介绍
在运动控制应用中,一般步进电机驱动器只具有驱动电机的能力,但是没有任何的逻辑与运算功能,就必须要有上位机参与。一般的控制器有全面的逻辑功能和运算功能,但是对于步进电机的驱动却无能为力。传统的PLC 步进驱动器方案,受限于PLC高速脉冲接口有限,数据传输效率低,数据同步,抗干扰能力差,线路复杂等问题。MOTEC 智能步进驱动器内部集成了PLC功能,将运动控制功能与逻辑/运算功能结合在一起,可以独立完成PLC 步进驱动器的全部功能,在运行中控制部分可直接修改和监控整个系统的内部参数,并集成了RS232、RS485、CAN总线,符合标准的MODBUS、CANopen协议,并有更加灵活的自定义协议,可以方便地与上位机或者HMI通信,响应速度高,抗干扰能力强,适用于各种自动化设备。
MOTEC智能步进驱动器内部PLC指令共分几大类,介绍如下。
1、基本逻辑指令:包括装载,与、或、非、输出、置位、清除、取反输出、空指令、
结束指令等;
2、栈指令:包括块相与、相或、堆栈管理等相关指令;
3、沿指令:包括对上升沿和下降沿的装载、与、或、非、与非、或非等指令;
4、程序控制指令:包括子程序的调用/返回,程序的跳转,定时器和计数器的装载/清
除,计数器的计数,子程序标号,程序标号,保存/读取内部参数等指令;
5、整型数据比较操作:整型数据分为16位数和32位数操作,可以实现数据的大小比较,
分为大于、等于、小于、不等于等;
6、整型数据的运算操作:可以实现16位和32位数据的加、减、乘、除操作;
7、整型数据的移位和赋值操作:可是实现16位数据和32位数据的赋值,转移,移位操
作;
8、浮点数的逻辑操作和算数操作:可以实现32位单精度浮点数的大小比较操作和算数运算操作;
9:浮点数的转换赋值操作:可以实现浮点数与整型数据的互相转换,二进制浮点数与10进制浮点数的互相转换,浮点数的赋值和读取操作。
10、运动控制指令:MOTEC智能步进内部集成的PLC功能可以方便的使用驱动器的运动控制指令,包括点到点位置模式运动,速度模式运动,多种回零方式运动,点动,启动,停止,电机使能等功能。
MOTEC智能步进驱动器内部具有丰富的资源,具体有
1、8路光耦隔离输入,3路光耦隔离输出;
2、1路模拟量输入;
3、2048个内部辅助继电器,其中有2016个通用继电器,32个特殊功能继电器;
4、256个内部运动状态继电器;
5、32个16位通用递减定时器,单位是毫秒级别,32个定时器定时完成标志继电器;
6、32个16位递减计数器,32个计数器完成计数标志继电器;
7、512个16位数据寄存器,其中有500个通用数据寄存器,12个特殊功能数据寄存器,两个连续的16位数据寄存器可以作为一个32位数据寄存器来使用。
MOTEC智能步进驱动器内部具有丰富的特殊寄存器,可是方便自由的实现辅助功能,具体如下表
序号 |
意义 |
特殊继电器/寄存器项目 |
位数 |
R2016 |
常开继电器 |
一直为OFF |
1 |
R2017 |
常闭继电器 |
一直为ON |
1 |
R2018 |
初始脉冲继电器ON |
刚开始为ON 第二个周期为OFF |
1 |
R2019 |
初始脉冲继电器OFF |
刚开始为OFF 第二个周期为ON |
1 |
R2020 |
扫描脉冲继电器 |
ON 和OFF 周期交替变化,初始化为ON |
1 |
R2021 |
扫描脉冲继电器 |
ON 和OFF 周期交替变化,初始化为OFF |
1 |
R2024 |
时间脉冲继电器 |
10ms ON 和OFF 交替输出高低脉冲 |
1 |
R2025 |
100ms ON 和OFF 交替输出高低脉冲 |
1 |
|
R2026 |
10s ON 和OFF 交替输出高低脉冲 |
1 |
|
R2027 |
1 分钟ON 和OFF 交替输出高低脉冲 |
1 |
|
R2028 |
串口通信超时寄存器 |
通信如果超时,寄存器置1,通信正常后恢复 |
1 |
R2029 |
下载程序继电器 |
程序下载的时候该继电器置ON,程序在下载结束以后置OFF |
1 |
R2030 |
程序执行继电器 |
1:程序运行;0:程序不运行。该继电器初始化为1,由用户在需要的时候更改,并且是执行下一步的指令 |
1 |
R2031 |
程序重头开始指令 |
0:程序正常运行;1:程序从头开始执行,并将该位置0。 |
1 |
R2032 |
程序结束指令 |
0:程序正常运行;1:程序结束,并将该位置0; |
1 |
|
|
|
|
D500~D501 |
密码 |
用来验证密码内容,只有密码正确才可以更改程序 |
32 |
D502~D503 |
堆栈值 |
用来保存当前程序运行的堆栈值 |
32 |
D504~D505 |
当前程序指针 |
保存当前用户的程序指针位置 |
32 |
D506~D507 |
周期时间 |
用来保存上一个程序循环的时间,时间单位是us |
32 |