КОМП'ЮТЕРНА СИСТЕМА ДЛЯ ПРОГНОЗУВАННЯ АТМОСФЕРНОГО ТИСКУ ТА ТЕМПЕРАТУРИ З ВИКОРИСТАННЯМ ШТУЧНИХ НЕЙРОННИХ МЕРЕЖ
09.11.2023 18:49
[1. Інформаційні системи і технології]
Автор: Одайська Христина Савеліївна, кандидат технічних наук, асистент, кафедра комп'ютерних систем та мереж, Чернівецький національний університет імені Юрія Федьковича, м. Чернівці;
Бачук Ярослав Ярославович, студент, кафедра комп'ютерних систем та мереж, Чернівецький національний університет імені Юрія Федьковича, м. Чернівці
На даний час комп’ютерні системи інтернету речей широко застосовуються для зчитування атмосферного тиску, температури навколишнього середовища та інших погодних умов. Такі системи реалізуються на основі мікроконтролерів, зчитують початкові дані з множини сенсорів і передають їх через безпровідні та/або провідні комп’ютерні мережі на сервери, де виконується візуалізація та аналіз даних. Отримана інформація є корисною для сільського господарства, авіації, туризму та інших галузей, де погода має важливе значення. Проте, найскладнішим завданням у таких системах є прогнозування часових залежностей для погодних умов. Методи математичного моделювання є дуже складними у реалізації, тому в даній роботі запропоновано застосувати штучні нейронні мережі (ШНМ) для прогнозування часових залежностей атмосферного тиску та температури повітря.
Зчитування інформації з сенсорів про погодні умови виконується метеостанцією на базі мікроконтролера ESP8266, швидкодія якого є достатньою для обробки сигналів у режимі реального часу. Для вимірювання атмосферного тиску і температури використано сенсор-барометр BME280 [1], який приєднується до мікроконтролера через шину I2C (рис. 1а). Сенсор забезпечує вимірювання температури з точністю до 0.5 ºС, а вимірювання тиску з точністю до 102Па. Сенсор DHT21 (інтерфейс 1-wire) використано для вимірювання температури (з точністю до 0.5 ºС), а потенційно можна використовувати для вимірювання вологості (рис. 1б).
Рис. 1. Сенсори BME280 (а) та DHT21 (б)
Дані з сенсорів зчитуються із заданим періодом часу (наприклад, 10 хв.) і передаються на сервер, реалізований на платформі .NET Core. На сервері дані обробляються та зберігаються в базі даних. Користувачі системи в Android додатку можуть переглядати метеодані у вигляді таблиць і графіків, а також отримувати прогнози погоди (значення температури і тиску).
Прогнозування часових залежностей температури і тиску виконано за допомогою ШНМ, реалізованою на мові Python [2]. У роботі використано ШНМ з архітектурою довгою короткочасової пам’яті LSTM (Long Short-Term Memory). Мережі LSTM належать до рекурентних нейронних мереж, які спеціально розроблені для прогнозування часових залежностей. Назва LSTM означає, що така мережа запамʼятовує значення як за короткі, так і за довгі часові інтервали. Після навчання LSTM на входи мережі подаються дані за попередній часовий період (наприклад, за 3 доби), а на виходах отримується прогноз на наступний часовий період (наприклад, на добу).
Таким чином, розроблена комп’ютерна система дозволяє зчитувати з сенсорів значення температури та атмосферного тиску, передавати дані на сервер, виконувати їх візуалізацію, прогнозувати значення атмосферного тиску і температури. У перспективі також можна прогнозувати інші погодні умови: вологість, швидкість вітру та ін.
Література
1.Барометр BME280 5В I2C. URL: https://arduino.ua/prod1930-bme280-5v-i2c-datchik-temperatyri-vlajnosti-davleniya.
2.Long short-term memory. URL: https://en.wikipedia.org/wiki/Long_short-term_memory