8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 IBF30
产品特点:
● 八路4-20mA输入Modbus RTU通讯协议
● 四路开关量输入,四路开关量输出
● 通过RS-485/232接口可以程控校准模块精度
● 信号输入 / 输出之间隔离耐压3000VDC
● 宽电源供电范围:8 ~ 32VDC
● 可靠性高,编程方便,易于应用
● 标准DIN35导轨安装,方便集中布线
● 用户可编程设置模块地址、波特率等
● 支持Modbus RTU 通讯协议,自动识别协议
● 低成本、小体积模块化设计
典型应用:
● 信号测量、监测和控制
● RS-485远程I/O,数据采集
● 智能楼宇控制、安防工程等应用系统
● RS-232/485总线工业自动化控制系统
● 工业现场信号隔离及长线传输
● 设备运行监测
● 传感器信号的测量
● 工业现场数据的获取与记录
● 医疗、工控产品开发
● 4-20mA 或0-5V 信号采集
产品概述:
IBF30产品实现传感器和主机之间的信号采集,用来检测模拟信号。IBF30系列产品可应用在 RS-232/485总线
工业自动化控制系统,4-20mA / 0-5V信号测量、监测和控制,以及工业现场信号隔离及长线传输等等。
产品包括电源隔离,信号隔离、线性化,A/D 转换和RS-485 串行通信。每个串口最多可接255 只IBF30 系
列模块,通讯方式支持MODBUS RTU 通讯协议,默认地址为01,波特率为9600,数据格式:10 位,1 位起始
位,8 位数据位,1 位停止位,无校验。也支持ASCII 码通讯协议,波特率可由代码设置,能与其他厂家的控制
模块挂在同一RS-485 总线上,便于计算机编程。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块IBF 30
IBF系列产品是基于单片机的智能监测和控制系统,所有的用户设定的校准值,地址,波特率,数据格式,
校验和状态等配置信息都储存在非易失性存储器EEPROM里。
IBF 30系列产品按工业标准设计、制造,信号输入 / 输出之间隔离,可承受3000VDC隔离电压,抗干扰能力
强,可靠性高。工作温度范围- 45℃~+85℃。
功能简介:
IBF 30远程I/O模块,可以用来测量八路模拟量信号,四路开关量信号,并有四路开关量输出和一路0~4.8V电压信
号输出。
1、 模拟信号输入
16 位采集精度,8 路模拟信号输入。产品出厂前所有信号输入范围已全部校准。在使用时,用户也可以很方
便的自行编程校准。具体电流或电压输入量程请看产品选型。
2、 开关量信号输入与输出,一路0~4.8V 电压信号输出
4 路开关量信号输入,可接干接点和湿接点,详细请参考接线图部分;4 路开关量信号输出集电极开路输出。
一路0~4.8V 电压信号输出,可以用于模拟信号控制。
3、 通讯协议
通讯接口: 1 路标准的RS-485 通讯接口或1 路标准的RS-232 通讯接口,订货选型时注明。
通讯协议:支持两种协议,命令集定义的字符协议和MODBUS RTU 通讯协议。模块自动识别通讯协议,
能实现与多种品牌的PLC、RTU 或计算机监控系统进行网络通讯。
数据格式:10 位。1 位起始位,8 位数据位,1 位停止位。
通讯地址(0~255)和波特率(2400、4800、9600、19200、38400、57600、115200bps)均可设定;通讯网
络最长距离可达1200 米,通过双绞屏蔽电缆连接。
通讯接口高抗干扰设计,±15KV ESD 保护,通信响应时间小于100mS。
4、 抗干扰
可根据需要设置校验和。模块内部有瞬态抑制二极管,可以有效抑制各种浪涌脉冲,保护模块,内部的数
字滤波,也可以很好的抑制来自电网的工频干扰。
产品选型:
IBF 30 - U(A)□ - □
输入电压或电流信号值 通讯接口
U1:0-5V A1:0-1mA 485: 输出为RS-485 接口
U2:0-10V A2:0-10mA 232: 输出为RS-232 接口
A3:0-20mA
U4:0-2.5V A4:4-20mA
U8:用户自定义 A8:用户自定义
选型举例1: 型号:WJ30-A4-485 表示八路4-20mA 信号输入,输出为RS-485 接口
选型举例2: 型号:WJ30-U1-232 表示八路0-5V 信号输入,输出为RS-232 接口
选型举例3: 型号:WJ30-U2-485 表示八路0-10V 信号输入,输出为RS-485 接口
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
IBF 30通用参数:
(typical @ +25℃,Vs为24VDC)
模拟量输入: 电流输入 / 电压输入
精 度: 0.1%
温度漂移: ±50 ppm/℃ (±100 ppm/℃, **)
输入电阻: 100Ω (4-20mA/0-20mA/0-10mA电流输入)
2KΩ (0-1mA电流输入)
大于200K(5V/10V电压输入)
带 宽: -3 dB 10 Hz
AD转换速率: 10 SPS (出厂默认值,用户可发命令修改转换速率。)
可以通过40204寄存器设置AD转换速率2.5 SPS,5 SPS,10 SPS,20 SPS,40 SPS,80 SPS,160
SPS,320 SPS,500 SPS,1000 SPS。(通道转换速率=AD转换速率/开启的通道数量)
注:修改转换速率后请重新校准模块,否则测量的数据会有偏差。也可以在订货的时候注明转
换速率,我们在产品出厂时按您要求的转换速率重新校准。
共模抑制(CMR): 120 dB(1kΩ Source Imbalance @ 50/60 Hz)
常模抑制(NMR): 60 dB (1kΩ Source Imbalance @ 50/60 Hz)
输入端保护: 过压保护,过流保护
开关量输入: 4 通道(DI0~DI3)。
低电平: 输入 < 1V
高电平: 输入 4 ~ 30V
输入电阻: 3KΩ
开关量输出: 集电极开路输出,电压0~30V,**负载电流30mA,4 通道(DO0~DO3)。
模拟量输出: 电压0 ~ 4.8V, 输出负载大于2K 欧姆。
通 讯: 协议 RS-485 或 RS-232 标准字符协议 和 MODBUS RTU通讯协议
波特率(2400、4800、9600、19200、38400、57600、115200bps)可软件选择
地址(0~255)可软件选择
通讯响应时间:100 ms **
工作电源: +8 ~ 32VDC 宽供电范围,内部有防反接和过压保护电路
功率消耗: 小于2W
工作温度: - 45 ~ +80℃
工作湿度: 10 ~ 90% (无凝露)
存储温度: - 45 ~ +80℃
存储湿度: 10 ~ 95% (无凝露)
隔离耐压: 模拟信号和开关量信号3000V 隔离,开关量信号和电源共地。
外形尺寸: 120 mm x 70 mm x 43mm
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
注:同名引脚内部是相连的
引脚 名 称 描 述 引脚 名 称 描 述
1 DI0 通道0 开关量信号输入端 14 A.GND 模拟信号公共地
2 DI1 通道1 开关量信号输入端 15 IN0 通道0 模拟信号输入正端
3 DI2 通道2 开关量信号输入端 16 IN1 通道1 模拟信号输入正端
4 DI3 通道3 开关量信号输入端 17 IN2 通道2 模拟信号输入正端
5 DO0 通道0 开关量信号输出端 18 IN3 通道3 模拟信号输入正端
6 DO1 通道1 开关量信号输出端 19 IN4 通道4 模拟信号输入正端
7 DO2 通道2 开关量信号输出端 20 IN5 通道5 模拟信号输入正端
8 DO3 通道3 开关量信号输出端 21 IN6 通道6 模拟信号输入正端
9 GND 电源负端,开关量信号公共地 22 IN7 通道7 模拟信号输入正端
10 DATA+ RS-485/232 信号正端 23 A.GND 模拟信号公共地
11 DATA- RS-485/232 信号负端 24 A.GND 模拟信号公共地
12 PW+ 电源正端 25 OUT 模拟信号输出端
13 GND 电源负端,开关量信号公共地 26 A.GND 模拟信号公共地
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
模拟信号输入、输出接线图
模拟信号输入 模拟信号输出
开关量信号输入接线图
干接点输入(Dry contact) TTL/CMOS 电平,24V 电平输入
集电极开路输入(Open collector input)
开关量信号输出接线图
驱动继电器(Drive Relay) 电平输出
外接的电源可选5 ~ 30VDC
也可以是给模块供电的电源
继电器工作电流小于30mA
外接的电源可选5 ~ 30VDC
也可以是给模块供电的电源
电阻工作电流小于30mA
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
深圳市维君瑞科WJ30 字符协议命令集:
模块的出厂初始设置,如下所示:
地址代码为01
波特率9600 bps
禁止校验和
如果使用 RS-485 网络,必须分配一个独一无二的地址代码,地址代码取值为16 进制数在00 和FF 之间,
由于新模块的地址代码都是一样的,他们的地址将会和其他模块矛盾,所以当你组建系统时,你必须重新配置每
一个IBF 30 模块地址。可以在接好IBF 30 模块电源线和RS485 通讯线后,通过配置命令来修改IBF 30 模块的地址。
波特率,校验和状态也需要根据用户的要求而调整。而在修改波特率,校验和状态之前,必须让模块先进入缺省
状态,否则无法修改。
让模块进入缺省状态的方法:
IBF 30 模块边上都有一个INIT 的开关,在模块的侧面位置。将INIT 开关拨到INIT 位置,再接通电源,此时
模块进入缺省状态。在这个状态时,模块的配置如下:
地址代码为00
波特率9600 bps
禁止校验和
这时,可以通过配置命令来修改WJ30 模块的波特率,校验和状态等参数。在不确定某个模块的具体配置时,
也可以将INIT 开关拨到INIT 位置,使模块进入缺省状态,再对模块进行重新配置。
注: 正常使用时请将INIT 开关拨到NORMAL 位置。
字符协议命令由一系列字符组成,如首码、地址ID,变量、可选校验和字节和一个用以显示命令结束符(cr)。
主机除了带通配符地址“**”的同步的命令之外,一次只指挥一个WJ30 模块。
命令格式:(Leading Code)(Addr)(Command)[data][checksum](cr)
(Leading code) 首码是命令中的**个字母。所有命令都需要一个命令首码,如%,$,#,@,...等。 1- 字符
(Addr) 模块的地址代码, 如果下面没有指定,取值范围从 00~FF (十六进制)。 2- 字符
(Command) 显示的是命令代码或变量值。 变量长度
[data] 一些输出命令需要的数据。 变量长度
[checksum] 括号中的Checksum(校验和)显示的是可选参数,只有在启用校验和时,才需要此选项。 2- 字符
(cr) 识别用的一个控制代码符,(cr)作为回车结束符,它的值为0x0D。 1- 字符
当启用校验和(checksum)时,就需要[Checksum]。它占2-字符。命令和应答都必须附加校验和特性。校验和
用来检查所有输入命令,来帮助你发现主机到模块命令错误和模块到主机响应的错误。校验和字符放置在命令或
响应字符之后,回车符之前。
计算方法:两个字符,十六进制数,为之前所发所有字符的ASCII码数值之和,然后与十六进制数0xFF相与所得。
应用举例:禁止校验和(checksum)
用户命令 $002(cr)
模块应答 !00020600 (cr)
启用校验和(checksum)
用户命令 $002B6 (cr)
模块应答 !00020600 A9 (cr)
‘$’ = 0x24 ‘0’ = 0x30 ‘2’ = 0x32
B6=(0x24+0x30+0x30+0x32) AND 0xFF
‘!’ = 0x21 ‘0’ = 0x30 ‘2’ = 0x32 ‘6’ = 0x36
A9=(0x21+0x30+0x30+0x30+0x32+0x30+0x36+0x30+0x30) AND 0xFF
命令的应答 :
应答信息取决于各种各样的命令。应答也由几个字符组成,包括首代码,变量和结束标识符。应答信号的首
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
代码有两种, ‘!’或 ‘>’表示有效的命令而‘?’ 则代表无效。通过检查应答信息,可以监测命令是否有效
注意:1、在一些情况下,许多命令用相同的命令格式。要确保你用的地址在一个命令中是正确的,假如你用错
误的地址,而这个地址代表着另一个模块,那么命令会在另一个模块生效,因此产生错误。
2、必须用大写字母输入命令。
3、(cr)代表键盘上的回车符,不要直接写出来,应该是敲一下回车键(Enter 键)。
1、读测量数据命令
说 明:以当前配置的数据格式,从模块中读回所有通道模拟输入端的测量数据。
命令格式:#AA(cr)
参数说明:# 分界符。十六进制为23H
AA 模块地址,取值范围 00~FF(十六进制)。出厂地址为01,转换成十六进制为每个字符的ASCII
码。如地址01换成十六进制为30H和31H。
(cr) 结束符,上位机回车键,十六进制为0DH。
应答格式:>(AI data) ,(DI data), (DO data), (DO Reset data), (AO data), (AO Reset data) (cr) 命令有效。
?AA(cr) 命令无效或非法操作。
参数说明:> 分界符。十六进制为3EH
(AI data) 代表AI 模拟量数据。数据格式可以是工程单位,FSR 的百分比,16 进制补码。详细说明
见命令集第3 条。十六进制为每个字符的ASCII 码。
(DI data) 代表DI 开关量状态。4 个数,排列顺序为DI3~DI0, 值为 0: 输入为低电平;
值为 1:输入为高电平
(DO data) 代表DO 开关量状态。4 个数,排列顺序为DO3~DO0, 值为 0: 输出三极管断开;
值为 1:输出三极管导通
(DO Reset data) 代表复位后DO 开关量状态。4 个数,排列顺序为DO3~DO0,
值为 0: 输出三极管断开;值为 1:输出三极管导通
(AO data) 代表AO 模拟量输出值。4 个数,范围0000~4800,代表电压0~4.8V
(AO Reset data) 代表复位后AO 模拟量输出值。4 个数,范围0000~4800,代表电压0~4.8V
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误,模块不响应。
如果某个通道已经被关闭,那么读出的数据显示为空格字符或者0。
如果你使用的串口通讯软件输入不了回车键字符,请切换到十六进制格式进行通讯。
应用举例: 用户命令(字符格式) #01
模块应答(字符格式):
>+12.000+16.000+16.000+16.000+16.000+16.000+16.000+18.168,1110,1111,0000,2000,0000 (cr)
说 明:模块上输入是(数据格式是工程单位):
通道0:+12.000mA 通道1:+16.000mA 通道2:+16.000mA 通道3:+16.000mA
通道4:+16.000mA 通道5:+16.000mA 通道6:+16.000mA 通道7:+18.168mA
DI3, DI2, DI1 为高电平,DI0 为低电平;
DO3, DO2,DO1 和DO0 当前状态为输出三极管导通; DO3, DO2,DO1 和DO0 复位后三极管断开;
AO 输出的电压是2V,AO 复位后输出0V。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
输入#01 后点击发送命令或者敲回车键,注意(cr)不要输入,那个是代表回车键。
在接收到的数据行就会有显示:
>+12.000+16.000+16.000+16.000+16.000+16.000+16.000+18.168,1110,1111,0000,2000,0000
2、读通道N 模拟输入模块数据命令
说 明:以当前配置的数据格式,从模块中读回通道N 的模拟输入数据。
命令格式:#AAN(cr)
参数说明:# 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。出厂地址为01,转换成十六进制为每个字符的ASCII
码。如地址01换成十六进制为30H和31H。
N 通道代号 0~7为AI,8为DI,9为DO,A为AO。
应答格式:>(data)(cr) 命令有效。
?AA(cr) 命令无效或非法操作或通道被关闭。
参数说明:> 分界符。
(data) 代表读回的通道N 的数据。数据格式可以是工程单位,FSR 的百分比,16 进制补码。详细说
明见命令集第3 条。
(cr) 结束符,上位机回车键(0DH)。
其他说明:假如语法错误或通讯错误,模块不响应。
应用举例: 用户命令(字符格式) #010
(十六进制格式) 23303130
模块应答(字符格式) >+18.000 (cr)
(十六进制格式):3E2B31382E3030300D
说 明:在模块通道0 的输入是(数据格式是工程单位):+18.000mA
3、配置WJ30 模块命令
说 明:对一个WJ30 模块设置地址,输入范围,波特率,数据格式,校验和状态。配置信息储存在非易失性
存储器EEPROM 里。
命令格式:%AANNTTCCFF(cr)
参数说明:% 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。出厂地址为01,转换成十六进制为每个字符的ASCII
码。如地址01 换成十六进制为30H 和31H。
NN 代表新的模块16 进制地址,数值NN 的范围从00 到FF。转换成十六进制为每个字符的ASCII
码。如地址18 换成十六进制为31H 和38H。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
深圳市维君瑞科技有限公司 第 9 页 共 22 页 www.wayjun.cn
TT 用16 进制代表类型编码。 WJ30 产品必须设置为00。
CC 用16 进制代表波特率编码。
表2 波特率代码
FF 用16 进制的8 位代表数据格式,校验和。注意从bits2 到bits5 不用必须设置为零。
表3 数据格式,校验和代码
Bit7:保留位,必须设置为零
Bit6:校验和状态,为0:禁止; 为1:允许
Bit5-bit2:不用,必须设置为零。
Bit1-bit0:数据格式位。 00:工程单位(Engineering Units)
01:满刻度的百分比(% of FSR)
10:16 进制的补码(Twos complement)
(cr) 结束符,上位机回车键,十六进制为0DH。
应答格式:!AA(cr) 命令有效。
?AA(cr) 命令无效或非法操作,或在改变波特率或校验和前,没有将INIT 开关拨到INIT 位置。
参数说明:! 分界符,表示命令有效。
? 分界符,表示命令无效。
AA 代表输入模块地址
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如你**次配置模块,AA=01H,NN 等于新的地址。假如重新配置模块改变地址、输入范围、数
据格式,AA 等于当前已配置的地址,NN 等于当前的或新的地址。假如要重新配置模块改变波特率
或校验和状态,则必须将INIT 开关拨到INIT 位置,使模块进入缺省状态,此时模块地址为00H,
即 AA=00H,NN 等于当前的或新的地址。
假如格式错误或通讯错误或地址不存在,模块不响应。
应用举例: 用户命令 %0111000600(cr)
模块应答 !11(cr)
说 明:% 分界符。
01 表示你想配置的WJ30模块原始地址为01H。
11 表示新的模块16 进制地址为11H。
00 类型代码,WJ30 产品必须设置为00。
06 表示波特率9600 baud。
00 表示数据格式为工程单位,禁止校验和。
4、读配置状态命令
说 明: 对指定一个WJ30 模块读配置。
命令格式:$AA2(cr)
参数说明:$ 分界符。
波特率代码 波特率
04 2400 bps
05 4800 bps
06 9600 bps
07 19200 bps
08 38400 bps
09 57600 bps
0A 115200 bps
Bit7 Bit 6 Bit 5 Bit 4 Bit 3 Bit2 Bit 1 Bit 0
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
AA 模块地址,取值范围 00~FF(十六进制)。
2 表示读配置状态命令
(cr) 结束符,上位机回车键,十六进制为0DH。
应答格式:!AATTCCFF(cr) 命令有效。
?AA(cr) 命令无效或非法操作。
参数说明:! 分界符。
AA 代表输入模块地址。
TT 代表类型编码。
CC 代表波特率编码。见表2
FF 见表3
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误或地址不存在,模块不响应。
应用举例: 用户命令 $302(cr)
模块应答 !300F0600(cr)
说 明:! 分界符。
30 表示WJ30模块地址为30H 。
00 表示输入类型代码。
06 表示波特率9600 baud。
00 表示数据格式为工程单位,禁止校验和。
5、设置WJ30 模块量程命令
说 明:对一个WJ30 模块数据格式,小数点,量程,通道状态进行设置。配置信息储存在非易失性存储器
EEPROM 里。
命令格式:$AA0DNNNNNABCD
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。出厂地址为01,转换成十六进制为每个字符的ASCII
码。如地址01 换成十六进制为30H 和31H。
0 设置模拟量量程命令
D 数据小数点位置,取值范围1~5。表示小数点前面有几个数字,例如3 表示000.00。
NNNNN 表示数据量程,取值范围从00000 到99999(十进制)。例如10000 表示量程为10000。
ABCD 四个16进制数,
**个数和第二个数都为0
第三个数代表7~4通道
第四个数代表3~0通道
位值为 0:禁止通道
位值为 1:启用通道
应答格式:!AA(cr) 命令有效。
?AA(cr) 命令无效或非法操作。
应用举例: 用户命令 $01022000000FF
模块应答 !01(cr)
说 明:$ 分界符。
01 模块地址
02 表示小数点前有2个数。
20000 表示量程为20000。
00FF 表示所以通道都打开。
0 0 0 0 0 0 0 0
A B
IN7 IN6 IN5 IN4 IN3 IN2 IN1 IN0
Bit7 Bit 6 Bit 5 Bit 4 Bit 3 Bit2 Bit 1 Bit 0
C D
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
6、读量程命令
说 明: 对WJ30 模块读量程。
命令格式:$AA1
应答格式:!AAFDNNNNNABCD (cr) 命令有效。
?AA(cr) 命令无效或非法操作。
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。出厂地址为01,转换成十六进制为每个字符的ASCII
码。如地址01 换成十六进制为30H 和31H。
1 读模拟量量程命令
D 数据小数点位置,取值范围 1~5。表示小数点前面有几个数字,例如3 表示000.00。
NNNNN 表示数据量程,取值范围从00000 到99999(十进制)。例如10000 表示量程为10000。
ABCD 四个16进制数,
**个数和第二个数都为0
第三个数代表7~4通道
第四个数代表3~0通道
位值为 0:禁止通道
位值为 1:启用通道
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误,模块不响应。
应用举例: 用户命令 $011
模块应答 !01015000000FF (cr)
说 明:! 分界符。
01 模块地址
01 表示小数点前有1个数。
50000 表示量程为50000。
00FF 表示所有通道都打开。
7、读模块名称命令
说明:对指定一个WJ30 模块读模块名称。
命令格式:$AAM(cr)
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
M 表示读模块名称命令
(cr) 结束符,上位机回车键,十六进制为0DH。
应答格式:!AA(ModuleName)(cr) 命令有效。
?AA(cr) 命令无效或非法操作
参数说明:! 分界符,表示命令有效。
? 分界符,表示命令无效。
AA 代表输入模块地址。
(ModuleName) 模块名称WJ30
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误或地址不存在,模块不响应。
应用举例: 用户命令 $08M(cr)
模块应答 !08WJ30 (cr)
说 明:在地址08H 模块为WJ30。
0 0 0 0 0 0 0 0
A B
IN7 IN6 IN5 IN4 IN3 IN2 IN1 IN0
Bit7 Bit 6 Bit 5 Bit 4 Bit 3 Bit2 Bit 1 Bit 0
C D
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
8、设置模块AD转换速率
说明:设置模块的AD 转换速率。其中,通道转换速率=AD 转换速率/开启的通道数量。采样速率越慢,采集的
数据就越准确。用户可根据需要自行调节。出厂默认的转换速率是10SPS。
注:修改转换速率后请重新校准模块,否则测量的数据会有偏差。也可以在订货的时候注明转换速率,
我们在产品出厂时按您要求的转换速率重新校准。
命令格式:$AA3R(cr)
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
3 表示设置转换速率命令
R 转换速率代号,可为0~9
代号R 0 1 2 3 4 5 6 7 8 9
转换速率 2.5 SPS 5 SPS 10 SPS 20 SPS 40 SPS 80 SPS 160 SPS 320 SPS 500 SPS 1000 SPS
(cr) 结束符,上位机回车键,十六进制为0DH。
应答格式:!AA(cr) 命令有效。
?AA(cr) 命令无效或非法操作
参数说明:! 分界符,表示命令有效。
? 分界符,表示命令无效。
AA 代表输入模块地址。
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误或地址不存在,模块不响应。
应用举例1: 用户命令 $0036(cr)
模块应答 !00 (cr)
说 明: 设置AD 转换速率为160SPS。
应用举例2: 用户命令 $0035(cr)
模块应答 !00 (cr)
说 明:设置AD 转换速率为80SPS。
9、读模块AD转换速率
说明:读模块的AD 转换速率。其中,通道转换速率=AD 转换速率/开启的通道数量。采样速率越慢,采集的数
据就越准确。
命令格式:$AA4(cr)
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
4 表示读转换速率命令
(cr) 结束符,上位机回车键,十六进制为0DH。
响应语法:!AAR(cr) 命令有效。
?AA(cr) 命令无效或非法操作
参数说明:! 分界符,表示命令有效。
? 分界符,表示命令无效。
AA 代表输入模块地址。
R 转换速率代号,可为0~9
代号R 0 1 2 3 4 5 6 7 8 9
转换速率 2.5 SPS 5 SPS 10 SPS 20 SPS 40 SPS 80 SPS 160 SPS 320 SPS 500 SPS 1000 SPS
(cr) 结束符,上位机回车键(0DH)。
其他说明:假如语法错误或通讯错误或地址不存在,模块不响应。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
应用举例1: 用户命令 $004(cr)
模块应答 !006 (cr)
说 明:当前AD 转换速率为160SPS。
应用举例2: 用户命令 $004(cr)
模块应答 !005 (cr)
说 明:当前AD 转换速率为80SPS。
10、设置DO 输出命令
说 明:设置DO 开关量的状态。
命令格式:$AA5XXXX
应答格式:!AA (cr) 命令有效。
?AA(cr) 命令无效或非法操作。
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
5 表示设置DO 命令。
XXXX 代表DO 开关量状态。4 个数,排列顺序为DI3~DI0, 值为 0: 输出三极管断开;
值为 1:输出三极管导通
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误,模块不响应。
应用举例: 用户命令(字符格式) $0150011
模块应答(字符格式): !01 (cr)
说 明:设置DO3 和DO2 的状态为输出三极管断开,DO1 和DO0 的状态为输出三极管导通。
11、设置DO 复位输出命令
说 明:设置DO 开关量的复位状态。
命令格式:$AA6XXXX
应答格式:! AA (cr) 命令有效。
? AA (cr) 命令无效或非法操作。
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
6 表示设置DO 复位状态命令。
XXXX 代表DO 开关量复位状态。4 个数,排列顺序为DI3~DI0, 值为 0: 输出三极管复位后
断开;值为 1:输出三极管复位后导通
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误,模块不响应。
应用举例: 用户命令(字符格式) $0160011
模块应答(字符格式): !01 (cr)
说 明:置DO3 和DO2 的复位状态为输出三极管断开,DO1 和DO0 的复位状态为输出三极管导通。
12、设置AO 模拟量输出命令
说 明:设置AO 模拟量输出值。
命令格式:$AA7XXXX
应答格式:! AA (cr) 命令有效。
? AA (cr) 命令无效或非法操作。
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
7 表示设置AO 模拟量输出命令。
XXXX 代表AO 模拟量输出值。4 个数,范围0000~4800,代表电压0~4.8V
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误,模块不响应。
应用举例: 用户命令(字符格式) $0172000
模块应答(字符格式): !01 (cr)
说 明:设置AO 模拟量输出值为2V。
13、设置AO 模拟量复位输出命令
说 明:设置AO 模拟量复位输出值。
命令格式:$AA8XXXX
应答格式:! AA (cr) 命令有效。
? AA (cr) 命令无效或非法操作。
参数说明:$ 分界符。
AA 模块地址,取值范围 00~FF(十六进制)。
8 表示设置AO 模拟量复位输出命令。
XXXX 代表AO 模拟量复位输出值。4 个数,范围0000~4800,代表电压0~4.8V
(cr) 结束符,上位机回车键,十六进制为0DH。
其他说明:假如格式错误或通讯错误,模块不响应。
应用举例: 用户命令(字符格式) $0181000
模块应答(字符格式): !01 (cr)
说 明:设置AO 模拟量复位输出值为1V。
14、设置以上字符命令设置的所有参数恢复出厂设置。
说 明:设置模块用以上字符命令设置的参数恢复为出厂设置,完成后模块自动重启。
命令格式:$AA900(cr) 设置参数恢复出厂设置。
参数说明:AA 模块地址,取值范围 00~FF(十六进制)。出厂地址为01,转换成十六进制为每个字符的ASCII
码。如地址01换成十六进制为30H和31H。
(cr) 结束符,上位机回车键,十六进制为0DH。
应答格式:! AA(cr) 表示设置成功,模块会自动重启。
应用举例: 用户命令(字符格式) $01900
模块应答(字符格式) ! 01(cr)
说 明:参数恢复出厂设置。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
输入范围和数据格式:
WJ30 模块使用了3 种数据格式: 00:工程单位(Engineering Units) 01:满刻度的百分比(% of FSR)
10:16 进制的补码(Twos complement)
输入范围 数据格式 正满量程 零 负满量程 显示的分辨率
工程单位 +1.0000 ±0.0000 -1.0000 0.1uA
满刻度的百分比 +100.00 ±000.00 -100.00 0.01%
A1:0-1mA
16 进制的补码 7FFF 000000 8000 1LSB
工程单位 +10.000 ±00.000 -10.000 1uA
满刻度的百分比 +100.00 ±000.00 -100.00 0.01%
A2:0-10mA
16 进制的补码 7FFF 000000 8000 1LSB
工程单位 +20.000 ±00.000 -20.000 1uA
满刻度的百分比 +100.00 ±000.00 -100.00 0.01%
A3:0-20mA
A4:4-20mA
16 进制的补码 7FFF 000000 8000 1LSB
工程单位 +5.0000 ±0.0000 -5.0000 100uV
满刻度的百分比 +100.00 ±000.00 -100.00 0.01%
U1:0-5V
16 进制的补码 7FFF 000000 8000 1LSB
工程单位 +10.000 ±00.000 -10.000 1mV
满刻度的百分比 +100.00 ±000.00 -100.00 0.01U2:0-10V %
16 进制的补码 7FFF 000000 8000 1LSB
工程单位 +100.00 ±000.00 -100.00 0.01%
满刻度的百分比 +100.00 ±000.00 -100.00 0.01%
A8:用户自定义
U8:用户自定义
16 进制的补码 7FFF 000000 8000 1LSB
表4 输入范围和数据格式
应用举例:
1、输入范围为A4: 4~20mA,输入为4 mA 时:
用户命令 #010(cr)
工程单位 模块应答 >+04.000(cr)
满刻度的百分比 模块应答 >+020.00(cr)
16 进制的补码 模块应答 >1999(cr)
2、输入范围为U1: 0~5V,输入为3V 时:
用户命令 #010(cr)
工程单位 模块应答 >+3.0000(cr)
满刻度的百分比 模块应答 >+060.00(cr)
16 进制的补码 模块应答 >4CCC(cr)
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
Modbus RTU 通讯协议:
模块的出厂初始设置,如下所示:
Modbus 地址为01
波特率9600 bps
数据格式:10 位,1 位起始位,8 位数据位,1 位停止位,无校验。
让模块进入缺省状态的方法:
WJ30模块边上都有一个INIT的开关,在模块的侧面位置。将INIT开关拨到INIT位置,再接通电源,此时模
块进入缺省状态。在这个状态时,模块暂时恢复为默认的状态:地址为01,波特率为9600。在不确定某个模块的
具体配置时,用户可以查询地址和波特率的寄存器40201-40202,得到模块的实际地址和波特率,也可以跟据需
要修改地址和波特率。
注: 正常使用时请将INIT 开关拨到NORMAL 位置。
支持Modbus RTU通讯协议功能码01(读单个线圈)、功能码05(写单个线圈)、功能码03(读保持寄存器)
和功能码06(写单个寄存器),命令格式按照标准Modbus RTU通讯协议。
Modbus软件测试示例:
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
深圳市维君瑞科技有限公司 第 17 页 共 22 页 www.wayjun.cn
WJ30 的寄存器地址说明
支持功能码01 和05 的寄存器如下:
地址0X(PLC) 地址(PC,DCS) 数据内容 属性 数据说明
00031 0030 输入的开关量 只读
00032 0031 输入的开关量 只读
00033 0032 输入的开关量 只读
00034 0033 输入的开关量 只读
开关量输入通道0~3 的电平状
态,1 表示高电平, 0 表示低电
平。
00041 0040 输出的开关量 读/写
00042 0041 输出的开关量 读/写
00043 0042 输出的开关量 读/写
00044 0043 输出的开关量 读/写
整数,通道0~3 的输出状态,1
表示三极管导通, 0 表示三极管
断开。
00045 0044 开关量上电输出 读/写
00046 0045 开关量上电输出 读/写
00047 0046 开关量上电输出 读/写
00048 0047 开关量上电输出 读/写
整数,通道0~3 的上电和复位输
出状态。
支持功能码03 和06 的寄存器如下:
地址4X(PLC) 地址(PC,DCS) 数据内容 属性 数据说明
40001 0000 输入的模拟量 只读
40002 0001 输入的模拟量 只读
40003 0002 输入的模拟量 只读
40004 0003 输入的模拟量 只读
40005 0004 输入的模拟量 只读
40006 0005 输入的模拟量 只读
40007 0006 输入的模拟量 只读
40008 0007 输入的模拟量 只读
整数,通道0~7 数据, 0x0000-0x7FFF
40021 0020 4-20mA 专用 只读
40022 0021 4-20mA 专用 只读
40023 0022 4-20mA 专用 只读
40024 0023 4-20mA 专用 只读
40025 0024 4-20mA 专用 只读
40026 0025 4-20mA 专用 只读
40027 0026 4-20mA 专用 只读
40028 0027 4-20mA 专用 只读
整数,通道0~7 数据,
4mA=0x0000,20mA=0x7FFF
40031 0030 输入的开关量 只读
40032 0031 输入的开关量 只读
40033 0032 输入的开关量 只读
40034 0033 输入的开关量 只读
整数,开关量输入通道0~3 的电平状态,
1 表示高电平, 0 表示低电平。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
地址4X(PLC) 地址(PC,DCS) 数据内容 属性 数据说明
40041 0040 输出的开关量 读/写
40042 0041 输出的开关量 读/写
40043 0042 输出的开关量 读/写
40044 0043 输出的开关量 读/写
整数,通道0~3 的输出状态,1 表示三
极管导通, 0 表示三极管断开。
40045 0044 开关量上电输出 读/写
40046 0045 开关量上电输出 读/写
40047 0046 开关量上电输出 读/写
40048 0047 开关量上电输出 读/写
整数,通道0~3 的上电和复位输出状态。
40051 0050 模拟量输出 读/写 整数,0 ~ 4800 表示0 ~ 4.8VDC
40052 0051 模拟量上电输出 读/写 整数,上电和复位输出的电压值
40061 0060 输入的模拟量 只读
40062 0061 输入的模拟量 只读
40063 0062 输入的模拟量 只读
40064 0063 输入的模拟量 只读
40065 0064 输入的模拟量 只读
40066 0065 输入的模拟量 只读
40067 0066 输入的模拟量 只读
40068 0067 输入的模拟量 只读
整数, 通道0~7 数据, 量程由
40161~40168 寄存器定义
40081 ~ 40088 0080 ~ 0087 自定义4-20mA 只读 整数, 通道0~7 数据, 量程由
40181~40188 寄存器定义。
数据小于4mA 时显示为0,数据为20mA
时显示为设定值。中间按比例显示。
40101 0100 通道0 校准 读/写
40102 0101 通道1 校准 读/写
40103 0102 通道2 校准 读/写
40104 0103 通道3 校准 读/写
40105 0104 通道4 校准 读/写
40106 0105 通道5 校准 读/写
40107 0106 通道6 校准 读/写
40108 0107 通道7 校准 读/写
产品出厂时已经校准,用户无需校准即
可直接使用,如果确实需要重新校准,
请查看校准章节,按步骤执行。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
地址4X(PLC) 地址(PC,DCS) 数据内容 属性 数据说明
40160 0159 通道0 ~ 7 量程 写 整数,0x0001-0x7FFF,如果所有通道的
量程是一样的,可以设置此寄存器,设
置完成后会一次性修改40161 ~ 40168
寄存器为当前寄存器同样的值。
40161 0160 通道0 量程 读/写
40162 0161 通道1 量程 读/写
40163 0162 通道2 量程 读/写
40164 0163 通道3 量程 读/写
40165 0164 通道4 量程 读/写
40166 0165 通道5 量程 读/写
40167 0166 通道6 量程 读/写
40168 0167 通道7 量程 读/写
整数, 0x0001-0x7FFF , 修改后
40061~40068 寄存器的数据按这个量程
换算
40180 0179 自定义4-20mA
通道0 ~ 7 量程
写 整数,0x0001-0x7FFF,如果所有通道的
量程是一样的,可以设置此寄存器,设
置完成后会一次性修改40181 ~ 40187
寄存器为当前寄存器同样的值。
40181 ~ 40188 0180 ~ 0187 自定义4-20mA
通道0 ~ 7 量程
读/写 整数, 0x0001-0x7FFF , 修改后
40081~40088 寄存器的数据按这个量程
换算
40200 0199 参数恢复出厂设
置
读/写 设置为FF00,则模块所有寄存器的参数
恢复为出厂设置,完成后模块自动重启
40201 0200 模块地址 读/写 整数,重启后生效,范围0x0000-0x00FF
40202 0201 波特率 读/写 整数,重启后生效,范围0x0004-0x000A
0x0004 = 2400 bps,0x0005 = 4800 bps
0x0006 = 9600 bps,0x0007 = 19200 bps
0x0008 = 38400 bps,0x0009 = 57600 bps
0x000A = 115200bps
40204 0203 转换速率 读/写 整数,范围0x0000-0x0009,
出厂默认为2,修改后请重新校准模块。
0x0000 = 2.5 SPS,0x0001 = 5 SPS,
0x0002 = 10 SPS, 0x0003 = 20 SPS,
0x0004 = 40 SPS, 0x0005 = 80 SPS,
0x0006 = 160 SPS,0x0007 = 320 SPS,
0x0008 = 500 SPS,0x0009 = 1000 SPS
40211 0210 模块名称 只读 高位:0x00 低位:0x30
40221 0220 通道状态 读/写 高位:0x00 低位:通道状态 (0xFF)
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
通讯举例1:假如模块地址为01,以16 进制发送:010300000001840A ,即可取得寄存器40001 的数据。
01 03 00 00 00 01 84 0A
模块地址 读保持寄存器 寄存器地址高位 寄存器地址低位 寄存器数量高位 寄存器数量低位 CRC 校验低位 CRC 校验高位
假如模块回复:010302199973BE 即读到的数据为0x1999,假如量程为A4:4-20mA 或者A3:0-20mA,
换算0x1999*20mA/0x7FFF= 4mA。即表明现在输入的电流为4mA。
01 03 02 19 99 73 BE
模块地址 读保持寄存器 数据的字节数 数据高位 数据低位 CRC 校验低位 CRC 校验高位
通讯举例2:量程为A4: 4-20mA 时,也可以读取4-20mA 专用寄存器的数据,寄存器地址40021~40022,4mA
对应0x0000,20mA 对应0x7FFF。举例如下
假如模块地址为01,以16 进制发送:010300140001C401 ,即可取得寄存器40021 的数据。
01 03 00 14 00 01 C4 01
模块地址 读保持寄存器 寄存器地址高位 寄存器地址低位 寄存器数量高位 寄存器数量低位 CRC 校验低位 CRC 校验高位
假如模块回复:010302199973BE 即读到的数据为0x1999,量程为4-20mA,换算0x1999*16mA/0x7FFF= 3.2mA,
再加上零点的4mA,即表明现在输入的电流为7.2mA。
01 03 02 19 99 73 BE
模块地址 读保持寄存器 数据的字节数 数据高位 数据低位 CRC 校验低位 CRC 校验高位
校准模块:
产品出厂时已经校准,用户无需校准即可直接使用。
使用过程中,你也可以运用产品的校准功能来重新校准模块。在校准时,模块需要输入合适的信号,不同的
输入范围需要不同的输入信号。
为了提高校准精度,建议使用以下设备来校准:
1、一个输出稳定,噪声很低的直流电压/电流信号源
2、一个5位半或更高精度的电压/电流测量仪表监测输入信号的准确性
校准过程
1. 按照模块的输入范围在需要校准的通道接上对应的输入信号。
其中WJ30模块零点在输入0时校准,满度在输入满度的100%时校准。例如4-20mA输入时,校准零点时
输入0mA,校准满度时输入20mA.。0-5V输入时,校准零点时输入0V,校准满度时输入5V。
2. 给WJ30模块需要校准的通道输入零点信号,通常为0mA或0V。
3. 待信号稳定后,Modbus协议修改寄存器40101(通道0)为0xFF00,模块就会进行零点校准。(校准其他
通道请修改对应的通道寄存器数据为0xFF00)。
4. 给WJ30模块需要校准的通道输入满度的100%的电流或电压信号。
5. 待信号稳定后,Modbus协议修改寄存器40101(通道0)为0xFFFF,模块就会进行满度校准。(校准其他
通道请修改对应的通道寄存器数据为0xFFFF)。
6. 校准完成
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30
外形尺寸:(单位:mm)
可以安装在标准DIN35 导轨上
注意事项:
1、使用前根据装箱单,以及产品标签,仔细核对和确认产品数量、型号和规格。
2、使用时必须按所选产品型号对应的接线参考图,正确连接信号输入、输出和电源线,检查无误后再接通电源
和信号。
3、当用表笔直接测量信号时,请将端子旋紧。
4、使用环境应无导电尘埃和破坏绝缘、金属的腐蚀性气体存在。
5、集中安装时,安装间距≥10mm。
6、产品出厂时已调校好,请勿随意调校。确需现场调校时,请与我公司联系。
7、产品为一体化结构,不可拆卸,同时应避免碰撞和跌落。本产品质保2 年,在此期间,本公司免费维修或更
换。人为损坏或者涂改和撕下产品上的任何标贴的概不退换。
8、产品内部未设置防雷击电路,当产品的输入、输出馈线暴露于室外恶劣气候环境之中时,请注意采取防雷措
施。
9、产品规格更新时恕不另行通知。
8AI,4DI,4DO混合信号转RS-485/232,MODBUS数据采集模块 WJ30