



1 引言
随着plc技术的不断发展,越来越显示其强大的核心控制功能,plc和其他设备之间的连接已经从比较烦琐的传统i/o方式向越来越受欢迎的简洁先进的通信方式过渡,不仅为设计者节省了大量的硬件成本,更能为远程控制,组网提供了可能,使控制系统更加无缝地融为一体。
本文主要通过艾默生plc和多台变频器组网通信(以modbus协议方式)为例,说明plc和多台变频器网络控制的通信程序的设计方法。
2 modbus协议简要介绍
modbus协议由美国的modi -con公司提出,通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信,不同厂商生产的控制设备可以连成工业网络,进行集中监控,它已经成为一通用工业标准。控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。典型的主设备:ipc,hmi,plc等;典型的从设备:各种仪表,plc,变频器等。主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则不作任何回应。modbus协议建立了主设备查询和从设备回应的格式:设备(或广播)地址、功能代码、所有要发送的数据、错误检测域。modbus协议支持rtu模式和ascii模式,rtu模式对应的帧格式如下:(ascii模式介绍省略)。
3 艾默生plc集成的modbus协议功能
艾默生ec20系列plc的通信口com 1集成了modbus主站协议, 在编程时先在编程软件的系统块里进行设置具体如下:系统块→“通信口”菜单→“通信口1参数设置”菜单→选“modbus协议”→进行“modbus设置”→进行通信参数和(主模式)站号等设置即可。
利用modbus指令进行编程——modbus (s1) (s2)(s3)各参数含义如下:
s1 指定的通讯通道;
s2 发送数据起始地址;
s3 接收数据起始地址;
modbus指令发送过程中,自动加上所需的起始字符,结束字符和校验和;发送的数据,不需设定发送的数据长度,系统会根据功能码自动按系统内部设定长度进行发送。

图1 rtu模式对应的帧格式
2个重要的通信标志:sm135— modbus的通讯成功标志位,通讯成功时置位,不会自动复位,在发送数据的时候要进行一次复位;sm136—modbus的通信错误标志位,通信错误(包括从设备没有回应)时置位,不会自动复位,在接收数据的时候要进行一次复位。
4 艾默生变频器通信协议
艾默生公司生产的ev系列变频器都集成modbus协议,且提供rs23 -2c和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) 支持的功能码如下(见表1);

(4) 具体的协议介绍请参考艾默生变频器用户手册。
5 程序流程图
主设备对从设备的消息查询命令主要分为2大类,连续命令序列和随机命令序列。
连续命令序列:主设备需要定时或连续向从设备发送的命令序列。特点是周期性,连续性。如plc对变频器读取运行频率命令,运行状态命令等。
随机命令序列:主设备不定时或随机向从设备发送的命令序列。特点是不定时性,随机性。如plc对变频器的启停控制,改写频率或其他参数等(见图2)。

图2 程序流程图
6 程序清单
本程序主要介绍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条连续命令执行
| 成立日期 | 2019年09月10日 | ||
| 法定代表人 | 袁宜男 | ||
| 注册资本 | 500 | ||
| 主营产品 | 西门子PLC模块,变频器,触摸屏,交换机 | ||
| 经营范围 | 从事智能科技、自动化科技、机电领域内的技术开发、技术转让、技术咨询、技术服务,工业自动化设备安装,工业自动化控制设备、电气设备、机申设备、电子产品、五金产品、金属材料、仪器仪表、橡塑制品销售,商务信息咨询,软件开发,建筑装修装饰建设工程专业施工,建筑安装工程(除特种设备),机械设备租赁(不得从事金融租赁),物业管理。工业自动化设备加工、销售。 | ||
| 公司简介 | 本公司销售的一律为原装正品,假一罚十,可签正规的产品购销合同,可开增值税发票,税点另外算,24小时销售热线:15221406036本公司销售的一律为原装正品假一罚十可签正规的产品购销合同可开增值税发票税点另外算24小时销售热线15221406036西门子触摸屏代理商,西门子一级代理商,西门子中国授权总代理----浔之漫智控技术(上海)有限公司本公司专业经销合信/CO-TRUST科思创西门子PLC; ... | ||