『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: qqkj

[经验分享] 太惨了,千万别碰MODBUS,血的教训

[复制链接]

3

主题

61

帖子

1239

积分

金牌会员

Rank: 6Rank: 6

积分
1239
金钱
1178
HASS币
0
发表于 2022-4-5 13:18:32 | 显示全部楼层
楼主,进行到怎么样了,出个详细教程啊。
回复

使用道具 举报

3

主题

61

帖子

1239

积分

金牌会员

Rank: 6Rank: 6

积分
1239
金钱
1178
HASS币
0
发表于 2022-4-5 13:21:29 | 显示全部楼层
asdasfhth 发表于 2022-3-28 13:41
有人串口服务器开tcp server 服务端,后面就是端口设置,我设置的8890,其他也可以,没关系 ...

看大侠您内行啊,出个完整给小白到教程吧,无相关知识,是在搞不定了。
回复

使用道具 举报

5

主题

68

帖子

946

积分

高级会员

Rank: 4

积分
946
金钱
878
HASS币
0
发表于 2022-4-5 23:40:33 | 显示全部楼层
ympchuan 发表于 2022-4-5 13:21
看大侠您内行啊,出个完整给小白到教程吧,无相关知识,是在搞不定了。 ...

这个设备我没有的,485设备设备配置方法不难的,都差不多,485转wifi再接入nodered或者ha,或者485直连ha。方法都是大同小异,论坛里很多的,可以搜一搜。485设备比较麻烦的是发送数据和返回数据的解析,每个485设备数据定义都不同,都不通用。感兴趣可以学习单片机,几天就差不多了
回复

使用道具 举报

5

主题

68

帖子

946

积分

高级会员

Rank: 4

积分
946
金钱
878
HASS币
0
发表于 2022-4-5 23:43:01 | 显示全部楼层
ympchuan 发表于 2022-4-5 13:21
看大侠您内行啊,出个完整给小白到教程吧,无相关知识,是在搞不定了。 ...

论坛里很多485电表都是用串口服务器到ha的,都可以参考配置方式,完全相同。还是那个句话,要看下说明书数据定义的,数据这部分挺麻烦的
回复

使用道具 举报

3

主题

61

帖子

1239

积分

金牌会员

Rank: 6Rank: 6

积分
1239
金钱
1178
HASS币
0
发表于 2022-4-6 20:04:27 | 显示全部楼层
asdasfhth 发表于 2022-4-5 23:40
这个设备我没有的,485设备设备配置方法不难的,都差不多,485转wifi再接入nodered或者ha,或者485直连ha ...

感谢回复,继续学习,也继续等待楼主成功后出教程
回复

使用道具 举报

3

主题

61

帖子

1239

积分

金牌会员

Rank: 6Rank: 6

积分
1239
金钱
1178
HASS币
0
发表于 2022-5-3 09:16:45 | 显示全部楼层
老白在绝望之际,偶然发现目前版本的node-red,16进制地址必须写成如:0x0001的格式(原贴的json导入是0001格式,或者是不同型号的机器原因)。先以最笨最简单的方式先实现新风机的HA的手动控制,借此分享给和我一样白的朋友,用最简单的方式(复杂的不懂)先控制设备,再慢慢学习。感谢论坛!
1E2BC5D6-BB98-4224-A6AD-C1103AFAFE67.png
回复

使用道具 举报

2

主题

169

帖子

1441

积分

论坛积极会员

积分
1441
金钱
1272
HASS币
0
发表于 2022-5-4 17:10:34 | 显示全部楼层
你可以看看esp485 这个项目  他是把485转成ttl 然后通过esp32 或者 8266 接入ha  具体里面的指令 照着说明改一改应该就可以了  成本也非常的低
回复

使用道具 举报

2

主题

169

帖子

1441

积分

论坛积极会员

积分
1441
金钱
1272
HASS币
0
发表于 2022-5-4 17:11:42 | 显示全部楼层
qqkj 发表于 2022-3-25 20:12
案例我试过不行的。。。地址码是一样的。。。结尾的CRC效验码不知道怎么计算的。。说明书里提到的这个国 ...

UartAssist 这个软件试一下 可以自动计算的  不用手动算
回复

使用道具 举报

0

主题

52

帖子

850

积分

高级会员

Rank: 4

积分
850
金钱
798
HASS币
0
发表于 2022-5-14 17:52:58 | 显示全部楼层
本帖最后由 laoyuan0 于 2022-5-14 17:55 编辑
newspaper 发表于 2022-3-30 15:48
node-red 里modbus 是上图这样的。请问 lrc验证码的信息输入在哪里?

上面回复你的是错的,可能是没亲测过,也可能是他理解错误
你用的是nodered中的 modbus节点,后面的crc会自动加上
可以参考 这个视频: 有人模块 +485 ,连上松下新风主机之前的 调试实测:  https://www.xiaohongshu.com/discovery/item/60c2c5c700000000010022d0?ivk_sa=1024320u
回复

使用道具 举报

0

主题

1

帖子

14

积分

新手上路

Rank: 1

积分
14
金钱
13
HASS币
0
发表于 2022-8-16 09:48:51 | 显示全部楼层
本帖最后由 raymondzhu 于 2022-8-16 09:56 编辑

可以使用node-red自带的modbus-write模块控制485设备,就可以不用从最底层写起了。
所有的参数基本上485模块的说明书上都有。我的HA在树莓派上通过USB转485模块接新风485模块的AB两根线。modbus-client里串口一般填/dev/ttyUSB0
我是通过HA的Helpers在仪表盘上创建了开关,风速和模式三个UI组件。node-red我也是第一次用,大致的思路就是当开关,风速和模式选项发生状态变化的时候获取这些helper的选项值然后转化成松下485模块相应的整数数组通过msg.payload传给modbus-write就可以发出去了,不用考虑CRC16。

Helpers

Helpers

NodeRed

NodeRed

选项和数字转换

选项和数字转换
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-26 04:36 , Processed in 0.175447 second(s), 32 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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