目 录
1. 关于通信功能 ..................................................................................................................................1
1.1 概要 ..................................................................................................................................... 1
2. 规 格 ............................................................................................................................................. 2
2.1 通信规格 ............................................................................................................................. 2
3. 连 接 .............................................................................................................................................3
3.1 端子分配(输入输出端子CN2) .............................................................................................. 3
3.2 连接 ..................................................................................................................................... 3
4. 通信条件设定 .................................................................................................................................. 4
4.1 设定项目 ............................................................................................................................. 4
4.2 设定操作 ............................................................................................................................. 4
5. MODBUS通信协议 .........................................................................................................................5
5.1 概要 ..................................................................................................................................... 5
5.2 信息的构成 .......................................................................................................................... 6
5.3 子机应答 ............................................................................................................................. 8
5.4 功能代码 ............................................................................................................................. 9
5.5 出错校验代码(CRC-16)的计算 .......................................................................................... 10
5.6 传输控制步骤 .................................................................................................................... 12
6. 信息详情 ....................................................................................................................................... 14
6.1 字数据的读取[功能代码:03
6.2 只读字数据的读取[功能代码:04
6.3 字数据的写入(一个字)[功能代码:06
6.4 连续字数据的写入[功能代码:10
7. 地址映射和数据格式 ..................................................................................................................... 20
7.1 数据格式 ........................................................................................................................... 20
7.2 地址映射表 ........................................................................................................................ 22
7.3 地址映射表的补充说明 ...................................................................................................... 31
8. 示范程序 .......................................................................................................................................32
9. 故障诊断 .......................................................................................................................................35
H] ........................................................................................... 14
H] ................................................................................... 16
H] ............................................................................. 18
H] ................................................................................... 19
- i -
1.1 概要
· 本机具有通过RS-232C接口进行通信的功能,并能够与上位计算机等进行双向数据传输。
· 通信系统由主机和子机构成。每台主机可以连接1台子机(本机)。
并且,借助RS-232C
多可以连接31台子机(本机)。
· 由于每次可以通信的子机仅1台,所以主机要通过在各子机设定的“站号No.”确定通信对
象。
· 为了主机和子机之间的通信,收、发信数据的格式必需一致。本机根据MODBUS通信协议确
定了通信数据格式。
[RS-232C RS-485变换器](推荐品)
型号:KS-485(非隔离式) / 株式会社SYSTEM SACOM
型号:SI-30A(隔离式) / 积水电子株式会社
1. 关于通信功能
RS485变换器,还可以适应RS-485的接口环境。这样,1台主机最
RS-232C
RS-485
RS-232C
RS-232C
RS-232C RS-485
RS-232C RS-485
- 1 -
2.1 通信规格
项 目规 格
电气规格
通信方式
同步方式
连接形态
最多连接台数
通信速度
数据格式 数据长
传输代码
错误检测
隔离 通信部分和其他部分为非隔离
2. 规 格
遵循EIA RS-232-C
半双工 2线式
起止同步
1:1
1台(使用RS-485接口时为31台)
9600bps
8位
停止位
奇偶校验 无
X流控制
HEX值(MODBUS RTU模式)
CRC-16
1位
无
- 2 -
3. 连 接
警告
为防止触电及故障,在所有的配线连接完成之前,请勿通电。
3.1 端子分配(输入输出端子CN2)
端子号 信号名称 引脚连接图
2 Recive Data
3 Transmit Data
5 Signal GND
其他 NC
3.2 连接
连接用电缆请使用市售的RS-232C电缆(reverse cable)。
(PC )
619
5
D-Sub9P
(插针)
ᐿ᭦ڎ
ζᤋଋ٧
- 3 -
为了主机与本机之间能够正常通信,需要进行以下设定:
· 主机与本机的所有通信条件应设定为同一条件。
· 连接在同一线路上的所有本机需设定各不相同的“站号No.”。(应无本机设定为相同“站号
No.”)
4.1 设定项目
下表为设定项目,请通过正面的操作键进行设定。
项目 出厂值 设定范围 备注
通信速度
数据长
停止位
奇偶校验设定 无
站号No. 1
4. 通信条件设定
9600bps 固定(不能变更)
8位固定(不能变更)
1位固定(不能变更)
固定(不能变更)
0~31
(0:通信功能停止)
请将主机及所有站号的子
机设定为同一条件。
各子机请设定为各不相同
的值。
4.2 设定操作
在分析仪的维护模式的画面上设定站号No.(参见使用说明书)。
- 4 -
5.1 概要
基于MODBUS通信协议的通信系统,通常采用“从主机开始通信,子机分别应答”的形式。
传输的顺序如下:
1) 主机向子机发送指令信息。
2) 子机确认接收的信息中的站号No.是否与本站的站号No.相同。
3) 如果一致,则执行指令,并返回应答信息。
4) 如果不一致,则丢弃接收的指令信息,等待下一个指令信息。
a) 指令信息中的站号No.与本站的站号No.一致时,
5. MODBUS通信协议
主机→子机 指令信息
主机←子机 应答信息
b) 指令信息中的站号No.与本站的站号No.不一致时,
主机→子机 指令信息
主机←子机 (不应答)
主机通过指定指令信息中的站号No.,可以与连接在同一线路上的多个子机分别进行通信。
通信线上的数据
通信线上的数据
- 5 -
5.2 信息的构成
指令信息及应答信息由站号No.、功能代码、数据部以及出错校验代码四个部分构成,并按此顺
序发送。
下面就各部分进行说明:
(1) 站号No.
是子机的指定编号。仅可由在分析仪维护模式画面的“站号No.”处设定的值相一致的子机来
处理指令。
(2) 功能代码
是指定让子机执行的功能的代码。
详情请参见5.4节。
站号No.(1字节)
功能代码(1字节)
数据部(2~133字节)
出错校验代码(CRC-16) (2字节)
图5-1 信息的构成
(3) 数据部
是执行功能代码所必需的数据。数据的构成随功能代码而异。详情请参见第6章。
分析仪内的数据分配有线圈号和寄存器号,由于通信时要使用该数据,所以请指定线圈号或
寄存器号。
并且,在信息上传输的线圈号或寄存器号,通过相对地址执行。
相对地址的计算公式如下:
相对地址 = 线圈号或寄存器号
例如,由某功能代码指定的寄存器号=40003时,
相对地址 =(40003的低4位)-1
= 0002
信息上使用这一地址。
的低4位 -1
- 6 -
(4) 出错校验代码
是检测信号传输过程中的信息错误(位的变化)所需的代码。
MODBUS通信协议(RTU模式)使用CRC-16 (Cyclic Redundancy Check:循环冗余校验)。
CRC计算方法请参见第5.5节。
- 7 -
5.3 子机应答
(1) 正常时的应答
子机生成与各信息对应的应答信息,并回复。此时的信息构成与5.2节所示相同。
数据部的内容随功能代码而异,详情请参见第6章。
(2) 异常时的应答
指令信息的内容中出现传输错误之外的差错(指定了不存在的功能代码等)时,子机不执行此指
令,并生成出错应答信息回复。
出错应答信息的构成如图5-2所示,功能代码为指令信息的功能代码加上80
出错代码如表5-1所示。
出错代码 内容 说明
01H
02H
03H
H的数值。
站号No.
功能代码+80
出错代码
出错校验(CRC-16)
图5-2 出错应答信息
表5-1 出错代码
功能代码出错 指定了不存在的功能代码。
线圈、寄存器的地址出错 指定了指定功能代码不能使用的线圈号、
线圈、寄存器的个数错误
H
请确认功能代码。
寄存器号的相对地址。
由于指定的个数过多,指定的线圈号、寄
存器号超出其存在的范围。
(3) 无应答
子机在以下情况下,无视指令信息,不做应答。
· 指令信息中指定的站号No.与给子机设定的站号No.不一致时。
· 出错校验代码不一致时,或检测出传输错误(奇偶校验出错)时。
· 信息构成的数据间隔为24位时间以上时。(请参见5.6传输控制步骤)
- 8 -
5.4 功能代码
MODBUS通信协议中,按照功能代码分配寄存器号,各功能代码只对特定的寄存器号起作用。
其对应情况如表5-2,按功能分类的信息字长如表5-3所示。
No. 功能 目标 号码 内容
读取(连续) 保持寄存器 4XXXX 读取/写入 字数据
H
03
读取(连续) 输入寄存器 3XXXX 读取 字数据
H
04
写入 保持寄存器 4XXXX 读取/写入 字数据
H
06
H
10
功能代码 内容 可指定数据数
写入·连续
H 字数据的读取 64个字 887133
03
H
04
H 字数据的写入 1个字 8888
06
H 连续字数据的写入 64个字 11 137 8 8
10
表5-2 功能代码和目标地址的对应情况
功能代码 寄存器号
保持寄存器 4
XXXX 读取/写入 字数据
表5-3 功能代码和信息字长
指令信息 应答信息
最小 最大 最小 最大
字数据(只读)的读取
64个字 887133
[单位:byte]
- 9 -
5.5 出错校验代码(CRC-16)的计算
CRC-16为2字节(16位)的出错校验代码。计算范围为从信息的开头(站号No.)至数据部的最末尾。
子机计算接收信息的CRC,如果与接收的CRC代码不一致,则不做应答。
CRC-16的计算步骤如下所示:
将16位寄存器置为FFFF
取发送信息的头1个字节(8位)和CRC寄存器进行“异或”(XOR),并将结果输入CRC寄存器
中。
将CRC寄存器向右移1位。向MSB中输入0。
如果移位前的LSB为0时,则不做任何动作。
如果移位前的LSB为1时,则取与A001
重复步骤、8次(移动8位)。
对于发送信息的下一字节,也同样执行~的步骤。
同样地依次处理发送信息的每个字节。
发送信息的最后1个字节(除出错代码以外的最后的数据)处理结束时的CRC寄存器的值为
CRC代码。
将此CRC值按低8位、高8位的顺序存储到发送信息的出错校验代码中。
发送信息(例)
H。(CRC寄存器)
H的“异或”XOR,并将结果输入CRC寄存器。
01
H
06
H
00
H
05
03
E8
99
75
H
H
H
H
H
CRC=75 99H
CRC-16的计算流程如下页的图5-3所示。
CRC
CRC
- 10 -