
一. 概述
MB8AI6DI4RO 8路模拟量采集模块,可采集8路0~20mA、4~20mA、0~5V和0~10V四种模拟量信号,每个输入端口信号类型都可通过软件设置,无需跳线设置。可采集6路干接点或湿节点信号(有源或无源输入);作为干接点输入或者传感器(NPN或者PNP)输入可以设置跳线共正极或共负极输入;作为有源输入时极性自动转换,无须跳线切换;4路继电器可通过MODBUS总线进行可控制;模块采用Modbus-RTU通讯,可直接适配PLC、DCS以及国内各种组态软件等。
信号采集、电源、RS485通讯电气信号相互隔离,有效抑制各类串模和共模干扰,保证数据的精确度,同时也保障了模块的可靠工作。
二. 特点
1. 采用Modbus-RTU协议。
2. 模拟量输入可根据自己的需求设置每个通道的输入信号类型,只需软件设置,无需跳线。
3. 集成了6路干接点或湿节点信号(有源或无源输入)和4路继电器输出。
4. 信号采集、电源、RS485通讯电气信号相互隔离。
5. RS485通讯信号输出接口采用过压过流双保护。
6. 输入信号类型和通讯格式可通过软件设置。
7. 电源极性保护。
三. 技术指标
项目 |
参数 |
模拟量 信号输入 |
1.输入通道:8通道隔离采集 2.信号类型:0~20mA、4~20mA、0~5V和0~10V四种模拟量信号 3.采样速率:200HZ(每个通道 25次/秒) 4.分辨率:12bit 5. 采集精度:电压输入0.2% 电流输入0.3% 6. AD采集电路和CPU隔离电压保护:1500V |
开关量 信号输入 |
1.输入通道:6路干接点或湿节点开关量输入 2.信号类型:共正或共负输入,极性自动识别 3.信号电平:高电平(10V ~ 30V) 低电平(0V ~ 1V) 4. 采样速率:1000HZ 5. 隔离电压保护:1500V |
继电器 信号输出 |
1.输出通道:4路常开继电器输出 2.负载容量:阻性负载250V/3A 感性负载250V/1A 5. 隔离电压保护:1500V |
通讯输出 |
1.通讯协议:MODBUS-RTU 2.接口类型:隔离RS485通讯,输出接口采用过压过流双保护 3.波特率:1200bps、2400bps、4800bps、9600bps、19200bps 4.校验位:无校验、偶校验、奇校验 5.设置方式:模块地址、波特率、校验位均可通过软件设置 6.通讯距离:@9600bps 1200米 7. RS485通讯电路电路和CPU隔离电压保护:1500V |
模块尺寸 |
A. 单独模块尺寸:104mm*72mm*26mm B. 带端子和导轨盒尺寸:124mm*72mm*45mm |
安装方式 |
标准DIN导轨安装(35mm导轨 或 高低导轨) |
工作环境 |
温度:-10 ~ +55℃ 湿度:35~85%(不结露) |
工作电源 |
1.供电电压:10V~30V宽范围供电,带电源极性保护 2.电源功耗:小于3W |
四. 产品外观及外围接线图
五. 模块指示灯功能说明
1. POW/SET; 模块工作状态指示
A.绿灯常亮:模块工作在运行状态 B. 红灯常亮:模块工作在配置模式
2. TXD/RXD: 通讯状态指示
A.绿灯闪亮:通讯接收到数据 B. 红灯闪亮:模块正在发送数据
C.绿灯常亮:DATA+和DATA-上接的通讯RS485线接反了或者接线有断线。
六. 模块右侧开关功能说明
1. 工作模式:开关拨到上面,然后模块电源重新上电;模块正常工作时用这个模式,这种模式不能对工作参数进行配置;工作模式的通讯参数是用户设置的参数,出厂默认通讯参数(地址:1,波特率:9600bps,校验位:无,停止位:1位)。
2. 配置模式:开关拨到下面,然后模块电源重新上电;用于查看或设置模块的通讯参数、模拟量输入和模拟量输出工作参数,模式的通讯参数是固定的(地址:1,波特率:9600bps,校验位:无,停止位:1位)。
七. 端子定义
端子 |
名称 |
说明 |
|
端子 |
名称 |
说明 |
1 |
IN0 |
模拟量输入通道0 |
14 |
DIVCC |
开关量输入供电正极 |
|
2 |
IN1 |
模拟量输入通道1 |
15 |
DIGND |
开关量输入供电负极 |
|
3 |
IN2 |
模拟量输入通道2 |
16 |
DI0 |
开关量输入0 |
|
4 |
IN3 |
模拟量输入通道3 |
17 |
DI1 |
开关量输入1 |
|
5 |
AIGND |
模拟量输入公共端 |
18 |
DI2 |
开关量输入2 |
|
6 |
IN4 |
模拟量输入通道4 |
19 |
DI3 |
开关量输入3 |
|
7 |
IN5 |
模拟量输入通道5 |
20 |
DI4 |
开关量输入4 |
|
8 |
IN6 |
模拟量输入通道6 |
21 |
DI5 |
开关量输入5 |
|
9 |
IN7 |
模拟量输入通道7 |
22 |
RO0 |
继电器输出0 |
|
10 |
DATA+ |
RS485通讯+ |
23 |
RO1 |
继电器输出1 |
|
11 |
DATA- |
RS485通讯- |
24 |
RO2 |
继电器输出2 |
|
12 |
+Vs |
电源输入+ |
25 |
RO3 |
继电器输出3 |
|
13 |
GND |
电源输入- |
26 |
ROCOM |
继电器输出公共端 |
八. 电源和通讯接线
九. 模拟量输入接线说明
十. 开关量输入接线说明
十一. 开关量(继电器)输出接线说明
十二. 原理方框图
第二章 Modbus寄存器和通讯协议说明
一. 模块支持的MODBUS功能码和地址范围
寄存器类型 |
地址范围 |
功能码 |
功能码说明 |
线圈寄存器 |
00001-00004 |
0x01H |
读取一个或多个线圈寄存器 |
0x05H |
写一个线圈寄存器 |
||
0x0FH |
写一个或多个线圈寄存器 |
||
开入量寄存器 |
10001-10006 |
0x02H |
读取一个或多个开入量寄存器 |
输入寄存器 |
30001-30008 |
0x04H |
读取一个或多个输入寄存器 |
保持寄存器 |
40001-40176 |
0x03H |
读取一个或多个保持寄存器 |
0x06H |
写一个数据到保持寄存器 |
||
0x10H |
写一个或多个数据到保持寄存器 |
二. 寄存器定义描述
1. 线圈继电器寄存器(0x01H、0x05H、0x0FH)
地址 |
参数 |
长度 |
读/写 |
最小值 |
最大值 |
说明 |
00001 |
DO0 |
1bit |
读写 |
0 |
1 |
开出量输出0 |
00002 |
DO1 |
1bit |
读写 |
0 |
1 |
开出量输出1 |
00003 |
DO2 |
1bit |
读写 |
0 |
1 |
开出量输出2 |
00004 |
DO3 |
1bit |
读写 |
0 |
1 |
开出量输出3 |
2. 开入量寄存器(0x02H)
地址 |
参数 |
|
读/写 |
最小值 |
最大值 |
说明 |
10001 |
DI0 |
1bit |
只读 |
0 |
1 |
开入量通道0 |
10002 |
DI1 |
1bit |
只读 |
0 |
1 |
开入量通道1 |
10003 |
DI2 |
1bit |
只读 |
0 |
1 |
开入量通道2 |
10004 |
DI3 |
1bit |
只读 |
0 |
1 |
开入量通道3 |
10005 |
DI4 |
1bit |
只读 |
0 |
1 |
开入量通道4 |
10006 |
DI5 |
1bit |
只读 |
0 |
1 |
开入量通道5 |
3. 输入寄存器(功能码:0x04H)
地址 |
参数 |
长度 |
读/写 |
最小值 |
最大值 |
说明 |
30001 |
AI0 |
2 |
只读 |
0 |
4095 |
模拟输入通道0 AD转换数值 |
30002 |
AI1 |
2 |
只读 |
0 |
4095 |
模拟输入通道1 AD转换数值 |
30003 |
AI2 |
2 |
只读 |
0 |
4095 |
模拟输入通道2 AD转换数值 |
30004 |
AI3 |
2 |
只读 |
0 |
4095 |
模拟输入通道3 AD转换数值 |
30005 |
AI4 |
2 |
只读 |
0 |
4095 |
模拟输入通道4AD转换数值 |
30006 |
AI5 |
2 |
只读 |
0 |
4095 |
模拟输入通道5 AD转换数值 |
30007 |
AI6 |
2 |
只读 |
0 |
4095 |
模拟输入通道6 AD转换数值 |
30008 |
AI7 |
2 |
只读 |
0 |
4095 |
模拟输入通道7 AD转换数值 |
4. 保持寄存器(功能码:0x03H、0x06H、0x10H)
地址 |
参数 |
长度 |
读/写 |
最小值 |
最大值 |
说明 |
40033 |
AI0 |
2 |
只读 |
0 |
4095 |
模拟输入通道0 AD转换数值 |
40034 |
AI1 |
2 |
只读 |
0 |
4095 |
模拟输入通道1 AD转换数值 |
40035 |
AI2 |
2 |
只读 |
0 |
4095 |
模拟输入通道2 AD转换数值 |
40036 |
AI3 |
2 |
只读 |
0 |
4095 |
模拟输入通道3 AD转换数值 |
40037 |
AI4 |
2 |
只读 |
0 |
4095 |
模拟输入通道4AD转换数值 |
40038 |
AI5 |
2 |
只读 |
0 |
4095 |
模拟输入通道5 AD转换数值 |
40039 |
AI6 |
2 |
只读 |
0 |
4095 |
模拟输入通道6 AD转换数值 |
40040 |
AI7 |
2 |
只读 |
0 |
4095 |
模拟输入通道7 AD转换数值 |
|
||||||
40065 |
设备类型 |
2 |
只读 |
0 |
256 |
25 (MB8AI6DI4RO模块) |
40066 |
设备状态 |
2 |
只读 |
0 |
0x0101 |
Bit4:复位按键状态 Bit0:模块复位请求标志 |
40067 |
模块电压 |
2 |
只读 |
0 |
300 |
0.0-29.9V 每bit 0.1V |
40068 |
模块温度 |
2 |
只读 |
-200 |
1000 |
-20.0-100.0℃度 每bit 0.1℃(不适用) |
40069 |
产品版本 |
2 |
只读 |
0 |
65535 |
硬件版本(高8位) + 软件版本(低8位) |
40070 |
生产信息 |
2 |
只读 |
0 |
65535 |
年(高8位) + 批号(低8位) |
40071 |
模块地址 |
2 |
读/写 |
1 |
247 |
1(默认) |
40072 |
波特率 |
2 |
读/写 |
0 |
7 |
0(1200) 1(2400) 2(4800) 3(9600)默认4(19200) |
40073 |
校验位 |
2 |
读/写 |
0 |
2 |
0(无校验.) 默认 1(偶校验) 2(奇校验) |
|
||||||
40076 |
模拟量 输入类型 |
2 |
读/写 |
0 |
4 |
0(0-20mA) 1(4-20mA) 2(0~5V) 3(0-10V) 4(通道输入自定义) 设置完寄存器后,重启模块电源 |
|
||||||
40129 |
通道0 |
2 |
读/写 |
0 |
3 |
1. 只有40076 模拟量输入类型设置为4才能对通道信号自定义设置。 0(0-20mA) 1(4-20mA) 2(0~5V) 3(0-10V) 2. 设置完寄存器后,重启模块电源 |
40130 |
通道1 |
2 |
读/写 |
0 |
3 |
|
40131 |
通道2 |
2 |
读/写 |
0 |
3 |
|
40132 |
通道3 |
2 |
读/写 |
0 |
3 |
|
40133 |
通道4 |
2 |
读/写 |
0 |
3 |
|
40134 |
通道5 |
2 |
读/写 |
0 |
3 |
|
40135 |
通道6 |
2 |
读/写 |
0 |
3 |
|
40136 |
通道7 |
2 |
读/写 |
0 |
3 |
三. 通道采样值转换为实际数据计算方法
1. 0-20mA输入:实际值 = 采集值(十进制形式) * 20 mA/ 4096
2. 4-20mA输入:实际值 = 4 + 采集值(十进制形式) * (电流上限值-电流下限值 )/ 4096
3. 0~5V 输入:实际值 = 采集值(十进制形式) * 5 V/ 4096
4. 0~10V 输入:实际值 = 采集值(十进制形式) * 10V / 4096
5. 计算例子:
如果通道0设置为4-20mA输入,通讯读取到的数据为0x0723H,转换十进制是1827,计算公式为:4+1827*(20-4)/ 4096 = 11.137mA
四. Modbus RTU 通讯读取采样值命令(例 模块地址:1)
1. 读取一个通道(例 读取通道0): 01 04 00 00 00 01 31 CA
2. 读取八个通道(例 读取通道0 – 7):01 04 00 00 00 08 F1 CC