Реклама ⓘ
Главная » Arduino
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

Мониторинг данных коронавируса Covid-19

Главные новости последнего месяца (апрель 2020) практически во всех странах – коронавирус Covid-19. В данном проекте описывается маленький гаджет, который поможет вам быть в курсе о ситуации в вашей стране по коронавирусу. Естественно мониторинг Covid-19 выбран так как это сейчас у всех на слуху, а подобным образом можно выводить любую статистическую информацию с интернета – погоду, курсы валют и акций, кол-во дней до какого-либо события и т.д.

В данном проекте отображается в реальном времени вся статистика о случаях заболевания, смерти и выздоровления людей от коронавируса COVID-19. За основу проекта взят контроллер Wemos D1 Mini Pro, который основан модуле ESP8266, который в свою очередь парсит данные с worldometers через API-интерфейс ThingSpeak. Звучит сложно? Но на самом деле все очень просто и ниже вы в этом убедитесь! Для отображения данных я использовал 0,96-дюймовый OLED-дисплей.

Итак, нам понадобится:

OLED-дисплей

OLED-дисплей подключается к плате Wemos по шине I2C. Не вижу смысла описывать это мероприятие, т.к. по данному дисплею все очень досконально разжевано в этой статье.

Поэтому вся схема подключений до безобразия проста:

Схема подключений Wemos

Подключение OLED к Wemos:
VCC -> VCC
GND - > GND
SCL-> D1
SDA -> D2

В качестве питания я использовал Li-Ion аккумулятор форм-фактора 18650. Выводы с держателя аккумулятора 18650 через выключатель питания подсоединяются к пинам 5V и GND платы Wemos.

Ну а теперь настало самое интересное: настройки ThingSpeak.

ThingSpeak

Сперва вам необходимо зарегистрироваться на сайте https://thingspeak.com/

Имейте ввиду, что также понадобиться зарегистрироваться и на MathWorks.

Затем вверху нажимаем «New ThingHTTP».

Откроется форма с кучей полей для заполнения, но нам нужны всего три:

  1. Имя проекта (на ваш выбор)
  2. URL-адрес: https://www.worldometers.info/coronavirus/
  3. Parse String: строка для парсинга. Ниже я расскажу подробнее.

Заходим на сайт статистических данных по коронавирусу: https://www.worldometers.info/coronavirus/

Находим там свою страну. 

Затем щелкаем по названию страны и переходим на страницу метрики:

Здесь отображается три счетчика:
1. Кол-во зараженных (Coronavirus Cases)
2. Умерло (Deaths)
3. Вылечились (Recovered)

Выделяем цифры нужного нам счетчика. К примеру Coronavirus Cases:

Щелкаем по выделенному правой кнопкой мыши и в контекстном меню выбираем «Посмотреть код». Сбоку или снизу откроется панель разработчика с HTML-кодом данного элемента и страницы. Я буду показывать на примере самого популярного браузера: Google Chrome. В других браузерах названия и меню могут быть немного другими, но смысл остается таким же.

Затем щелкаем по строке правой кнопкой мыши и в контекстном меню кликаем по Copy -> Copy XPath. Вообще Xpath это декларативный язык запросов к элементам xml или (x)html документа. Говоря простым языком это путь в иерархии к элементу.

Затем возвращаемся на сайт ThingSpeak и в настройках ThingHTTP вставляем полученный XPath в поле Parse String.

Сохраняем. Проделываем тоже самое для Deaths и Recovered. В итоге должно получиться примерно так:

Названия полей не важны, главное что нам потом понадобиться это Api Key.

 

Программный код

Скетч прикреплен внизу к статье. Также понадобиться библиотека для OLED-дисплея, которую можно взять на GitHub.

Для использования Wemos D1 необходима среда разработки Arduino IDE с ESP8266.

В исходном коде нужно будет заменить следующие строки:
- SSID и пароль вашего домашнего маршрутизатора
- Три строки с Api Key, которые нужно скопировать с ThingHTTP.

После компиляции скетча и загрузки кода в плату должно получиться так:

Подобным образом можно парсить и выводить практически любую информацию из интернета.

На этом все. Надеюсь, что цифры заболевших не будут увеличиваться, а больным пожелаю скорейшего выздоровления! И никому не болеть!

Тема на форуме по коронавирусу Covid-19.

Оригинал статьи

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (3) | Я собрал (0) | Подписаться

0
Публикатор #
На форуме автоматически создана тема для обсуждения статьи.
Ответить
0
andro #
Актуальная и интересно реализованная тема, хорошо бы добавить элементы ввода для выбора другой беспроводной сети и переключения между разными странами.
Ответить
0
maxim #
В чем смысл 3х url если используется только один?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Raspberry Pi 2
Raspberry Pi 2
Программатор Pickit3 Печатная плата для усилителя "LM3886 + AD825"
вверх