Modbus通讯协议和TCP⼀UDP协议有什么区别?

2024年11月16日 11:27
有4个网友回答
网友(1):

Modbus通讯协议和TCP/UDP协议的区别:

1、Modbus协议是一种已广泛应用于当今工业控制领域的通用通讯协议。通过此协议,控制器相互之间、或控制器经由网络(如以太网)可以和其它设备之间进行通信。Modbus协议使用的是主从通讯技术,即由主设备主动查询和操作从设备。一般将主控设备方所使用的协议称为Modbus Master,从设备方使用的协议称为Modbus Slave。典型的主设备包括工控机和工业控制器等;典型的从设备如PLC可编程控制器等。Modbus通讯物理接口可以选用串口(包括RS232和RS485),也可以选择以太网口。

2、而Modbus TCP协议则是在RTU协议上加一个MBAP报文头,由于TCP是基于可靠连接的服务,RTU协议中的CRC校验码就不再需要,所以在Modbus TCP协议中是没有CRC校验码,用一句比较通俗的话说就是:Modbus TCP协议就是Modbus RTU协议在前面加上五个0以及一个6,然后去掉两个CRC校验码字节就OK.虽然这句话说得不是特别准确,但是也基本上把RTU与TCP之间的区别说得比较清楚了。

网友(2):

Modbus协议属于应用层(OSI模型第7层)协议,TCP/UDP协议属于传输层(OSI模型第4层)协议,两者层级不是并列关系。
打个比喻,Modbus协议就像公司里的总经理,TCP/UDP协议就像公司里的轿车、商务车。某天总经理要到机场去乘飞机,他可以选择:1)自己开轿车去,2)让司机开商务车送去,3)搭的士/公交车过去。若选择1),那就是总经理-轿车的关系,Modbus TCP协议就形同这种关系。若选择3),就形同另外的Modbus RTU/ASCII协议的关系。
如果一端用的是Modbus TCP协议,而另一端用TCP协议,这样只能说数据包可以到达另一端,但数据包并没有得到处理,所以通信的目标还没有完成。就像总经理虽到了机场,但他没有进行安检、验票、登机流程,乘飞机的目标就无法达成了。

网友(3):

这两个协议既有区别又有密切的联系。它们的相结合,不但实现了基于modbus/tcp/IP协议远程网络通讯,促进了modbus在其对应领域中的使用。

modbus协议主要应用于电气自动化和过程控制,一般采用RS-232或RS-485的通信接口。不足之处,就是其传输距离短、速度慢,导致应用受到局限。TCP/IP协议主要应用领域Internet或Intranet中,它的优势就是传输距离远、传输速度快,应用范围广泛。

Modbus通信模式有两种,有ASCII和RTU两种。虽然有两种通信模式,使用时只能选用其中—种,混合使用是不允许的。

TCP/IP协议

说白了,此协议就是物理网上的一个完整的网络协议。TCP的作用就是提供传输层服务,IP的作用就是提供网络层服务。TCP/IP协议的核心部分就是传输层协议(TCP/UDP)、网络层协议(IP)及物理接口层。

上面说到了modbus协议的两种模式

modbus-RTU(远程终端单元)和modbus-ASCII(美国标准信息交换代码),两种模式的如下所示。

1、进制:RTU是八位二进制,ASCII是十六进制。

2、字节位数:RTU是11位,ASCII是10位。

3、位信息:RTU一个起始位,八个数据位,先传送LSB,一个奇偶校验位,一个停止位,刚好满足RTU的字节位数11位。ASCIl一个起始位,七个数据位,先传送LSB,一个奇偶校验位,一个停止位,刚好满足ASCI的字节位数10位。

网友(4):

Modbus通讯协议 有 基于 串口连接的,如 232 485 422 连接

当然,也有 基于 TCP/IP 的

TCP/UDP协议 显然就是 基于 TCP/IP 的