Modbus通信中地址0x,1x,3x,4x,3x-D,4x-D,3x-bit,4x-bit 表示什么意思, MOD204 MODBUS RTU中的3X 、4X 、1X、...

作者&投稿:桓虞 2024-07-02
威伦MT6170iH MODBUS RTU 里面3X 4X 5X 6X 4X_32BIT什么意思

威伦MT6170iH使用EB8000软件,其MODBUS协议中0x,1x,3x,4x,5x,6x,还有4x_bit,3x_bit8 等,代表不同的设备类型数据区。这些设备类型在MODBUS协议中只支持特定的功能码,下面分别说明:

0x 是一个可读可写的线圈设备类型(类似于PLC的DO输出点)。读该设备类型的位状态时,功能码为01H,写位状态时功能码为05H。

1x 是一个只读的触点设备类型(类似于PLC的DI输入点)。读位状态时的功能码为02H。

3x 是一个只读的模拟量设备类型(类似于PLC的AI模拟量)。读其数据时的功能码为04H。

4x是一个可读可写的数据寄存器设备类型(类似于PLC的AO数据寄存器)。当读其数据时功能码是03H,当写入数据的时候功能码是10H。

5x 该设备类型与4x的设备类型属性是一样的。即发出读写的功能码完全一样。不同之处在于,当为双字时,譬如32_bit unsigned格式的数据,使用5x和4x两种设备类型分别读取数据时,高字和低字的位置是颠倒的。譬如,使用4x设备类型读到的数据是0x1234,那么使用5x设备类型读取的数据是0x3412。

6x 是一个可读可写的设备类型,读数据的时候发出的功能码也是03H,与4x不同之处在于写数据的时候,发出的功能码为06H,即写单个寄存器的数据。

3x_bit 该设备类型支持的功能码与3x设备类型完全一致,不同之处是,3x是读数据,而3x_bit是读数据中的某一个bit的状态。

4x_bit 该设备类型支持的功能码与4x设备类型完全一致,不同之处是,4x是读数据,而4x_bit是读数据中的某一个bit的状态。

0x、1x、 3x、4x其实各是一片数据区,是Modbus协议规定的地址范围,即:
线圈(DO)地址:00000~09999
触点(DI)地址:10000~19999
输入寄存器(AI)地址:30000~39999
输出寄存器(AO)地址:40000~49999
由于上述各类地址是唯一对应的,因此有些资料就以其第一个数字区分各类地址,即:0x代表线圈(DO)类地址,1x代表触点(DI)类地址、 3x代表输入寄存器(AI)类地址、4x代表输出寄存器(AO)类地址。
同理,各类地址的数据区的Modbus功能码也是规定好的,不能乱用。如要操作0x地址数据区,就只能用规定的功能码01/05,而不能用其他的功能码。
所以,从各类地址的前缀就能知道它的数据区及功能码,反之亦然。

上述这些地址称为Modbus数据区地址,它是5位十进制地址。但在实际编程中,由于前缀的区分作用,所以只需说明后4位数,而且需转换为4位十六进制地址。

在单片机中实现时,需要定义4个数据区对应上述各类地址(长度可以缩短,视单片机RAM大小)。处理Modbus事务时,根据数据祯中的功能吗,再对对应的数据区进行操作(置位、复位、读数或写入数据)。具体过程看Modbus事务流程图。

0x,输出(线圈)位寄存器
1x,输入(触点)位寄存器
3x,输入寄存器
4x,保持寄存器
3x-D,输入寄存器-双字
4x-D,保持寄存器-双字
3x-bit,输入寄存器-字位
4x-bit,保持寄存器-字位

40001,40002,40003.....等,采用4x
40006.00,40006.01,40006.02.....,采用4x-bit


你是否需要了解?

modbus rtu校验方法
答:错误校验,被加到报文的最高有效位。另外,在某些非ModBus 通信协议中也经常使用CRC16 作为校验手段,而且产生了一些 CRC16 的变种,他们是使用CRC16 多项式X↑16+X↑15+X↑2+1,单首次装入的16 位 寄存器为0000;使用CRC16 的反序X↑16+X↑14+X↑1+1,首次装入寄存器值为0000 或 FFFFH。

使用EMQ X Neuron 构建基于 Modbus 的 IIoT 应用
答:EMQ X Neuron 支持包括 Modbus、OPC 等在内的各类工业协议,可以基本满足大部分工业接入的需求,详细协议列表见下图。1.首先解压安装 EMQ X Neuron 软件包。2.在配置文件配置连接到 EMQ X Broker 的地址,配上用户名密码作为认证。neuron.conf 中修改 EMQ X Broker 服务端的 IP/ 端口,用户名/密码...

如何用VB实现和s7-200的Modbus串行通讯?
答:&02:将八进制的02转换成十六进制查表就可以明白了好了,这是PC发送给PLC的指令,那PLC得到指令后,会返回什么呢, STX4236353433323130ETX41---PLC返回数据 仔细解释一下,PLC密码为六位,所以返回数据中,我们只对中间的那数据感兴趣就行了,也就是”4236353433323130”PLC返回的十六进制的数据,所以要将...

那个谁,《伺服与运动控制》:Modbus校验中CRC和LRC是啥的个区别?_百度...
答:1、LRC校验 LRC域是一个包含一个8位二进制值的字节。LRC值由传输设备来计算并放到消息帧中,接收设备在接收消息的过程中计算LRC,并将它和接收到消息中LRC域中的值比较,如果两值不等,说明有错误。LRC校验比较简单,它在ASCII协议中使用,检测了消息域中除开始的冒号及结束的回车换行号外的内容。它...

请问modbus网关如何选择?
答:1:TCP客户端 2:TCP服务器 3:UDP客户端 4:UDP服务器 5:RTU_Master--TCP_Slaver 6:TCP_Master--RTU_Slaver 7:ASCII_Master--TCP_Slaver 8:TCP_Master--ASCII_Slaver 集modbus网关和串口服务器功能于一体,功能非常强大.可以适合各种组态软件,无需使用虚拟串口,就可以直接TCP/IP方式通信.关于...

C# MODBUS 端口被关闭
答:端口被关闭 你在发送指令前加多一个打开串口的指令 ,可能你没有打开串口

驿唐DTU如何与昆仑通态MCGS软件建立无线通信 详细�0�3_百度知...
答:串口通虚拟出串口与 MCGS连接下面具体介绍设备和软件的具体参数配置 驿唐科技 驿唐科技串口通方式- MD-309G的设置Step1 �6�1 下位机用modbus slave软件模拟一个modbus从站,设备地址为1,s输入寄存器,偏置为1(1x0001-3),波特率9600,8个数据位,无校验,一个停止位,无流控。&...

是不是西门子S7-200系列的PLC都能支持MODBUS通讯,包括第一代的CPU21...
答:是的,Modbus通讯功能是基于西门子PLC自由口通信功能的基础上实现的,通讯程序是自己编写的,第一代的PLC也支持自由口通信,所以也能实现Modbus通讯,但是需要自己编写通信程序,不可以直接调用Modbus库文件。S7-200 CPU22x系列的话,就可以直接调用库文件,省去了自己编写通信程序的麻烦。 追问 谢谢回复,还想请问 CPU22X系...

三菱PLC与Vijeo-Designer触摸屏如何通讯
答:(2)、在DP网络上配置PB-B-MODBUS模块,这里要给模块分配一个DP从站地址,并且把模块上的拨码开关拨成相应的数值。然后进入其中的参数配置页中,对串口通讯的参数进行相应的设置(此设置在Modbus端的通讯中起作用),同时设置Modbus 从站的站号。由于在Modbus端, PB-B-MODBUS模块作Modbus Slave,所以...

无线通信协议有哪些
答:但是在局域网中微软为了简化TCP/IP协议的设置,在NT中配置了一个动态主机配置协议(DHCP),它可客户端自动分配一个IP地址,避免了出错。TCP/IP通信协议当然也有“路由”功能,它的地址是分级的,不同于IPX/SPX协议,这样系统就很容易找到网上的用户,IPX/SPX协议用的是一种广播协议,它经常会出现广播...