搜索
bottom↓
回复: 42

因为笨,我放弃了modbus,立刻轻松了

[复制链接]

出390入22汤圆

发表于 2022-9-26 08:55:38 | 显示全部楼层 |阅读模式
自己笨,以前研究modbus花了一两月的时间,还不能应用的随心所欲,放弃了,自己花半天写了个通信协议,觉得太明了了,想怎么着就怎么着,如卸重担,以前想用modbus主要是想控制个变频器,现在不用这货,用电压或电流控制也很简单,现在觉得用什么,自己能灵活掌握才是最好的

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

发表于 2022-9-26 08:59:55 | 显示全部楼层
如果做的工业控制类的,你绕不开modbus的,跟别的设备对接和通讯都是modbus。

出0入4汤圆

发表于 2022-9-26 09:00:39 | 显示全部楼层
如果不和别家的配合,自己搞通信协议还是很好用的。

出0入32汤圆

发表于 2022-9-26 09:09:05 | 显示全部楼层
modbus协议基本上是最简单的串口通信协议了,地址+功能码+寄存器地址+寄存器数量+校验。还能找到更简单的标准通信协议吗?

出0入4汤圆

发表于 2022-9-26 09:37:22 | 显示全部楼层
我感觉modbus很容易呀,写了几款,没发现啥问题
只需要解释用到的指令

出10入23汤圆

发表于 2022-9-26 09:40:26 | 显示全部楼层
MODBUS  确认很难吗?你自己写的协议如果没有实现超时重传,估计效果不佳呀

出0入0汤圆

发表于 2022-9-26 09:41:10 | 显示全部楼层
modbus简单可靠,还有标准的上位机调试软件,就是功能性弱一点。

出0入59汤圆

发表于 2022-9-26 09:58:10 | 显示全部楼层
MODBUS研究2个月; 是打算在IEEE上发表论文么?

出0入22汤圆

发表于 2022-9-26 10:10:49 | 显示全部楼层
这个没那么难吧,给楼主分享个资料,比较好理解的。https://note.youdao.com/s/PuaXzYuY

出20入186汤圆

发表于 2022-9-26 10:14:10 | 显示全部楼层
modbus我自己写个处理程序,也就两三天的事情,感觉用着挺好的,虽然大小端挺烦的,其它都还好,稳定用在几个项目里,很好用modbus。

出10入120汤圆

发表于 2022-9-26 10:31:38 | 显示全部楼层
使用量最大的工业仪表互联协议,完全按照协议完整的实现估计也就是一周时间,没有那么复杂的。

出0入90汤圆

发表于 2022-9-26 10:42:47 | 显示全部楼层
所以我用库,python或者arduino

出0入362汤圆

发表于 2022-9-26 10:45:39 | 显示全部楼层
我自己做过一个简单的modbus从机, 只实现了04功能, 读数据寄存器. 不过再加其他的也容易.
https://github.com/tomzbj/zmb

出0入169汤圆

发表于 2022-9-26 10:46:51 | 显示全部楼层
只写用到的命令,一天半天的就搞定了。要是做个功能完全的是要研究一阵子。

出0入1209汤圆

发表于 2022-9-26 10:49:01 | 显示全部楼层
本帖最后由 kitten 于 2022-9-26 10:50 编辑
令狐冲 发表于 2022-9-26 09:09
modbus协议基本上是最简单的串口通信协议了,地址+功能码+寄存器地址+寄存器数量+校验。还能找到更简单的标 ...
(引用自4楼)


关键是写单片机的没有功能码这些概念的。modbus的0地址好像跟单片机的还不一样。我每次对接的时候都是用软件抓一下实际通讯数据,然后再写,不想去理解他们那些生涩的描述。

出0入71汤圆

发表于 2022-9-26 11:07:35 | 显示全部楼层
楼主MODBUS研究了两个月,然后弃MODBUS自己写!惭愧啊,N年前看了不到一天的MODBUS资料,匆匆忙忙写了个程序实现了功能就交了。我是不是太敷衍了!

出0入0汤圆

发表于 2022-9-26 11:40:33 | 显示全部楼层
以前没用MODEBUS的时候觉得很深奥,因为感觉后面会用到,想做个知识储备,于是找了个pdf看,结果看了几个月没看明白。

后来有个项目要用到,对方的从设备只需要用到两种指令,按照对方的手册说明,花了半天时间把软件写好了。

有些东西光看资料是很难理解完全的,并且写资料的人往往写的时候都大而全,但我们应用的时候实际只用了其中一小部分,真动起手来,反而是很简单的事。

出0入0汤圆

发表于 2022-9-26 11:47:35 | 显示全部楼层
modbus 字节对齐 大小端 确实很不友好

出0入0汤圆

发表于 2022-9-26 12:05:19 来自手机 | 显示全部楼层
这都搞不定是不是基本告别嵌入式了

出10入113汤圆

发表于 2022-9-26 12:07:48 | 显示全部楼层
把MODBUS简化一下就是自己的协议了,其实是一个意思。

出200入657汤圆

发表于 2022-9-26 12:33:23 | 显示全部楼层
楼主陷入了学习的误区。工程上没有必要研究到各种方方面面的可能性,只要满足使用即可。

而modbus协议,为了健壮性考虑到了这种各样的可能性,所以,假若要完成完整的协议栈,那么需要花费大量的时间。

然而实际上,对于99%的使用来说,用它的1、2个功能就够了。把这一二条的数据帧抓过来分析下照猫画虎就行了,就是这么简单。这也就是为什么modbus协议使用如此广泛的原因。

出0入84汤圆

发表于 2022-9-26 14:59:20 | 显示全部楼层
这么多年只用03 06,自己的设备通讯将校验改成和校验,用啥协议看驱动什么设备,没那么复杂

出0入14汤圆

发表于 2022-9-26 16:58:17 | 显示全部楼层
楼主 标准协议有很多工具,你自己协议只能自己造轮子。主要看自己习惯。

出0入0汤圆

发表于 2022-9-26 17:11:32 | 显示全部楼层
楼主可以申请专利了,一种自定义通信协议,防止被某为抢先注册

出0入13汤圆

发表于 2022-9-26 17:14:58 | 显示全部楼层
完了3年的CAN总线.....面试的问我Modbus.....我都懵了,后来一看....哎,简直不是一个层次的东西......Modbus简单的很啊!CAN确实高端......

出0入16汤圆

发表于 2022-9-26 17:16:02 | 显示全部楼层
常用的功能两天就行了。。。两个月看了啥

出0入0汤圆

发表于 2022-9-26 17:19:40 | 显示全部楼层
两个月看了啥?

出0入8汤圆

发表于 2022-9-26 20:21:10 | 显示全部楼层
我就用了03和16管理码

出0入0汤圆

发表于 2022-9-26 23:55:58 来自手机 | 显示全部楼层
我第一次用modbus,估计只看了20分钟资料就开始编程解析了,楼主研究了两个月然后放弃了,我感觉不可思议啊。

出50入58汤圆

发表于 2022-9-27 02:07:11 来自手机 | 显示全部楼层
这玩意算最简单的协议了,之前啃过ProdibusDP协议并且用单片机模拟过从站,协议啃了几个月,最终和主站连上了,但很多资料不全,国标又是翻译自英文,各种原语看的头晕。。

出130入129汤圆

发表于 2022-9-27 02:25:37 来自手机 | 显示全部楼层
用现成的freemodbus可以么

出100入312汤圆

发表于 2022-9-27 06:34:11 来自手机 | 显示全部楼层
楼上各位大神和lz有代沟

出0入300汤圆

发表于 2022-9-27 08:28:58 来自手机 | 显示全部楼层
我确认很难用,越是看起来简单的东西越难实现。比如说你不能简单的得知芯片的速度不太清楚能400k还是能3000k.再比如说报错校验机制不够健全,再比如说宽容度太大,很多时候你不要ack他也动。我记得在玩胶像片机的年代到后来我都只用e6了就是因为宽容度小。说常用的eeprom,我就用93c46,快多了并且可以16位的格式。ADC和DAC更是能spi就spi,反正谁觉得好谁用,咱水平低下还是spi吧。

出0入0汤圆

发表于 2022-9-27 09:52:23 | 显示全部楼层
modbus其实真的非常简单.但是如果你直接看协议说明,很可能一头雾水.
可以去B站找个视频看看,半小时估计就搞清楚了.

出0入12汤圆

发表于 2022-9-27 09:58:10 | 显示全部楼层
协议可以移植freemodbus,ucmodbus,都很好用。讨厌的是,用户和你沟通数据转换的格式,大端、小端,字节交换,一个double要4个寄存器,怎么都说不明白。还有,做主机应用时,从机一多实时性就差了许多。

出0入42汤圆

发表于 2022-9-28 07:10:08 来自手机 | 显示全部楼层
ibmx311 发表于 2022-9-27 08:28
我确认很难用,越是看起来简单的东西越难实现。比如说你不能简单的得知芯片的速度不太清楚能400k还是能3000 ...
(引用自33楼)

你这是i2c吧

出0入300汤圆

发表于 2022-9-28 07:58:21 来自手机 | 显示全部楼层
albert_w 发表于 2022-9-28 07:10
你这是i2c吧
(引用自36楼)

是的,我神神叨叨说半天,结果看错标题了

出20入30汤圆

发表于 2022-9-28 12:37:19 来自手机 | 显示全部楼层
楼主并不是笨,问题出在学习方法上,看他的协议的同时,一定要看高手们做的应用项目,本论坛一搜一大把,这样学就不难了。

出0入0汤圆

发表于 2022-9-28 19:49:14 来自手机 | 显示全部楼层
modbus真的做的非常好,扩展性兼容性等。以前公司自己写的一套协议,老板自己以为很牛逼,简单用可以,越用到后面越难用乱得很

出0入42汤圆

发表于 2022-9-29 10:04:14 | 显示全部楼层
有两个月时间研究Modbus,我这边领导估计要疯了

出0入46汤圆

发表于 2022-9-29 10:42:26 | 显示全部楼层
waterx3 发表于 2022-9-27 09:58
协议可以移植freemodbus,ucmodbus,都很好用。讨厌的是,用户和你沟通数据转换的格式,大端、小端,字节交 ...
(引用自35楼)

主机接的从机多了,需要考虑的就多一些,如发现一些设备没反应了,需要根据一定的策略做降级处理。尽可能的保证正常从机的实时性。
对于通用程序需要考虑的就更多了,如数据在不同类型的编码格式之类的,还挺麻烦的。具体参考一些OPC软件,一大堆的参数

出90入0汤圆

发表于 2022-9-30 07:40:42 | 显示全部楼层
Modbus,我认为就是 位 的读写难点。

出20入25汤圆

发表于 2022-10-3 18:05:31 来自手机 | 显示全部楼层
waterx3 发表于 2022-9-27 09:58
协议可以移植freemodbus,ucmodbus,都很好用。讨厌的是,用户和你沟通数据转换的格式,大端、小端,字节交 ...
(引用自35楼)

free modbus不稳定?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-16 00:00

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表