Recently, a meteorological station has been launched in the gymnasium, the development of which was being conducted throughout the year. The head of this project is Dmytro
Luchyn, a 10th grade student. He will present
his work at the final stage of the competition for the protection of research
works in Kyiv.
Іoт “метеостанція”
Мета: створити IoT пристрій «Метеостанція» на основі плат серії ESP і написати
програмне забезпечення для нього.
Завдання:
1.
Створити алгоритм
роботи метеостанції.
2.
Написати програмне
забезпечення на базі цього алгоритму.
3.
Зібрати апаратну
частину.
4.
Забезпечити обробку
і вивід даних в інтернет в реальному часі, з API функціями.
5.
Створити програму з
графічним інтерфейсом для легкого налаштування користувачами.
6.
Опублікувати проект
на платформі GitHub.
Алгоритм роботи метеостанції показаний на даній
блок-схемі. Все можна звести до 4-х функцій.
1.
Функція
ініціалізації, яка виконується один раз під час запуску. (Запускає інтерфейси)
2.
Функція роботи з
часом. (Синхронізує час через NTP сервер)
3.
Функція роботи з
датчиками та отриманими даними. (Зчитує дані з датчиків та час від часу посилає
їх на MQTT сервер)
4.
Вивід на дисплеї.
Програмне забезпечення написане мовою С++, а точніше її модифікованою
версією, яка називається Wire, у середовищі розробки Arduino
IDE.
Для написання використовувались безкоштовні бібліотеки.
Їх просто використовувати через велику кількість прикладів і робочих проектів.
У якості основи була вибрана плата ESP8266. Вона вміє
запускати LUA скрипти
вбудованим інтерпретатором, але вибрана вона була не тільки через це. При своїй
невеликій ціні вона пропонує:
1.
80/160 MHz процесор
2.
48 KB RAM
3.
1 MB ROM
4.
Wi-Fi 2.4 GHz
Ці характеристики є достатніми для цілей нашого проекту.
Також в метеостанції було використано 3 модулі для Arduino.
1.
DHT22 – датчик температури та вологості.
2.
BMP180 – датчик температури і тиску.
3.
DS1307 – годинник реального часу.
Також в проекті було використано 3 екрани на базі MAX7219.
Дані виводяться в інтернет через протокол MQTT на сервери
безкоштовного сервісу Thingspeak. Через API ключі можна отримувати доступ до даних звідки завгодно.
З використанням мови програмування С++, а також
інструмента Windows Forms
У середовищі розробки Microsoft Visual Studio
я зміг створити програму з простим графічним інтерфейсом
для зміни налаштувань в метеостанції.
Немає коментарів:
Дописати коментар