慢速 PWM 输出
与 PWM 类似,慢速 PWM 输出平台允许您通过在较长时间周期内脉冲开启/关闭来控制 GPIO 引脚。它可用于通过继电器控制加热元件,在这种情况下,快速 PWM 更新周期不合适。
# 示例配置条目output: - platform: slow_pwm pin: GPIOXX id: my_slow_pwm period: 15s-
id (必填, ID):此输出组件使用的 id。
-
period (必填, 时间):每个周期的持续时间。(例如,10s 周期在 50% 占空比下,引脚将开启 5s,然后关闭 5s)
-
pin (可选, 引脚架构):要脉冲的引脚。
-
state_change_action (可选, 自动化):负载切换时执行的自动化。如果使用 lambda,布尔值
state参数保存新状态。 -
turn_on_action (可选, 自动化):负载开启时执行的自动化。可用于控制例如开关或输出组件。
-
turn_off_action (可选, 自动化):负载关闭时执行的自动化。
turn_on_action和turn_off_action必须一起配置。 -
restart_cycle_on_state_change (可选, 布尔值):设置新状态时重新启动周期计时器。 默认为
false。 -
所有其他选项来自 Output。
NOTE
- 如果定义了
pin,GPIO 引脚状态会在执行任何动作之前写入。 state_change_action和turn_on_action/turn_off_action可以一起使用。state_change_action在turn_on_action/turn_off_action之前调用。建议使用state_change_action或turn_on_action/turn_off_action之一来更改输出状态。同时使用两个自动化仅建议用于监控。
output: - platform: slow_pwm id: my_slow_pwm period: 15s turn_on_action: - lambda: |- auto *out1 = id(output1); out1->turn_on(); turn_off_action: - output.turn_off: output1NOTE
如果占空比不受最大值限制,Sigma Delta 输出组件提供更快的更新和对开关频率的更大控制。这更适合需要在开和关之间完全切换需要一些时间的负载,如电热执行器头或风扇。