Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Это руководство предназначено для питания поездов в Великобритании и отображения погоды. Он использовал базу данных OpenLDBWS National Rail, чтобы в режиме реального времени получать информацию об отправлении поездов для конкретной местной железнодорожной станции и отображать ее. Он использует базу данных openweather, чтобы получить 5-дневный прогноз для города и отобразить его.
Он имеет следующие особенности
- Доступ к базе данных национальных железнодорожных вокзалов
- Можно отфильтровать список, чтобы показать поезда, идущие в конкретный пункт назначения
- Доступ к базе данных openweather для получения прогноза на 5 дней
- Обработка на основе ESP8266, подключается к локальной сети Wi-Fi
- Питание от аккумулятора (перезаряжаемый LIPO) со встроенным зарядным устройством
- Очень низкий ток покоя для длительного срока службы батареи
- ЖК-дисплей 320 x 240 с 3 кнопками управления
- Автоматический сон
- Редактируемые данные конфигурации
- Обновление программного обеспечения по воздуху
- Корпус, напечатанный на 3D-принтере
Шаг 1. Использование
Устройство включается коротким нажатием средней кнопки.
При первом использовании он создаст точку доступа для локальной конфигурации Wi-Fi. Используйте телефон для подключения к этой сети. Используйте браузер телефона для доступа к 192.168.4.1, и вы получите страницу конфигурации Wi-Fi. Выберите сеть и введите ее пароль. Устройство сохранит это и перезапустится, чтобы получить доступ к локальной сети. Этот шаг может потребоваться снова при переходе в другую сеть или изменении пароля.
После подключения к локальной сети Wi-Fi устройство будет обращаться к национальной базе данных железных дорог или базе данных openweather и запрашивать ее, чтобы найти отправления для настроенной станции и пункта назначения или прогноз погоды. Это будет повторяться с интервалом, установленным в файле конфигурации.
Использование кнопки выглядит следующим образом
- Верхняя кнопка - короткое нажатие. На страницу вверх, если на экране отображается больше услуг
- Сверху снизу - долгое нажатие. Показать напряжение батареи и IP-адрес. Кратковременное нажатие вернет его к нормальному отображению.
- Средняя кнопка - короткое нажатие. Включает агрегат. Затем переключается между поездами и погодой.
- Средняя кнопка - долгое нажатие. Заставить уснуть.
- Нижняя кнопка - короткое нажатие. Перейдите на страницу вниз, если на экране появятся другие службы.
- Нижняя кнопка - долгое нажатие. Перейдите к следующей паре начальной и конечной станций назначения или метеорологическим городам, если введено несколько.
Устройство автоматически перейдет в спящий режим в соответствии с настройками.
Доступ к файлу конфигурации можно получить с помощью http: / ip / edit (после полной настройки).
Конфигурация включает в себя записи TrainStation и TrainDestinations. Первый - это код crs для местной станции, с которой вы хотите видеть отправления. Вторая - это станция crs, через которую должен пройти отправляющийся поезд. Это используется для фильтрации отправлений до тех, которые представляют интерес (скажем, в одном направлении). Его можно оставить пустым, чтобы показать все отправления. Любая запись может содержать до 4 кодов, разделенных «,». Если их меньше 4, то последний элемент повторяется, чтобы составить 4. Долгое нажатие нижней кнопки используется для обхода этих пар при отображении вылетов.
Он также включает weatherCityCodes и weatherCityNames.
Новое программное обеспечение можно обновить, создав новый двоичный файл в Arduino и выполнив обновление по воздуху, используя http: / ip / firmware.
Шаг 2: Компоненты и инструменты
Следующие компоненты необходимы
- 320x240 3,2-дюймовый ЖК-дисплей с 3 кнопками. Первоначально предназначался для использования с Raspberry Pi, но может использоваться чем угодно с SPI.
- Модуль ESP-12F Esp8266
- 18650 LIPO аккумулятор
- Держатель батареи
- Модуль зарядного устройства Micro USB LIPO
- Заглушка для подключения к ЖК-дисплею
- XC6203E 3.3V регулятор
- Танталовый конденсатор, 200 мкФ, 6,3 В
- AO3401 P-канальный МОП-транзистор
- Стабилитроны x 3
- Резисторы 4к7, 4к7, 470к
- Подключите провод
- Конденсатор 4,7 мкФ
- перфокарт или аналог для монтажа нескольких компонентов
- Смола Клей
- Двухсторонний скотч.
Необходимы следующие инструменты
- Паяльник с мелким наконечником
- Пинцет
Шаг 3: Электроника
Электроника основана на модуле ESP-12F с несколькими дополнительными компонентами для облегчения работы в спящем режиме.
Один из переключателей активирует транзистор MOSFET, который затем включает дисплей и включает ESP8266. Затем вывод GPIO поддерживает питание даже при отпускании переключателя.
Дисплей подключен к стандартным контактам SPI на ESP8266.
Шаг 4: Сборка
Я сделал следующие шаги
- Распечатайте 3D-корпус и убедитесь, что дисплей подходит. Он должен быть плотно прилегающим, а вокруг пуговиц есть вырезы.
- Печать 3D-крышки и дополнительных деталей, включая кронштейн модуля зарядного устройства
- Соберите дополнительную схему регулятора на макетной плате.
- Установите на ESP8266 и подключите к разъему, который может войти в дисплей.
- Добавьте небольшие пятна полимерного клея по краям дисплея, чтобы закрепить его на месте.
- Подключите аккумуляторный отсек и модуль зарядного устройства.
- Смола Приклейте модуль зарядного устройства к кронштейну, а затем приклейте кронштейн к боковой стороне корпуса, убедившись, что USB-порт виден через точку доступа.
- Приклейте держатель батареи к задней части дисплея с помощью двустороннего скотча.
- Полная проводка. Я включил простую розетку в шнур питания от аккумулятора / зарядного устройства до регулятора, чтобы облегчить отключение.
Обратите внимание, что некоторые версии модуля ЖК-дисплея имеют немного другую проводку источника питания и не имеют входа напряжения 3,3 В на контактах 1 и 17. Они полагаются на вход 5 В на контакты 2 и 4, а затем используют встроенный регулятор 1117. чтобы обеспечить необходимое напряжение 3,3 В. Их все еще можно использовать нормально, но потребуется, чтобы выходной сигнал 3,3 В от электроники был направлен прямо на среднюю ножку регулятора платы дисплея, минуя регулятор и обеспечивая прямое напряжение 3,3 В.
Шаг 5: Программное обеспечение и конфигурация
Программное обеспечение основано на Arduino, а репозиторий находится по адресу
Поскольку ESP8266 ограничен в памяти, интерфейс с базами данных Rail и погоды и обработка его ответов были оптимизированы для использования минимального объема памяти. Запрос, используемый для доступа к базе данных, содержится в файле конфигурации и имеет различные параметры, такие как заменяемые имена станций.
Readme содержит инструкции по использованию. В частности, обратите внимание
- Вы должны получить жетоны доступа от National Rail и openWeather. Регистрация и обычное использование бесплатны.
- Перед компиляцией вам следует изменить пароли по умолчанию в ino-файле.
- Вам необходимо изменить файл trainWeatherConfig.txt, чтобы он содержал ваш токен доступа и изменил данные станции и любые личные предпочтения.
- Вам нужно будет получить коды CRS для вашей местной станции и пункта назначения, а также коды метеорологического города. В ReadMe есть ссылки для их получения.