通过Wi-Fi控制多个电源插座(灯)的最便宜方法


41

我想看到的是使用Raspberry Pi控制灯的最便宜的方法。

我想控制它

我在智能手机上构建了一个界面,可以通过该界面将命令发送到Raspberry Pi。然后,Raspberry Pi会将包裹(或其他东西)发送到我可以放入电源插座中的东西(这样我看不到)。请注意,该设备应通过Wi-Fi连接(否则它将如何从Raspberry Pi接收消息?)。

这是什么东西,什么是最便宜的可能的方式,因为我打算连接十几灯?


有一个由wifi控制的插座,零件的售价约为20美元(不包括覆盆子pi)ProvoTronics.com
Ty Jones

Answers:


22

我正在使用以下物品:

  • 接收器开-关以控制我的灯光(通常将设备放在壁装电源插座中或代替壁装电源插座)。它们工作在 433 MHz频段(ISM)。

开箱即用,您可以使用遥控器将信号发送到接收设备并打开或关闭信号。

就我而言,我造成了这种情况:

  • 在我的Raspberry Pi()上创建了HTML网站/switch.html
  • 我在智能手机上调用该页面
  • 页面上有四个按钮(我控制四个设备/指示灯)
  • 当我单击一个按钮时,它会异步触发一个调用/switch.php(.php在Raspberry Pi上)
  • switch.php调用switch.py,其控制的433 MHz发送者程序(见下文)
  • 433 MHz发送器的功能与开箱即用的遥控器相同。

这是发送方,也就是标准遥控器的替代品: Arduino的433 MHz无线发送器模块Superregeneration

我还创建了供室外使用的方案。

我不想通过家庭路由器将Raspberry Pi直接连接到Internet,所以我为自己建立了另一个网页(在我自己的域中),该网页无法直接控制Raspberry Pi,但是会向(仅我)电子邮件(Gmail)地址。

Raspberry Pi每10分钟检查一次该电子邮件帐户,以查看是否有电子邮件。例如,在该电子邮件中,我说A开或B关。

因此,当我们迟到了并且灯光已经熄灭时,我们导航到我的手机上的站点(计划将其构建为Android应用),单击按钮,页面被发布,并在服务器上发送电子邮件,并且在接下来的0-10分钟内,Raspberry Pi将检查电子邮件,查看四封新电子邮件(A开启,B开启,C开启和D开启)并打开灯。

如何开始

因此,为了开始,这些都是我为了使所有功能正常运行而要做的事情。就我而言,我用Python编写了433 MHz发送器的控制程序(如果您已经知道如何编程,这是一种简单的语言)。

首先,您安装rpi.gpio库。

该库用于通过Python脚本控制Raspberry Pi上的小针脚。请参阅安装RPi.GPIO Python库

然后,您可以选择阅读文章教程:如何像Arduino一样使用Raspberry Pi,这与如何使用rpi.gpio库有关,例如LED闪烁。

但是,Elro灯光开关不是强制性的。

然后,您可以在http://pastebin.com/aRipYrZ6上获得HeikoHeiko编写的Elro命令的出色代码。您将该代码粘贴到名为“ switchelro.py” 的文件中。

然后,您将第94行的字符串更改为自己的跳线设置(如在遥控器和walloutlet设备中所设置的那样。请在使用Raspberry Pi之前,先检查一下组合的remote-walloutlet设备是否可以工作。如果不起作用如果使用标准组件,Raspberry Pi也可能会失败)。

然后,您更改发送器连接到的第97行上的图钉号。

引脚号可以从RPi底层外设File:RPi P1 header.png中获得

您必须使用1..26计数(黑色图像),而不是GPIO34,GPIO24等(绿色图像)。

然后在命令提示符下键入:

sudo python switchelro.py 2 1

这意味着“打开B”(遵循此模式:A = 1, B = 2, C = 4, D = 8, E = 16第一个数字为1,打开为1,第二个数字为0 =关闭)。

我改变了repeat = 10line 30repeat = 20在开始的时候(我不记得为什么)和作品。我从未尝试将其设置为“ 10”。


1
哦,还有价格..在荷兰这里,一套3个walloutlet接收器(您在walloutlet中单击,然后光线进入接收器),带有遥控器的费用为15欧元。433 Mhz发件人的成本约为5美元
Michel

这听起来正是我要寻找的!你能把项目文件发给我吗?(switch.html,switch.php和switch.py​​)我的电子邮件在上面的答案中。另外,在哪里可以买到荷兰的on-off2接收器?您提供的网站不提供任何价格。
瑞克·霍温

优秀的帖子-您可以在通过串行发送的命令的来源中添加找到的位置吗?您在图书馆吗?您如何定位设备?+1
Piotr Kula

1
@Nitin在我的系统中,您可以在接收器(5个开/关切换器)上设置DIP开关,并设置5个字母(A .. E)。因此,default_key = [1,0,0,0,1] pastebin.com/aRipYrZ6代码你控制的拨码开关,并与pin在属性def __init__(self, device, key=[1,1,1,1,1], pin=4):代码你控制A .. E(A = 1 .. E = 16)
米歇尔

1
@Nitin不知道如何用C#控制它。同样,我们也很期待,因为最新的PI将运行Win10,希望它也将运行C#。就是说,虽然我是C#程序员,但是Python很容易学习
Michel

6

这个东西叫做X10,它是大多数家庭自动化任务(包括控制灯光)的行业标准。控制信号通过与设备连接的同一电源线发送。

为了能够从计算机控制一切,您可能需要从OpenRemote网站阅读有关X10计算机接口的信息。您最可能追求的型号是带有USB接口的CM15A,它具有Linux支持。

另外,最好在ebay上检查是否启用了X10的壁装插座和螺口灯模块,这些价格相当便宜,在10-20美元之间。


6

您正在寻找的是 固态继电器或机械继电器。这个想法是,低电压下的少量电流(例如来自RPi的电流)可用于触发较高电压下的大量电流(例如灯)的流动。

我会推荐$ 12用于Arduino Raspberry Pi的SainSmart 8通道DC 5V继电器模块,因为它已经被制造成可以使用螺丝端子的电路板。它内置FET,以提供触发机械继电器所需的额外电流。继电器的布局/数量各异,同一公司有不同的电路板。我发送的是8个频道,因此尽管有16个频道版本可用,但这可能不足以满足您的需求。它们通常比分别购买多个继电器便宜,而且连接起来也很容易。

需要4个连接:

  • 连接到RPi的公共接地(所有继电器共享)
  • 由单独的RPi GPIO线供电的独立输入(触发继电器)
  • 高压输入
  • 高电压输出

高压输入/输出是继电器根据其输入线进行或断开的连接。

我已经有一个AWESOME C程序,可通过SSH远程切换GPIO引脚。如果您愿意,我可以为您提供源代码,甚至说明其工作原理。


我如何对AWESOME程序说不。尽管C不在我的语言清单中,但随着时间的推移,我至少可以看一下代码。
瑞克·霍温

您可以发送rickhoving7@hotmail.com吗?提前致谢!
里克·霍温

如果您的问题已得到回答,请单击投票箭头下方的复选标记。
亚历山大

@XAleXOwnZX我也可以看到这个很棒的代码吗?也许您应该打开“有人通过AWESOME C程序通过SSH远程切换GPIO引脚”问题,然后回答。
2013年

我需要您的电子邮件地址,我将其发送并在明天发布问题与答案
亚历山大

2

我的系统很便宜:43.-欧元((接收机+发射机))如下。

对于家庭自动化,我只需将3.3V兼容的868,35MHz FS20发送器连接到RPI:

http://www.elv.de/elv-fs20-uart-sender-fs20-us-komplettbausatz.html

该发送器直接(仅通过4线)与RPI的GPIO端口(3.3V,GND,TXD,RXD)接口,并且可以通过串行线接口进行简单控制。

您现在可以控制各种FS20设备,例如开关,拨动开关,调光器,计时器,收音机。通过RPI的UART串行控制台接口传输一些字节来实现多通道接收器等。

FS20系统概述:

http://www.elv.de/fs20-funkschaltsystem.html

(不幸的是,该网站仅提供德语版)

我个人更喜欢使用简单的CLI控制家用设备。如果您更喜欢一些GUI,可以在这里查看:

http://fhem.de/fhem.html

幸运的是英语:-)

FS20系统虽然非常灵活,但却非常便宜。简单的开/关开关的示例成本:

自行切换:http : //www.elv.de/elv-funk-schaltsteckdose-fs20-st.html //www.elv.de/elv-funk-schaltsteckdose-fs20-st.html 22,95欧元

UART发送器:http : //www.elv.de/elv-fs20-uart-sender-fs20-us-komplettbausatz.html //www.elv.de/elv-fs20-uart-sender-fs20-us-komplettbausatz.html 19,95欧元

我建议通过无线键盘来控制RPI本身。为此,您可以选择购买这个巧妙的小东西:

RT-MWK03 [无线2.4 GHz](http://www.riitek.com/en/product-detail-428.html



0

虽然并不便宜,但这是我的解决方案:

http://www.everyhue.com/?page_id=38#/discussion/707/raspberry-touchpad-some-success

基本上,您可以将Philips Hue(可通过WiFi控制的可编程多色LED灯)与RPi和触摸板一起使用。USB触摸板表面会影响颜色和亮度尺寸,而鼠标按钮会打开或关闭灯光。成本是RPi + Wifi加密狗($ 11)+便宜的USB触摸板($ 15)+飞利浦Hue套装(桥和3灯200美元,然后每灯60美元)。


0

我有一个不同的方法:我正在使用Busware的CUL USB软件狗(支持FS20 + HMS + FHT +其他协议和设备),并实现了我自己的Java API以抽象化设备并允许通过Java应用程序轻松实现自动化。

如果有人对我的小项目感兴趣:http : //www.paulo-lima.org/hans

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.