Оглавление:

Погодные часы Raspi-Nextion: 7 шагов
Погодные часы Raspi-Nextion: 7 шагов

Видео: Погодные часы Raspi-Nextion: 7 шагов

Видео: Погодные часы Raspi-Nextion: 7 шагов
Видео: Xiaomi Band 7 - настройка, подключение, обзор всех фишек и частые вопросы 2024, Ноябрь
Anonim
Погодные часы Raspi-Nextion
Погодные часы Raspi-Nextion
Погодные часы Raspi-Nextion
Погодные часы Raspi-Nextion

Меня вдохновило то, что я увидел так много разных часов, построенных на Arduino и Raspberry Pi. Я тоже хотел сделать такую.

Я начал с использования Arduino Mega с ESP8266, но обнаружил, что у 8266 Wi-Fi слишком много сбоев. Я решил использовать запасной Pi, который у меня был (Raspberry Pi3 Model B), хотя я никогда не использовал Python. Я нашел несколько руководств по использованию кода Arduino на Pi, но все это казалось бандажом.

Погодные часы Raspi-Nextion используют Pi с запущенным Raspian, подключенным к улучшенному экрану Nextion 5 дюймов через последовательный порт с программой, написанной на Python.

Я также напечатал на 3D-принтере (с помощью некоторых друзей) чехол.

Как только программа загружается - получает дату и время от Google

Он также будет получать информацию о погоде с помощью thingspeak.com.

Вам нужно будет зарегистрироваться на https://thingspeak.com/apps и использовать ThingHTTP.

Экран будет меняться по мере изменения погоды, то есть: если на улице солнечно, то на экране будет солнечный фон, если идет снег, на экране будет фон, заполненный снегом.

Экран будет тускнеть ночью, чтобы вы могли спать - это настраивается в программе относительно того, в какое время он затемняется и исчезает.

Когда наступит праздник, вы увидите праздничный фон, и экран погаснет, и вы сможете поспать…

Все фоны редактируются с помощью программного обеспечения nextion.

создать собственный экран для дней рождения, годовщин, важных дат…

Шаг 1: Список деталей

Вот список частей и программного обеспечения, которые я использовал:

Аппаратное обеспечение

1. Raspberry Pi 3 Model B (50 долларов на Amazon)

1а. Вам понадобится microSD - у меня была запасная с переходником с usb на microSD

2. Nextion 5-дюймовый улучшенный экран (72 доллара от ITead)

3. 2 маленьких динамика - необязательно - я хотел добавить 2 динамика bluetooth.

4. Аудиоусилитель Bluetooth - дополнительно -

5. блок питания - необязательно - если вы добавите динамики, неплохо добавить блок питания, который будет питать Raspberry и аудиоусилитель -

6. Я также добавил файлы 3D-принтера для всех, кто интересуется.

Программное обеспечение:

1 Распиан -

2. Win32 Disk Imager - используется для записи raspian на microSD для Raspberry Pi -

3. Nextion Editor - для создания пользовательских макетов экрана -

Дополнительно:

1. экран компьютера для подключения к ИП - временно

2 usb-клавиатура и мышь для подключения к пи - временно

Шаг 2: Установите Raspbian и загрузите экран Nextion

Установите Raspbian и загрузите экран Nextion
Установите Raspbian и загрузите экран Nextion

После того, как вы загрузили образ raspian, разархивируйте iso на свой компьютер.

Вставьте карту microSD в USB-адаптер и подключите компьютер.

Выполните быстрое форматирование на sd-карте (fs = fat32)

Загрузите экран:

1. вставьте SD-карту в компьютер и поместите прикрепленный hmi-файл на карту.

2. установите microSD в экран Nextion и включите

3. дождитесь загрузки изображения. Когда закончите, отключите питание от экрана и извлеките карту.

4. Выполните быстрое форматирование на sd-карте (fs = fat32)

Загрузите Rapian на microSD:

Запустите Win32 disk imager и запишите образ на microSD

1. выберите букву вашего microSD

2. выберите распакованный iso-файл с распакованным изображением.

3. Нажмите написать

4. После этого вы можете закрыть Win32 disk imager и отсоединить microSD от вашего компьютера.

5. Подключите microSD к Raspberry Pi.

Шаг 3: загрузите Raspberry Pi и подключите Nextion

Загрузите Raspberry Pi и подключите Nextion
Загрузите Raspberry Pi и подключите Nextion
Загрузите Raspberry Pi и подключите Nextion
Загрузите Raspberry Pi и подключите Nextion
Загрузите Raspberry Pi и подключите Nextion
Загрузите Raspberry Pi и подключите Nextion

На Raspberry Pi необходимо внести несколько изменений в конфигурацию.

Например, чтобы использовать последовательный выход на Pi3 Model B, вы должны отключить Bluetooth.

Соберите PI и подключите клавиатуру, мышь, SD-карту и экран ПК, используя выход hdmi PI.

1. Как только вы подключите питание к Pi, он начнет загружаться. После загрузки вы обнаружите, что у вас есть красивый рабочий стол, на котором уже установлено все необходимое.

1А. Щелкните значок Wi-Fi в правом верхнем углу экрана, подключите Pi к своему Wi-Fi и сохраните настройки.

2. Последовательный порт на GPIO 14 и 15 отключен, потому что он используется bluetooth. Чтобы включить последовательный интерфейс, вы должны добавить следующие строки в /boot/config.txt, вы должны сделать это через терминал, используя sudo nano /boot/config.txt

  • щелкните значок терминала (значок черного экрана) в верхней части экрана
  • введите sudo nano /boot/config.txt
  • с помощью стрелок прокрутите экран вниз и добавьте строки ниже в конец файлов.

# отключить bluetooth, чтобы nextion мог работать на серийном 0

dtoverlay = pi3-disable-bt enable_uart = 1

enable_uart = 1

  • После добавления этих строк мы сохраняем и выходим
  • нажмите Control x, чтобы выйти
  • нажмите Y, чтобы сохранить
  • нажмите [ввод], чтобы сохранить файл

выключение и удаление питания с пи

рестарт.

откройте терминал и введите распиновку

мы будем использовать GPIO 14 и 15 для последовательной связи с nextion

Вы увидите, какие контакты на Raspberrys GPIO являются GPIO 14 и 15 на экране.

3. Выключите Pi и подключите экран, как показано на прилагаемом рисунке.

4. Перезагрузите Pi.

5. Откройте терминал и введите sudo raspi-config.

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

7. Tab для завершения

8. Перезагрузитесь еще раз.

Шаг 4: написание вашей программы на Python

Написание вашей программы на Python
Написание вашей программы на Python

Выберите свою любимую IDE для Python и приступайте к программированию…

Я выбрал Geany, так как он уже установлен на образе Raspian. Его также очень легко использовать, и тестирование программы не может быть проще. Все, что вам нужно сделать, это щелкнуть значок бумажного самолетика в верхней части экрана Geany, и он запустит программу.

Прилагаю свою программу в качестве примера. Это поможет показать вам, как получить доступ к последовательному порту и различным функциям экрана Nextion. Не стесняйтесь редактировать по своему усмотрению

Шаг 5. Запустите программу, когда Raspberry Boots…

Запустить программу, когда Raspberry Boots…
Запустить программу, когда Raspberry Boots…

К этому времени вы сможете запустить программу на своем экране.

Если вы хотите иметь возможность запускать программу часов raspberry pi без клавиатуры, мыши и экрана компьютера, выполните следующие действия.

1. добавьте эту строку в начало вашей программы #! / Usr / bin / python

2. Сделайте вашу программу исполняемой с помощью команды chmod в терминале.

  • щелкните значок папки в верхней части экрана Raspian и перейдите в папку, в которой находится ваша программа. Мой находится на рабочем столе в папке с именем py
  • Щелкните правой кнопкой мыши папку (я щелкну правой кнопкой мыши папку py и выберу открытый терминал)
  • Введите команду sudo chmod + x, затем укажите путь к программе и нажмите [ввод]
  • sudo chmod + x /home/pi/Desktop/py/NameOfProgram.py
  • закройте терминал, когда закончите

3. Теперь перейдите в папку / etc.

4. Щелкните правой кнопкой мыши папку etc и выберите open ternal

5. В терминале введите sudo nano rc.local

6. Используя стрелки, прокрутите страницу вниз до строки над выходом 0.

7. Добавьте путь к исполняемой программе /home/pi/Desktop/py/NameOfProgram.py

8. Нажмите control + x, чтобы выйти, Y, чтобы сохранить, и нажмите [ввод].

8а. [РЕДАКТИРОВАТЬ] - Вы также должны сделать файл rc.local исполняемым, набрав sudo chmod a + X rc.local

9. Перезагрузите пи, набрав в терминале reboot, и при перезагрузке программа должна запуститься автоматически:)

Шаг 6. Дополнительные динамики Bluetooth

Дополнительные динамики Bluetooth
Дополнительные динамики Bluetooth
Дополнительные динамики Bluetooth
Дополнительные динамики Bluetooth

Аудиоусилитель bluetooth был необходим, так как мы отключили bluetooth для использования последовательного порта

Если вы используете предложенный источник питания, вам нужно будет разорвать провода и использовать 5 В для Raspberry и 12 В для аудиоусилителя Bluetooth.

Подключите питание и динамики согласно приложенному рисунку.

Колонки, которые я использовал, были взяты из старого неисправного вентилятора / колонки с Bluetooth для ванной.

Шаг 7: Использование ThingSpeak

Использование ThingSpeak
Использование ThingSpeak

Вам нужно будет зарегистрироваться на https://thingspeak.com/apps и использовать ThingHTTP.

Я запустил один из-за температуры, а другой - из-за погодных условий, например: солнечно. туманно, снег …

При настройке ThingHttp вам понадобится URL-адрес для отправки запроса на получение

Я использую -

Метод Get

HTTP вер - 1.0

Строка синтаксического анализа немного сложна

1. Зайдите на сайт о погоде в вашем городе.

2. В Google Chrome нажмите F12 (перейдите к шагу 3 или 3a).

3. В правой части экрана найдите и щелкните значок «выберите элемент на странице для проверки».

3а. Или выделите и щелкните правой кнопкой мыши текст, который хотите получить, и выберите «Проверить» (перейдите к шагу 5).

4. Теперь выделите температуру.

5. Справа вы увидите выделенную строку - щелкните правой кнопкой мыши по этой строке, перейдите к копированию и выберите Копировать XPath.

6. Сохраните это как строку синтаксического анализа в настройках thingHTTP.

7. Сохраните вещьHTTP, и вам будет предоставлена ссылка для использования программы с вашим API-ключом.

8. Настройте ссылку так же, как я в программе.

9. Вы можете легко тестировать запросы с помощью программы Insomnia, но это совсем другое руководство..

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