Afficher des textes, des images et des vidéos personnels sur des matrices LED avec le Raspberry Pi

Les matrices LED offrent des possibilités très particulières pour afficher des photos, des lettres des stickers, des images et même des vidéos. Ils attirent l’attention dans le salon à la maison, mais aussi dans les magasins, sur les espaces publicitaires ou dans les foires commerciales. Pour une liberté de conception encore plus grande, plusieurs panneaux peuvent être reliés entre eux pour créer un mur de LED.
Dans ce tutoriel, nous montrons comment vous pouvez contrôler une ou plusieurs matrices de LED avec le Raspberry Pi.

Le projet

Matériel

Pour ce mode d’emploi, nous utilisons un module matriciel RGB avec 4096 LED et une grille particulièrement petite de seulement 3 mm. Ainsi, des graphiques ou même des films peuvent être reproduits de manière visuellement attrayante.
Le contrôle est assuré par des mini PC comme Raspberry PI, Arduino, BBC Microbit et bien d’autres modules. Dans notre mode d’emploi, nous mettons réalisons le contrôle avec la carte de développement probablement la plus courante, Raspberry Pi.

Pour le contrôle avec le Raspberry Pi, nous recommandons la carte contrôleur RB-MatrixCtrl. À l’aide de cette carte d’extension, vous pouvez contrôler jusqu’à trois rangées de matrices de LED RGB avec un connecteur HUB75 commun. En outre, un ventilateur de 25×25 mm est installé, ce qui assure le refroidissement nécessaire du Raspberry Pi.

Pour le fonctionnement de la matrice LED, une alimentation électrique séparée (idéalement de 5V et environ 8A) est nécessaire. Il est également important de s’assurer que la section du câble est suffisante.

Mise en service de la matrice LED

Tout d’abord, le câble d’alimentation doit être connecté entre la matrice LED et le bloc d’alimentation.
Si plusieurs matrices doivent être reliées entre elles, procédez de la façon suivante : jusqu’à trois matrices peuvent être utilisées en parallèle sur l’embout GPIO à 40 broches du Raspberry Pi. En outre, d’autres matrices peuvent être connectées en série à chaque matrice.
Utilisez à cet effet le contact à fiche HUB75. Ceci est marqué IN sur la matrice. D’autres matrices peuvent être connectées en série via le contact OUT.

Attention : lorsque vous connectez plusieurs matrices ensemble, veillez à ajuster l’alimentation électrique en conséquence !

Vous trouverez ici un aperçu de la barre GPIO du Raspberry Pi et des broches que vous pouvez utiliser pour chacune des trois matrices connectées en parallèle :

CONNEXIONPINPINCONNEXION
-12-
G1 (Matrice 3)34-
B1 (Matrice 3)56GND / N (Matrice 1+2+3)
LAT (Matrice 1+2+3)78R1 (Matrice 3)
-910E (Matrice 1+2+3)
CLK (Matrice 1+2+3)1112OE (Matrice 1+2+3)
G1 (Matrice 1)1314-
LA (Matrice 1+2+3)1516LB (Matrice 1+2+3)
-1718LC (Matrice 1+2+3)
B2 (Matrice 1)1920-
G2 (Matrice 1)2122LD (Matrice 1+2+3)
R1 (Matrice 1)2324R2 (Matrice 1)
-2526B1 (Matrice 1)
-2728-
G1 (Matrice 2)2930-
B1 (Matrice 2)3132R1 (Matrice 2)
G2 (Matrice 2)3334-
R2 (Matrice 2)3536G2 (Matrice 3)
R2 (Matrice 3)3738B2 (Matrice 2)
-3940B2 (Matrice 3)

Interconnexion de la carte de contrôle de la matrice

Au lieu de connecter les matrices directement via la barre GPIO du Raspberry Pi, vous pouvez également utiliser la carte contrôleur RB-MatrixCtrl pour contrôler jusqu’à trois matrices en parallèle. Ici aussi, il est possible de connecter des matrices supplémentaires en série.

L’avantage de contrôler via la carte de contrôle est la connexion beaucoup plus facile. En outre, la carte de contrôle peut alimenter le Raspberry Pi en énergie et dispose déjà d’un ventilateur intégré pour assurer un refroidissement suffisant.

Montage de la carte de contrôle de la matrice

Branchez d’abord la carte de contrôle de la matrice sur la barre GPIO de votre Raspberry Pi. Connectez maintenant les connecteurs HUB75 de vos matrices aux connecteurs correspondants (panneau 1, panneau 2 et panneau 3) sur la carte de contrôle.
Si vous souhaitez alimenter votre Raspberry Pi directement à partir de la carte de contrôle, vous pouvez également connecter une source d’alimentation de +5V directement à la carte de contrôle. Veuillez noter que la connexion n’est pas protégée contre l’inversion de polarité et le courant inverse. Le connecteur n’est pas adapté pour alimenter la matrice en énergie.

Important : vérifiez l’affectation des broches de la broche E (ou LE) sur la matrice LED. Selon la matrice, cela peut varier entre la quatrième et la huitième broche. En conséquence, vous pouvez ajuster le brochage sur la carte de contrôle avec le câble de pontage de gauche. Faites la connexion en fonction du brochage de votre matrice. Si la quatrième ou huitième broche de votre matrice est connectée à GND (ou N), vous devez faire le pontage en conséquence sur la carte de contrôle.

Installation de la matrice LED

La première étape pour contrôler la matrice avec le Raspberry est d’installer la bibliothèque correspondante. Ouvrez le terminal de commande et entrez les données suivantes :

sudo apt-get update
sudo apt-get install git
git clone https://github.com/hzeller/rpi-rgb-led-matrix

Ensuite, le son embarqué doit être désactivé. Comme la matrice utilise un circuit d’horloge qui est également utilisé par le son embarqué, une utilisation simultanée n’est pas possible.
Si vous avez besoin d’une sortie audio, vous devez utiliser un adaptateur audio USB externe. Pour désactiver le son embarqué, ouvrez d’abord le fichier de configuration avec la commande suivante :

sudo nano /boot/config.txt

Trouvez la ligne “ dtparam=audio=on” et changez-la en “dtparam=audio=off “. Enregistrez maintenant le fichier avec la combinaison de touches Ctrl+O, confirmez avec Enter et quittez ensuite l’éditeur avec la combinaison de touches Ctrl+X.

Ensuite, redémarrez le Raspberry Pi pour rendre le changement effectif :

sudo reboot

Avec ces commandes, vous accédez à la bibliothèque téléchargée et préparez le programme de démonstration :

cd rpi-rgb-led-matrix
make -C examples-api-use

Le programme de démonstration peut maintenant être lancé. Au démarrage du programme, veillez à préciser le nombre de LEDs par ligne et par colonne. Dans notre cas, il y a 64 LEDs par ligne et par colonne.

sudo examples-api-use/demo -D 0 --led-rows=64 --led-cols=64

Ensuite, vous pouvez toujours ajuster la vitesse, par exemple si vous avez un panneau plus lent ou un Raspberry Pi plus rapide. La commande –led-slowdown-gpio=<0…4> ne peut être exécutée qu’avec des valeurs comprises entre 0 et 4.

sudo examples-api-use/demo -D 0 --led-rows=64 --led-cols64 --led-slowdown-gpio=2

Utilisation avec Python

Pour contrôler la matrice avec Python, vous pouvez exécuter les commandes suivantes dans le terminal :

POUR PYTHON 2 :

sudo apt-get update
sudo apt-get install python2.7-dev python-pillow -y
make-build-python
sudo make install-python

POUR PYTHON 3 :

sudo apt-get update
sudo apt-get install python3-dev python3-pillow -y
make-build-python PYTHON=$(which python3)
sudo make install-python PYTHON=$(which python3)

Vous accédez ainsi au dossier Échantillons/Samples :

cd bindings/python/samples

Vous y trouverez différents exemples pour tester votre matrice. Les exemples peuvent être lancés avec la commande suivante :

sudo ./runtext.py

La commande run accepte également les paramètres supplémentaires –led-rows, –led-chain et –led-parallel.

  • –led-rows: Nombre de lignes dans un panneau. Des valeurs comme 8, 16, 32 et 64 sont courantes. Pour une matrice 64×64, la valeur serait de 64.
  • –led-chain : Nombre de matrices connectées en série. La valeur par défaut pour une matrice unique est 1.
  • –led-parallel : Matrices connectées en parallèle. Les valeurs entre 1 et 3 sont courantes ici. La valeur par défaut pour une matrice unique est 1.

Les paramètres supplémentaires sont simplement ajoutés après la commande initiale :

sudo ./runtext.py --led-chain=4

Regarder les vidéos et les photos

Nous arrivons maintenant à la partie créative de ce tutoriel : l’affichage d’images, de GIF, de graphiques et de vidéos dans leur intégralité via la matrice. Les fichiers d’images à afficher doivent être placés dans ce dossier :

cd /home/pi/rpi-rgb-led-matrix/utils

Pour afficher les images, vous pouvez utiliser la visionneuse d’images LED. Pour ce faire, vous avez besoin de la commande suivante :

sudo ./led-image-viewer beispiel.gif

Les vidéos peuvent être jouées avec cette commande :

sudo ./video-viewer beispiel.webm

Paramètres supplémentaires

Des paramètres supplémentaires peuvent être ajoutés à la commande d’affichage pour d’autres fonctions et définitions. Les paramètres les plus importants sont les suivants :

PARAMÈTRESFONCTION
-CCentrer l'image
-wImages multiples : Temps d'attente en secondes jusqu'à l'affichage de l'image suivante
-tAnimations : Arrête l'exécution après x secondes
-lAnimations : Nombre de cycles complets
-DAnimations : Délai entre les images. Valeur par défaut : -1
-fImages multiples : Cycle permanent à travers toutes les images
-sImages multiples : Ordre aléatoire
--led-rows=Nombre de lignes par matrice. Habituellement 8, 16, 32 ou 64
--led-cols=Nombre de colonnes par matrice. Habituellement 8, 16, 32 ou 64
--led-chain=Nombre de matrices connectées en série
--led-parallel=Nombre de matrices connectées en parallèle
--led-brightness=Luminosité en pourcentage
--led-show-refreshIndique le taux de rafraîchissement

Une liste complète de tous les paramètres est disponible ici.

Utilisation dans ses propres projets

La bibliothèque peut également être intégrée dans vos propres projets. Les fichiers include nécessaires se trouvent dans le sous-dossier include. La bibliothèque est située dans le sous-dossier lib.
Initialement, une bibliothèque C++ est utilisée, mais des bibliothèques C et Python sont également disponibles.

En outre, d’autres connexions externes ont été développées :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *