1引言
现代制造加工业对运动控制中的精准定位、运动速度和加速度、相对与绝对位置移动以及转矩的控制要求越来越高。可编程逻辑控制器(PLC)通常都具备脉冲序列输出能力,可以控制伺服系统或者步进电机系统进行动作。此控制方式有较好的通用性和可靠性,成本适宜且软件开发随控制要求易于改变,因此被广泛应用[1]。而PLC对电机的控制关键就是其产生的脉冲序列,本文以施耐德ModiconM218PLC为例阐述了4种脉冲产生方式。
2电机脉冲控制原理
PLC电机控制系统所用的电机基本是步进电机和伺服电机这两种。这两种电机都属于控制电机,它们的动作取决于控制信号,需要步进驱动器和伺服控制器来接受控制信号并将控制信号进行适当转换来驱动电机[2]。因此,PLC产生的控制信号是实现控制的关键。这里的控制信号包括脉冲和方向信号等。PLC电机控制系统结构如图1所示。
3PLC脉冲序列编程设计
3.1PTO脉冲序列输出
施耐德M218PLC内部PTO是占空比50%且频率可变的脉冲序列,可以精确定位电机驱动器,其最高频率100kHz。M218内部具有脉冲输出管理、PTO错误诊断、相对位置移动、绝对位置移动、恒速连续移动、受控轴停止、快速起停精准定位等功能块。为了实现电机的高精度控制,只需要灵活运用功能块并设置详细参数即可,省去了更低一级编程的麻烦。
以快速起停及精确位置补偿为例,此功能块由外部数字量信号触发,恒定频率持续输出脉冲。启动信号触发后频率由0开始根据设定的加速度增加到目标频率。停止信号触发后,功能块开始输出位置补偿值,并根据设定的减速度在输出完位置补偿值时减速到0。PTO_REF_IN是对PTO的参考输入。Execute是上升沿使能输入。StartInput是外部启动输入。DelayStart是运动执行延迟。Acceleration是加速度值。Direction是运动方向。Velocity是目标速度。MaxDistance是运动执行的最大保护距离。StopInput是外部停止输入。Compensation是位置补偿脉冲值。Deceleration是减速度值。PTO_REF_OUT是对PTO的参考输出。InMode是外部输入触发允许。Status是运动状态。Active是外部输入触发执行状态。CommendAborted是执行请求忽略。Error是监测错误。ErrID是错误类型。其图形语言如图2所示。
3.2PWM脉宽调制
PWM脉宽调制可以生成具有可变频率和可变宽度的方波信号。占空比从1%到99%,频率可配置为20Hz到1kHz,精度0.1Hz。此信号可以直接命令轴的变速运动。
在PWM脉宽调制的功能块中,EN_Enable是外部事件触发启动PWM输出使能,F_Enable内部变量使能PWM,EN_SYNC是允许硬件触发重新启动,F_SYNC是通过内部变量重启PWM,Frequency是PWM输出信号的频率,Duty是PWM输出信号的占空比,InFrequency是PWM指定频率输出信号,Busy是布尔变量,频率或占空比发生变化输出TRUE,Error是监测错误输出,ErrID是错误代码输出。其图形语言如图3所示。
3.3FG频率发生器
频率发生器可以按指定频率生成50%占空比的方波信号。频率可配置为1Hz到100kHz,步长为1Hz。
在频率发生器功能块中,EN_Enable是外部使能,若已在频率发生器通道配置,则可通过外部事件触发启动,F_Enable是通过软件变量使能频率发生器,EN_SYNC是允许外部事件重启频率发生器,F_SYNC是通过软件变量重启频率发生器,Frequency是频率发生器输出信号的频率。InFrequency是频率发生器以指定频率输出信号,Busy是布尔变量,如果设置了启用命令,并且频率发生变化,则设置为TRUE,如果设置了InFrequency或Error,或者启用命令被复位,则复位为FALSE,Error是布尔变量,TRUE表示检测到一个错误,ErrID是检测到的错误代码,其图形语言如图4所示。
3.4TWDPTO220DT扩展模块
施耐德M218PLC的TWDPTO220DT是一种专门进行脉冲输出运动控制的模块,通过软带状线缆直接连接方式可以为M218扩展两块此模块,该模块功能与M218内部的PTO脉冲序列输出功能类似,其典型的6个运动功能块是频率发生器、移动速度、绝对值移动、相对值移动、寻原点和设置位置。
以相对值移动为例,PTO_REF_IN是输入的模块通道参考号,Execute是上升沿触发执行该功能,Distance是目标距离,Velocity是目标速度,Mode是缓冲模式,0表示中止,1表示缓冲,2表示混合先前,PTO_REF_OUT是输出的模块通道参考号,Done表示指令成功完成,Busy表示指令已被接收但还未完成,Command_Aborted表示指令已被其他指令打断,Error表示指令错误,其图形语言如图5所示。
4结束语
施耐德M218PLC内置的脉冲序列输出模块、脉宽调制模块和频率发生器可以为不同种电机提供所需脉冲输出,而它们共用通道0和通道1,因此内置模块只可以控制两个电机,通过2个扩展模块的最大扩展,最终可以实现四个电机的同时控制。
(转载)