首页 新闻 工控搜 论坛 厂商论坛 产品 方案 厂商 人才 文摘 下载 展览
中华工控网首页
  P L C | 变频器与传动 | 传感器 | 现场检测仪表 | 工控软件 | 人机界面 | 运动控制
  D C S | 工业以太网 | 现场总线 | 显示调节仪表 | 数据采集 | 数传测控 | 工业安全
  电 源 | 嵌入式系统 | PC based | 机柜箱体壳体 | 低压电器 | 机器视觉
艾默生 PLC在变频器网络控制中的通信程序设计
收藏本文     查看收藏
 
艾默生工业自动化   李庆敏
 
    本文通过艾默生PLC和多台变频器组网通信控制编程(以MODBUS协议方式)为例,说明PLC和多台变频器网络控制的通信程序的设计方法。
    Serves to illuminate design of communication program based on PLC and multi converter network control, by taking the match under MODBUS mode
 
关键词:艾默生PLC,变频器,MODBUS协议,连续命令序列,随机命令序列
KEY WORDS:EMERSON PLC,INVERTER,MODBUS PROTOCOL, a series of orders, incidental orders

引言
随着PLC技术的不断发展,越来越显示其强大的核心控制功能,PLC和其他设备之间的连接已经从比较烦琐的传统I/O方式向越来越受欢迎的简洁先进的通信方式过渡,不仅为设计者节省了大量的硬件成本,更能为远程控制,组网提供了可能,使控制系统更加无缝地融为一体。
本文主要通过艾默生PLC和多台变频器组网通信(以MODBUS协议方式)为例,说明PLC和多台变频器网络控制的通信程序的设计方法。
一、             MODBUS协议简要介绍
    Modbus协议由美国著名的MODICON公司提出,通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信,不同厂商生产的控制设备可以连成工业网络,进行集中监控,它已经成为一通用工业标准。控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。典型的主设备:IPC,HMI,PLC等;典型的从设备:各种仪表,PLC,变频器等。主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则不作任何回应。Modbus协议建立了主设备查询和从设备回应的格式:设备(或广播)地址、功能代码、所有要发送的数据、错误检测域。Modbus协议同时支持RTU模式和ASCII模式,RTU模式对应的帧格式如下:(ASCII模式介绍省略)

更详细的说明请查阅MODBUS协议的有关资料(或登陆网站 www.modbus.org)。
二、             艾默生PLC集成的MODBUS协议功能
    艾默生EC20系列PLC的通信口COM 1集成了MODBUS主站协议, 在编程时先在编程软件的系统块里进行设置具体如下:系统块—>“通信口”菜单—>“通信口1参数设置”菜单—> 选“MODBUS协议”—> 进行“MODBUS设置”—> 进行通信参数和(主模式)站号等设置即可。
然后利用MODBUS指令进行编程-----------MODBUS (S1) (S2)(S3)各参数含义如下:
S1  指定的通讯通道;    
S2  发送数据起始地址;     
S3  接收数据起始地址;
    MODBUS指令发送过程中,自动加上所需的起始字符,结束字符和校验和;发送的数据,不需设定发送的数据长度,系统会根据功能码自动按系统内部设定长度进行发送。
2个重要的通信标志:SM135-- MODBUS的通讯成功标志位,通讯成功时置位,不会自动复位,所以在发送数据的时候要进行一次复位;SM136—MODBUS的通信错误标志位,通信错误(包括从设备没有回应)时置位,不会自动复位,所以在接收数据的时候要进行一次复位;
三、             艾默生变频器通信协议

   
艾默生公司生产的EV系列变频器都集成MODBUS协议,且提供RS232C和RS485通信口供用户选择,所以通过PLC和变频器通信的方式完成控制比较简单经济,而且显得系统比较高档,下面简单介绍其协议:
1.          支持MODBUS RTU和ASCII格式;
2.          参数的MODBUS协议地址影射规则:变频器的功能码参数、控制参数和状态参数都映射为Modbus的读写寄存器。变频器功能码的组号映射为寄存器地址的高字节,组内索引映射为寄存器地址的低字节。变频器的控制参数和状态参数均虚拟为变频器功能码组。功能码组号与其映射的寄存器地址高字节的对应关系如下:F0组:0x00;F1组:0x01;F2组:0x02;F3组:0x03;F4组:0x04;F5组:0x05;F6组:0x06;F7组:0x07;F8组:0x08;F9组:0x09;FA组:0x0A;Fb组:0x0B;FC组:0x0C;Fd组:0x0D;FE组:0x0E;FF组:0x0F;FH组:0x10;FL组:0x11;Fn组:0x12;FP组:0x13;FU组:0x14;变频器控制参数组:0x32;变频器状态参数组:0x33。例如变频器功能码参数F3.02的寄存器地址为0x302,变频器功能码参数FF.01的寄存器地址为0xF01。

3.          支持的功能码如下:
功能码
功能码意义
0x03
读取变频器功能码参数和运行状态参数
0x06
改写单个变频器功能码或者控制参数,掉电之后不保存
0x08
线路诊断
0x10
改写多个变频器功能码或者控制参数,掉电之后不保存
0x41
改写单个变频器功能码或者控制参数,掉电之后保存
0x42
功能码管理
 
 
 
 
 
 
 
 
 
4.          具体的协议介绍请参考艾默生变频器用户手册;
四、             程序流程图
主设备对从设备的消息查询命令主要分为2大类,连续命令序列和随机命令序列。
连续命令序列: 主设备需要定时或连续向从设备发送的命令序列.特点是周期性,连续性.如PLC对变频器读取运行频率命令,运行状态命令等。
随机命令序列: 主设备不定时或随机向从设备发送的命令序列.特点是不定时性,随机性.如PLC对变频器的启停控制,改写频率或其他参数等。

点击查阅流程图艾默生 PLC在变频器网络控制中的通信程序设计.doc
五、程序清单:( 子程序和主程序 )
    本程序主要介绍1台EC20PLC(作为主站)按照MODBUS协议网络对3台变频器(从站号分别是2,3,4)进行通信控制的简单范例,本例中:
连续命令序列 包括对2,3,4号变频器的运行频率的读取;
随机命令序列 包括对2,3,4号变频器进行启动,停止,更改频率的命令操作;
1)     “变频器正转”子程序清单如下:
   //主程序中用M1993作为各发送辅助使能,主要用于 MODBUS指令的上升沿触发无其他用
LD                 LM0  //位输入参数型—发送辅助使能
RST               SM135      //复位成功标志
RST               SM136      //复位失败标志
LD                 SM0        //运行标志
MOV              Z0 V9       //保存Z0值到V9
LD                 SM0        //运行标志
MOV              V0 V10      //从机地址
MOV              16#6 V11     //功能码
MOV              16#32 V12   //寄存器地址高字节
MOV              16#0 V13    //寄存器地址低字节
MOV              1 V14       //写入数据高字节
MOV              16#C7 V15   //写入数据低字节
//以下把发送数据转移到D7940-D7945里
LD                 SM0 
MOV              0 Z0
LD                 SM0
FOR               6
LD                 SM0
MOV              V10Z0 D7940Z0
LD                 SM0
INC                Z0
NEXT
//发送接收数据,数据放在D7970开始区域    
LD                 LM0
MODBUS       1   D7940   D7970  
RST               LM0    //马上复位发送辅助使能
//无论成功失败都还原Z0值
//当然这里省略了错误报告的处理
LD                 SM135
OR                 SM136
EU                //上升沿
MOV              V9 Z0 
2)      “停机”子程序(省略)
3)     “设定频率”子程序(省略)
4)     “读取运行频率”子程序(省略)
5)   主程序清单:
//******以下为通信逻辑处理部分******
LD                 SM1   //运行第一周期脉冲
//***这里省略了检查从机准备好否的环节***
//***程序里设计了3个连续命令序列***
RST               M6  //复位连续命令序列1使能标志
RST               M7  //复位连续命令序列2使能标志
RST               M8  //复位连续命令序列3使能标志
ED  //下降沿
//置位连续命令序列1使能标志,以开始第1条连续命令执行
SET               M6 
//***程序里设计了共9个随机命令序列***
//只要有至少1个随机命令, // M1000=ON,表示有随机命令等待,这样在连续命令切换时优先执行随机命令系列.
LD                 M0   //随机命令序列1使能标志
OR                 M1   //随机命令序列2使能标志
OR                 M2   //随机命令序列3使能标志
OR                 M3   //随机命令序列4使能标志
OR                 M4   //随机命令序列5使能标志
OR                 M5   //随机命令序列6使能标志
OR                 M9   //随机命令序列7使能标志
OR                 M10  //随机命令序列8使能标志
OR                 M11  //随机命令序列9使能标志
SET               M1000  
//所有随机命令都处理完成后, M1000=OFF,表示随机命令完成,则连续命令可以正常切换。
LDI                M0
ANI                M1
ANI                M2
ANI                M3
ANI                M4
ANI                M5
ANI                M9
ANI                M10
ANI                M11
RST               M1000  
//任何1个连续命令未完成时,M1001=ON,标志连续命令在进行,如果有随机命令必须等待。
LD                 M6
OR                 M7
OR                 M8
SET               M1001
//连续命令处于切换状态时,M1001=OFF,标志连续命令完成,如果有随机命令可以进行。
LDI                M6
ANI                M7
ANI                M8
RST               M1001
//每1个连续命令完成且无随机命令等待时,启动延时T0 100MS,以便切换下1个连续命令执行
LD                 M100     //连续命令1完成标志
OR                 M101     //连续命令2完成标志
OR                 M102     //连续命令3完成标志
ANI                M1000
TON              T0   1   //启动延时T0 100MS
//******************************************
//**********以下为3个连续命令序列**********
//调用“读取运行频率”子程序-2#站,频率存在D1000里;
//通信成功或失败都复位连续命令序列1使能标志M6,同时置位完成标志M100,以便进行切换。当然这里省略了失败的处理子程序;
//延时T0时间后,执行连续命令2序列,置位连续命令2序列使能标志M7;
LD                 M6     //连续命令序列1使能
MPS
EU
SET               M1993  //发送前置位发送辅助标志
MRD
CALL             读取运行频率   2   M1993   D1000
//参数注释:站地址,发送辅助位,频率存放地址
MPP
LD                 SM135
OR                 SM136
ANB
RST               M6   
SET               M100
LD                 T0     
AND              M100  
EU
RST               M100  //复位连续命令1完成标志
SET               M7   
//调用“读取运行频率”子程序-3#站,频率存在D1001里;
//通信成功或失败都复位连续命令序列2使能标志M7,同时置位完成标志M101,以便进行切换。当然这里省略了失败的处理子程序;
//延时T0时间后,执行连续命令3序列,置位连续命令3序列使能标志M8;
LD                 M7 //连续命令2序列使能
MPS
EU
SET               M1993  //发送前置位发送辅助标志
MRD
CALL             读取运行频率  3   M1993   D1001
//参数注释:站地址,发送辅助位,频率存放地址
MPP
LD                 SM135
OR                 SM136
ANB
RST               M7    //复位使能标志
SET               M101  //置位完成标志
LD                 T0 
AND              M101
EU
RST               M101 //复位连续命令2完成标志
SET               M8   //置位连续命令3使能标志
//调用“读取运行频率”子程序-4#站,频率存在D1002里
//通信成功或失败都复位连续命令序列3使能标志M8,同时置位完成标志M102,以便进行切换。当然这里省略了失败的处理子程序;
//延时T0时间后,重新执行连续命令1序列,置位连续命令1序列使能标志M6;

 

状 态: 离线

公司简介
产品目录
供应信息

公司名称: 艾默生CT
联 系 人: 销售部
电  话: 021-54260668
传  真: 0755-86010101
地  址: 上海市桂平路418号兴园科技广场17楼
邮  编: 200233
主  页:
 
该厂商相关解决方案:
艾默生EC10系列PLC在双螺杆塑料挤出造粒机中的应用
EC20 PLC调试小工具
艾默生TD3300变频器在张力控制中的应用
艾默生变频器在涤纶短纤生产线上的应用
变频器在液位自动控制中的应用及其节能效果
艾默生Enydrive变频器在工业洗衣机上的应用
艾默生TD3300变频器在分纱落筒机上的应用
艾默生工控产品在锅炉温度控制中的应用
艾默生Enydrive变频器的纺织专用功能
艾默生TD3000系列变频器在碳素成型机中的应用
艾默生工控产品在钢帘线中的应用
艾默生工控产品在改造石材加工设备中的应用
更多方案...
立即发送询问信息在线联系该解决方案厂商:
用户名: 密码: 免费注册为中华工控网会员
请留下您的有效联系方式,以方便我们及时与您联络

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 不良信息举报
工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2022 Gkong.com, All Rights Reserved