APC AP7921 接入Home Assistant(SNMP方式)
蜂窝煤 Lv3

之前在小黄鱼淘入了一个APC的PDU,型号为AP7921,查看文档发现是支持每个插口单独控制开关的,于是想将这PDU接入HA控制。

这个PDU是支持 SNMP V1 和 V3 协议的,SNMP协议介绍如下:

SNMP(简单网络管理协议)是一个用于在IP网络中监控和管理设备(如路由器、交换机、服务器和打印机)的标准协议。它允许网络管理员通过中心化的管理工作站收集设备状态、跟踪网络性能、响应故障,并实现自动化管理。SNMP包含管理器、代理和管理信息库(MIB)等组件,通过查询和轮询机制与代理交换数据,并支持三种版本:SNMPv1、SNMPv2c和更安全的SNMPv3。

SNMP中,每个可管理的设备信息都有一个唯一标识,称为 OID(对象标识符)。OID 就像设备内部信息的“地址”,用于标识 CPU 使用率、内存状态、端口流量等参数。例如,OID 1.3.6.1.2.1.1.5.0 就表示设备的系统名称。网络管理系统通过 OID 访问设备的管理信息库(MIB),实现对设备状态的监控、故障告警和自动化管理。OID 的结构呈层次化,以点分十进制表示,每一层代表不同类别的管理对象。

主要区别是V3新增了用户认证的功能,但是我们家用局域网使用其实用V1就足够了。

开启SNMP V1

首先第一步就是先能够访问到PDU的Web管理页面,参考我之前写的这篇博文

进入Web后,在Administration - Network - SNMPv1 - access 里,勾选 Enable SNMPv1 access ,点击Apply

image

转到同级的access control 下,保证权限如图所示:

image

public的权限为Readprivate权限为Write +

**(可选)**然后,点击private,进入设置页面,将NMS IP/Host Name改为运行Home Assistant设备的IP

image

HA接入

Home Assistant 提供了 SNMP 设备的接入组件,文档在:https://www.home-assistant.io/integrations/snmp

这个组件只能通过配置文件configuration.yaml 手动接入,所以得先想办法访问到HA的配置文件。

一般来说部署HA容器时候有将config文件夹映射到宿主机里,这个每个人映射的位置都不一样了,我的是/opt/homeassistant/config/configuration.yaml

configuration.yaml 后面追加下面内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
switch:
- platform: snmp
name: "APC Outlet 1"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.1
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.1
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 2"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.2
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.2
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 3"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.3
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.3
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 4"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.4
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.4
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 5"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.5
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.5
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 6"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.6
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.6
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 7"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.7
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.7
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

- platform: snmp
name: "APC Outlet 8"
host: 192.168.123.50
community: private
version: "1"
baseoid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.8
command_oid: 1.3.6.1.4.1.318.1.1.4.4.2.1.3.8
payload_on: 1
payload_off: 2
command_payload_on: 1
command_payload_off: 2

验证重启

进入HA的Web页面,侧边栏 - 开发者工具 - 配置检查与重启 - 检查配置,检查配置无误后,点击 重新启动。

重启后来到,设置 - 设备与服务 - SNMP,应该就可以看到8个开关了。

image

结算画面

image
 Comments
Comment plugin failed to load
Loading comment plugin