Метеостанция ThingSpeak Arduino
Компоненты и расходные материалы
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Приложения и онлайн-сервисы
| ||||
| ||||
|
Об этом проекте
ПОГОДНАЯ СТАНЦИЯ THINGSPEAK ARDUINO
Погрузитесь в Интернет вещей
Новичку может быть сложно окунуться в Интернет вещей, не зная, с чего начать из множества доступных вариантов. Благослови Господь Вещь. В этом блоге вы познакомитесь с вашим первым проектом Thingspeak IoT, а именно:
а) Дешево и доступно
б) Легко понять
в) РАДИУСНОЕ ОХЛАЖДЕНИЕ.
Проект - датчик температуры и влажности, передающий данные в Thingspeak Cloud с помощью Arduino и модуля Wi-Fi ESP-01.
Вещи, которые вам понадобятся
1. Arduino UNO
2. ESP - 01
3. датчик ДНТ-11
4. макет
5.Источник питания макетной платы
5. Подключение проводов.
ПРИМЕЧАНИЕ. - Теперь вы можете использовать свой arduino для питания датчика и модуля Wi-Fi, но внешний источник, такой как модуль источника питания макетной платы, будет лучше, потому что пиковое потребление тока модуля Wi-Fi в работе не может быть удовлетворено платой. Я пробовал доверять мне
Хорошо, давайте прямо сейчас.
ПОДКЛЮЧЕНИЯ
ESP -01
1. VCC - 3,3 В
2. ЗЕМЛЯ - ЗЕМЛЯ
3. CH_PD - 3,3 В
4. СБРОС - 3,3 В
5. TX - 2 (Arduino)
6. RX - 3 (Arduino)
DHT - 11
1. VCC - 5 В
2. ВЫХОД - A0
3. ЗЕМЛЯ - ЗЕМЛЯ
Не забудьте установить перемычку на 3,3 В на блоке питания макетной платы.
Теперь включите все, и если ничего не горит и не дымится, все хорошо.
НАСТРОЙКА THINGSPEAK
Перейдите на главную страницу thingspeak.
Зарегистрируйтесь и создайте новый канал с двумя полями Температура и Влажность.
При создании нового канала вы получите так называемые ключи API.
Мы будем использовать их позже.
УСТАНОВКА ARDUINO IDE
Теперь этот шаг является ключом к запуску кода. БИБЛИОТЕКИ.
Вы будете использовать два в коде и третий, чтобы использовать те, что в коде.
Выделено красным прямоугольником.
SoftwareSerial.h - это встроенная библиотека, поэтому проблем с ней нет.
1. Библиотеки, которые вам необходимо установить самостоятельно, - это Unified Sensor Library Adafruit и библиотека датчиков DHT. Ссылки для скачивания
Датчик DHT от adafruit- https://github.com/adafruit/DHT-sensor-library
Адафрут Единый Датчик Библиотека- https://github.com/adafruit/Adafruit_Sensor
2. Загрузите оба и добавьте их с помощью функции библиотеки Add.ZIP в среде IDE.
Хоумстретч
Код здесь - https://github.com/imalwaysontheinternet/Weather-Stasion Или просто скопируйте код отсюда и вставьте его в свой скетч.
Перед загрузкой кода необходимо выполнить несколько действий.
1. Вставьте сюда свой ключ API записи
2. Введите здесь SSID и пароль Wi-Fi.
Загрузите код. Если все было сделано правильно, ваш канал Thingspeak должен выглядеть следующим образом.
Обратите внимание, что между обновлениями графиков есть интервал в 15 секунд.
Если по-прежнему не работает, напишите о своих проблемах в комментариях ниже, мы всегда рады помочь. Посетите веб-сайт virginrobotics.blogspot.com для получения любых запросов и других подобных проектов.
Код
- КОД
КОД Arduino
String myAPIkey ="Здесь ваш ключ API записи"; #include#include ; SoftwareSerial ESP8266 (2, 3); // Rx, Tx # define DHTTYPE DHT11 #define DHTPIN A0DHT dht (DHTPIN, DHTTYPE, 11); влажность с плавающей запятой, temp_f; long writingTimer =17; long startTime =0; long waitTime =0; логическое relay1_st =false; логическое relay2_st =false; unsigned char check_connection =0; unsigned char times_check =0; логическая ошибка; void setup () {Serial.begin (9600); ESP8266.begin (9600); dht.begin (); startTime =миллис (); ESP8266.println («AT + RST»); задержка (2000); Serial.println («Подключение к Wi-Fi»); в то время как (check_connection ==0) {Serial.print ("."); ESP8266.print ("AT + CWJAP =\" Имя сети Wi-Fi \ ", \" PassWord \ "\ r \ n"); ESP8266.setTimeout (5000); if (ESP8266.find ("WIFI CONNECTED \ r \ n") ==1) {Serial.println ("WIFI CONNECTED"); ломать; } times_check ++; если (times_check> 3) {times_check =0; Serial.println ("Попытка переподключиться ..."); }}} void loop () {waitTime =millis () - время начала; если (время ожидания> (таймер записи * 1000)) {readSensors (); writeThingSpeak (); startTime =миллис (); }} void readSensors (void) {temp_f =dht.readTemperature (); влажность =dht.readHumidity ();} void writeThingSpeak (void) {startThingSpeakCmd (); // подготовка строки GET String getStr ="GET / update? api_key ="; getStr + =myAPIkey; getStr + ="&field1 ="; getStr + =Строка (temp_f); getStr + ="&field2 ="; getStr + =String (влажность); getStr + ="\ г \ п \ г \ п"; GetThingspeakcmd (getStr); } недействительным startThingSpeakCmd (недействительным) {ESP8266.flush (); Строка cmd ="AT + CIPSTART =\" TCP \ ", \" "; cmd + =" 184.106.153.149 "; // IP-адрес api.thingspeak.com cmd + =" \ ", 80"; ESP8266.println (cmd); Serial.print ("Команды запуска:"); Serial.println (cmd); if (ESP8266.find ("Ошибка")) {Serial.println ("Ошибка AT + CIPSTART"); возвращение; }} String GetThingspeakcmd (String getStr) {String cmd ="AT + CIPSEND ="; cmd + =String (getStr.length ()); ESP8266.println (cmd); Serial.println (cmd); если (ESP8266.find (">")) {ESP8266.print (getStr); Serial.println (getStr); задержка (500); Строка messageBody =""; while (ESP8266.available ()) {Строка строки =ESP8266.readStringUntil ('\ n'); если (line.length () ==1) {messageBody =ESP8266.readStringUntil ('\ n'); }} Serial.print ("MessageBody получено:"); Serial.println (messageBody); return messageBody; } else {ESP8266.println ("AT + CIPCLOSE"); Serial.println ("AT + CIPCLOSE"); }}
Схема
Код
https://github.com/imalwaysontheinternet/Weather-StasionПроизводственный процесс
- Метеостанция Raspberry Pi 2
- Метеостанция Raspberry Pi
- Метеостанция V 2.0
- Цифровые игральные кости Arduino
- Железный человек
- Найди меня
- Роботизированная рука, напечатанная на 3D-принтере Arduino
- Управление увлажнителем Arduino
- Портативная метеостанция Arduino (AWS) за 10 долларов
- eDOT - точные часы и метеостанция на базе Arduino