制作智能灯开关

物联网 智能家居 硬件 微控制器
2021-06-08 22:38:13

我想做一个家庭自动化系统,我需要一些计算机控制的开关。我不能使用继电器的原因是我还需要手动切换开关而不是通过编程(因为我不希望灯在控制开关的程序运行时卡在它所处的任何状态坠毁)。但是,我不确定制作这样的东西的规范方法是什么。

到目前为止我想到的选项:

  • 背面带有伺服管道的常规开关
  • 连接到微控制器(如 Arduino)的开关,每次切换开关时都会反转信号
  • 一个开关,向连接到灯的微控制器发送消息,告诉它反转输出状态
4个回答

到目前为止,最简单的途径是在这里购买现有的产品,该产品足够开放,您可以使用标准的射频模块来控制它们。

这相当于集成了一个 MCU 和开关(因此为您提供了良好的自主权),并且还避免了结果的外观或安全性方面的任何问题。当然,除非您尝试对交换机上的固件进行逆向工程(这可能会进行大量成本优化),否则您当然会坚持使用制造商的直播协议。

如果您使用 LightWaveRF 开关,您只需要一个价值 1 433 MHz 的传输模块和一个 arduino 或类似设备来发送此处描述协议这些开关处理所有电源隔离,并在开关上提供电容式触摸控制。如果您使用接收模块,您还可以使用标准遥控器为您的控制集线器提供输入。由于有多个通道可用,您可以使用遥控器向集线器提供输入,并使用集线器在第二个通道上中继命令。

433 MHz 模块易于重新利用,因为 RF 协议不安全。除非固件打开,否则任何更复杂的东西都会让您受制于制造商

如果您想要一个完全独立的开关,以防微控制器出现故障,那么您可以为两个输入连接一个XOR 门当两个输入相同时继电器将关闭,如果输入不同则继电器打开。两个输入是:

  1. 用于手动控制的常规开关。
  2. 用于自动或远程控制的 MCU 输出。

电路:

在此处输入图片说明

通常,开关应打开(输入 B 为低,如上图所示)并且 N-FET 由 MCU 引脚驱动。当 MCU 引脚为低电平时,异或门输出低电平,因为输入匹配(均为低电平),继电器将关闭。当 MCU 脚为高电平时,继电器会因为输入不同而导通。

现在,如果 MCU 崩溃并且其引脚卡在某个状态,则有两种情况:

  1. MCU 引脚卡在高电平状态,继电器保持打开状态。在这种情况下,开关将使您能够按如下方式控制继电器。如果开关打开,则继电器将打开,如果开关关闭,则继电器将关闭。
  2. MCU 引脚卡在低电平状态。在这种情况下,打开的开关将关闭继电器,关闭的开关将打开它。

这是一个模拟,因此您可以自己检查机制。MCU 的 GPIO 引脚可以通过蓝牙、WiFi 或已经提到的 433 MHz 模块或其他合适的技术进行远程控制。


OP 要求的更新:

例如,在 Farnell 中可用的 2 个输入异或门的列表是德州仪器 (TI) 的一款特殊产品,也可在 Farnell 购买。


关于安全的一些评论如果您决定切换电源电压,则建议切换热电源线而不是中性线。

最好的办法是使用 SPDT 继电器来确保并切换热和中性。

在此处输入图片说明

您可以使用光隔离器代替 MOSFET,将数字电路和手动开关与继电器和电源隔离。

始终使用适当的密封,不要让裸露的金属表面打开。请记住,处理电源电压总是非常危险的。

我相信你的原始陈述可能有缺陷。

我不能使用继电器的原因是我还需要手动切换开关

为什么不直接买一个带手动操作的继电器呢?

这是霍尼韦尔提供的一种

异或电路或此电路将实现您的要求! 在此处输入图片说明

  • 它的工作原理类似于楼梯开关,可以从两侧切换灯泡。我正在使用 2 个SN74LVC1G3157DBVR芯片。IO1 接开关,IO2 接Pic I/O 管脚。
  • 我唯一无法控制的是知道继电器的状态,因此连接的微控制器不知道负载的状态。

在此处输入图片说明