我家云Home Assistant智能家居系统的Modbus RTU通信

2021-07-09 18:24:47 39点赞 241收藏 28评论

一、简介

使用我家云作为Home Assistant智能家居的控制中心,与Modbus RTU IO模块进行RS485串口通信,实现对传感器的信息采集和对灯的开关控制。

1.我家云

我家云采用了Cortex-A53的芯片架构,搭配8GB的ROM储存空间,以及1GB DDR3的内存,采用千兆网络,配备的一个USB3.0一个USB2.0的扩展接口。因为我家云的公司已经停止运营了,所以现在刷机使用开源的OMV操作系统。

我家云Home Assistant智能家居系统的Modbus RTU通信

2.Modbus IO输入输出模块

IO模块的种类很多,我选的有8路数字量输入,8路数字继电器输出,采用RS485 Modbus RTU通信标准。

我家云Home Assistant智能家居系统的Modbus RTU通信

3.USB转串口工具

因为我家云没有串口的接口,所以还需要一个USB转RS485串口才能与IO模块进行通信连接。连接情况如下图。

我家云Home Assistant智能家居系统的Modbus RTU通信

二、安装过程

1.我家云使用Docker安装Home Assistant智能家居系统

电脑和我我家云连接在同一个局域网中,使用SSH登录我家云的OMV操作系统,可以发现USB转串口位置为/dev/ttyUSB0

使用下面的命令安装Home Assistant,并将配置文件放在了/root/homeassistant目录。

docker run --init -d --name homeassistant --restart=unless-stopped -v /etc/localtime:/etc/localtime:ro -v /root/homeassistant:/config --device /dev/ttyUSB0:/dev/ttyUSB0 --network=host homeassistant/home-assistant:stable

2.Home Assistant初始设置

在电脑浏览器输入我家云的IP:8123,例如我的输入192.168.1.130:8123就可以打开Home Assistant的页面。

可以按照提示设置登录用户名及密码等。

我家云Home Assistant智能家居系统的Modbus RTU通信

三、IO模块接入Home Assistant

1.IO清单

根据IO模块的厂家资料,其默认RS485参数为,波特率9600,数据位8位,停止位1,奇偶校验无,slave地址1.

我的IO通道分配情况如下表:

我家云Home Assistant智能家居系统的Modbus RTU通信

2.将IO模块的通道接入Home Assistant智能家居系统

使用SSH登录我家云OMV操作系统,编辑/root/homeassistant/configuration.yaml文件就可以将IO模块接入Home Assistant智能家居系统。

在configuration.yaml中添加以下内容:

modbus:
- name: hub1
type: serial
baudrate: 9600
bytesize: 8
method: rtu
parity: N
port: /dev/ttyUSB0
stopbits: 1
lights:
- name: "主灯"
address: 0
write_type: coil
slave: 1
- name: "书桌灯"
address: 1
write_type: coil
slave: 1
- name: "工作台灯"
address: 2
write_type: coil
slave: 1
switches:
- name: "书桌插座"
address: 3
write_type: coil
slave: 1
- name: "工作台插座"
address: 4
write_type: coil
slave: 1
fans:
- name: "排风扇"
address: 5
write_type: coil
slave: 1
binary_sensors:
- name: "门口人体传感器"
address: 0
scan_interval: 2
slave: 1
input_type: discrete_input
- name: "工作台人体传感器"
address: 1
scan_interval: 2
slave: 1
input_type: discrete_input

3.登录Home Assistant测试功能

在浏览器输入我家云IP:8123,我在浏览器输入192.168.1.130:8123,登录后就可以看到添加的设备。

我家云Home Assistant智能家居系统的Modbus RTU通信

在Home Assistant的操作界面上控制灯的开关,查看IO模块对应的继电器是否有动作。给IO模块DI通道输入信号,在Home Assistant的界面上查看是否采集到状态。一切正常就可以将传感器、灯等设备连接到IO模块上。使用Home Assistant的自动化功能可以实现传感器对灯的自动控制。

文件添加的内容缺少了每行的空格,所以在这里补充上。 modbus: - name: hub1 type: serial baudrate: 9600 bytesize: 8 method: rtu parity: N port: /dev/ttyUSB0 stopbits: 1 lights: - name: "主灯" address: 0 write_type: coil slave: 1 - name: "书桌灯" address: 1 write_type: coil slave: 1 - name: "工作台灯" address: 2 write_type: coil slave: 1 switches: - name: "书桌插座" address: 3 write_type: coil slave: 1 - name: "工作台插座" address: 4 write_type: coil slave: 1 fans: - name: "排风扇" address: 5 write_type: coil slave: 1 binary_sensors: - name: "门口人体传感器" address: 0 scan_interval: 2 slave: 1 input_type: discrete_input - name: "工作台人体传感器" address: 1 scan_interval: 2 slave: 1 input_type: discrete_input

https://www.yuque.com/docs/share/95339e15-8e3d-4d64-84d3-f04f040e35b1?#

展开 收起
28评论

  • 精彩
  • 最新
  • io模块要不要24v供电,usb转串口后是不是只要接一路输入到io模块的A.B端就可以了?

    校验提示文案

    提交
    嗯嗯,IO模块需要24V供电,图片中没有接电源 [黑线] 。串口接一路到IO模块A.B端就可以

    校验提示文案

    提交
    收起所有回复
  • 智能家居也开始卷了?都已经PLC了?
    我感觉离弱电箱自带200smart的那一天不远了 [内伤]

    校验提示文案

    提交
    这个应该就只是modbus的模块吧,不是plc,ha如果用plc也太大材小用了吧

    校验提示文案

    提交
    收起所有回复
  • 虽然我完全看不懂

    校验提示文案

    提交
    但我还是看完了,而且刚好我也有我家云。

    校验提示文案

    提交
    我家也有刷了网心云 一天不到一块钱

    校验提示文案

    提交
    收起所有回复
  • 怎么在外网访问家里的HA?我设置frp访问不了啊。。。

    校验提示文案

    提交
  • USB转485-可以用小的模块

    校验提示文案

    提交
  • 这东西我400卖了

    校验提示文案

    提交
    你这个魔鬼 [苦恼] 我帮刷后才卖了70。。。

    校验提示文案

    提交
    不过我是众筹1000多买的 [喜极而泣]

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 还不如50搞个玩客云来刷ha

    校验提示文案

    提交
  • 厉害👍👍PLC都上了工业转换器也设了,

    校验提示文案

    提交
  • 这个思路真不错把plc接入 那就无敌了

    校验提示文案

    提交
  • 100,2个包邮卖的

    校验提示文案

    提交
  • 外接移动硬盘不掉盘,稳如狗

    校验提示文案

    提交
  • 最大化能干嘛 我也有一个 不会用

    校验提示文案

    提交
  • 借过。。。我家云,24小时后就会挂掉,必须关机几个小时

    校验提示文案

    提交
  • 还是觉得n1才是第一能打的~

    校验提示文案

    提交
  • 呃 真的需要上plc吗 74hc595什么自己搭一下也就出来了 再上个Arduino的单片机没什么压力

    校验提示文案

    提交
  • 其实canopen比modbus好多了 速度快

    校验提示文案

    提交
  • 我50包邮买的,还有盒子 [邪恶] [邪恶]

    校验提示文案

    提交
  • 掉盘,功耗高,8g耍起来容量不够,还是换x86吧

    校验提示文案

    提交
  • 好家伙,有必要吗?下一步1515sp自带windows系统全伺服驱动家具是吧 [皱眉] [皱眉] [皱眉]

    校验提示文案

    提交
  • 不错不错,膜拜一下。这货可折腾的方面挺多,我把老打印机接它上了,可以网络打印了。

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
241
扫一下,分享更方便,购买更轻松