您当前位置:首页 > 新闻频道 > 技术动态 > 正文
一种基于PLC Modbus的多电机无传感器控制新型系统

作者;张毅

    在多传动轴独立电机驱动系统中,如何保证各电机同步,以及如何实现速度闭环控制是关键。以往普遍采用PLC模拟量控制,采用编码器或旋转变压器等测速元件实时采集电机速度并反馈,进行PID闭环控制。这种控制方法硬件线路复杂,不易维护维修,模拟信号存在干扰。针对上述问题,本文提出了基于PLCModbus的多电机无传感器控制系统[1]。

1  基于PLC Modbus的多电机无传感器控制系统

  基于PLC Modbus的多电机无传感器控制系统采用3层结构,如图1所示。第一层为传动控制层,如采用ABB公司的ACS550-01矢量控制变频器;第二层为PLC控制层,如采用Siemens S7-200 PLC作为主控制器,使用威伦触摸屏进行现场监控,通过Modbus现场总线将PLC和变频器组成网络通讯系统,进行实时高速通讯,协调工作;第三层为上位控制层,采用WINCC组态监控界面,实时监控整机运行,上位机和S7-200 PLC之间为以太网通讯。

  控制系统的各电机要求速度同步,而且当负载发生变化时,速度能维持恒定,为此,将PLC Modbus现场总线读取的电机速度作为反馈(电机上无需安装速度检测元件),再经过PLC的PID处理后,实现速度闭环控制[2-4]。

2.1   Modbus协议

  M odbus是MODICON公司于1979年开发的一种通讯协议,它是一种在工业领域被广泛应用的开放的标准的网络通讯协议,常用的传输模式有ModbusASCII和Modbus RTU两种。一般来说,通讯数据量大而且是二进制数时,采用Modbus RTU;数据量少且主要是文本时,采用Modbus ASCII。本文采用Modbus RTU。

  Modbus通讯使用主一从协议,只有主设备能发起数据传输,而从设备只能对主设备发出的指令作出反应。本控制系统中主设备是S7-200PLC,从设备是ACS550变频器。Modbus系统在理论上只能有一个J主站和最多31个从站。

2.2   Modbus通讯电缆制作  

  ACS550变频器内置RS485作为Modbus的物理接口,支持RTU传输模式。硬件上,变频器的28~32端子用于RS485通讯,使用屏蔽双绞线连接,如图2所示。连接时应该注意不要将RS485网络在任何点直接接地,使用网络中设备上的接地端子将各设备接地,任何一个接地导线都不应构成一个环路,并且所有设备应该接到一个公共地上;为了减小网络中的干扰,在网络两端用1 200 Q的电阻来作为RS485网络的终端电阻,使用DIP开关来连接或断开终端电阻[5-7]。

  2.3 ABB变频器Modbus通讯参数设置

  当S7-200PLC和ABB变频器的硬件连接好之后,要激活变频器与PLC之间的Modbus通讯,首先需要设置参数9802 COMM PROTOCOL SEL(通讯 协议选择)=1(标准Modbus),然后通过修改53组内置现场总线(EFB)参数进行通讯设置,需要设置的53组参数如下:

  5302 EFB STATION ID(EFB站号):设置5302=1;

  5303 EFB BAUD RATE(EFB波特率):设置 5303=9.6kbps;

  5304 EFB PARITY(EFB校验):设置5304 =1,

  即检验方式为8N2;

  5305 EFB CTRL PROFILE(EFB控制通讯配置文件):设置5305=0。

  ABB变频器激活Modbus总线控制功能需要设置如下参数:

  1001是外部1命令,设置1001= 10,表示启、停、方向信号来自总线控制;

  1102是外部1/外部2选择,设置1102 =8,表示外部1/外部2选择通过总线控制;

  1103给定值1选择,设置1103 =8,表示速度给定值来自总线控制。

  上述参数将映射到4xxxx保持寄存器,其中40001~40099映射到传动控制和实际值,如40001表示外部1命令,40002表示给定值1。其他参数都可以 通过参数号前加上4的格式来进行访问,如参数0102,PLC通过访问40102寄存器,就可读出变频器的实际输出速度值[8]。

  3  基于PLC Modbus通讯协议的速度闭环控制

  基于PLC Modbus通讯协议的速度闭环控制如图3所示。首先,S7-200PLC通过Modbus采集电机输出速度作为反馈值,并与速度设定值比较,差值作为速度给定,电流闭环由变频器内部完成,无需考虑。该系统的优点是无需加装编码器或旋转变压器等检测元件,直接通过现场总线采集电机实际输出转速,不但降低了成本,而且线路简单,易于实现,维护维修方便。4 S7-200PLC通过Modbus控制电机运行的程序

4.1  Modbus通讯子程序流程图

  以S7-200PLC控制两台ABB变频器为例,Modbus通讯子程序流程图如图4所示。首先,对ABB变频器初始化;然后读取ABB变频器运行参数(包括电机速度、输出频率、输出转矩和输出功率);最后,向ABB变频器中写入启动、停止和速度给定信号。

  4.2   Modbus通讯子程序

  图5为S7-200PLC和ABB变频器之间Modbus通讯子程序,MBUS_MSG指令的作用是向从站写入或读取数据。网络1用于1#变频器初始化,S7-200PLC向1#变频器控制字40001写入1个字,而40001映射到ABB变频器参数1001(外部1命令),由于1001=10,表示启、停、方向信号来自总线控制;网络2中,当写入数据完成后,M0.1得电,并将标志位M0.0复位;在网络3中,S7-200PLC向2#变频器控制字40001写入1个字,用于2#变频器初始化;在网络4中,当写人数据完成后,M0.2得电,并将标志位M0.1复位;在网络5中,S7-200PLC读取1#变频器以控制字40102为首字的连续5个字地址,分别存储电机输出转速、电机运行频率、电机运行电流、电机输出转矩、电机输出功率,读取的电机参数将作为PID运算中反馈环节,M0.6是最后一条MBUS_MSG完成信号,执行完最后一步将返回网络5重复循环;在网络7中,S7-200PLC向1#变频器控制字40001写入启停和频率给定信号,写入完成并延时0. 1s后读取2#变频器的控制字;在网络9中,T38延时时间到后,S7-200PLC读取2#变频器以控制字40102为首字的连续5个字地址,分别存储电机输出转速、电机运行频率、电机运行电流、电机输出转矩、电机输出功率,读取的电机参数将作为PID运算中反馈环节;在网络11中,T39延时后,S7-200PLC向2#变频器控制字40001写入启停和频率给定信号[9 -10]。

  5  结语

本文采用S7-200 PLC和变频器组成的Modbus网络通讯系统,采集各电机的输出速度等数据,并通过PLC的PID处理后,调整各传动点的速度。该系统的优点是无需加装编码器或旋转变压器等检测元件,直接通过现场总线采集电机实际输出转速,不但降低了成本,而且线路简单,易于实现,维护维修方便。

摘要:针对多电动机变频调速同步控制系统,提出了基于PLC Modbus通讯协议的控制方案。PLC通过Modbus总线实时地向变频器读取或写入数据,电机速度由总线读入PLC,再经过PID处理后调节各变频器的速度给定,实现速度闭环控制,保证多电动机同步运行。经实验证明,该控制系统结构简单、易于实现,PID速度闭环控制无需添加测速元件,且数字信号不易受到干扰。

关键字:
About Us - 关于我们 - 服务列表 - 付费指导 - 媒体合作 - 广告服务 - 版权声明 - 联系我们 - 网站地图 - 常见问题 - 友情链接
Copyright©2014安装信息网 www.zgazxxw.com. All rights reserved.
服务热线:4000-293-296 联系电话:0371-61311617 传真:0371-55611201 QQ: 邮箱:zgazxxw@126.com 豫ICP备18030500号-4
未经过本站允许,请勿将本站内容传播或复制
安全联盟认证