The application of Danfoss Motion Controller in remote servo control
引言:伺服位置控制是工业自动化领域经常遇到的控制需求,过去经典的解决方案是用运动控制模块发送脉冲信号控制步进或伺服驱动系统。但是随着生产和技术发展,伺服驱动功率越来越大,控制方法也逐步从脉冲控制变为高速通讯控制。丹佛斯运动控制器能与驱动器和各种现场总线通讯卡紧密结合,为用户提供了可编程开放式的通讯控制接口,是目前市场上性价比最高的通用远程伺服控制工作站之一。
摘 要:目前生产中用到的较先进的伺服控制系统通常采用专用的运动控制模块,加上专用的高速通讯总线,再加上专用的伺服驱动系统组成。但是如果以丹佛斯运动控制器作为远程伺服控制工作站,则往上能适配市场上几乎全部主流高速现场总线,即适用于任意上位机;往下适配任意同步或异步伺服电机。本文谨以Epsilon SWB 发泡模机4轴位置伺服控制为例,介绍了丹佛斯运动控制器作为远程伺服控制工作站的应用办法和经验。
关键词: 伺服控制 现场总线通讯 异步伺服电机 机械抱闸控制
Abstract: The advanced servo control system used by now was usually consisted by special motion control unit, special high speed communication bus, and special servo drive system. But if used Danfoss motion control unit as a remote servo control workstation, it can link any master through any mainstream high speed field-bus as well as drive any synchronous or asynchronous servo motor. The thesis will discuss the resolution and experience of Danfoss Motion Controller used as remote servo control workstation in the Epsilon SWB epispastic molding machine’s 4 axes position control.
Key words: Servo Field-Bus Asynchronous-Servo-Motor Mechanical-Brake-Control
一、 Epsilon SWB发泡模机运动控制要求:
上图为Epsilon SWB发泡模机的基本机械结构图。
该机有上模翻转、下模翻转、整体翻转3个角度位置控制和上模升降一个垂直位置控制,定位精度要求都很高。其中上模满载时重达半吨。
电驱动必须实现并满足如下要求:
1. 发泡模机在机械上为对称结构,上模升降、下模翻转和整体翻转这三个基本动作都是由两边两台电机同时驱动的,电机和减速机构型号规格完全相同。这样如何使两台刚性连接的电机输出转速输出转矩保持一致,是电气驱动需要解决的难题之一。
如果使用同步伺服电机,这将是一个非常困难的控制要求。可行的办法为令其中一台同步伺服电机作主机,工作于速度(位置)模式;另一台同步伺服电机作辅机,工作于转矩模式,其转矩给定值为主伺服电机的输出转矩值。
但是如果使用异步伺服电机,用一台伺服驱动器同时驱动两台电机,利用异步电机的固有特性,可以方便地实现转速同步,并且转矩输出一致。右图为此种运行模式时两台电机的输出转矩,可见输出转矩的不平衡是由于电机的转矩-转差特性不同造成的,这个问题可以用选择相同厂家相同型号电机的办法解决,而且最好是选额定转差比较大的异步电机。
丹佛斯FC302驱动器能够同时带两台异步伺服电机,作电机自适应时只要将电机功率、电机电流设为2台异步伺服电机的总合就可以了。
2. 机械抱闸控制
上模非常重,起动时如果驱动器和机械抱闸配合不好,很容易下溜或上冲。
丹佛斯FC302驱动器内置起重设备专用的机械抱闸控制输出,上图为其动作的时序图,电机起动之初是工作于转矩输出方式的,在机械抱闸逐步松开的过程中,电机控制模式也平滑地从转矩控制模式转换为转速控制模式。在过渡期间,还可以提升转速控制的PID,有助于进一步提高驱动器的负载响应能力。
3. 下模翻转和整体翻转是通过曲柄机构实现的,因此实际机械角度与电机角位移是非线性关系
这要靠运动控制器内部运算或用查表插值运算的办法解决。
二、 运动控制的高速总线通讯接口程序编制和定义:
现场总线通讯控制在主站和从站之间传递预定字长的过程数据,丹佛斯运动控制器在现场总线网络中作为远程伺服控制工作站运行,控制命令的执行和实际位置、状态的反馈全靠过程数据交互实现。为了方便与其他主机的衔接,在参考了西门子FM系列运动控制模块的控制办法,再结合现场总线的控制特点,定义了如下过程数据:
表一:过程数据PCD定义
PCD1 PCD2 PCD3 PCD4
写入 控制字 速度给定 位置给定 转矩给定
读出 状态字 当前实际速度 当前实际位置 当前实际转矩
其中控制字定义如下:
表二:控制字定义
位 位 = 0 位 = 1
0 自由运行 伺服锁定
1 正转 反转
2 点动
3 转速控制模式
4 转矩控制模式
5 相对定位控制模式
6 绝对定位控制模式
7 回零位
8 故障复位
9 动作完成标志清除
10-15 保留
状态字定义如下:
表三:状态字定义
位 位 = 0 位 = 1
0 无正转限位信号 正转限位信号动作
1 无反转限位信号 反转限位信号动作
2 机械制动抱紧 机械制动释放
3 运动过程中 动作完成
4 驱动系统正常 驱动系统报警
5 运动控制器控制就绪
6 回零位完成
7-15 保留
三、 丹佛斯运动控制器简介:
丹佛斯运动控制器是与丹佛斯的FC300系列驱动器紧密
结合的,其接口如右图所示:
X55为编码器2输入接口,缺省用于连接从电机编码器;
X56为编码器1输入接口,缺省用于连接主电机编码器;
X57为10数字量输入接口;
X58为24VDC电源;
X59为8数字量输出接口。
丹佛斯运动控制器的编程方式
丹佛斯运动控制器使用丹佛斯公司开发的Aposs运动控制语言,其编程风格模仿C语言,并提供多种便利指令,其界面如下图所示:
丹佛斯运动控制器能提供如下基本功能:
1. 输入输出逻辑控制功能;
2. 同步控制功能,电子凸轮;
3. 定位控制功能;
4. 中断功能,如时间中断,I/O中断等;
5. 基本数学、逻辑运算功能;
……
丹佛斯运动控制器支持的高速通讯协议:
Profibus、CANopen、DeviceNet、Interbus、LonWorks、工业以太网
……
丹佛斯运动控制器程序例(部分):
//HOME MODE 1
IF (step==16) THEN
homevel = GET HOME_VEL
IF (home_done==0) THEN
servo_on = 1
IF (svon_dlyt.2==1) THEN
IF (homevel>0 AND ls_fwd==0) OR (homevel<0 AND ls_rev==0) THEN
IF (home_dog==1) THEN
CSTOP //CVEL 0
//CSTART
step = 17
ELSE
ACC 50
CVEL homevel
CSTART
ENDIF
ELSE
CSTOP //CVEL 0
//CSTART
IF (home_dog==1) THEN
step = 17
ELSE
step = 18
ENDIF
ENDIF
ELSE
CSTOP //CVEL 0
//CSTART
ENDIF
ELSE
CSTOP //CVEL 0
//CSTART
step = 10
ENDIF
ENDIF
四、 主控PLC的编程办法:
主机中关于运动控制部分的子程序可以按如下逻辑框图编程:
程序例:
(略)
使用效果:
系统实际运行效果非常理想,响应速度快、速度平稳,完全达到了控制技术要求。通用的丹佛斯远程控制器达到了替代专用PLC运动控制模块的作用。FC302的优异性能,保障了定位精度。由于自定义的通讯过程数据、控制字定义清晰简洁,主机控制程序开发变得更容易了。
结束语:使用西门子的PLC加西门子的位置控制模块,编程会是一个艰巨而繁复的工作,但是利用Profibus现场通讯总线直接控制控制丹佛斯的运动控制器,将繁复的程序功能交给远程伺服工作站以分布式方式处理,不但可以节省系统成本,还大大提高了整机开发速度,值得在自动化控制领域推广。
参考文献
[1] FC300编程指南. MG.33.M4.41. Danfoss A/S. 2008
[2] 运动控制器MCO305使用说明. MG.33.K2.02. Danfoss A/S. 2007
[3] 运动控制器MCO305设计指南. MG.33.L2.02. Danfoss A/S. 2007