远程IO设备采用标准的Modbus RTU协议,可容易配置到组态画面中
设备串口出厂参数如下:
通信模式:RS485;可通过主板跳线更改为RS232通信模式。
485地址:1;另:设备同时接受地址为0的指令。此方式便于当忘记设备地址时对设备进行
操作,包括参数的设定,或者端口数据的访问。
波特率:9600bps;可通过软件或指令修改,范围为:1200、2400、4800、9600、19200。
校验位:N;
数据位:8;
停止位:1;
CRC值的计算可通过配套光盘内的CRC软件计算。
以下以设备485地址为1,举例:
1)读设备所有寄存器内容:0001至0016,共22个,每个寄存器内容占2个字节,
上位主机发送:01、 03、 00、 01、 00、 16 、95 、C4
从机设备返回:01、03 、2C、 (44字节数据) 、CRCL 、CRCH
2)读485地址(03读指令)
上位主机发送:01、 03 、00 、01、 00、 01、 D5 、CA
从机设备返回:01 、03、 02、 00 、01、 79、 84(地址为1)
3)设485地址(06写指令)
上位主机发送:00 、06 、00、 01 、00 、01 、18、 1B(设置地址为1)
从机设备返回:01、 06 、00 、01、 00、 01 、19 、CA
4)读波特率(03读指令)
上位主机发送:01、 03、 00、 02、 00 、01 、25、 CA
从机设备返回:01 、03、 02、 00 、03、 F8 、45(波特率为03:9600)
5)设波特率(06写指令)
上位主机发送:01、 06、 00、 02、 00、 02、 A9、 CB(波特率设为4800)
从机设备返回:设备串口波特率立即改变,因此返回数据无意义。
6)读所有DO状态(03读指令)
上位主机发送:01 、03 、00 、03 、00 、01 、74、 0A
从机设备返回:01、 03、 02、 00、 00、 B8、 44(所有DO为0时)
7)读所有DI状态(03读指令)
上位主机发送:01、 03、 00、 04、 00、 01、 C5、 CB
从机设备返回:01 、03、 02、 00、 00、 B8、 44(所有DI为0时)
8)第1路继电器合闸(06写指令)
上位主机发送:01 、06 、00 、05 、00 、01 、58 、0B
从机设备返回:01 、06、 00、 05、 00、 01、 58、 0B
9)第1路继电器分闸(06写指令)
上位主机发送:01 、06 、00 、05 、00 、00 、99 、CB
从机设备返回:01 、06 、00 、05 、00、 00、 99、 CB
10)第2路继电器合闸(06写指令)
上位主机发送:01 、06 、00 、06 、00 、01 、A8 、0B
从机设备返回:01、 06、 00、 06、 00、 01、 A8、 0B
11)第2路继电器分闸(06写指令)
上位主机发送:01 、06 、00 、06 、00 、00 、69、 CB
从机设备返回:01 、06 、00 、06 、00 、00 、69 、CB
12)第3路继电器合闸(06写指令)
上位主机发送:01 、06 、00 、07 、00 、01 、F9 、CB
从机设备返回:01 、06、 00、 07、 00、 01、 F9、 CB
13)第3路继电分闸(06写指令)
上位主机发送:01 、06 、00 、07 、00 、00 、38 、0B
从机设备返回:01 、06、 00、 07、 00、 00、 38、 0B
14)第4路继电器合闸(06写指令)
上位主机发送:01、 06、 00、 08 、00、 01、 C9、 C8
从机设备返回:01 、06 、00 、08 、00 、01 、C9 、C8
15)第4路继电器分闸(06写指令)
上位主机发送:01 、06、 00、 08、 00、 00、 08 、08
从机设备返回:01 、06 、00 、08 、00 、00 、08 、08
16)第5路继电器合闸(06写指令)
上位主机发送:01、 06、 00、 09、 00、 01、 98、 08
从机设备返回:01 、06 、00 、09 、00 、01 、98 、08
17)第5路继电器分闸(06写指令)
上位主机发送:01 、06、 00、 09、 00、 00、 59、 C8
从机设备返回:01 、06 、00 、09 、00 、00 、59 、C8
18)第6路继电器合闸(06写指令)
上位主机发送:01、 06、 00、 0A、 00、 01、 68、 08
从机设备返回:01 、06 、00 、0A 、00 、01 、68 、08
19)第6路继电器分闸(06写指令)
上位主机发送:01 、06 、00 、0A 、00、 00、 A9、 C8
从机设备返回:01 、06 、00 、0A 、00 、00 、A9、 C8
20)读第1路DI状态(03读指令)
上位主机发送:01 、03 、00、 0B、 00 、01 、F5 、C8
从机设备返回:01 、03 、02 、00 、00 、B8 、44(输入为0时)
01 、03 、02 、00 、01 、79 、84(输入为1时)
21)读第2路DI状态(03读指令)
上位主机发送:01、 03、 00、 0C、00、 01、 44、 09
从机设备返回:01 、03 、02 、00 、00 、B8、 44(输入为0时)
01 、03 、02 、00 、01 、79 、84(输入为1时)
22)读第3路DI状态(03读指令)
上位主机发送:01、 03、 00、 0D 、00 、01 、15 、C9
从机设备返回:01 、03 、02 、00 、00、 B8、 44(输入为0时)
01 、03 、02 、00 、01 、79 、84(输入为1时)
23)读第4路DI状态(03读指令)
上位主机发送:01 、03 、00 、0E 、00 、01 、E5 、C9
从机设备返回:01、 03、 02、 00、 00、 B8、 44(输入为0时)
01 、03 、02 、00 、01 、79 、84(输入为1时)
24)读第1路DI计数值(03读指令)
上位主机发送:01、 03、 00、 0F、00 、02 、F4 、08
从机设备返回:01 、03 、04 、4字节数据 、CRCL 、CRCH(4字节-32位整数)
25)写第1路DI计数值(06写指令)
上位主机发送:01、 06、 00、 10、 00 、0A、 08、 08(设置计数器为10)
从机设备返回:01 、06 、00 、10、 00 、0A 、08、 08
26)读第2路DI计数值(03读指令)
上位主机发送:01 、03 、00 、11 、00 、02、 94、 0E
从机设备返回:01、 03、 04、 00、 00、 00、 00、 FA、 33
27)写第2路DI计数值(06写指令)
上位主机发送:01 、06 、00 、12 、00 、0A 、A9 、C8(设置计数器为10)
从机设备返回:01 、06 、00 、12 、00 、0A 、A9 、C8
28)读第3路DI计数值(03读指令)
上位主机发送:01、 03、 00、 13、 00、 02、 35、 CE
从机设备返回:01、 03、 04、 00、 00、 00、 00、 FA 、33
29)写第3路DI计数值(06写指令)
上位主机发送:01 、06 、00 、14 、00 、0A 、49 、C9(设置计数器为10)
从机设备返回:01、 06 、00 、14、 00、0A、49、 C9
30)读第4路DI计数值(03读指令)
上位主机发送:01 、03 、00 、15 、00 、02 、D5 、CF
从机设备返回:01 、03 、04 、00 、00 、00 、00 、FA 、33
31)写第4路DI计数值(06写指令)
上位主机发送:01、 06、 00、 16、 00、 0A、 E8、 09(设置计数器为10)
从机设备返回:01 、06 、00 、16 、00 、0A 、E8、 09
32)读第1路DO状态(03读指令)
上位主机发送:01 、03 、00 、05 、00、 01、 94、 0B
从机设备返回:01 、03、 02、 00、 00、 B8、 44(输出为0时)
01 、03 、02 、00、 01、79、 84(输出为1时)
33)读第2路DO状态(03读指令)
上位主机发送:01、 03、 00、 06、 00、 01、 64、 0B
从机设备返回:01、 03、 02、 00、 00、 B8、 44(输出为0时)
01 、03 、02、 00、 01 、79 、84(输出为1时)
34)读第3路DO状态(03读指令)
上位主机发送:01、 03、 00、 07、 00、 01、 35、 CB
从机设备返回:01 、03 、02 、00 、00 、B8 、44(输出为0时)
01 、03 、02 、00 、01 、79 、84(输出为1时)
35)读第4路DO状态(03读指令)
上位主机发送:01、 03 、00、 08、 00、 01、 05、 C8
从机设备返回:01、 03、 02、 00、 00、 B8、 44(输出为0时)
01 、03、 02、 00 、01 、79 、84(输出为1时)
36)读第5路DO状态(03读指令)
上位主机发送:01 、03 、00 、09 、00 、01 、54 、08
从机设备返回:01、 03、 02、 00、 00、 B8 、44(输出为0时)
01 、03 、02 、00 、01 、79 、84(输出为1时)
37)读第6路DO状态(03读指令)
上位主机发送:01 、03、 00、 0A、00 、01、 A4、 08
从机设备返回:01 、03 、02 、00 、00 、B8 、44(输出为0时)
01 、03 、02 、00 、01、79、 84(输出为1时)
如忘记设备地址,可使用0地址进行访问,以完成上述功能。如忘记波特率,则可在1200/2400或4800/9600/19200之间轮选。校验位固定为N,数据位固定为8,停止位固定为1。CRC值,可使用光盘内CRC软件计算。您也可以通过光盘内设置软件的人机界面对设备进行设定。
以下为使用0地址进行设备通信的示例,使用0地址,设备应不在组网状态下进行,否则所有组网设备均对0地址的指令做出响应,示例如下:
1)读设备所有寄存器内容:0001至0016,共22个,每寄存器内容占2个字节,含义见章节3(设备寄存器说明)。
上位主机发送:00 、03、 00、 01、 00、 16、 94、 15
从机设备返回:01、 03、 2C (44字节数据) CRCL 、CRCH
(从机响应0地址,并以自身实际地址返回数据)
2)设定485地址为01
上位主机发送:00 、06、 00 、01、 00、 01 、18、 1B
从机设备返回:01、06、 00、 01 、00、 01、 19 、CA
3)设定485地址为02
上位主机发送:00、 06、 00、 01、 00 、02 、58 、1A
从机设备返回:02、 06、 00 、01、 00 、02、 59 、F8
4)设定485地址为03
上位主机发送:00、 06 、00 、01、 00、 03 、99 、DA
从机设备返回:03、 06、 00、 01、 00、 03、 99、 E9
5)设定485地址为04
上位主机发送:00、 06、 00、 01、 00、 04 、D8 、18
从机设备返回:04、 06、 00、 01、 00、 04、 D9、 9C
6)设定485地址为05
上位主机发送:00、 06、 00、 01、 00、 05、 19、 D8
从机设备返回:05 、06、 00、 01、 00、 05、 19、 8D
7)设定485地址为06
上位主机发送:00、 06、 00、 01、 00、 06、 59、 D9
从机设备返回:06、 06、 00、 01、 00、 06、 59、 BF
8)设定波特率为1200
上位主机发送:00、 06、 00 、02 、00 、00 、29、 DB
从机设备返回:因设备波特率立即改变,返回数据无意义
9)设定波特率为2400
上位主机发送:00 、06 、00 、02 、00 、01 、E8 、1B
从机设备返回:因设备波特率立即改变,返回数据无意义
10)设定波特率为4800
上位主机发送:00 、06 、00、 02、 00、 02、 A8、 1A
从机设备返回:因设备波特率立即改变,返回数据无意义
11)设定波特率为9600
上位主机发送:00 、06 、00 、02 、00 、03 、69 、DA
从机设备返回:因设备波特率立即改变,返回数据无意义
12)设定波特率为19200
上位主机发送:00 、06 、00 、02 、00 、04 、28 、18
从机设备返回:因设备波特率立即改变,返回数据无意义
0地址,同样可以对设备进行DI、DO状态的读写,具体参照设备地址为1的示例,CRC值可通过光盘内的CRC小工具计算。
1.通信协议格式
远程IO设备实现Modbus通信时,均作为从机,遵循Modbus通信过程,采用了MODBUS-RTU协议的命令子集,使用读寄存器命令(03)和单寄存器设置命令(06)。每消息的开头和结尾至少有3.5个字节时间的间隔。
注:03命令用于主机读取远程IO设备的采集数据或端口状态;
06命令用于设置设备参数或远程控制IO设备继电器动作;
功能码03(读指令)利用Modbus通信协议的03功能码,读取设备的数值。
主机请求数据格式:从机地址、功能码、起始地址、数据个数及CRC码
主机发送 | 字节数 | 信息内容 | 备注 |
从机地址 | 1 | xx | 向地址为xx的从机要数据 |
功能码 | 1 | 03 | 读取寄存器 |
寄存器起始地址Rn | 2 | NN Rn | 起始地址=NNRn NN为00-FF的任意数值 |
数据长度Ln | 2 | 00 XX | 读取XX个数据,每数据2个字节 |
CRC码 | 2 | CRCL、CRCH | 由主机计算得到的CRC码,低位在前、高位在后。 |
例如: 从机地址为01,读取设备寄存器地址=0000的数值(1个数值)。
01 | 03 | 00 | 00 | 00 | 01 | 84 | 0A |
从机响应数据格式:从机地址、功能码、字节数、数据区及CRC码
从机发送 | 字节数 | 信息内容 | 备注 |
从机地址 | 1 | xx | 从机地址 |
功能码 | 1 | 03 | 读取寄存器 |
数据长度 | 1 | 00 XX | 读取XX个字节(共2倍数据个数) |
寄存器0高字节 | 1 | DATA0H | 寄存器0数据,高位在前,低位在后。 |
寄存器0低字节 | 1 | DATA0L | |
寄存器n高字节 | 1 | DATAnH | 寄存器n数据,高位在前,低位在后。 |
寄存器n低字节 | 1 | DATAnL | |
CRC码 | 2 | CRCL、CRCH | 由从机计算得到的CRC码,低位在前,高位在后。 |
寄存器数据为二个字节,高位在前。CRC码都是二个字节,低位在前。
例如: 从机地址为01返回:
01 03 02 DATA0H DATA0L CRCL CRCH
功能码06(写指令)利用Modbus通信协议的06功能码,设置设备的一个寄存器的数值。
信息帧格式:
①主机请求数据格式:从机地址、功能码、寄存器地址、设置的数据及CRC码
主机发送 | 字节数 | 信息内容 | 备注 |
从机地址 | 1 | ADDxx | 向地址为XX的从机预置数据 |
功能码 | 1 | 06 | 预置单个寄存器 |
寄存器地址 | 2 | 00-Rn | 需要预置的寄存器 |
数据值高位 | 1 | DATAH | 需要预置数据 |
数据值低位 | 1 | DATAL | 需要预置数据 |
CRC码 | 2 | CRCL、CRCH | 由主机计算得到的CRC码,低位在前,高位在后。 |
2.寄存器
寄存器地址 (16进制) | 功能 (每寄存器数值16bit,即2字节) | 存取属性 读功能码:03 写功能码:06 |
0001 | 485地址 | 读写 |
0002 | 串口波特率 | 读写 |
0000:1200;0001:2400;0002:4800;0003:9600;0004:19200 | |
0003 | 所有DO输出状态,返回值1-16bit,按位表示第x路输出状态,所在位 | 只读 |
为0:继电器常态(开路),所在位为1:继电器闭合(合路) | |
注:当前仅有前6个bit有效。 | |
0004 | 所有DI输入状态,返回值1-16bit,按位表示第x路输入状态, | 只读 |
所在位为0:无输入,所在位为1:有输入 | |
注:当前仅有前4个bit有效。 | |
0005 | 第1路继电器状态 | 读写 |
0000:继电器常态(开路) | |
0001:继电器闭合(合路) | |
0006 | 第2路继电器状态 | 读写 |
0000:继电器常态(开路) | |
0001:继电器闭合(合路) | |
0007 | 第3路继电器状态 | 读写 |
0000:继电器常态(开路) | |
0001:继电器闭合(合路) | |
0008 | 第4路继电器状态 | 读写 |
0000:继电器常态(开路) | |
0001:继电器闭合(合路) | |
0009 | 第5路继电器状态 | 读写 |
0000:继电器常态(开路) | |
0001:继电器闭合(合路) | |
000A | 第6路继电器状态 | 读写 |
0000:继电器常态(开路) | |
0001:继电器闭合(合路) | |
000B | 读第1路DI输入状态 | 只读 |
0000:无输入(开路状态) | |
0001:有输入(合路状态) | |
000C | 第2路DI输入状态 | 只读 |
0000:无输入(开路状态) | |
0001:有输入(合路状态) | |
000D | 第3路DI输入状态 | 只读 |
0000:无输入(开路状态) | |
0001:有输入(合路状态) | |
000E | 第4路DI输入状态 | 只读 |
0000:无输入(开路状态) | |
0001:有输入(合路状态) | |
000F | 第1路输入计数值-高16位 | 读写 |
0010 | 第1路输入计数值-低16位 | 读写 |
0011 | 第2路输入计数值-高16位 | 读写 |
0012 | 第2路输入计数值-低16位 | 读写 |
0013 | 第3路输入计数值-高16位 | 读写 |
0014 | 第3路输入计数值-低16位 | 读写 |
0015 | 第4路输入计数值-高16位 | 读写 |
0016 | 第4路输入计数值-低16位 | 读写 |
双防区输入模块,八防区输入模块,单防区总线扩充模块,是如何配置的?
我理解的是配单时什么时间选单防区、什么时间选双防区、什么时间选八防区模块吧。如果是这样的话,那是要根据实际现场需求,比如说总线主机,用在周界系统,那一般选择单...
一般情况都是要计算的
内存至少4个G.C盘至少弄个50G
远程IO模块分类
RIO-8100-4DI4DO 4路开关量输入/4路计数器,4路继电器输出
RIO-8100-4DI 4路开关量输入/4路计数器RIO-8100-4DO 4路继电器输出
RIO-8100-6DO 6路继电器输出
RIO-8100-2DI5DO 2路开关量输入/2路计数器,5路继电器输出
RIO-8100系列远程采集与控制模块,采用 RS232、RS485通信模式与上位进行数据交互,通信协议为工业标准的Modbus RTU协议,ModBus协议定义了一个控制器能认识使用的消息结构,而不管它们是通过何种网络进行通信的,它制定了消息域的格局和内容的公共格式,描述了一个控制器请求访问其它设备的过程,回应来自其它设备的请求,以及侦测并记录错误信息。通过此协议,控制器相互之间、控制器经由网络和其它设备之间可以完成信息和数据的交换与传送,使各种不同的公司和厂家的可编程逻辑控制器(PLC)、RTU、SCADA系统、DCS或与兼容ModBus协议的第三方设备之间可以连成工业网络,构建各种复杂的监控系统,并利于系统的维护和扩展,这个通讯协议已广泛被国内外各行业作为系统集成的一种通用工业标准协议。
远程IO模块简介
可将系列内多个模块进行总线组网,使得IO点数得到灵活扩展。模块可以由远程命令进行控制。该模块采用工业级元器件,10-30VDC宽电压输入,能够在-30℃~60℃范围内正常工作,支持RS232、RS485通信模式,通信协议采用工业标准的Modbus RTU协议。
参数
供电电压: 10-30 VDC 支持反极性保护
静态功耗: ≤0.3W
开关量输入:无源节点,2500VDC光电隔离
继电器触点:1A@30VDC 0.5A@150V动作时长5ms
通信接口: RS485/RS232
波特率: 1200/2400或4800/9600/19200
校验位: N
数据位: 8
停止位: 1
通信协议: Modbus RTU
看门狗:内置、外置2路
工作温度:-30℃~60℃
工作湿度: 5%~90%RH,无凝露
设备尺寸:124mm x 73mm x 34mm
(长x宽x厚)
安装方式:导轨固定/螺钉固定
ERP系统 SD 模块配置文档 组织架构 描述 路径 字段 值 备注 销售组织的定义 企业结构-定义-销售和分 销-定义,复制,删除,检查 销售组织 1000 钱潮本部销售组织 2000 锻造中心销售组织 分销渠道的定义 企业结构-定义-销售和分 销-定义,复制,删除,检查 分销渠道 10 国内配套销售 20 国内维修销售 30 出口销售 40 宁波许昌半成品销售 50 虚拟销售 60 让售销售 70 外协买卖制销售 80 其他 销售办公室的定义 企业结构-定义-销售和分 销-维护销售办公室 1000 万向节配套业务处 1100 主机配套业务处 1200 产品保证部业务处 1500 产品保证部出口处 1600 供应链管理部 1800 滚子轴承部 1900 金工三部 2000 锻造公司销售办公室 销售组的定义 企业结构-定义-销售和分 A01 业务部 销-维护销售组 C01 陈忠其 C02
SD 模块配置手册 配置过程 主题 SD 配置 编号 SD-1 路径 1 IMG- 企业结构 -定义 -销售分销 -定义,复制,删除,检查销售组织 T-Code SPRO 内容 备注 一般都是复制,里面的详细信息复制过来不做变动。 路径 2 IMG- 企业结构 -定义 -销售分销 -定义,复制,删除,检查分销渠道 T-Code SPRO 内容 备注 目前三全就定义了一个公用分销渠道 路径 3 IMG- 企业结构 -定义 -销售分销 -维护销售办公室 T-Code SPRO 主题 SD 配置 编号 SD-1 内容 备注 目前仅一个公用的 ’三全销售办公室 ’ 路径 4 IMG- 企业结构 -定义 -销售分销 -维护销售组 T-Code SPRO 内容 备注 销售组字段数据对应于客户主数据上的业代岗位字段 路径 5 IMG- 企业结构 -分配 -销售分销 -给公司代码分配销售组织
基于总线冗余的防水型远程IO模块功能原理
如下图所示为总线冗余防水型远程IO模块的工作原理:
图2 IO模块原理
其工作原理介绍如下:
外部信号如按钮、开关、温度和压力等,经信号采集输入端子进入模块,经光电耦合器隔离,经多路复用器选择,进入CPU进行数据处理,并将处理数据存入相应寄存器,PLC控制主站通过现场总线读取模块IO寄存器的数据。
模块采用双路485通讯方式,可以保证在一条通讯线路出现故障时,另一条线路仍可正常通讯。通讯协议是工业领域广泛使用的ModBus RTU协议,这样模块就可以跟任何采用Modbus协议的工业设备进行对接,实现控制监测功能。该模块应用于监测控制系统,可以大大节约人力资源,提高工作效率,模块的一体化设计更加有利于系统的维护,可以被广泛应用于分布式远程控制系统。
该模块采用一体化设计,即电源、通讯和信号集为一体,防护等级为IP65,防水防尘,适合用于环境较为恶劣的工业自动化控制与信号采集系统。该设备体积小巧,是一种带有总线冗余的独立式总线设备。无论安装在侧面、水平面还是恶劣条件下,一体化设计均可提供最佳条件,实现轻松、灵活的安装。
基于总线冗余的防水型远程IO模块应用领域
该模块的应用可以为港口,电力,石油化工等行业的自动化系统集成提供多种解决方案;主要进行工业数据采集 和工业自动化控制等工作。
工业数据采集-分布式远程IO系统提高主动性和可靠性工业过程控制中通常会有传感器的IO信号,如温度,压力和液位等模拟量信号,或者位置,按钮和设备状态等数字量信号需要进行采集,而这些信号又相对比较分散,采用传统的采集方式,需要大量的布线,不仅提高了系统成本,给设备维护也带来了很大的困难。 采用分布式远程IO系统可节省硬件数量和投资,节省安装费用,节省维护开销,提高主动性和可靠性。
2. 工业自动化控制-系统更加可靠,搭建更加灵活
一体化的模块设计适用于机械和系统工程等工业自动化控制领域内的现场直接数字量输入和输出采集。总线冗余设计使得系统更加可靠,输入输出的多种组合使系统搭建变得更加灵活;IP65的防护等级使系统在恶劣环境下变得更加稳定。