16路开关量输入输出采集控制模块[重点]
1路RS232转TCP/IP、16DI、16DO
带导轨增强型32位开关量网络采集模块
目 录
第1章 概述 .......................................................................................... - 3 - 第2章 技术参数 .................................................................................. - 6 - 第3章 硬件说明 .................................................................................. - 7 -
3.1产品外观 ................................................................................... - 7 -
3.2 指示灯 ...................................................................................... - 7 -
3.3 引脚说明 .................................................................................. - 8 -
3.4 接线示意图 ............................................................................ - 11 - 第4章 软件说明 ................................................................................ - 12 -
4.1 虚拟串口管理程序 ................................................................ - 12 -
4.1.1 使用快速设置进行设置 .............................................. - 12 -
4.1.2 使用设置进行设置 ...................................................... - 15 -
4.1.3 使用批量设置进行通讯 .............................................. - 23 -
4.1.4 延时补偿 ...................................................................... - 23 -
4.2 C2000设置程序 .................................................................. - 24 -
4.2.1 使用快速设置进行设置 .............................................. - 25 -
4.2.2 使用设置进行设置 ...................................................... - 26 -
4.2.3 使用批量设置进行设置 .............................................. - 28 -
4.2.4 远程设置和远程查询状态 .......................................... - 28 - 4.3 IE浏览器设置(需知道转换器IP地址)........................... - 30 - 4.4测试程序 ................................................................................. - 33 -
4.3.1 C2000工作在“TCP Client”模式 .......................... - 34 -
4.3.2 C2000工作在“TCP Server”模式.......................... - 36 - 4.5串口测试程序 ........................................................................ - 40 - 第5章 MODBUS TCP协议介绍 ........................................................... - 41 - 5.1 通信协议 ............................................................................. - 41 -
5.1.1 功能码 .......................................................................... - 41 -
5.1.2 寄存器列表 .................................................................. - 43 -
5.1.3 错误代码表 ................................................................ - 46 - 5.2 协议应用范例 ........................................................................ - 46 -
5.2.1 读寄存器命令举例 ...................................................... - 46 -
5.2.2 写寄存器命令举例 ...................................................... - 48 - 第6章 装箱清单 ................................................................................ - 51 - 第7章 产品保修卡 ............................................................................ - 52 -
第1章 概述
C2000 M232-M是增强型金属外壳带导轨的RS232和开关量到TCP/IP的协议转换模块,它向上提供10M/100M自适应以太网接口,向下提供1个
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
RS232串行口和32个开关量接点。实现一路RS232到TCP/IP网络和TCP/IP网络到RS232的数据透明传输,同时可采集16路开关量输入(DI)与控制16路继电器开关量输出(DO),其中开关量输入状态(DI)可主动上传到上位机(调用动态库)或通过上位机使用MODBUS TCP协议查询而获取。
C2000 M232-M内部集成ARP、IP、ICMP、DHCP、HTTP、MODBUS TCP等协议。通信参数可通过软件设置,可使用动态IP或静态IP,使用时可通过软件进行设置。
特点:
?具有TCP Server、TCP Client、UDP、虚拟串口、点对点连接等操作模式;
?用户基于网络软件,不需要做任何修改就可以与C2000 M232-M通讯;
?通过安装我们免费提供的虚拟串口软件,用户基于串口的软件不需要做任何修改就可以与C2000 M232-M通讯;
?对于需要开发软件的用户,我们免费提供通讯动态库、设置动态库或OCX控件;
?通过设置软件或设置动态库进行参数设置;
?支持DNS域名解析功能;
?远程控制和采集开关量;
?开关量输入输出状态可通过本公司动态库、控件或使用标准MDOBUS TCP协议控制,方便开发或直接接入第三方软件使用;
?电源具有良好的过流过压、防反接保护功能;
?看门狗
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
,稳定性高;
?金属外壳,支持导轨安装。
a) 本产品有以下三种工作模式:
1(作为TCP服务器,转换器上电后在指定的TCP 端口等待数据服务器的连接请求,数据服务器在需要与转换器通讯的时候,向转换器的监听端口请求建立TCP 连接,连接建立后,数据服务器可以随时向转换器发送数据,转换器也可以随时将数据发送到数据服务器,在完成指定的通讯后,数据服务器可以主动要求断开连接,否则连接一直保持。
2(作为TCP客户端,转换器上电时会主动向服务器请求连接,直到TCP连接建立为止,并且连接一旦建立将一直保持,连接建立后,数据服务器可以随时向转换器发送数据,转换器也可以随时将数据发送到数据服务器。
3(UDP方式有两种:
当C2000 工作在“UDP normal”模式时,C2000会回应所有的IP地址和端口发过来的数据 ,并将返回的数据发送到最后一次发给它查询请求的IP地址和端口。
当C2000 工作在“UDP Appointed”模式时,它只接收指定的IP地址和端口发过来的数据,并将返回的数据发送给指定的IP地址和端口。
b) 应用软件可使用三种方式与转换器通讯:
1(通过本公司开发的虚拟串口管理程序,将网络数据重定向到虚拟串口,然后从虚拟串口读取数据;
2(用本公司开发的控件EDSockServer.ocx(或动态库EDSockServer.dll);
3(使用Socket进行通讯。
第2章 技术参数
CPU 32-bit ARM
系统 RAM 64KB
Flash 256KB
速率 10M/100Mbps LAN 接口 RJ45
串口 RS-232
串口 串口数量 1个
信号 RS-232:TXD,RXD,RTS,CTS,GND
效验 None , Even , Odd , MARK , SPACE
数据位 6、7、8
串口通信参数 停止位 1、2
流量控制 RTS/CTS,XON/XOFF,None
速率 300bps~115200bps
DI 16路干接点输入
DI有保护 过压小于60V ,过流小于100mA IO数字接口 DO 16路常开型继电器输出
DO容量 2A/30V DC,1A/125V AC
协议 ARP、IP、ICMP、TCP、UDP、DHCP、HTTP、MDOBUS TCP
操作模式 TCP Server、UDP、TCP Client、虚拟串口、点对点
连接
设置 C2000设置程序、Web浏览器、设置动态库 软件特点 提供软件 虚拟串口软件、C2000设置程序、串口调试工具、网
络设置程序、EDSockServer.OCX控件、
EDSockServer.DLL动态库、设置动态库以及VB、VC、
BC、Delphi的示例代码
驱动支持 Windows XP/2003/Vista/Windows 7/Windows 8/2008
电源规格 9~24VDC(推荐12VDC) 电源需求
工作电流 < 500mA(12VDC)
操作温度 -25?~85?
环境 储存温度 -60?~125?
湿度 5~95%RH,不凝露
尺寸 长*宽*高 185 mm*125mm*30mm
第3章 硬件说明 3.1产品外观
3.2 指示灯
POWER 电源指示灯
LINK 网络状态指示灯
RS232 RS232状态指示灯
DI1-DI16 16路数字量输入对应的状态指示灯
DO1-DO16 16路数字量输出对应的状态指示灯
3.3 引脚说明
电源接口
12V 电源正(推荐12V)
GND 电源负
PE 大地
网络接口
LAN RJ45以太网口
RS232接口
RS232 RS232口(DB9公头) DI输入接口
DI-1~DI-16 数字量信号输入端
GND 数字量信号输入公共端 DO输出接口
N.O1~N.O16 数字量信号输出端(常开) COM1~COM16 数字量信号输出公共端
RS232:标准RS-232 接口
1 空脚
2 接收数据 RXD
3 发送数据 TXD
4 空脚
5 信号地 GND
6 空脚
7 请求发送 RTS
8 清除发送 CTS
9 空脚
网线制作线序图:
说明:
1、C2000连交换机时,请使用直连网线;
2、C2000与电脑直连时,请使用交叉网线。
3.4 接线示意图
第4章 软件说明
如果用户的软件是串口通信,只需要使用到“虚拟串口管理程序”来设置;如果用户的软件是TCP/IP方式通信,可以使用 “C2000设置程序”或“IE浏览器”进行设置。
4.1 虚拟串口管理程序
本程序使用户更直观方便地管理C2000。可对C2000进行设置、数据转发和监视操作;打开程序主界面之后,选择“搜索C2000”,程序会自动搜索出当前网络中所有的C2000。M232-M搜索到的型号为E232。
4.1.1 使用快速设置进行设置
“快速设置”功能只对单个C2000有效。选中可设置的C2000,点击“快速设置”按钮,会自动弹出如下对话框,如下图:
快速设置
与服务器IP
地址在同一
网段中
点确定后,C2000被设为“TCP Client”工作模式,服务器IP为本机IP,端口号为8000,其他参数均为默认。
如果勾选“自动获得 IP地址”,那么此C2000所在网段当中的DHCP服务器将为其自动分配IP地址;否则,需要为其指定IP地址和子网掩码。
通过上面的操作对C2000设置好了参数,那么就需要选择一个或多个虚拟串口来通讯。这样用户基于串口通讯的软件就无需修改即可使用。它有两种选择方式:
?、所有C2000串口映射到一个虚拟串口上
打上? 选择需要的
COM口
?、可为每个C2000单独配置一个COM口,或为几个C2000配置一个COM口。
选择需要的COM口
选择好串口后,点击开始转发,如下图:
开始转发
前面设置的服务
器端口号是8000
转发成功
到此就完成了快速设置转发的过程,用户软件就可以运行操作了。您也可以选择“设
置”进行详细设置。
4.1.2 使用设置进行设置
在这里可以更改C2000的具体参数,比如名字、IP地址、子网掩码、网关、DNS、工作模式和串口参数等设置。具体如下图:
设置
可以填写设
备名字
下面介绍TCP Client工作模式的转发,步骤如下:
正确填写IP地址、子网
掩码和网关,如果服务器
需要使用域名,则需填写
正确的DNS服务器IP
若选择“自动获得IP”,C2000所在网段当中的DHCP服务器将会为其自动分配IP地址和掩码;否则,需要为其指定IP地址和掩码。网关即为C2000所在网络的网关的
IP地址。
选择TCP Client,
填写C2000端
口、服务器IP(域
名)和端口
选择工
作方式
工作方式:选择“TCP Client”。
C2000端口:与其他网络设备通讯时,C2000采用的TCP端口。注意:该端口不能为80。
服务器的IP:当设置为TCP Client方式时,与C2000通信的服务器IP地址。可通过“本机IP”来获得电脑的IP地址,并将它设置为服务器IP。
服务器端口:当设置为TCP Client方式时,与C2000通信的服务器所采用的TCP端口。
点击“高级设置”按钮,设置当前选中C2000串口的转发原则,一般情况下不需要修改。如下图所示:
一般情况下
不需要修改
点高级设置
字节间隔超时:C2000从串口收到字节后,在“字节间隔超时”过后,还没有从串口收到下一个字节,C2000将收到的数据发送到网络上,推荐修改范围为0~100ms。
最大帧长度: C2000从串口收到的数据量等于此长度时向网络发送这些数据,推荐值1000字节。
只要满足了(字节间隔超时)或(最大帧长度)其中的任何一个条件,C2000就会把数据发送到网络上去。
通过上面的操作对C2000设置好了参数,那么就需要选择一个或多个虚拟串口来通讯。这样用户基于串口通讯的软件就无需修改即可使用。它有两种选择方式:
?、所有C2000串口映射到一个虚拟串口上
选择需要打上?
的COM口
?、可为每个C2000单独配置一个COM口,或为几个C2000配置一个COM口。
选择需要的
COM口
选择好串口后,点击开始转发,如下图:
开始转发
前面设置的服务
器端口号是8000
转发正常
监听端口只有与服务器端口(在串口参数设置里面)匹配了才能正常转发,否则会失败。到此TCP Client模式的转发已经完成,开启用户软件,选择相应的串口就可以进行通讯了。
下面介绍说明TCP Server工作模式的转发,操作步骤如下:
正确填写IP
地址、子网掩
码和网关
若选择“自动获得IP”,C2000 所在网段当中的DHCP 服务器将会为其自动分配IP 地址和掩码;否则,需要为其指定IP 地址和掩码。但是在作为TCP server模式下,不建议通过DHCP server来获取网络参数,因为这样C2000获取到的IP地址将不方便查询。网关即为C2000 所在网段的网关的IP 地址。
选择TCP Server
方式和端口
工作方式:选择“TCP Server”。
C2000端口:与其他网络设备通讯时,C2000采用的TCP端口。注意:该端口不能为80。
点击“高级设置”按钮,设置当前选中C2000串口的转发原则,如下图所示:
一般情况下
不需要修改
点高级设置
字节间隔超时:C2000从串口收到字节后,在“字节间隔超时”过后,还没有从串口收到下一个字节,C2000将收到的数据发送到网络上,推荐修改范围为0~100ms。
最大帧长度: C2000从串口收到的数据量等于此长度时向网络发送这些数据,推荐值1000字节。
只要满足了(字节间隔超时)或(最大帧长度)其中的任何一个条件,C2000就会把数据发送到网络上去。
前面设置好了串口参数后,还需要建立C2000为服务器的通讯,步骤如下:
把C2000添
加为服务器
输入C2000
IP和端口
添加
确定
通过上面的操作对C2000设置好了参数,那么就需要选择一个或多个虚拟串口来通
讯。这样用户基于串口通讯的软件就无需修改即可使用。它有两种选择方式:
?、所有C2000串口映射到一个虚拟串口上 打上? 选择需要
的COM口
?、可为每个C2000单独配置一个COM口,或为几个C2000配置一个COM口。
选择需要的
COM口
选择好串口后,点击开始转发,如下图:
开始转发
前面设置的服务
器端口号是8000
转发成功
到此TCP Server模式的转发已经完成,开启用户软件,选择相应的串口就可以进行通讯了。
4.1.3 使用批量设置进行通讯
设置菜单栏中的“批量设置”功能只有在选中两个或两个以上相同型号但MAC地址不同的C2000时才有效。可通过按住“Ctrl”键单击选中要批量设置的C2000,选择设置菜单中的批量设置即可对多个C2000同时设置。 4.1.4 延时补偿
由于使用C2000放在不同的网络时会有网络延时,通过它可以将这些延时补偿回来。仅在Windows2000及以后版本有效,界面如下图:
建议:仅当用户应用程序出现“读超时”时,才需要考虑使用延时补偿。
推荐使用补偿方式1,延时补偿时间建议设置为0—1000毫秒。当在一些大型网络、公网或网络状态不好的情况时,可以适当将延时补偿设置的长一些(最大为2000ms)。
4.2 C2000设置程序
C2000设置程序是用设置动态库开发的。首先搜索到要设置的C2000设备,双击进
入设置。
4.2.1 使用快速设置进行设置
只对单个C2000有效。
快速设置
与服务器IP地址
在同一网段中
如果勾选“自动获得 IP地址”,那么此C2000所在网段当中的DHCP服务器将为其自动分配IP地址;否则,需要人为指定IP地址。C2000被默认设置为“TCP Client”方式,服务器IP默认为本机IP,其他参数也均为默认,到此已经完成了设置。
4.2.2 使用设置进行设置
可以填写
设备名字
设置
下面介绍TCP Client工作模式,操作步骤如下:
正确填写IP地
址、子网掩码
和网关
在“C2000网络参数”栏,可以使用“自动获得IP地址”,也可以对其指定IP地址、
子网掩码和DNS服务器,网关即为C2000所在网络的网关的IP地址。
选择Tcp Client,
填写C2000端口、
服务器IP和端口
如果未使用EDSockServer
通讯的则取消?
根据用户设备
选择串口参数
工作方式:选择“TCP Client”。
C2000端口:与其他网络设备通讯时,C2000采用的TCP端口。注意:该端口不能为80。
服务器的IP:当设置为TCP Client方式时,与C2000通信的服务器IP地址。可通过“本机IP”来获得电脑的IP地址,并将它设置为服务器IP。
服务器端口:当设置为TCP Client方式时,与C2000通信的服务器所采用的TCP端口。
使用“虚拟串口”或“EDSockServer控件”:当使用虚拟串口通信或者使用EDSockServer控件或者动态库时,需要选中。
串口参数:要与设备的串口参数一致。
点击“高级设置”按钮,设置当前选中C2000串口的转发原则,一般情况下不需要修改。如下图所示:
一般情况下
不需要修改
点高级设置
字节间隔超时:C2000从串口收到字节后,在“字节间隔超时”过后,还没有从串口收到下一个字节,C2000将收到的数据发送到网络上,推荐修改范围为0~100ms。
最大帧长度:C2000从串口收到的数据量等于此长度时向网络发送这些数据,推荐值1000字节。
只要满足了(字节间隔超时)或(最大帧长度)其中的任何一个条件,C2000就会把数据发送到网络上去。
如果想用TCP Server工作方式,只需要把TCP Client改成TCP Server即可,其它设置步骤基本一致。
4.2.3 使用批量设置进行设置
设置菜单栏中的“批量设置”功能只有在选中两个或两个以上相同型号但MAC地址不同的C2000时才有效。可通过按住“Ctrl”键单击选中要批量设置的C2000,选择设置菜单中的批量设置即可对多个C2000同时设置。
4.2.4 远程设置和远程查询状态
使用C2000设置程序或虚拟串口管理程序进行远程设置和远程状态查询,方法都相同。
1、在“设置”菜单中点击“远程设置”:
2、弹出下面的对话框,请输入要设置的C2000的IP(端口是指远程设置的端口号,默认为TCP的21678端口):
3、点击确定后弹出设置页面(该页面与本地设置时的设置页面完全相同):
4、远程查询状态的方法与上相同
4.3 IE浏览器设置(需知道转换器IP地址) 操作方法:在地址栏中输入转换器的IP地址(假如C2000的IP为10.1.1.124)
输入IP地
址,回车
在以上界面中输入密码,当无密码时,点 “提交”。
“本地MAC地址”:为转换器的MAC地址,它可以唯一的标识一个转换器,在使
用虚拟串口时可能会用到该参数。
“动态获取IP地址(DHCP):是 否”:选中该项表示C2000通过DHCP协议自动获得IP地址;不选中该项时表示C2000使用静态IP地址,你必须为模块指定IP地址和掩码。
“IP地址”:在此项中输入C2000所使用的IP地址;当选中 “ 通过DHCP 自动获得IP地址” 时,该项被忽略。
“子网掩码”:在此项中输入C2000所使用的IP地址对应的掩码;当选中 “ 通过DHCP 自动获得IP地址” 时,该项被忽略。
“网关”:在此项中输入C2000所在网络的网关的IP地址。
“DNS服务器”:用于广域网域名解析用的。
“选择串口”:COM1
“串口工作方式”: RS232
“SOCKET类型”:在此项中可以指定该C2000的工作方式。C2000共有三种工作方式:“TCP客户端” 、“TCP服务器” 和“UDP”。
? 当C2000工作在“TCP客户端”方式时,转换器不断向数据服务器请求连接,直到TCP连接建立,并且连接一旦建立将一直保持,连接建立后,数据服务器可以随时向转换器发送数据,转换器也可以随时将数据发送到数据服务器;
? 当C2000转换器工作在“TCP服务器”方式时,转换器上电后在指定的TCP端口等待数据服务器的连接请求,数据服务器在需要与转换器通讯的时候,向转换器的监听端口请求建立TCP连接,连接建立后,数据服务器可以随时向转换器发送数据,转换器也可以随时将数据发送到数据服务器,在完成指定的通讯后,数据服务器可以主动要求断开连接,否则连接一直保持。
? C2000工作在“UDP”模式。
“本地端口”:在此项中输入C2000的端口,转换器在此TCP端口上监听数据服务器的连接请求。注意:该端口不能为80。
“对端IP”:在此项中输入数据服务器的IP地址。当C2000工作在“TCP客户端”
方式时,转换器主动向这个IP地址请求建立TCP连接。
“对端 端口”:在此项中输入数据服务器的监听端口,数据服务器在这个TCP端口上等待C2000的连接请求。
“使用虚拟串口或控件:是 否”:转换器与数据服务器上用户程序的通讯通过虚拟串口或控件EDSockServer.ocx进行;选中否时,转换器与数据服务器上用户程序的通讯使用Socket进行。
“是否使用对端域名:是 否”:选中该项时,可以在下面输入域名。
“串口波特率”:在该项中选择C2000串口的波特率。
“串口数据位”:在该项中选择C2000串口的数据位。
“串口校验方式”:在该项中选择C2000串口的校验方式。
“串口停止位”:在该项中选择C2000串口的停止位。
“串口流控方式”:用于软件或硬件流控。
“间隔超时”:C2000从串口收到字节后,在“字节间隔超时”过后,还没有从串口收到下一个字节,C2000将收到的数据发送到网络上,推荐修改范围为0~100ms。
“最大帧长度”: C2000从串口收到此数量的数据时向网络发送这些数据,推荐值1000字节。
只要满足了(字节间隔超时)或(最大帧长度)其中的任何一个条件,C2000就会把数据发送到网络上去。
在前面已经设置好了参数后,点击“提交”完成参数保存,但是转换器并没有应用刚才的设置,所以还必须点击“重启C2000”,新的配置才能生效,如下图:
4.4测试程序
网络测试程序是用通讯动态库开发的。
首先,打开网络测试程序(“开始”?“程序”?“C2000 Software”?“网络测试程序”),则弹出下图:
4.3.1 C2000工作在“TCP Client”模式
如果您在“C2000设置程序”中设置C2000为“TCP Client”模式,那么此时在“网络测试程序”界面中应点击“开始监听”按钮,在“IP地址”栏中输入您电脑的IP地址。
点击“确定”按钮,网络测试程序设置完成。弹出如下窗口:
可向下拖动
滚动条
向下拖动右侧滚动条,可以看到开关量测试界面
输入指示灯
区
开关量控制
区
当有数字量输入时,该输入所在的DI通道对应的输入指示灯变亮,上排从左到右分别为DI-1,DI-16通道。
下方输出控制按钮,上排从左到右对应DO-1,DO-8,下排从左到右对应DO-9,DO-16通道。绿色为断开,红色为闭合。
4.3.2 C2000工作在“TCP Server”模式
如果您在“C2000设置程序”中设置C2000为“TCP Server”模式,那么此时在“网络测试程序”界面中应点击“请求连接”按钮(弹出“本地IP及端口号”窗口),在“IP地址”栏中输入您C2000的IP地址。如下图:
当有数字量输入时,该输入所在的DI通道对应的输入指示灯变亮,上排从左到右分别为DI-1,DI-16通道。
下方输出控制按钮,上排从左到右对应DO-1,DO-8,下排从左到右对应DO-9,DO-16通道。绿色为断开,红色为闭合。
UDP工作方式
连接类型:选用“UDP”,程序自动切换到UDP视图。
开始监听:则本机处于监听状态,弹出“本地IP及端口号”窗口,设置本地的IP和用来监听的端口号,如图:
当连接类型为“UDP”时,此时只能接收数据不能发送数据,发送数据的系列控件处于禁用状态,如图:
在连接类型为“UDP”时,如果需要发送数据则需要进一步的建立连接。执行“请
求连接”:弹出“对方IP及端口”窗口,设置要连接对方的IP及端口,如下图:
设置正确,建立连接成功,此时则可以发送数据了,如下图:
此工作方式下,连接类型为“UDP”时,如果没有监听就直接连接,那么监听的端口默认的为任意端口。
此视图有如下主要功能:
, 可发送十六进制和ASCII码。
, 可接收十六进制和ASCII码。
4.5串口测试程序
串口测试工具是用来发送和接收COM口的数据。打开电脑串口,设置串口参数就能收发数据了。
第5章 MODBUS TCP协议介绍
5.1 通信协议
M232做服务器,在502端口进行监听,可维持3个连接。
5.1.1 功能码
功能码0x03:读从设备寄存器数据 主站报文:
事务处理标识 2字节
协议标识 2字节(0标识MODBUS协议)
后面字节数 2字节
单元标识,即从设备地址 1字节,内容为0-0xff
功能码 1字节,内容为3
起始寄存器地址 2字节,高字节在前
寄存器个数 2字节,高字节在前(1,0x7D)
从站应答报文:
操作正常时
事务处理标识,从主站拷贝 2字节
协议标识 2字节(0标识MODBUS协议)
后面字节数 2字节
单元标识,即从设备地址 1字节,内容为0-0xff
功能码 1字节,内容为3
数据长度 1字节,内容为寄存器个数×2,高字节在前
数据 寄存器个数×2字节,每个数据高字节在前
操作异常时
事务处理标识,从主站拷贝 2字节
协议标识 2字节(0标识MODBUS协议)
后面字节数 2字节
单元标识,即从设备地址 1字节,内容为0-0xff
功能码 1字节,内容为0x80 + 0x03
数据 错误代码,见表8.3错误代码表
功能码0x10:写从设备寄存器数据
主站报文:
事务处理标识,从主站拷贝 2字节
协议标识 2字节(0标识MODBUS协议)
后面字节数 2字节
单元标识,即从设备地址 1字节,内容为0-0xff
功能码 1字节,内容为0x10
起始寄存器地址 2字节,高字节在前
寄存器个数 2字节,高字节在前
数据长度 1字节,内容为寄存器个数×2,高字节在前
数据 寄存器个数×2字节,每个数据高字节在前
从站应答报文:
操作正常时
事务处理标识,从主站拷贝 2字节
协议标识 2字节(0标识MODBUS协议)
后面字节数 2字节
单元标识,即从设备地址 1字节,内容为0-0xff
功能码 1字节,内容为0x10
起始寄存器地址 2字节,高字节在前
寄存器个数 2字节,高字节在前
操作异常时
事务处理标识,从主站拷贝 2字节
协议标识 2字节(0标识MODBUS协议)
后面字节数 2字节
单元标识,即从设备地址 1字节,内容为0-0xff
功能码 1字节,内容为0x90
数据 错误代码,见如下错误代码表
5.1.2 寄存器列表
寄存器地址 寄存器个数 寄存器描述 状态 数据范围
0 3 MAC地址 只读 如:00 09 f6 01 02 03
3 1 模块型号 只读 按模块型号配置,
M232为0x0241
4 1 设备版本号 只读 例如 0x0100表示1.0
5 1 自动或指定读写 0 指定,1 自动
IP
6 2 IP地址 读写 高位在前,如:10.1.1.1
8 2 子网掩码 读写 高位在前,如:10.1.1.1
10 2 网关地址 读写 高位在前,如:10.1.1.1 12 10 模块名字 读写
寄存器地址 寄存器个数 寄存器内容 状态 数据范围 0x0400 1 DO0的状态 读写 0x0000-0x0001 0x0401 1 DO1的状态 读写 0x0000-0x0001 0x0402 1 DO2的状态 读写 0x0000-0x0001 0x0403 1 DO3的状态 读写 0x0000-0x0001 0x0404 1 DO4的状态 读写 0x0000-0x0001 0x0405 1 DO5的状态 读写 0x0000-0x0001 0x0406 1 DO6的状态 读写 0x0000-0x0001 0x0407 1 DO7的状态 读写 0x0000-0x0001 0x0408 1 DO8的状态 读写 0x0000-0x0001 0x0409 1 DO9的状态 读写 0x0000-0x0001 0x040A 1 DO10的状态 读写 0x0000-0x0001 0x040B 1 DO11的状态 读写 0x0000-0x0001 0x040C 1 DO12的状态 读写 0x0000-0x0001 0x040D 1 DO13的状态 读写 0x0000-0x0001 0x040E 1 DO14的状态 读写 0x0000-0x0001 0x040F 1 DO15的状态 读写 0x0000-0x0001 0x0410 1 上电时DO0的状读写 0x0000-0x0001
态
0x0411 1 上电时DO1的状读写 0x0000-0x0001
态
0x0412 1 上电时DO2的状读写 0x0000-0x0001
态
0x0413 1 上电时DO3的状读写 0x0000-0x0001
态
0x0414 1 上电时DO4的状读写 0x0000-0x0001
态
0x0415 1 上电时DO5的状读写 0x0000-0x0001
态
0x0416 1 上电时DO6的状读写 0x0000-0x0001
态
0x0417 1 上电时DO7的状读写 0x0000-0x0001
态
0x0418 1 上电时DO8的状读写 0x0000-0x0001
态
0x0419 1 上电时DO9的状读写 0x0000-0x0001
态
0x041A 1 上电时DO10的读写 0x0000-0x0001
状态
0x041B 1 上电时DO11的读写 0x0000-0x0001
状态
0x041C 1 上电时DO12的读写 0x0000-0x0001
状态
0x041D 1 上电时DO13的读写 0x0000-0x0001
状态
0x041E 1 上电时DO14的读写 0x0000-0x0001
状态
0x041F 1 上电时DO15的读写 0x0000-0x0001
状态
0x0420 1 DI0的值 只读 0x0000-0x0001 0x0421 1 DI1的值 只读 0x0000-0x0001 0x0422 1 DI2的值 只读 0x0000-0x0001 0x0423 1 DI3的值 只读 0x0000-0x0001 0x0424 1 DI4的值 只读 0x0000-0x0001 0x0425 1 DI5的值 只读 0x0000-0x0001 0x0426 1 DI6的值 只读 0x0000-0x0001 0x0427 1 DI7的值 只读 0x0000-0x0001 0x0428 1 DI8的值 只读 0x0000-0x0001 0x0429 1 DI9的值 只读 0x0000-0x0001 0x042A 1 DI10的值 只读 0x0000-0x0001 0x042B 1 DI11的值 只读 0x0000-0x0001 0x042C 1 DI12的值 只读 0x0000-0x0001 0x042D 1 DI13的值 只读 0x0000-0x0001 0x042E 1 DI14的值 只读 0x0000-0x0001 0x042F 1 DI15的值 只读 0x0000-0x0001
5.1.3 错误代码表
错误代码 异常描述
0x80 寄存器地址错误(无效的寄存器地址)
0x81 企图写只读寄存器
0x82 写寄存器数据错误
0x83 企图读只写寄存器
5.2 协议应用范例
M232有16DI 和16DO,支持MDOBUS TCP协议,在发送控制命令前需要和M232
,建立连接建立SOCKET连接,在连接中M232作为TCP 服务器端,监听端口为502后由上位机发送指令进行DI采集和DO控制,全部命令要以16进制的格式发送。
5.2.1 读寄存器命令举例
下面以一次读取16路DI为例说明命令的编写,DI0的寄存器地址为0x0420(见寄存器列表),命令如下:
0x000100000006010304200010
命令解析:
0001 0000 0006 01 03 0420 0010 事务处理标识 协议标识 后面字节数 单元标识 功能码 起始寄存器地址 寄存器个数
2字节,固定为2字节,高字节2字节,高字节1字节,固定为1字节,内容为2字节,高字节2字节,高字节0, 表示MODBUS在前, 指紧跟其在前 01 03 在前 在前(1,0x7D) 协议 后的数据长度
说明:
事务处理标识:事务处理标识符用于将请求与未来响应之间建立联系。因此,对TCP连接来说,在同一时刻,这个标识符必须是唯一的。有几种使用此标识符的方式: 例如:可以作为一个带有计数器的简单“TCP顺序号”,在每一个请求时增加计数器; 也可以用作智能索引或指针,来识别事务处理的内容,以便记忆当前的远端服务器和未处理的请求。在响应中,MODBUS服务器复制请求的事务处理标识符。 协议标识:用于系统内的多路复用。通过值0识别MODBUS协议,服务器从接收的请求中重新复制。
后面字节数: 指本条命令紧跟其后的数据长度(字节数)。 单元标识:为了系统内路由,使用这个域。专门用于通过以太网TCP-IP网络和MODBUS串行链路之间的网关对MODBUS或MODBUS+串行链路从站的通信。单元标识符取代MODBUS串行链路上通常使用的MODBUS从地址域。这个单元标识符用于设备的通信,这些设备使用单个IP 地址支持多个独立MODBUS终端单元,例如:网桥、路由器和网关。 MODBUS客户机在请求中设置这个域,在响应中服务器必须利用相同的值返回这个域,对本公司产品固定为值为1。
功能码:本公司使用的都是保持寄存器,因此读取时功能码为固定值03。
起始寄存器地址:即要读取的连续寄存器的第一个寄存器地址,(地址见寄存器列表)
寄存器个数:是指要连续读取的寄存器个数,可以是一次读取单个寄存器,也可以一次性读取连续若干个寄存器地址。
从站应答命令举例
M232收到主站命令
0x000100000006010304200010
假设DI0-DI7已经闭合,DI8-DI15断开,M232应答(即返回值)的数据为: 0x0001000000230103200000 0000 0000 0000 0000 0000 0000 0000 0001 0001 0001 0001
0001 0001 0001 0001应答数据解析:
0001 0000 0023 01 03 20 0000 0000 0000 0000
0000 0000 0000 0000
0001 0001 0001 0001
0001 0001 0001 0001 事务处理标协议标识 后面字节数 单元标识 功能码 数据长度 数据 识
2字节,高字2字节,固定
节在前,此部为0,表示2字节,高字1字节,内容1字节,内容1字节,高字寄存器个数×2字节,每个数据高字分与采集命MODBUS协节在前 为0-0xff 为 3 节在前 节在前
令的相同 议
说明:
(1)事务处理标识,可以看到M281-4返回时,这部分与主站命令的是完全一样的。
(2)协议标识这里固定为0x0000,表示是Modbus协议,与主站命令相同
(3)后面字节数, 指本条命令紧跟其后的数据长度(字节数)
(4)单元标识,即从设备地址,这里固定为0x01,与主站命令相同
(5)功能码,读取AI是使用的是0x03,固定值,与主站命令相同
(6)数据长度,指本条命令中紧跟其后返回的数据总长度,例如这里的0x20代表后面有32个字节的内容
(7)数据,是指主站命令读取的各寄存器返回值。
读DO状态同读取DI状态一样,只需更换寄存器地址即可。
5.2.2 写寄存器命令举例
控制DO时,可以往寄存器里面写0或者是写1,写0断开写1闭合。
将DO0闭合,命令如下:
0001 0000 0009 01 10 04 00 0001 02 0000
事务处理标起始寄存数据长协议标识 后面字节数 单元标识 功能码 寄存器个数 数据 识 器地址 度 2字节,高字2字节,固定1字2字节,高字1字节, 寄存器个数×2字节在前,此部为0,表示2字节,高字1字节,内容2字节,高节,内节在前(1,高字节节,每个数据高字节分与采集命MODBUS协节在前 为0-0xff 字节在前 容为 3 0x7D) 在前 在前 令的相同 议
0x000100000009011004000001020000
若设备正常执行命令,返回数据如下:
0x000100000006011004000001
0001 0000 0006 01 10 0400 0000
事务处理标起始寄存协议标识 后面字节数 单元标识 功能码 寄存器个数 识 器地址
2字节,高字2字节,固定1字2字节,高字节在前,此部为0,表示2字节,高字1字节,内容2字节,高节,内节在前(1,分与采集命MODBUS协节在前 为0-0xff 字节在前 容为 3 0x7D) 令的相同 议
将DO0断开,命令如下:
0x000100000009011004000001020000 0001 0000 0009 01 10 0400 0001 02 0001 事务处理标起始寄存数据长协议标识 后面字节数 单元标识 功能码 寄存器个数 数据 识 器地址 度 2字节,高字2字节,固定1字2字节,高字1字节, 寄存器个数×2字节在前,此部为0,表示2字节,高字1字节,内容2字节,高节,内节在前(1,高字节节,每个数据高字节分与采集命MODBUS协节在前 为0-0xff 字节在前 容为 3 0x7D) 在前 在前 令的相同 议
若设备正常执行命令,返回数据如下:
0x000100000006011004000001
0001 0000 0006 01 10 0400 0001
事务处理标起始寄存协议标识 后面字节数 单元标识 功能码 寄存器个数 识 器地址
2字节,高字2字节,固定2字节,高字1字节在前,此部2字节,高为0,表示2字节,高字1字节,内容节,内节在前(1,分与采集命节在前 字节在前 MODBUS协为0-0xff 0x7D) 容为 3 令的相同 议
第6章 装箱清单 序号 名称 数量 单位 备注 1 主设备M232-M 1 台 2 安装导轨 1 套 3 电源端子 1 个 4 合格证 1 张
第7章 产品保修卡
尊敬的用户:
感谢您购买和使用本公司的产品~
您所购买的产品在正常使用产品的情况下,凡是由原材料或生产过程中造成的质量问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
,自购买之日期提供免费换新与保修服务(具体参见产品保修、换新
表格
关于规范使用各类表格的通知入职表格免费下载关于主播时间做一个表格详细英语字母大小写表格下载简历表格模板下载
)。凡是由于用户不按本产品
说明书
房屋状态说明书下载罗氏说明书下载焊机说明书下载罗氏说明书下载GGD说明书下载
要求,自行安装、拆卸或不正确使用而造成的损坏本公司提供维修,但收取适当维修费。
保修条例:
, 自购买产品之日起,在正常使用的情况下(由公司授权技术人员判定),对发生
故障的产品进行免费维修或换新(具体时间参考保修、换新表格)。
, 在保修期内曾经由我公司以外的维修人员修理或更改过的产品、或安装不当、
输入电压不正确、使用不当、意外事件或自然灾害等原因引起的故障的产品不
属于换新、保修范围。
, 在接受保修服务前,需要客户出示保修卡或购买发票来证明产品购买日期。无
法确认日期的将不予保修。
, 经我公司换新或维修后的产品有90天保修期。
, 所有换新、保修或维修的产品,用户承担运费和运送时的风险。
, 超过保修期或不符合保修条件的产品,本公司提供收费维修。
, 和本保修条款发生冲突的其他口头承诺等,参照本保修条款执行。
, 我公司在产品制造、销售及使用上所担负的责任,均不应超过产品的原始成本。
本公司不承担任何连带责任。
, 本条款的解释权归本公司所拥有。
保修、换新表格
带外壳产品 不带外壳产品 电源
换新 3个月内换新 1个月内换新
保修 5年内保修 1年内保修 一年内保修