请教,Modbus可以用在CAN总线上吗?

[复制链接]
 楼主| myic200610 发表于 2013-7-23 23:17 | 显示全部楼层 |阅读模式
请教,Modbus协议可以用在CAN总线上吗?
谢谢!
chunyang 发表于 2013-7-23 23:49 | 显示全部楼层
ModBus跟物理层完全无关,当然可以用在CAN或者任何通讯链路上。
gx_huang 发表于 2013-7-24 08:19 | 显示全部楼层
不对吧,MODBUS是串口485方式,有固定的协议。
CAN的物理层和串口完全不一样。
当然,可以利用CAN的传输导线,反正都是差分的2根线。
xyz769 发表于 2013-7-24 08:43 | 显示全部楼层
MODBUS与物理层无关,可以用在任何线路上。

三楼对MODBUS理解不深,如果照三楼的说法,MODBUS是不是不能用在TCP/IP链路上了?
gx_huang 发表于 2013-7-25 08:48 | 显示全部楼层
LS,我是对MODBUS理解不深,只做过基于串口的MODBUS产品。
你有见过MODBUS用在TCP/IP上的产品吗?

MODBUS本身有协议,有数据校验,有帧开始结束判断。
还没有见过有产品把MODBUS用于CAN和TCP/IP的。
可能我孤陋寡闻。
joyme 发表于 2013-7-25 10:25 | 显示全部楼层
可以用是一回事,用不用和好不好用是另外一回事
 楼主| myic200610 发表于 2013-7-25 18:31 | 显示全部楼层
谢谢楼上给位大侠的指点和辨析,我也明白了,我的理解如下:

modbus是协议层;
can有can的协议层,有canopen、devicenet等,一般不用modbus协议。
xyz769 发表于 2013-7-29 10:32 | 显示全部楼层
gx_huang 发表于 2013-7-25 08:48
LS,我是对MODBUS理解不深,只做过基于串口的MODBUS产品。
你有见过MODBUS用在TCP/IP上的产品吗?

CAN上的确少,但TCP/IP上的产品大把的。。
ccxlslr 发表于 2013-7-29 12:21 | 显示全部楼层
gx_huang 发表于 2013-7-25 08:48
LS,我是对MODBUS理解不深,只做过基于串口的MODBUS产品。
你有见过MODBUS用在TCP/IP上的产品吗?

有一种专门MODBUS TCP与一般的modbus有一点点区别。但也有人通过串口转网口模块,透传的。
modbus真的与物理层无关。无论你用光纤,以太网,can只要数据传到了就可以了。

你做过产品,我想应该知道,无论通过什么方式,只要数据传到就可以了。当然对一些时延什么的,有特殊要求除外。

CAN能传数据,就可以通过将modbus数据话在上面传输。收到后解析回应。
gx_huang 发表于 2013-7-29 12:37 | 显示全部楼层
ccxlslr 发表于 2013-7-29 12:21
有一种专门MODBUS TCP与一般的modbus有一点点区别。但也有人通过串口转网口模块,透传的。
modbus真的与 ...

没有必要搞这么复杂的解释。
常规的MODBUS指的就是利用RS232/485之类接口的串口通信协议。
你可以把MODBUS的某些协议扩展使用在其它网络连接里,但那只是利用了MODBUS的概念而已。

就好比AT命令,刚开始的定义就是串口通信的协议。
当然,你也可以用并口传输这些指令。
ccxlslr 发表于 2013-7-29 12:49 | 显示全部楼层
本帖最后由 ccxlslr 于 2013-7-29 12:50 编辑
gx_huang 发表于 2013-7-29 12:37
没有必要搞这么复杂的解释。
常规的MODBUS指的就是利用RS232/485之类接口的串口通信协议。
你可以把MODBU ...


协议要分层理解,用RS232 RS485只是习惯做法,或历史原因。modbus只定义了,协议格式,没有定义过,要用RS485。

就算是你说的扩展,只要实现在modbus就是modbus协议。

这是原话,也说了modbus是应用层协议。
MODBUS is an application layer messaging protocol for client/server communication between
devices connected on different types of buses or networks.
It is currently implemented using:
TCP/IP over Ethernet. See MODBUS Messaging Implementation Guide V1.0a.
Asynchronous serial transmission over a variety of media (wire : EIA/TIA-232-E, EIA-
422, EIA/TIA-485-A; fiber, radio, etc.)
MODBUS PLUS, a high speed token passing network.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| myic200610 发表于 2013-8-2 20:29 | 显示全部楼层
谢谢指点!
Azelus 发表于 2015-12-24 16:57 | 显示全部楼层
@ccxlslr,理解的很到位!
chunyang 发表于 2015-12-24 17:19 | 显示全部楼层
gx_huang 发表于 2013-7-25 08:48
LS,我是对MODBUS理解不深,只做过基于串口的MODBUS产品。
你有见过MODBUS用在TCP/IP上的产品吗?

注意,能不能用和是否有必要用是两个截然不同的概念。ModBus当然可以运行在TCP/IP链路上,当作应用层协议即可,只是一般情况下没有这个必要,但某些场合还是需要的,比如把运行ModBus的设备通过互联网与远端同类协议设备互连。
对ModBus的理解程度与前述结论无关,关键在于理解协议的意义和层次。
chunyang 发表于 2015-12-24 17:22 | 显示全部楼层
myic200610 发表于 2013-7-25 18:31
谢谢楼上给位大侠的指点和辨析,我也明白了,我的理解如下:

modbus是协议层;

应当说,任何数据传输链路都有其常用的协议,“常用”不等于“必须”。
chinahuangyong 发表于 2017-2-20 19:47 | 显示全部楼层
基于TCP的Modbus很多的啊,甚至有的PLC也在TCP上实现Modbus协议
stackdog 发表于 2017-2-21 08:19 | 显示全部楼层
物理层和通讯协议,我一直傻傻分不清楚
cctv19881023 发表于 2017-2-21 09:52 | 显示全部楼层
MODBUS只是一种数据解析方式,可以用在任何通信方式上,但是CAN总线有自行的校验和编码方式,用MODBUS没有太大意义
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:MyLovelyBaby! INTERNET将影响每个人, 21IC将影响每位电子工程师!

536

主题

2587

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部