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

 找回密码
 立即注册
查看: 2794|回复: 1

[技术探讨] Homeassistant的Modbus TCP通讯的应答无反应

[复制链接]

1

主题

44

帖子

268

积分

论坛积极会员

积分
268
金钱
224
HASS币
0
发表于 2018-10-19 21:10:17 | 显示全部楼层 |阅读模式
本帖最后由 hzcrd 于 2018-10-21 13:10 编辑



已解决,自问自答,是自己把应答码搞错了! 后来又用modbus slave测试了下,看到问题了。
原问题:
=================
树莓派力添加modbus tcp,与Crestron中控实现TCP通讯,树莓派发指令,Crestron能接收,发应答码,树莓派无反应,不知为何?
树莓派端:
modbus:                                                                                                                                                                            type: tcp                                                                                                                                                                         host: 192.168.2.98
     port: 502

switch:
    - platform: modbus
      scan_interval: 1
      slave: 1
      coils:
         - name: Switch01
            slave: 1
            coil: 0
         - name: Switch02
            slave: 1
            coil: 1

当通过树莓派控制TCP继电器时,树莓派一直会发查询指令,如下:

以第一路为例: \xAB\xCD\x00\x00\x00\x06\x01\x01\x00\x00\x00\x01    (每秒一个,逐个查询, \xAB\xCD是可变的,每发一条指令序号加1)

应答(状态=开): \xAB\xCD\x00\x00\x00\x06\x01\x01\x01\x01              
        (状态-关): \xAB\xCD\x00\x00\x00\x06\x01\x01\x01\x00   (用TCP继电器测试过,指令一致,且树莓派开关状态会实时变,用中控的调试工具软件可看到指令)   

Crestron中控里做了个宏,实时截取查询指令前6位 \xAB\xCD\x00\x00\x00\x06\ + 继电器状态的4位,组合后发应答指令,响应时间在0.4秒以内,指令与TCP继电器的应答指令一致,但实际结果是 树莓派无反应!


回复

使用道具 举报

0

主题

245

帖子

1813

积分

金牌会员

Rank: 6Rank: 6

积分
1813
金钱
1568
HASS币
0
发表于 2018-10-20 11:07:10 来自手机 | 显示全部楼层
我们论坛里有个大侠搞过modbus,你可以请教一下他,绝对高手
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-24 05:01 , Processed in 0.045452 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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