AutoMoLi 项目使用教程
1. 项目目录结构及介绍
AutoMoLi 项目的目录结构如下:
ad-automoli/
├── apps/
│ └── automoli/
│ ├── __init__.py
│ ├── automoli.py
│ └── ...
├── demo/
│ └── ...
├── LICENSE
├── README.md
├── hacs.json
└── pyproject.toml
目录结构介绍
- apps/: 包含 AutoMoLi 应用程序的核心代码。
- automoli/: AutoMoLi 的主要实现文件夹。
- __init__.py: 初始化文件。
- automoli.py: AutoMoLi 的主要逻辑实现文件。
- ...: 其他辅助文件。
- automoli/: AutoMoLi 的主要实现文件夹。
- demo/: 包含项目的演示文件。
- LICENSE: 项目的开源许可证文件。
- README.md: 项目的说明文档。
- hacs.json: HACS(Home Assistant Community Store)配置文件。
- pyproject.toml: 项目的配置文件,包含依赖和构建信息。
2. 项目启动文件介绍
AutoMoLi 项目的启动文件是 apps/automoli/automoli.py
。这个文件包含了 AutoMoLi 的主要逻辑实现,负责根据条件(如运动、光照、湿度等)自动管理灯光。
启动文件功能
- 自动灯光管理: 根据运动传感器、光照传感器和湿度传感器的条件自动开关灯光。
- 多时间段场景: 支持在不同时间段(如早晨、中午、晚上)设置不同的灯光场景。
- 传感器自动发现: 自动发现并配置灯光和传感器。
3. 项目配置文件介绍
AutoMoLi 的配置文件主要通过 Home Assistant 的 appdaemon/apps/apps.yaml
文件进行配置。以下是一个示例配置:
livingroom:
module: automoli
class: AutoMoLi
room: livingroom
disable_switch_entities:
- input_boolean.automoli
- input_boolean.disable_my_house
delay: 600
daytimes:
- [ starttime: "sunrise", name: morning, light: "scene.livingroom_morning" ]
- [ starttime: "07:30", name: day, light: "scene.livingroom_working" ]
- [ starttime: "sunset-01:00", name: evening, light: 90 ]
- [ starttime: "22:30", name: night, light: 20 ]
- [ starttime: "23:30", name: more_night, light: 0 ]
illuminance: sensor.illuminance_livingroom
illuminance_threshold: 100
lights:
- light.livingroom
motion:
- binary_sensor.motion_sensor_153d000224f421
- binary_sensor.motion_sensor_128d4101b95fb7
humidity:
- sensor.humidity_128d4101b95fb7
配置文件说明
- module: 指定模块名称,固定为
automoli
。 - class: 指定类名称,固定为
AutoMoLi
。 - room: 指定房间名称,用于自动发现灯光和传感器。
- disable_switch_entities: 指定用于禁用 AutoMoLi 的实体列表。
- delay: 指定无运动状态下的延迟时间(秒),超过此时间灯光将关闭。
- daytimes: 定义不同时间段的灯光设置。
- starttime: 时间段开始时间。
- name: 时间段名称。
- light: 灯光设置,可以是场景或亮度百分比。
- illuminance: 指定光照传感器实体。
- illuminance_threshold: 光照阈值,超过此值灯光不会开启。
- lights: 指定灯光实体列表。
- motion: 指定运动传感器实体列表。
- humidity: 指定湿度传感器实体列表。
通过以上配置,AutoMoLi 可以根据不同的时间段和传感器条件自动管理灯光,实现智能化的家居控制。