国产PLC 海为(Haiwell)海为PLC与FUJI-G1S变频器自由通讯应用案例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
海为PLC与FUJI-G1S变频器自由通讯设计
一、引言
用PLC控制变频器已经成为是当今工业自动化系统中最常见的一种组合控制,其控制方法越来越多种多样,其中采用RS-485通讯控制的方案日益得到广泛的应用,其优点是:抗干扰能力强、传输速率高、传输距离远且造价低廉。
但是,RS-485的通讯必须解决的技术问题颇多,一条简单的变频器操作指令,有时要编写数十条PLC梯形图指令才能实现,编程工作量大且繁琐,令设计者头疼。
Haiwell(海为)PLC各种型号的主机都内置Modbus RTU/ASCII协议、自由通讯协议以及海为公司的HaiwellBus高速通讯协议,自带2个通讯口(一个为RS-232,另一个为RS-485),用通讯扩展模块可扩展至5个通讯口,与其它设备建立通讯连接时,无需再加任何附属设备,并且每个通讯口(包括主机自带的两个通讯口或扩展的通讯口)均可用于用于编程和联网。
由于内置有工业上普遍使用的Modbus通讯协议及便利的通讯指令,所以可很方便地与第三方设备建立通讯连接,如:与计算机、文本、触摸屏、变频器、变送器、及其它有通讯功能的仪表等。
即使对于不支持Modbus通讯协议的第三方设备,也可用Haiwell (海为)PLC的自由通讯协议对其进行通讯。
FUJI-G1S变频器既支持Modbus RTU协议也支持富士变频器专用的富士通用变频器协议。
当变频器采用Modbus RTU通讯协议时,海为PLC采用内置的Modbus RTU通讯协议与其通讯;当采用富士通用变频器协议时,海为PLC可采用COMM自由通讯协议与其通讯,非常方便。
以下给出海为PLC采用COMM自由通讯协议与FUJI-G1S变频器的通讯实例。
二、硬件连接与通讯参数的设定
海为PLC主机自带标准的RS-485串行接口,可以与多台FUJI-G1S变频器的RS-485通讯端口2(端子台)总线连接,系统硬件组成与连接如图1所示。
~
图1 系统硬件接线图
根据富士变频器说明书首先设定与通信有关的主要参数,如表1所示:
功能代码功能名称设定值设定值含义
F01 频率设定1 0 由键盘面板上下键设定(数字设定)H30 链接功能 6 频率设定无效,运行命令有效
y11 RS-4851站地址 2 变频器器通信地址
y12 发生错误时的动作选择 3 继续运转
y13 定时器时间 2.0S 指通信异常时变频器作出反应的时间,y14 传送速度 3 19200bps
y15 数据长度选择0 8位
y16 奇偶校验位选择0 无校验
y17 停止位选择0 2位停止位
y20 协议选择 2 富士通用变频器协议
表1 富士变频器通信参数设置表
三、通讯程序设计
1、富士变频器的通信帧格式。
在进行通讯程序设计之前,必须先了解富士通用变频器协议各种通信帧格式。
富士通用变频器协议传送帧有两种,一种是为所有通信功能都能利用的标准帧,另一种是可向变频器发送指令和可进行被监视器所限定的高速通信的选项帧。
不管是标准帧还是选项帧,构成帧的所有字符(包括BCC)都用ASCⅡ码来表示,标准帧和选项帧的传送帧长如表2所示。
表2 传送帧长
变频器的运行操作命令的选择可使用选项帧传送,其选择请求帧构成及说明如图2所示。
图2 选择请求帧
参照上表,采用运行操作指令S06功能代码对站号为2的变频器发出正转、停止及反转的运行命令例的具体格式如图3所示。
图3 运行操作命令帧
其中,SOH=01H;ENQ=05H;f=66H;R=52H;M=4DH;SP=20H;ETX=03H,详细通信协议请参考富士变频器通信协议手册。
当主机在编写帧中,从机通讯地址设定为 99 时,即为广播通讯地址,使用广播时,PLC 所发出的运转指令和频率指令,作为广播信息在所有的变频器中被同时处理,但变频器对广播命令不返回应答。
但注意,从机的地址不可设置为99。
详细参照富士变频器RS-485通信用户手册
2、海为PLC与富士变频器通讯程序例
因为富士变频器采用富士专用的通讯协议,所以海为PLC采用COMM自由通讯协议与其通讯。
例子完成正转、停止及反转3项操作命令;通讯格式设为ASCⅡ,19200,8,N,2,写入十进制数据为153;变频器地址设为2,写入十进制数据为2。
正转命令例
列出变频器正转运行命令串数据(ASCII): SOH 0 2 ENQ f 0 0 0 1 ETX 9 1,转换成ASCII(16进制)为01 30 32 05 66 30 30 30 31 03 39 31,共12字节,存放在初始寄存器值表(如图4所示)“正转运行命令”中的寄存器V1000~V1011中,通讯端口为2,通讯格式采用COMM.LB指令只发送低字节数据,返回8字节。
图4 正转命令初始寄存器值表
停止命令例
列出变频器停止运行命令串数据(ASCII): SOH 0 2 ENQ f 0 0 0 0 ETX 9 0,转换成ASCII (16进制)为01 30 32 05 66 30 30 30 30 03 39 30,共12字节,存放在初始寄存器值表(如
图5所示)“停止命令”中的寄存器V1015~V1026中,采用COMM.LB指令只发送低字节数据,返回8字节。
图5 停止命令初始寄存器值表
反转命令例
列出变频器反转运行命令串数据(ASCII): SOH 0 2 ENQ f 0 0 0 2 ETX 9 2,转换成ASCII (16进制)为01 30 32 05 66 30 30 30 32 03 39 32,共12字节,存放在初始寄存器值表(如图6所示)“停止命令”中的寄存器V1030~V1041中,采用COMM.LB指令只发送低字节数据,返回8字节。
图6 反转命令初始寄存器值表
编写与通讯有关的梯形图程序,如图7所示。
图7 与通讯有关的梯形图程序
由此可见,海为PLC使用海为COMM自由通讯协议只需一条通讯指令便可完成复杂的通讯功能,编程十分简洁、方便,无须再为通讯端口冲突、发送接收控制、通讯中断处理等问题烦恼。