Slow PWM 输出
与 PWM 类似,Slow PWM 输出平台允许你通过在较长的时间段内 脉冲 GPIO 引脚开启/关闭来控制它们。它可以用来通过继电器控制 加热元件,这种情况下使用快速的 PWM 更新周期并不合适。
# Example configuration entryoutput: - platform: slow_pwm pin: GPIOXX id: my_slow_pwm period: 15s-
id (必需, ID): 用于此输出组件的 id。
-
period (必需, 时间): 每个周期的持续时间。(例如,在 50% 占空比下,10s 的周期意味着引脚开启 5s,然后关闭 5s)
-
pin (可选, Pin Schema): 要脉冲的引脚。
-
state_change_action (可选, 自动化): 负载切换时执行的自动化。如果使用 lambda,则布尔型
state参数保存新状态。 -
turn_on_action (可选, 自动化): 负载开启时执行的自动化。可用于控制开关或输出组件等。
-
turn_off_action (可选, 自动化): 负载关闭时执行的自动化。
turn_on_action和turn_off_action必须一起配置。 -
restart_cycle_on_state_change (可选, boolean): 当设置新状态时,重新启动一个周期的计时器。默认为
false。 -
所有其他选项请参见 输出。
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 输出 组件提供更快更新和 对开关频率的更大控制。这对于需要一些时间才能在开和关之间完全切换的负载 (如电式热 执行器或风扇)更好。