Оглавление:

ESP8266 Погода и информационный экран KVG: 5 шагов
ESP8266 Погода и информационный экран KVG: 5 шагов

Видео: ESP8266 Погода и информационный экран KVG: 5 шагов

Видео: ESP8266 Погода и информационный экран KVG: 5 шагов
Видео: Очередная метеостанция берущая информацию на Openweathermap на ili9341 и esp8266 от ThingPulse.com 2024, Ноябрь
Anonim
ESP8266 Погода и информационный экран KVG
ESP8266 Погода и информационный экран KVG
ESP8266 Погода и информационный экран KVG
ESP8266 Погода и информационный экран KVG

Это простой информационный экран для прогноза погоды через darksky.net и экраны в реальном времени с автобусных остановок для автобусов в Киле через "KVG Echtzeitabfahrten".

Информационный экран основан на NodeMCU (ESP8266) и ЖК-дисплее ILI9341.

Шаг 1. Необходимые детали и инструменты

Части:

  • Плата NodeMCU, содержит модуль Wi-Fi ESP8266 (AliExpress, Ebay, Amazon)
  • 2,8-дюймовый сенсорный ЖК-дисплей 320x240 пикселей (AliExpress, Ebay, Amazon)
  • Любой дешевый внешний аккумулятор, в идеале с выключателем питания (AliExpress, Ebay,…)
  • Несколько сантиметров проволоки
  • Некоторые материалы для корпуса, например древесина

Инструменты:

  • Паяльник и припой
  • При наличии станка с ЧПУ для корпуса

Шаг 2: Подключение

Связь
Связь

Связь между NodeMCU и дисплеем показана выше. Для подключения вам понадобится всего несколько коротких строк:

Показать NodeMCU

  • VCC 3,3 В
  • GND GND
  • CS D8
  • СБРОС 3,3 В
  • DC D3
  • SDI D7
  • SCK D5
  • Светодиод 3,3 В
  • SDO D6
  • T_CLK D5
  • T_CS D2
  • T_DIN D7
  • T_DO D6
  • T_IRQ D1

Шаг 3: Подготовка IDE Arduino

Для программирования я использовал Arduino IDE (v1.8.2).

Установите поддержку ESP8266 Arduino После загрузки IDE вы должны указать программному обеспечению для поддержки модулей ESP8266:

  1. Перейдите в Файл> Настройки.
  2. Вставьте следующую строку в поле «Дополнительные URL-адреса Board Manager»:
  3. Перейдите в Инструменты> Доска> Диспетчер плат…
  4. Найдите ESP8266 и установите «esp8266by ESP8266 Community».
  5. Перейдите в Инструменты> Плата и выберите свою плату ESP8266. Если вы купили одну из упомянутых выше плат, вам следует выбрать NodeMCU 1.0 (модуль ESP-12E).
  6. После установки драйвера выберите правильный порт для NodeMCU в Инструменты> Порт.

Установите драйверы CH340 Если они отсутствуют, вам следует установить драйверы CH340 для вашей ОС. Вы можете найти драйверы через Google или, например, здесь.

Установите необходимые библиотеки Arduino Перейдите в Sketch> Include Library> Manage Libraries… и установите следующие библиотеки:

  • ArduinoJson от Бенуа Бланшена
  • Парсер потоковой передачи Json от Дэниела Эйххорна

Также нам необходимо установить дополнительные библиотеки, которых нет в диспетчере библиотек. Есть два способа установки. Самый простой - скопировать библиотеки, включенные в мой проект GitHub, в папку «библиотеки» Arduino и перезапустить Arduino IDE. Другой - загрузить необходимые библиотеки с GitHub и установить их:

  • TFT_eSPI от Бодмера
  • XPT2046 от Spapadim
  • Время по PaulStoffregen

Загрузите проект с GitHub

github.com/basti8909/Weather-KVG-infoscreen

Шаг 4: Настройка исходного кода

Если вы установили библиотеки вручную, вы должны сначала отредактировать файл «User_Setup.h» библиотеки TFT_eSPI. В противном случае вы можете пропустить следующие две строки.

  • Строка 17: активировать ILI9341_DRIVER
  • Строка 83-86: определите контакты для дисплея, как показано в части подключения

Теперь откройте файл ESP_InfoDisplay.ino с помощью Arduino IDE и настройте свое программное обеспечение:

Вай фай

В строке 108 установите SSID и пароль.

Автобусные остановки

Вам нужен номер автобусной остановки KVG для выбранной вами автобусной остановки. Это можно сделать, открыв следующий веб-сайт, где вы поместите часть названия автобусной остановки после "query =", например "query = Dreiecks"

kvg-kiel.de/internetservice/services/lookup…

Теперь вы должны увидеть список с названием вашей автобусной остановки. Откройте исходный код сайта и вы увидите что-то вроде "li stop =" 23 "> Dreiecksplatz", где 23 - номер вашей автобусной остановки. Теперь вы можете поместить этот номер в строку 172/175/178 основного файла или заглянуть в файл KVGliveAPI.h и добавить номер своей автобусной остановки в литеральный список (например, «static const int Dreiecksplatz = 23;») и использовать это name (KVGliveAPI:: KVGstop:: Dreiecksplatz) в строке 172/175/178 основного файла.

Если вы хотите иметь больше / меньше автобусных остановок, вам нужно только отредактировать оператор switch, начиная со строки 170, и изменить максимальный номер режима в строке 138.

Доступ к API погоды и местоположение

Для доступа к API darksky.net вам понадобится секретный ключ, который на 100% бесплатный. Вам нужно только зарегистрироваться на darksky.net для разработчиков. После авторизации вы увидите поле с заголовком «Ваш секретный ключ». Этот 32-символьный шестнадцатеричный ключ вы должны скопировать в строку 61 файла DarkSkyAPI.h между косыми чертами.

Если вы хотите изменить местоположение погоды, вам нужно только отредактировать строку 16 файла DarkSkyAPI.cpp и строку 25 для имени местоположения.

Теперь вы можете скомпилировать и загрузить программу на ESP8266 (и она должна работать!:))

Шаг 5: создание кейса

Будет позже…

Рекомендуемые: