айРоZетка (Blynk)

Продолжаю делать дом умным 😉 Сразу скажу, что ничего особенного, может сделать любой желающий 🙂
И так…

Железки:

Из ПО:

На телефоне прога Blynk, регистрируемся и создаём первый проект.
Базовый скетч сделал тут, достаточно выбрать сою плату, способ её выхода в сеть и вставить Auth Token (его присвоит мобильное приложение при создании проекта) Так как моя розетка общается с миром через ВиФи, то я в полученном коде ввёл ещё параметры соединения с сетью (ssid и пароль). Собственно розетку можно собирать и она готова к работе. В мобильно приложении, добавляя кнопку включения/выключени просто указываем пин к которому было подключено реле.
Примерно такЯ же решил ещё добавить датчик тока для подключенного потребителя. Соответственно в код добавилась библиотека для него. И показания вывел на виртуальный пин V0.
Итоговый код выглядит так:

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial

#include <ESP8266_Lib.h>
#include <BlynkSimpleShieldEsp8266.h>
// библиотека для работы с датчиком тока (Troyka-модуль)
#include <TroykaCurrent.h>

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "YourAuthToken";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "YourNetworkName";
char pass[] = "YourPassword";

// Hardware Serial on Mega, Leonardo, Micro...
#define EspSerial Serial1

// or Software Serial on Uno, Nano...
//#include <SoftwareSerial.h>
//SoftwareSerial EspSerial(2, 3); // RX, TX

// Your ESP8266 baud rate:
#define ESP8266_BAUD 115200

ESP8266 wifi(&EspSerial);
// создаём объект для работы с датчиком тока
// и передаём ему номер пина выходного сигнала
ACS712 sensorCurrent(A0);

void setup()
{
// открываем последовательный порт
Serial.begin(9600);

// Set ESP8266 baud rate
EspSerial.begin(ESP8266_BAUD);
delay(10);

Blynk.begin(auth, wifi, ssid, pass);
// You can also specify server:
//Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 8442);
//Blynk.begin(auth, ssid, pass, IPAddress(192,168,1,100), 8442);
}

void loop()
{
Blynk.run();
// You can inject your own code or combine it with other sketches.
// Check other examples on how to communicate with Blynk. Remember
// to avoid delay() function!
// вывод показателей сенсора для переменного тока
Blynk.virtualWrite(0, sensorCurrent.readCurrentAC());
delay(100);
}

Ну а в приложении можно добавить любой понравившийся виджет для отображения показаний.
У меня так:

IMG_1018

Ну и внешне устройство получилось такое:

Ну как-то так 😉

IMG_1020

Можно тоже самое собрать компактнее и дешевле. Например хотя бы на базе NodeMCU. Но я сделал так :)

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

w

Connecting to %s