将我们的 Bosch Indego 割草机集成到 Home Assistant 中

井, 关注有关将智能家居中的 IoT 设备与 Home Assistant 集成的帖子, 怎么能少点能控制, 了解状态并使用我们的 Bosh Indego 割草机实现自动化.

Vamos a utilizar 'Controller application and API for Bosch Indego Connect’ 我们已经看到了 在这篇文章中 如何安装和集成 Grafana. 在这种情况下,我们将利用这个宏伟的项目来使用它附带的适配器,并允许我们将其集成到 Home Assistant 中,这要归功于它可以通过 MQTT 与我们的代理通信. 能够通过主题了解状态或发送命令. 我们将所有这些与我们家中的其他设备集成, 在一个简单的界面中,正如您可以想象的那样,通过自动化,我们将能够知道剪辑何时开始, 如果卡住, 你刚割草的时候; 当然,这取决于是否下雨/将要下雨, 好吧,让他出去剪.

安装后, 我们将使用 MQTT 提升 Indego 适配器,指示包含连接数据的文件. 此适配器可以从 Windows 或 Linux 运行, 就我而言,我将其挂载在 Linux 上, 因此,如果我希望它在每次机器启动时都启动。, 我们将把他放在一个 cron 任务中:

@reboot /home/pi/indego/bin/IndegoMqttAdapter -c /home/pi/indego/IndegoMqttAdapterConfig.properties

IndegoMqttAdapterConfig.properties 文件将是这样的, 他们每个人都更正了他们对 Indego 的访问数据 (邮件/密码), 和 MQTT 数据:

# Indego Web 服务的基本 URL (如果与默认值不同)
# indego.mqtt.device.base-url=https://api.indego.iot.bosch-si.com/api/v1/
# 用于连接到 Indego 服务器的用户名 (与 Indego 应用程序中的相同)

indego.mqtt.device.username=USUARIO_MAIL_DE_INDEGO
# 用于连接到 Indego 服务器的密码 (与 Indego 应用程序中的相同)
indego.mqtt.device.password=CONTRASEÑA_DE_INDEGO

# 连接到 MQTT 代理 indego.mqtt.broker.connection=tcp://DIRECCION_IP_BROKER_MQTT:1883
# 此客户端的唯一 ID indego.mqtt.broker.client-id=IndegoMqttAdapter
# 用于在 MQTT 代理上进行身份验证的用户名 indego.mqtt.broker.username=USUARIO_MOSQUITTO
# 在 MQTT 代理上进行身份验证的密码 indego.mqtt.broker.password=CONTRASEÑA_MOSQUITTO
# 主题根 (Namespace) 对于 Indego 主题 indego.mqtt.broker.topic-root=test/device/indego

# 指定查询 Indego 状态的频率以及应更新 MQTT 主题的频率 indego.mqtt.polling-interval-ms=30000

Cuando tengamos el servicio del adaptador ya corriendo en alguna máquina, Bosch Indego en Home Assistant, 如何? 照常, Modificando el fichero configuration.yaml, 我们将在 sensors 部分添加以下代码:

传感器:
...
  - 平台: MQTT 名称: "Indego 公司 350 - 能源状况"
    state_topic: "测试/设备/indego/online"
    value_template: '{% 如果值 == "关闭" %}离{% 还 %}上{% Endif (结束) %}'
    icon: MDI:汽车电池

  - 平台: MQTT 名称: "Indego 公司 350 - 州"
    state_topic: "test/device/indego/stateMessage"
    图标: MDI:map-marker value_template: '{% 如果值 == "停靠" %}在基地{% elif 值 == "充电" %}装载{% elif 值 == "修剪" %}修剪{% elif 值 == "重新定位" %}定位自己{% elif 值 == "返回码头" %}回家{% elif 值 == "边界剪切" %}修剪边缘{% elif 值 == "在草坪上闲置" %}在花园里闲逛{% elif 值 == "未知" %}未知{% elif 值 == "暂停" %}慢{% elif 值 == "返回码头 - 电池电量低" %}电池电量低{% Endif (结束) %}'

  - 平台: MQTT 名称: "Indego 公司 350 - 修剪"
    state_topic: "测试/设备/indego/mowedPercent"
    unit_of_measurement: "%"
    图标: MDI:机器人割草机

  - 平台: MQTT 名称: "Indego 公司 350 - 上次割草时间"
    state_topic: "测试/device/indego/runtimeSessionOperationMins"
    图标: MDI:铲子value_template: '{{ (价值 | 浮 / 60) | 圆(2, "Ceil 餐厅") }}'
    unit_of_measurement: "h"

  - 平台: MQTT 名称: "Indego 公司 350 - 工作时间"
    state_topic: "测试/device/indego/runtimeTotalOperationMins"
    图标: MDI:value_template计时器: '{{ (价值 | 浮 / 60) | 圆(2, "Ceil 餐厅") }}'
    unit_of_measurement: "h"

在重新启动 Home Assistant 并充值更改后,我们将能够添加包含所有这些实体的卡片. 在其中我们可以看到能量状态, 割草机的状况 (如果它在底部, 装载, 修剪, 排名, 回家, 修剪边缘, 在花园里闲置/卡住, 低侧… ), 剪切的百分比, 最后一次收割的时间, 总工作时间… 最后一个我通过对 Hassio 的数据库的 mysql 查询得到.

顺便一提, 如果要添加带有 3 侍者, a 开始割草, 一次暂停或另一次完成割草, 我给你留下这个例子:

卡:
  - 实体: sensor.indego_350_estado hold_action:
      行动: “无”图标: 'mdi:play'
    icon_height: 30Px 名称: 收获tap_action:
      行动: 呼叫服务服务: mqtt.publish service_data:
        有效载荷: MOW 主题: test/device/indego/命令类型: 实体按钮
  - 实体: sensor.indego_350_estado hold_action:
      行动: “无”图标: 'mdi:pause'
    icon_height: 30Px 名称: 暂停 tap_action:
      行动: 呼叫服务服务: mqtt.publish service_data:
        有效载荷: 暂停主题: test/device/indego/命令类型: 实体按钮
  - 实体: sensor.indego_350_estado hold_action:
      行动: “无”图标: 'mdi:home'
    icon_height: 30Px 名称: 首页 tap_action:
      行动: 呼叫服务服务: mqtt.publish service_data:
        有效载荷: 返回主题: test/device/indego/命令类型: entity-button 类型: 水平堆栈

我给你留下这个自动化的例子, 这样,如果没有下雨或不会下雨,它可以在早上 6 点出水, 当然,检测降雨的部分将取决于每一个, 您可以使用 AccuWeather 集成.

这种自动化通过 Telegram 消息或房屋的扬声器通知我们它开始割草. 这样做的目的是为了以防我们在白天割草,我们想警告它会出来, 所以我没有抓住😉你

这个最新的自动化系统将向我们发送 Telegram 消息,并通过扬声器通知我们 Bosch Indego 割草机已卡住.

希望对您有所帮助, 我向tod@s致以问候,并一如既往地感谢您在社交网络上分享.

推荐文章

作者

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, 请随时与我联系, 我会尽我所能帮助你, 分享就是生活 ;) . 享受文档!!!