Table des matières:

Système de surveillance Raspberry Pi via le module d'affichage OLED : 5 étapes
Système de surveillance Raspberry Pi via le module d'affichage OLED : 5 étapes

Vidéo: Système de surveillance Raspberry Pi via le module d'affichage OLED : 5 étapes

Vidéo: Système de surveillance Raspberry Pi via le module d'affichage OLED : 5 étapes
Vidéo: Kiosk mode Bruteforce Evasion with Flipper Zero 2024, Novembre
Anonim
Système de surveillance Raspberry Pi via un module d'affichage OLED
Système de surveillance Raspberry Pi via un module d'affichage OLED

Dans ce didacticiel, je vais expliquer comment configurer le module d'affichage OLED de 0,96 pouce pour afficher les informations système du Raspberry Pi 4 modèle B à l'aide de son interface I2C.

Fournitures

Matériel requis:

  • Raspberry Pi 4 modèle B
  • Module d'affichage OLED 128 × 64 (SSD1306)
  • Fils de connexion

Étape 1: connexion matérielle

Connexion matérielle
Connexion matérielle

Vous trouverez ci-dessous les connexions du module OLED avec Raspberry Pi 4 modèle B:

  • SDA ==> GPIO 2 (broche 3)
  • SCL ==> GPIO 3 (broche 5)
  • VCC ==> 3,3 V (broche 1)
  • GND ==> GND (broche 14)

Étape 2: Activer l'interface I2C

L'interface I2C est désactivée par défaut, vous devez donc l'activer. Vous pouvez le faire dans l'outil raspi-config sur la ligne de commande en exécutant:

sudo raspi-config

  1. Un écran bleu apparaîtra. Sélectionnez maintenant l'option d'interfaçage.
  2. Après cela, nous devons sélectionner l'option I2C.
  3. Après cela, nous devons sélectionner Oui et appuyer sur Entrée, puis sur OK.
  4. Après cela, nous devons redémarrer Raspberry Pi en tapant la commande ci-dessous:

redémarrage sudo

Les bibliothèques suivantes sont peut-être déjà installées mais exécutez quand même ces commandes pour vous en assurer:

sudo apt-get installer python-smbus

sudo apt-get install i2c-tools

Pour trouver une liste des appareils connectés au bus I2C sur le Raspberry Pi vous pouvez utiliser la commande suivante:

sudo i2cdetect -y 1

Sur l'ancien Raspberry Pi, tapez la commande suivante:

sudo i2cdetect -y 0

Voici la sortie que je vois sur mon Raspberry Pi 4 modèle B:

0 1 2 3 4 5 6 7 8 9 a b c d e f

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

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

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

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

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

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

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

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

Il a montré que le périphérique avait été détecté avec une adresse de 0x3c. Il s'agit de l'adresse hexadécimale par défaut pour ce type de périphérique.

Étape 3: Installez la bibliothèque Python Adafruit pour le module d'affichage OLED

Pour installer la bibliothèque, nous allons cloner le référentiel git d'Adafruit.

git clone

Une fois terminé, accédez au répertoire de la bibliothèque:

cd Adafruit_Python_SSD1306

et installez la bibliothèque pour Python 2:

sudo python setup.py installer

ou pour Python 3:

sudo python3 setup.py installer

Étape 4: Script Python du moniteur système

Script Python du moniteur système
Script Python du moniteur système

Naviguez dans le répertoire des exemples:

exemples de cd

Dans ce dossier, vous devriez trouver un exemple de script:

stats.py

python3 stats.py

Par défaut, il affiche l'utilisation de la mémoire, l'utilisation du disque, la charge du processeur et l'adresse IP. En outre, le préfixe b devant chaque chaîne peut être vu.

Il sera légèrement modifié afin de supprimer le préfixe b et d'ajouter également la température du processeur du Raspberry Pi 4 modèle B.

cmd = "nom d'hôte -I | cut -d\' \' -f1"

sera remplacé par la ligne suivante:

cmd = "nom d'hôte -I |cut -f 2 -d ' '"

Ce code est parfait au démarrage lorsque vous souhaitez trouver l'adresse IP de votre Raspberry Pi pour SSH ou VNC.

Les lignes suivantes seront ajoutées pour afficher la température du processeur sur le module d'affichage OLED:

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

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

Le code ci-dessous a été modifié en conséquence pour supprimer le caractère « b » de l'écran 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)

Enfin, vous devriez voir quelque chose de similaire à la sortie suivante sur l'écran OLED:

Étape 5: Exécuter Stats.py au démarrage

Vous pouvez facilement faire en sorte que ce programme s'exécute à chaque démarrage de votre Raspberry Pi.

Le moyen le plus rapide et le plus simple est de le mettre dans /etc/rc.local. Exécutez la commande ci-dessous sur le terminal:

sudo nano /etc/rc.local

Faites défiler vers le bas et juste avant la ligne exit 0, entrez ce qui suit:

sudo python /home/pi/stats.py &

  • Sauvegarder et quitter.
  • Redémarrez pour vérifier que l'écran s'affiche au démarrage !

Conseillé: