亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Windows IOT - 自动化您的电源插座

组件和用品

Raspberry Pi 2 B 型
× 1
Xbee
× 2
Arduino UNO
× 1
FTDI 电缆
× 2
Arduino 4 通道继电器屏蔽
× 1
SparkFun XBee 盾
× 1

应用和在线服务

XCTU
Visual Studio 2015+
Arduino IDE
Microsoft Azure
Microsoft Windows 10 IoT Core

关于这个项目

简介

在这个项目中,我们将看到如何使用在 Windows 10 iot、xbee 和 arduino 上运行的 raspberry pi 在本地和云中控制您家的电源插座。所有代码示例都可以在github中找到。


为什么要自动化电源插座?

如果您可以自动化电源插座,而不是从云端控制设备,我们可以将任何设备连接到电源插座并控制它们。在这个项目中,我以控制风扇和灯为例。


让我们开始使用蜜蜂

我用 Xbee 传输无线电信号。一个称为 Coordinator 的 Xbee 连接到 raspberry pi,另一个称为 Router 连接到电源插座。协调器根据我们的输入将信号发送到路由器以控制电源插座。


在 AT 模式下配置 Xbees

下载并安装XCTU。

为了更新 Zigbee (Xbee) 固件,我使用了 adafruit FTDI 适配器

请观看有关在 AT 模式下配置 Xbees 的教程。

配置蜜蜂


在我们继续下一步之前,您需要确保这两个 Xbees 相互通信。


设置接收器

我们需要 Zigbee 路由器、Arduino UNO R3、用于 Arduino 的 Xbee Shield 和 Arduino 继电器屏蔽。

Arduino 草图

如果来自 CoOrdinator Zigbee 的数据为 ON1,我们打开继电器 1。如果数据为 ON2,我们打开继电器 2。同样我们关断OFF1和OFF2的继电器

您必须在 arduino ide 中编译它并刻录到 arduino uno:

#define RELAY1 7#define RELAY2 5String state ="OFF";void setup(){Serial.begin(9600);pinMode(RELAY1, OUTPUT);}void loop(){//检查是否为串口数据可用if(Serial.available()> 0){state =Serial.readString();Serial.println(state);}//如果文本为ON1。打开relay1if(state =="ON1\r\n")digitalWrite(RELAY1,1);//如果文字是ON2。打开relay2else if(state =="ON2\r\n")digitalWrite(RELAY2,1);//如果text为OFF1.关闭relay1else if(state =="OFF1\r\n")digitalWrite(RELAY1,0);//如果text为OFF2.关闭relay2else if(state =="OFF2\r\n")digitalWrite(RELAY2,0);//Do Nothingelse{digitalWrite(RELAY1,0);digitalWrite(RELAY2,0);}}  

配置电源插座(注意我们玩高压)

继电器是电子领域的古老技术。它充当开关。继电器的输入可以是交流电压(110 至 240 V)。使用arduino等微控制器,我们可以打开/关闭继电器

我们要将高压连接到继电器,请尊重交流电流并在将电线连接到继电器时采取极端的预防措施。这太危险了,风险自负

我没有直接将继电器配置到电源插座,而是使用了延长线。不过概念是一样的。

在延长线中,将一根电线保持原样并夹住另一根电线。将电线一端连接到公共端 (C),另一端连接到 NO(常开)

将继电器屏蔽连接到 Arduino,将 Xbee 屏蔽堆叠在顶部或继电器屏蔽上。在 Xbee Shield 上插入配置为路由器的 Zigbee

我使用 Xbee Shield 将 Xbee 连接到 arduino。确保将屏蔽中的设置设为 Xbee。当我们将开关设置为 USB 时,该屏蔽与 arduino 也可用于写入固件设置。它使用arduino内置的FTDI芯片将数据写入Xbee。

插入电源线并使用外部电池电源为 arduino 供电。接收器完成。


配置服务器

要设置服务器,我们需要在 Windows 10 IOT 上运行的 Raspberry Pi 2 和设置为协调器的 Zigbee。

将 Zigbee 连接到 FTDI 适配器,并将 6 针 FTDI RS 232 USB 电缆连接到树莓派 USB 端口。我们将使用 UWP 在 raspberry pi 上设置一个网络服务器。服务器将等待用户输入,并根据选择,将串行数据写入连接 FTDI RS 232 电缆的 USB 端口,Zigbee 将此消息作为无线电波传输。我们已经在协调器 Zigbee 中设置了路由器的 DH 和 DL,因此将消息发送到正确的 Zigbee 路由器。

要了解有关 raspberry pi 的 FTDI 驱动程序的更多信息,请参阅 https://github.com/jark/ftdisample

请按照此视频在 Raspberry Pi 上设置服务器。

网络服务器


所有代码示例都可以在github中找到。


启用 Azure

为了从世界任何地方控制我们的家,我们为我们的应用启用了云服务。

您需要创建一个网站并将其托管在 azure 中。创建 Azure SQL DB 以对站点的用户进行身份验证/授权。创建一个 Azure 云存储服务来执行我们的命令。处理来自 Raspberry PI Blinky App 的这些命令并控制您的家。

创建存储表需要参考这篇文章:

https://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-tables/

创建Sql表,参考这篇文章:

https://azure.microsoft.com/en-us/documentation/articles/sql-database-get-started/

请观看有关如何在我们的项目中使用 azure 的视频教程:

启用 Azure

演示

我试图展示如何通过两种方式控制电源插座,

  1. 访问网络中的树莓派 Web 服务器 url
  2. 通过托管在 Azure 中的 aspnet5 Web 应用程序
演示

结论

  1. 这种自动化解决了许多现实世界的问题。通过附加额外的传感器,如光和运动检测器,我们可以打开/关闭灯或至少向用户提供数据以节省能源。
  2. 老年人可以使用遥控器控制他们的电源插座。在这种情况下,我们需要额外的 RFID 设备。
  3. 我们可以制定开/关灯的时间表,以节省电力。
  4. 如果有任何入侵者,可以打开所有灯。
  5. 在假期中,无需担心......我们只需点击一下按钮即可关闭我们的家。
  6. 无需一直保持室温,只要您觉得合适就可以。节省能源。

代码

  • 中继
中继C/C++
控制继电器
 #define RELAY1 7 #define RELAY2 5String state ="OFF";void setup(){ Serial.begin(9600); pinMode(继电器1,输出); }void loop(){ //检查串口数据是否可用 if(Serial.available()> 0){ state =Serial.readString(); Serial.println(状态); } //如果文本是ON1。打开relay1 if(state =="ON1\r\n") digitalWrite(RELAY1,1); //如果文本是ON2。打开relay2 else if(state =="ON2\r\n") digitalWrite(RELAY2,1); //如果文本为OFF1。关闭relay1 else if(state =="OFF1\r\n") digitalWrite(RELAY1,0); //如果文本为OFF2。关闭relay2 else if(state =="OFF2\r\n") digitalWrite(RELAY2,0); //什么都不做{ digitalWrite(RELAY1,0);数字写入(继电器2,0); }}
示例
示例代码https://github.com/syediddi/hacksterio

示意图

将电源线连接到继电器

制造工艺

  1. 在家中构建无线传感器网络
  2. Windows IoT:人脸识别门
  3. Windows 10 IoT Core 和 SHT15
  4. Windows 10 IoT Core for Raspberry Pi 3 Model B+
  5. Windows 10 IoT Core:语音控制机器人
  6. GoPiGo v2 与 Windows IoT
  7. 当下的力量:为什么物联网在您的数字化转型中很重要
  8. 使用物联网的心率监测器
  9. Arduino Power
  10. 使用 Alexa 和 Arduino IoT Cloud 完全控制您的电视
  11. Azure IoT 游泳池
  12. PLCnext Power BI 报告