Оглавление:

Система мониторинга Raspberry Pi через модуль дисплея OLED: 5 шагов
Система мониторинга Raspberry Pi через модуль дисплея OLED: 5 шагов

Видео: Система мониторинга Raspberry Pi через модуль дисплея OLED: 5 шагов

Видео: Система мониторинга Raspberry Pi через модуль дисплея OLED: 5 шагов
Видео: Troyka Cap — хаб для Raspberry Pi. Подключаем модули трёхпроводными шлейфами. Железки Амперки 2024, Июль
Anonim
Система мониторинга Raspberry Pi через модуль дисплея OLED
Система мониторинга Raspberry Pi через модуль дисплея OLED

В этом руководстве я объясню, как настроить 0,96-дюймовый дисплейный модуль OLED для отображения системной информации Raspberry Pi 4 Model B с использованием интерфейса I2C.

Запасы

Требуемое оборудование:

  • Raspberry Pi 4 Модель B
  • Модуль дисплея 128 × 64 OLED (SSD1306)
  • Подключение проводов

Шаг 1: Подключение оборудования

Подключение оборудования
Подключение оборудования

Ниже приведены подключения модуля OLED к Raspberry Pi 4 Model B:

  • SDA ==> GPIO 2 (вывод 3)
  • SCL ==> GPIO 3 (вывод 5)
  • VCC ==> 3,3 В (вывод 1)
  • GND ==> GND (контакт 14)

Шаг 2. Включите интерфейс I2C

Интерфейс I2C по умолчанию отключен, поэтому вам необходимо его включить. Вы можете сделать это с помощью инструмента raspi-config в командной строке, запустив:

sudo raspi-config

  1. Появится синий экран. Теперь выберите опцию Interfacing.
  2. После этого нам нужно выбрать опцию I2C.
  3. После этого нам нужно выбрать Да и нажать ввод, а затем ОК.
  4. После этого нам нужно перезагрузить Raspberry Pi, набрав команду ниже:

перезагрузка sudo

Следующие библиотеки могут быть уже установлены, но все равно выполните эти команды, чтобы убедиться:

sudo apt-get install python-smbus

sudo apt-get install i2c-tools

Чтобы найти список устройств, подключенных к шине I2C на Raspberry Pi, вы можете использовать следующую команду:

sudo i2cdetect -y 1

На старом Raspberry Pi введите следующую команду:

sudo i2cdetect -y 0

Вот результат, который я вижу на своей Raspberry Pi 4 Model B:

0 1 2 3 4 5 6 7 8 9 а б в г д е

00: -- -- -- -- -- -- -- -- -- -- -- -- --

10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

30: - - - - - - - - - - - - 3c - - -

40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

70: -- -- -- -- -- -- -- --

Он показал, что устройство было обнаружено с адресом 0x3c. Это шестнадцатеричный адрес по умолчанию для этого типа устройства.

Шаг 3. Установите библиотеку Python Adafruit для модуля OLED-дисплея

Чтобы установить библиотеку, мы клонируем репозиторий Adafruit git.

git clone

По завершении перейдите в каталог библиотеки:

компакт-диск Adafruit_Python_SSD1306

и установите библиотеку для Python 2:

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

или для Python 3:

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

Шаг 4. Сценарий Python для системного монитора

Скрипт Python для системного монитора
Скрипт Python для системного монитора

Перейдите в каталог примеров:

CD примеры

В этой папке вы должны найти пример скрипта:

stats.py

python3 stats.py

По умолчанию он показывает использование памяти, использование диска, загрузку процессора и IP-адрес. Также можно увидеть префикс b перед каждой строкой.

Он будет немного изменен, чтобы избавиться от префикса b и добавить температуру процессора Raspberry Pi 4 Model B.

cmd = "имя хоста -I | вырезать -d / '\' -f1"

будет заменен следующей строкой:

cmd = "имя хоста -I | cut -f 2 -d ''"

Этот код идеально подходит при загрузке, если вы хотите найти IP-адрес вашего Raspberry Pi для SSH или VNC.

Следующие строки будут добавлены для отображения температуры процессора на модуле дисплея OLED:

cmd = "vcgencmd measure_temp | cut -f 2 -d '='"

temp = subprocess.check_output (cmd, shell = True)

Нижеприведенный код был изменен соответствующим образом, чтобы удалить символ «b» с OLED-дисплея.

draw.text ((x, top), "IP:" + str (IP, 'utf-8'), font = font, fill = 255) draw.text ((x, top + 8), str (CPU, 'utf-8') + "" + str (temp, 'utf-8'), font = font, fill = 255) draw.text ((x, top + 16), str (MemUsage, 'utf-8')), font = font, fill = 255) draw.text ((x, top + 25), str (Disk, 'utf-8'), font = font, fill = 255)

Наконец, вы должны увидеть что-то похожее на следующий вывод на OLED-дисплее:

Шаг 5. Запуск Stats.py при запуске

Вы можете легко сделать так, чтобы эта программа запускалась каждый раз, когда вы загружаете Raspberry Pi.

Самый быстрый и простой способ - поместить его в /etc/rc.local. Запустите следующую команду на терминале:

sudo nano /etc/rc.local

Прокрутите вниз и прямо перед строкой exit 0 введите следующее:

sudo python /home/pi/stats.py &

  • Сохранить и выйти.
  • Перезагрузитесь, чтобы убедиться, что экран появляется при загрузке!

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