Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Windows IOT - автоматизация розеток

Компоненты и расходные материалы

Raspberry Pi 2, модель B
× 1
Xbee
× 2
Arduino UNO
× 1
Кабель FTDI
× 2
4-канальный релейный экран для Arduino
× 1
SparkFun XBee Shield
× 1

Приложения и онлайн-сервисы

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

Об этом проекте

Введение

В этом проекте мы увидим, как управлять розетками в вашем доме изначально и в облаке с помощью Raspberry Pi, работающего на Windows 10 iot, xbee и arduino. Все образцы кода доступны в github.


Зачем автоматизировать розетки?

Если бы вы могли автоматизировать розетки питания, вместо того, чтобы управлять устройствами из облака, мы могли бы подключить к розетке любые устройства и управлять ими. В этом проекте я использовал примеры управления вентилятором и светом.


Начнем с пчел

Я взял Xbee для передачи радиосигналов. Один Xbee, называемый координатором, подключен к raspberry pi, а другой, называемый маршрутизатором, подключен к розетке. Координатор отправляет сигналы на основе наших входных данных маршрутизатору для управления розетками питания.


Настроить Xbees в режиме AT

Загрузите и установите XCTU.

Для обновления прошивки Zigbee (Xbee) я использовал адаптер adafruit FTDI

Пожалуйста, посмотрите это руководство по настройке Xbees в режиме AT.

Настройка пчел


Вы должны убедиться, что эти два Xbees разговаривают друг с другом, прежде чем мы перейдем к следующему шагу.


Настройте приемник

Нам нужны Zigbee Router, Arduino UNO R3, Xbee Shield для Arduino и релейный щит Arduino.

Эскиз Arduino

Если данные от CoOrdinator Zigbee - ON1, мы включаем relay1. Если данные ON2, мы включаем relay2. Аналогичным образом выключаем реле для ВЫКЛ1 и ВЫКЛ2

Вы должны скомпилировать это в 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); // Если текст включен2. Включите relay2else if (state =="ON2 \ r \ n") digitalWrite (RELAY2,1); // Если текст OFF1. Выключите relay1else if (state =="OFF1 \ r \ n") digitalWrite (RELAY1,0); // Если текст OFF2. Выключите relay2else if (state =="OFF2 \ r \ n") digitalWrite (RELAY2,0); // Ничего не делать иначе {digitalWrite (RELAY1,0); digitalWrite (RELAY2,0);}}  

Настройте розетку (осторожно, мы играем с высоким напряжением)

Реле - это устаревшие технологии в области электроники. Он действует как переключатель. Входом в реле может быть переменное напряжение (от 110 до 240 В). Используя микроконтроллер, такой как arduino, мы можем включать и выключать реле

Мы собираемся подключить к реле высокое напряжение, пожалуйста, соблюдайте переменный ток и соблюдайте особые меры предосторожности при подключении проводов к реле. Это слишком опасно, действуйте на свой страх и риск

Вместо того, чтобы напрямую настраивать реле на розетку, я использовал удлинитель. Однако концепция та же.

В удлинителе оставьте один провод как есть, а второй обрежьте. Подключите один конец провода к общему (C), а другой - к нормально разомкнутому (NO)

Подключите экран реле к Arduino, установите Xbee Shield сверху или экран реле. Подключите Zigbee, настроенный как маршрутизатор на Xbee Shield

Я использовал Xbee Shield для подключения Xbee к arduino. Убедитесь, что в настройках щита установлено значение Xbee. Этот щит вместе с Arduino также можно использовать для записи настроек прошивки, когда мы устанавливаем переключатель в положение USB. Он использует встроенный в Arduino чип FTDI для записи данных в Xbee.

Подключите шнуры и включите Arduino, используя внешний аккумулятор. Ресивер готов.


Настройка сервера

Для настройки сервера нам понадобится Raspberry Pi 2, работающий на Windows 10 IOT, и Zigbee, настроенный в качестве координатора.

Подключите Zigbee к адаптеру FTDI и 6-контактный USB-кабель FTDI RS 232 к USB-порту raspberry pi. Мы настроим веб-сервер на Raspberry Pi с помощью UWP. Сервер будет ждать ввода данных пользователем и, в зависимости от выбора, будет записывать последовательные данные в порт USB, к которому подключен кабель FTDI RS 232, Zigbee будет передавать это сообщение в виде радиоволн. Мы уже настроили DH и DL маршрутизатора в координаторе Zigbee, поэтому сообщение отправляется для исправления маршрутизатора Zigbee.

Чтобы узнать больше о драйверах FTDI для raspberry pi, посетите https://github.com/jark/ftdisample

Следуйте этому видео, чтобы настроить сервер на Raspberry Pi.

Веб сервер


Все образцы кода доступны в github.


Включить Azure

Чтобы управлять своим домом из любой точки мира, мы включаем облачные сервисы в наше приложение.

Вам необходимо создать веб-сайт и разместить его в лазурном цвете. Создайте базу данных SQL Azure для аутентификации / авторизации пользователей вашего сайта. Создайте службу облачного хранилища Azure, чтобы выполнять наши команды. Обработайте эти команды из приложения Raspberry PI Blinky и управляйте своим домом.

Для создания таблиц хранения вам необходимо обратиться к этой статье:

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. Доступ к URL-адресу веб-сервера raspberry в сети
  2. Через веб-приложение aspnet5, размещенное в Azure.
Демо

Заключение

  1. Такая автоматизация решает множество реальных проблем. Подключив дополнительные датчики, такие как датчик света и движения, мы можем включать / выключать свет или, по крайней мере, предоставлять данные пользователю для экономии энергии.
  2. Пожилые люди могут управлять своими розетками с помощью пульта дистанционного управления. В этом случае нам понадобится дополнительное устройство RFID.
  3. Мы можем создать расписание для включения / выключения света, чтобы сэкономить электроэнергию.
  4. Если есть злоумышленник, можно включить все огни.
  5. В отпуске не о чем беспокоиться ... мы можем просто выключить наш дом одним нажатием кнопки.
  6. Нет необходимости постоянно поддерживать температуру в помещении, делайте это тогда, когда считаете нужным. Экономит энергию.

Код

  • Реле
Relay 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. Включите реле 1 if (state =="ON1 \ r \ n") digitalWrite (RELAY1,1); // Если текст включен2. Включите реле2 else if (state =="ON2 \ r \ n") digitalWrite (RELAY2,1); // Если текст ВЫКЛ1. Выключите relay1 иначе if (state =="OFF1 \ r \ n") digitalWrite (RELAY1,0); // Если текст ВЫКЛ2. Выключите relay2 иначе if (state =="OFF2 \ r \ n") digitalWrite (RELAY2,0); // Больше ничего не делать {digitalWrite (RELAY1,0); digitalWrite (RELAY2,0); }} 
Примеры
Пример кода https://github.com/syediddi/hacksterio

Схема

Подключите шнур питания к реле

Производственный процесс

  1. Создание сети беспроводных датчиков в вашем доме
  2. Windows IoT:дверь распознавания лиц
  3. Windows 10 IoT Core и SHT15
  4. Windows 10 IoT Core для Raspberry Pi 3, модель B +
  5. Windows 10 IoT Core:робот, управляемый речью
  6. GoPiGo v2 с Windows IoT
  7. Сила настоящего:почему Интернет вещей важен в вашей цифровой трансформации
  8. Монитор сердечного ритма с использованием Интернета вещей
  9. Бассейн Azure IoT
  10. Отчеты PLCnext Power BI