30 лет мы работаем для разработчиков, изготовителей и ремонтников электроники
Практические занятия робототехника. Конструктор ROBOT BIN CLASSIC

Методы оплаты Методы оплаты
Покупайте товар со скидкой, выбирая эти формы оплаты!
Прайс-листы DESSY.RU для скачивания
Партнерская программа
Наши акции
 
Архив новостей Архив новостей
Новости Новости!
Распечатать
Код товара: ENS-00929    

Стартовый набор Starter Kit №1 для Arduino. Интернет вещей

Нам очень жаль, но ТОВАРА НЕТ В НАЛИЧИИ! Когда он появится - мы автоматически Вас известим об этом, стоит только прописать свой email в системе уведомления, нажав на текст Уведомить о товаре.

Уведомление о появлении товара на складе

При появлении на нашем складе данного товара, на указанный вами адрес будет выслано уведомление

Стартовый набор Starter Kit №1 для Arduino. Интернет вещей

Обратите внимание на близкий
по назначению товар:


Мастер XXL. Образовательный набор для проектов Arduino

Мастер XXL. Образовательный набор для проектов Arduino

СВЯЗНОЙ. Набор для проектов на основе контроллера Arduino

СВЯЗНОЙ. Набор для проектов на основе контроллера Arduino

Стартовый набор Starter Kit №9 для Arduino

Стартовый набор Starter Kit №9 для Arduino

Направление микроэлектроники "Интернет вещей" (IoT) сейчас набирает всё большую популярность. По различным экспертным оценкам, к 2020 году стоимость мирового рынка Интернета вещей составит $7,1 трлн, а количество подключенных устройств достигнет цифры в 25 млрд.
Предлагаемый набор NodeMCU IOT programming learning starter kit призван помочь начинающим приобрести навыки создания и программирования устройств "Интернета вещей".

Состав набора:
плата NodeMCU ESP8266;
кабель micro-USB для подключения платы NodeMCU к компьютеру;
батарейный отсек на 4 AAA аккумулятора;
макетная плата BB-102 для монтажа без пайки;
5 кнопок и разноцветные колпачки к ним;
набор проводов MM и FF;
6 светодиодов ярких белых;
6 светодиодов красного цвета;
6 светодиодов зеленого цвета;
6 светодиодов желтого цвета;
3 фоторезистора;
3 потенциометра 10кОм;
датчик влажности и температуры DHT11;
датчик наклона;
ЖК дисплей 16x2 c интерфейсом I2C;
блок из 4 7-сегментных индикаторов;
шаговый двигатель 28BYJ-48 5 В с платой управления;
сервопривод SG90;
пьезодинамик;
ИК пульт управления и ИК-приемник VS1838B;
20 резисторов номиналом 200 Ом;
20 резисторов номиналом 1 кОм;
20 резисторов номиналом 10 кОм;
5 резисторов номиналом 1 Мом.

Ядро набора – плата NodeMCU, которая основана на WiFi модуле ESP8266, представляющем собой полноценный 32-битный микроконтроллер, который на данный момент составляет серъезную конкуренцию плате Arduino.
К данному набору прилагается онлайн-учебник на английском языке (http://osoyoo.com/2016/11/28/3596/) – набор примеров для всех датчиков с подробными комментариями.
Для подключения к Интернету вещей в примерах используется очень популярный и простой IoT протокол – MQTT. MQTT (Message Queue Telemetry Transport) – лёгкий сетевой протокол работающий поверх TCP/IP. Используется для обмена сообщения между устройствами по принципу издатель-подписчик (publish–subscribe).
Программирование примеров рассмотрено в среде Arduino IDE для ESP8266. Если у вас есть некоторый опыт в кодировании Arduino, вы cможете начать программировать NodeMCU в кратчайшие сроки.
Изучив примеры вы сможете быстро перейти к созданию собственных проектов в области Интернета вещей.
Рассмотрим установку Arduino IDE для ESP8266.
Сначала необходимо скачать Arduino IDE с официального сайта версии не ниже 1.6.5. Запускаем Arduino IDE. Выбираем пункт Файл ? Настройки и в поле Additional Boards Manager URLs вводим http://arduino.esp8266.com/stable/package_esp8266com_index.json. Нажимаем OK.

Стартовый набор Arduino Starter Kit №1 Интернет вещей

Выбираем пункт Инструменты - Плата - BoardsManager и в списке ищем плату ESP8266. Выбираем этот пункт, версию и нажимаем на Install.
Стартовый набор Arduino Starter Kit №1 Интернет вещей
Стартовый набор Arduino Starter Kit №1 Интернет вещей
Стартовый набор Arduino Starter Kit №1 Интернет вещей
После загрузки программного обеспечения в списке плат (Инструменты - Плата ) появятся платы ESP8266.
Стартовый набор Arduino Starter Kit №1 Интернет вещей
Рассмотрим пример подключения датчика влажности и температуры DHT11 к плате NodeMCU ESP8266 и отправку данных по протоколу MQTT в интернет на сервер http://www.mqtt-dashboard.com/.
Нам потребуются следующие компоненты из набора:
плата NodeMCU ESP8266;
макетная плата BB-102 для монтажа без пайки;
датчик влажности и температуры DHT11;
несколько проводов MM.
Собираем следующую схему:

Стартовый набор Arduino Starter Kit №1 Интернет вещей
Для написания скетча понадобится загрузить и установить две библиотеки:
клиентская библиотека MQTT для общения с MQTT брокером;
библиотека DHT для доступа к датчику DHT11.

Создаем новый скетч следующего содержания:

#include
#include
#include
dht DHT;

// подключение датчика DHT11 к pin 3
#define DHT11_PIN D3

// Установить свои настройки сети
const char* ssid = "your_hotspot_ssid";
const char* password = "your_hotspot_password";
const char* mqtt_server = "broker.mqtt-dashboard.com";
//const char* mqtt_server = "iot.eclipse.org";

WiFiClient espClient;
PubSubClient client(espClient);
long lastMsg = 0;
char msg[50];
int value = 0;

void setup_wifi() {
delay(100);
// Подключиться к WiFi сети
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED)
{
delay(500);
Serial.print(".");
}
randomSeed(micros());
Serial.println(");
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
}

void callback(char* topic, byte* payload, unsigned int length)
{
Serial.print("Command is : [");
Serial.print(topic);
int p =(char)payload[0]-"0";
int chk = DHT.read11(DHT11_PIN);
// if MQTT comes a 0 message, показать humidity
if(p==0)
{
Serial.println("to show humidity!]");
Serial.print(" Humidity is: " );
Serial.print(DHT.humidity, 1);
Serial.println("%");
}
// if MQTT comes a 1 message, показать temperature
if(p==1)
{
// digitalWrite(BUILTIN_LED, HIGH);
Serial.println(" is to show temperature!] ");
int chk = DHT.read11(DHT11_PIN);
Serial.print(" Temp is: " );
Serial.print(DHT.temperature, 1);
Serial.println(" C");
}
Serial.println();
} //end callback

void reconnect() {
while (!client.connected())
{
Serial.print("Attempting MQTT connection...");
// Создать client ID - random
String clientId = "ESP8266Client-";
clientId += String(random(0xffff), HEX);
// Произвести соединение
//если MQTT broker имееет clientID,username and password
// используйте
// (client.connect(clientId,userName,passWord))
if (client.connect(clientId.c_str()))
{
Serial.println("connected");
//подключение к MQTT broker
client.subscribe("OsoyooCommand");
} else {
Serial.print("failed, rc=");
Serial.print(client.state());
Serial.println(" try again in 5 seconds");
// Пауза 6 секунд
delay(6000);
}
}
}

void setup() {
Serial.begin(115200);
setup_wifi();
client.setServer(mqtt_server, 1883);
client.setCallback(callback);
int chk = DHT.read11(DHT11_PIN);
Serial.print(" Starting Humidity: " );
Serial.print(DHT.humidity, 1);
Serial.println("%");
Serial.print(" Starting Temparature ");
Serial.print(DHT.temperature, 1);
Serial.println("C");
}

void loop() {
if (!client.connected()) {
reconnect();
}
client.loop();
long now = millis();
// чтение данных с DHT11 каждые 6 секунд
if (now - lastMsg > 6000) {
lastMsg = now;
int chk = DHT.read11(DHT11_PIN);
String msg="real time temperature: ";
msg= msg+ DHT.temperature;
msg = msg+" C ;real time Humidity: " ;
msg=msg+DHT.humidity ;
msg=msg+"%";
char message[58];
msg.toCharArray(message,58);
Serial.println(message);
// отправить данные в MQTT broker
client.publish("OsoyooData", message);
}
}


Вносим в скетч следующие изменения:
SSID и пароль для точки подключения платы NodeMCU к вашей сети:
const char* ssid = "your_hotspot_ssid";
const char* password = "your_hotspot_password";
Если Вы будете использовать другой MQTT сервер, поменяйте его название в следующей строке:
const char* mqtt_server = "broker.mqtt-dashboard.com";

Загружаем скетч на нашу плату NodeMCU, открываем монитор последовательного порта и если соединения указаны правильно, видим отправку данных влажности и температуры датчика на сервер.


На странице http://osoyoo.com/2016/11/28/3596/ вы можете посмотреть другие примеры.

------------------
УТЫ-00929:2950