Оглавление:

Цифровой светодиодный термометр RPi: 6 шагов (с изображениями)
Цифровой светодиодный термометр RPi: 6 шагов (с изображениями)

Видео: Цифровой светодиодный термометр RPi: 6 шагов (с изображениями)

Видео: Цифровой светодиодный термометр RPi: 6 шагов (с изображениями)
Видео: Управление семисегментным индикатором 2024, Ноябрь
Anonim
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi
Цифровой светодиодный термометр RPi

Raspbian OS Узнайте, как я сделал этот цифровой светодиодный термометр с Raspberry Pi Zero W, светодиодной лентой, OLED-дисплеем и специальной печатной платой.

Он автоматически перебирает список городов и отображает температуру на OLED-дисплее и на светодиодах. Но вы также можете вручную выбрать город для отображения с помощью кнопок сбоку. Вдобавок к этому он отключит светодиоды и OLED, если он был неактивен в течение нескольких минут, и снова включится, если обнаружит значительное изменение освещения (контролируется LDR).

Запасы

- Raspberry Pi Zero W и SD-карта с ОС Raspbian

- 1,5-дюймовый OLED-модуль от Waveshare

- Блок питания 5V 2.4A для Raspberry Pi

- 5-метровая светодиодная лента WS2812B, 30 светодиодов / м

- Винты, шайбы, болты и стойки.

- Пользовательская печатная плата с кнопками, переключателем, ldr, штыревыми разъемами и т. Д.

- Паяльник и припой

- Горячий клей

- Клей для дерева

- фанера 4мм и 6мм

- белый акрил 3мм

Шаг 1. Данные о погоде

Данные о погоде
Данные о погоде

Благодарим StuffWithKirby за его код для чтения данных о погоде в формате JSON на python.

Я бесплатно собираю данные о погоде с OpenWeatherMap.org, где они предоставляют данные о погоде из множества крупных городов во многих странах.

1. Начните с создания БЕСПЛАТНОЙ учетной записи на OpenWeatherMap.org.

2. Затем скопируйте свой API-ключ, чтобы использовать его позже.

3. Теперь загрузите, разархивируйте и откройте файл city.list.json.gz, найдите города, которые вы хотите отобразить, и скопируйте идентификаторы города для дальнейшего использования.

Шаг 2: Настройка RPi и написание кода

Настройка RPi и написание кода
Настройка RPi и написание кода
Настройка RPi и написание кода
Настройка RPi и написание кода

Сначала я подключил OLED к Pi и установил необходимые библиотеки для OLED, как описано производителем здесь.

Убедитесь, что RPi подключен к Интернету.

1. Включите функцию I2C и SPI в raspi-config в разделе «Параметры интерфейса». Выходим и перезагружаемся.

2. Запустите это, чтобы обновить:

sudo apt-get update

3. Выполните следующие команды, чтобы установить необходимые библиотеки:

sudo apt-get install python-dev

sudo apt-get install python-smbus sudo apt-get install python-serial sudo apt-get install python-imaging

4. Выполните следующую команду, чтобы открыть файл конфигурации:

Судо нано / и т.д. / модули

Убедитесь, что следующие две строки находятся в файле конфигурации, затем выйдите и перезагрузитесь:

i2c-bcm2708

i2c-dev

5. Теперь запустите это, чтобы клонировать мой репозиторий GitHub:

git clone https: / /github.com/Anders644PI/1.5inch-OLED-with-RPi.git

6. Зайдите в новую папку и разархивируйте RPi_GPIO-0_6_5.zip:

разархивировать RPi_GPIO-0_6_5.zip

Запустите это, чтобы установить библиотеку:

cd RPi_GPIO-0_6_5

sudo python setup.py установить

7. Вернитесь в основную папку, набрав:

cd /home/pi/1.5inch-OLED-with-RPi/

Или

CD..

Затем проделайте то же самое с spidev-3_2.zip.

8. Затем разархивируйте wiringPi.zip:

разархивировать проводку

cd wiringPi

И запустите эти команды:

chmod 777 сборка

./строить

Проверьте установку с помощью:

gpio –v

9. Вернитесь в основную папку и разархивируйте bcm2835-1_45.zip

разархивировать bcm2835-1_45.zip

cd bcm2835-1_45

10. Затем запустите это, чтобы установить библиотеку:

./configure

сделать sudo сделать проверку sudo сделать установку

11. Снова вернитесь в /home/pi/1.5inch-OLED-with-RPi/ и запустите это, чтобы протестировать OLED:

cd / Demo_Code / Python /

sudo python main.py

Затем мне также пришлось установить библиотеки для светодиодной ленты WS2812B, следуя этому руководству.

После этого оставалось только написать код, что заняло около пары месяцев от начала до конца, работая над ним и заканчивая. Мой код можно найти на моем GitHub здесь.

Шаг 3. Настройка Weather API

Настройка Weather API
Настройка Weather API

1. Переведите CD в LED_Thermometer_Code_and_OLED_driver:

cd LED_Thermometer_Code_and_OLED_driver

2. Затем откройте Official_Digital_LED_Thermometer_v1-0.py:

nano Official_Digital_LED_Thermometer_v1-0.py

Затем прокрутите вниз и отредактируйте api-key на свой api-ключ с openweathermap.org, как показано на изображении выше. Также измените идентификаторы городов и названия городов на желаемые местоположения.

Шаг 4: индивидуальная печатная плата

Второй приз в Raspberry Pi Contest 2020

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