汇川 H2U/H1U 系列 PLC 控制器的
HMI 联机协议
本说明文档提供给人机界面(HMI)生产厂家,介绍汇川公司的 H2U、H1U 系列可编程
控制器(PLC)产品的通讯监控协议、硬件连接等,便于其 HMI 产品可方便地与 H2U、H1U
产品进行通讯连接,正常工作。
本文档还对协议的名称进行了规范说明。
1.汇川协议名称
本协议说明适用于汇川公司的 H2U、H1U 系列 PLC,在 HMI 的软件协议中,该协议名
称分别要求是:
INOVANCE H2U ------用于 H2U 系列 PLC 的通讯协议(含 RS422 四线/RS485 两线)
INOVANCE H1U ------用于 H1U 系列 PLC 的通讯协议(含 RS422 四线/RS485 两线)
上述两个系列 PLC 协议定义相同,差别在于 PLC 内部变量的数量不同。
注:
HMI 与 H2U、H1U 控制器之间的通讯协议,均支持 RS422 全双工、RS485 半双工两种通
讯模式,方便用户选择。
目 录
汇川 H2U/H1U 系列 PLC 控制器的 HMI 联机协议 ....................................................................1
1.汇川协议名称........................................................................................................................1
2.硬件连接与信号说明....................................................................................................... - 1 -
2.1 H2U 的信号连接................................................................................................... - 1 -
2.2 H1U 的信号连接................................................................................................... - 2 -
3.协议说明........................................................................................................................... - 3 -
3.1 硬件协议............................................................................................................... - 3 -
3.2 通讯协议说明....................................................................................................... - 3 -
3.2.1 字节/字型(byte/word)元件读写通讯帧说明............................................... - 3 -
3.2.1.1 HMI 读取 H2U、H1U 系列 PLC 字/字节变量的通讯帧 ..................... - 5 -
3.2.1.2 H2U、H1U 对字/字节读取命令帧的应答 ............................................ - 5 -
3.2.1.3 HMI 改写 H2U、H1U 系列 PLC 字/字节变量的通讯帧 ..................... - 6 -
3.2.1.4 H2U、H1U 对字/字节改写命令帧的应答 ............................................ - 7 -
3.2.1.5 Byte/word 型数据变量地址详细说明 .................................................... - 7 -
3.2.2 双字型(Dword)元件读写通讯帧说明....................................................... - 15 -
3.2.2.1 HMI 读取 PLC 双字变量的通讯帧...................................................... - 15 -
3.2.2.2 PLC 对双字读取命令帧的应答............................................................ - 17 -
3.2.2.3 HMI 改写 H2U、H1U 系列 PLC 双字变量的通讯帧......................... - 18 -
3.2.2.4 H2U、H1U 对双字改写命令帧的应答 ............................................... - 18 -
3.2.2.5 H2U、H1U 的双字参数的地址说明 ................................................... - 18 -
3.3.3 位型(bit)元件改写操作通讯帧说明(只写) ............................................... - 19 -
3.3.3.1 HMI 发送给 H2U、H1U 的位改写操作通讯帧的格式...................... - 19 -
3.3.3.2 H2U、H1U 对位变量改写命令帧的应答帧格式................................ - 20 -
3.3.3.3 位(bit)元件改写操作的地址说明................................................... - 20 -
4.H1U 与 H2U 的差别 ...................................................................................................... - 22 -
5.HMI 与 H2U 系列 PLC 配合通讯的方法说明 ............................................................. - 22 -
5.1 H2U 使用 RS422 全双工(4W)的方法........................................................... - 22 -
5.2 H2U 使用 RS485 半双工(2W)的方法........................................................... - 23 -
5.3 H1U 使用 RS422 全双工(4W)的方法........................................................... - 23 -
5.4 H1U 使用 RS485 半双工(2W)的方法........................................................... - 24 -
2.硬件连接与信号说明
2.1 H2U 的信号连接
H2U 备有与 HMI 通讯的端口有 Mini DIN8 信号插座,该插座常用于用户程序的下载和
HMI 监控;另外还有螺钉固定座的 RS485 通讯端口,方便采用双绞线通讯应用连接。这两
组端口只要通过适当配置,都可以与 HMI 进行通讯。
PLC 主模块上 Mini DIN8 的通讯端口(COM0)各引脚信号属性说明如下表:
管脚号
信号
描述
1
2
3
4
5
6
7
8
RXD-
RXD+
GND
接收负
接收正
地线
TXD-/(485-) 对外发送负,若为 RS485,也作 RS485-
+5V
CCS
外设(如手编器)供电电源
COM0 作为 RS485 方式时通讯方向控制线,高
电平表示发,低电平表示收
TXD+/(485+) 对外发送正,若为 RS485,也作 RS485+
NC
空脚
注:
1)通讯口采用何种通讯协议、全双工或半双工模式,是通过 JP0 和用户程序编程配合决定
的:将 JP0 闭合(插上跳线帽),COM0 为 RS422 模式,可以下载 PLC 用户程序; JP0 断
开(拔掉跳线帽),COM0 的工作模式由 D8116 决定,D8116=H01 代表 RS485(2W),D8116=H81
- 1 -
代表 RS422(4W),具体设置方法请参见本说明文的第 5 章的指导。
2)该 Mini DIN8 信号电缆兼容市售的 SC-09 型号下载电缆(DB9 插头 RS232-Mini DIN8
插头 RS422 的转换电缆);若 HMI 标配 DB9 插座并使用 Mini DIN8 插座的电缆连接方式,
建议采用 RS422 全双工通讯方式。
3)HMI 提供 RS485 半双工的通讯协议,可增强用户使用 HMI-PLC 通讯连接的方便性,建
议 HMI 厂家也提供支持 RS485 半双工通讯模式。
2.2 H1U 的信号连接
H1U 配备与 HMI 通讯的端口有 Mini DIN8 信号插座(COM0),该插可用于用户程序的下
载和 HMI 监控;另外还有螺钉固定座的 RS485 通讯端口(COM1),方便采用双绞线的通讯
连接。
注:
1) 当 HMI 标配 DB9 插座并使用 Mini DIN8 插座的电缆连接时,建议采用 RS422
全双工通讯方式;
2) 该 Mini DIN8 信号电缆可采用市售 SC-09 型号的编程电缆(DB9 插头 RS232-
Mini DIN8 插头 RS422 的转换电缆);
3)
HMI 提供 RS485 半双工的通讯协议,可增强用户使用 HMI-PLC 通讯连接的方
便性,建议 HMI 厂家提供支持 RS485 半双工通讯模式。
- 2 -
3.协议说明
3.1 硬件协议
HMI 与 H2U、H1U 通讯连接采用 RS422(4W)或 RS485(2W)电平进行通讯连接;
通讯波特率固定为 9600bps,7E1 格式,即 7 位数据位,偶校验,1 位停止位。
3.2 通讯协议说明
HMI 与 H2U、H1U 系列 PLC 通讯时,为一主一从的通讯方式,HMI 为主,PLC 为从,
PLC 只是被动地回答 HMI 询问的数据,或执行通讯命令操作。
通讯帧数据以 ASCII 码形式传送,以特定的 STX 帧头和 ETX 传送尾字符来表示起止特
征。
按照通讯帧访问的数据类型,可分为字/字节(byte/word)型、(双字 Dword)型、位(bit)
型,他们在数据字节发送顺序、地址索引方法上有相应的定义。
3.2.1 字节/字型(byte/word)元件读写通讯帧说明
Byte/word 型元件访问通讯帧,对于 X/Y/M/S/T/C 等位变量状态,可按 8 个位为 1 组(即
1byte)的方式读取读取或改写;对于计时器 T 和 D 元件,以及部分计时器 C 元件,按字型
变量读取或改写参数。
HMI 发送给 H2U、H1U 的字/字节读写操作通讯帧的典型格式如下:
帧段
STX
CMD
ADDR
LENGTH
DATA
ETX
SUM
字节
数
1
3
4
2
(LENGTH)*2
1
2
ASCII
ASCII
ASCII
ASCII
ASCII
注释 0x02 操作类型:
读操作
写操作
寄存器起始
地址,
读/写数据长
度(字节)
数据段
其中:
1)
STX:通讯文本(通讯帧)起始字符,固定为 0x02;
- 3 -
0x03
CMD 至 ETX 段所
有 ASCII 码累
加到一字节单
元,再取和的
ASCII 码值
2)
CMD:操作命令字段,用于表征操作类型,定义如下表。发送前要将之转换为
ASCII 编码形式;
CMD
通讯操作类型
说明
0xE00
0xE01
0xEE0
0xEE1
按字/字节读取操作 读取常规 Y/X/M/S/T/C/D
按字/字节写操作
改写常规 T/C/D 字元件
按字读取操作
读取 ER 扩展寄存器
按字改写操作
改写 ER 扩展寄存器
3)
ADDR:
在字节/字读写操作通讯帧中,表示读写操作的起始变量地址,在 H2U、
H1U 控制器中,将内部的各种变量(如 Y/X/M/S/T/C/D/ER),是按照线性地
址空间进行编址的,编址原则参见本节字/字节操作详细说明;
发送前要将之转换为 ASCII 编码形式。
4)
LENGTH:读或写操作的数据长度,长度单位按字节计算,无论是访问字节型
数据(位变量组),还是访问字型变量(字型 C、T、D 变量),最多为 64(字
节);发送前要将之转换为 ASCII 编码形式;
5)
DATA:寄存器变量的数据。当 HMI 发送读取命令帧时,该字段为空;当 HMI
发送写入命令帧时,该字段为与变量起始地址 ADDR 对应的待写入数据,数据
段长度由 LENGTH 字段定义,以字节为单位。(长度为数据在 Hex 格式的数据
字节个数,而非转换为 ASCII 格式后字节个数)
当有多个字节(Byte)、或多个字(Word)的数据时,其排列顺序是低地址在
前,高地址变量在后;对于每一个 word 型元件,其数据高字节在前,低字节
在后,如下图所示,HMI 在发送或接收时应按照变量数据的类型解析:
Byte方式
(X/Y/M/S/T/C位元件组)
Word方式
(C/T/D字元件)
B(n) B(n+1) B(n+2) ...
Byte0
Byte0
Byte0
Byte0
W(n) W(n+1) W(n+2) ...
Byte0
Byte1
Byte0
Byte1
Byte1
Byte0
6)
7)
数据发送前要将之转换为 ASCII 编码形式;。
ETX:通讯文本结束字符,固定为 0x03;
SUM:校验和字段,将从 CMD 字段开始至 ETX 段所有 ASCII 码值进行累加,存
到一字节单元,再取和的 ASCII 码值
- 4 -
3.2.1.1 HMI 读取 H2U、H1U 系列 PLC 字/字节变量的通讯帧
STX
CMD
ADDR
LENGTH
DATA
ETX
帧段
字节数
1
3
ASCII
4
ASCII
2
ASCII
注释
0x02
读操作:
0xE00
转 为
ASCII 码:
0x453030
寄 存 器 起 始
地址,例如:
0x0180, 转 为
ASCII 码:
0x30313830
读 取 数 据 长 度
例:0x02(即 2 个
字节),转为 ASCII
码:
0x3032
上表格中的空格表示该段不存在。
1
0x03
SUM
2
ASCII
将 CMD 至 ETX
段所有 ASCII 码
累加到一字节单
元 , 再 取 和 的
ASCII 码值,本例
计算为 0x4433
3.2.1.2 H2U、H1U 对字/字节读取命令帧的应答
当 H2U、H1U 系列 PLC 接收到 HMI 的寄存器读取命令帧后,若通讯请求的数据正确有
效,应答的通讯帧格式如下,表格中的空格表示该段不存在:
帧段
字节数
STX CMD ADDR
1
注释
0x02
LENGTH
DATA
(LENGTH)*2
ASCII
数 据 段 例 如 应
答 数 2001, 即
0x07D1
ASCII 码:
0x30374331
ETX
1
0x03
SUM
2
ASCII
将 CMD 至 ETX 段的
ASCII 码累加到一字
节 单 元 , 再 取 和 的
ASCII 码值,本例计
算为:0x4445
PLC 的应答帧中,按命令帧要求的变量起始地址,将对应地址的变量值,依次由低地
址变量至高地址变量,转换为 ASCII 码后依次发送,发送字符顺序是高位在前,低位在后。
若通讯帧错误,或请求的地址属性无效,只应答精简的单个字节数据帧:0x15,表示
通讯读取失败。
例 1:读取 Y10、Y11、Y17、Y21、Y25 等 5 个输出的状态。
分析: 上述 5 个变量分布在 Y10 开始的 2 个相邻的 byte 变量单元,可用 1 个通讯帧读取
Y10~Y27 单元,于是,起始地址单位为 0x181,长度为 0x02,按典型帧结构:
- 5 -
帧段
STX CMD
ADDR
LENGTH DATA
ETX SUM
字节数
1
3
4
2
(LENGTH)*2
1
2
本例数据 0x02
0xE00
0x181
0x02
ASCII 化
处理后
0x02
0x453030
0x313831
0x3032
0x03
0x01A4
0x03
0x4134
因此,HMI 要发送的通讯帧数据为:
0x02
0x453030
0x313831
0x3032
0x03
0x4134
若控制器的应答数据帧为:0x02 0x34 0x35 0x36 0x43 0x03 0x45 0x35,根据如下帧结构
解析为:
帧段
STX CMD ADDR
LENGTH
DATA
ETX
SUM
字节数
1
本例解析
0x02
Hex 化处理
(LENGTH)*2
1
2
0x34 35 36 43
0x03
0x4535
0x456C
首先判断 ETX 和 ETX 特征字符正常,再检验 SUM 校验和,CMD-ETX 区间的累加和
为 0xE5,ASCII 化后为 0x4535,与 SUM 字段数据相同,说明通讯数据接收正常。
应答的数据 0x456C 按顺序解析为【Y17~Y10】状态数据=0x45,【Y27~Y20】状态数
据=0x6C,将高低字节解析为二进制数=0110,1100,0100,0101,于是可得 Y10=1、Y11=
0、Y17=0、Y21=0、Y25=1。
3.2.1.3 HMI 改写 H2U、H1U 系列 PLC 字/字节变量的通讯帧
帧段
STX
CMD
ADDR
LENGTH
DATA
ETX
SUM
字节数
1
3
4
2
(LENGTH)*2
1
2
注释
0x02
ASCII
ASCII
ASCII
ASCII
例如写操
作:E01
ASCII 码:
0x453031
寄 存 器 起 始
地址,例如:
0x0180
ASCII 码:
0x30313830
改 写 数 据 长
度 ( 字 节 )
例:0x02(即 2
个字节)
ASCII 码:
0x3032
例 如 要 写
:1000
入
即 0x03E8
ASCII:0x303
34438
0x03
ASCII
CMD 至 ETX 段
所有 ASCII 码累
加到一字节单元,
再 取 和 的 ASCII
码值。
本例帧为:0x4233
- 6 -