Publié le 13 janvier 2017 - par

Un boîtier 4M pour Rail DIN avec afficheur OLED et clavier

Je vous ai déjà présenté du matériel conçu pour le Raspberry Pi par SNOC (Société Nationale des Objets Connectés). D’abord une carte SIGFOX pour la framboise, puis une alimentation pour rail DIN destinée à alimenter le Raspberry Pi.
Cette fois c’est un boîtier DIN 4M équipé d’un clavier et d’un afficheur OLED qui a retenu mon attention.

Cliquez pour avoir de l’information sur les niveaux.

Boîtier DIN 4M pour Raspberry Pi avec écran OLED et clavier

Présentation du boîtier

Ce boîtier 4M (largeur équivalente à 4 modules DIN) est conçu pour accueillir le Raspberry Pi. Il comporte sur le socle deux emplacements destinés à recevoir des vis de fixation de la carte (livrées dans le kit) et possède également un verrou destiné à sécuriser la fixation sur le rail DIN. Le verrou n’apparait pas sur les photos de l’article.

Le boîtier est équipé d’un afficheur OLED SSD1306 de 0,96 pouces de diagonale (2,4 cm). La définition est de 128 x 64 pixels de couleur blanche. La faible définition est contrebalancée par le fort contraste de l’écran qui autorise sa lecture en plein soleil. Le chat qui est affiché sur l’écran de la photo ci-dessus est celui qui figure à gauche de ce paragraphe, en niveau de gris et en taille réelle. L’écran se situe derrière une façade transparente qui le protège sans gêner sa lecture.

Le clavier

Quatre boutons poussoirs forment un clavier. Les tiges de commande dépassent de la plaque de protection transparent et sont d’un maniement facile. Selon le programme, ils servent à faire défiler un menu, valider, changer le type d’affichage etc… Sur la photo ci-dessus un menu à gauche de l’écran permet d’afficher 2 images de chats, les logos de SNOC, Yadom et Framboise314 (apparent sur l’écran). Les boutons haut et bas font défiler la surbrillance sur les items du menu, le bouton de droite valide le choix.

Vous pourrez imaginer toutes les applications de ces boutons dans vos programmes…

Afficher l’adresse IP du Raspberry Pi

afficher l’heure

l’heure et la date (en français si vous voulez 🙂 )

Des possibilités d’affichage infinies sur l’écran OLD

Ou… n’importe quoi d’autre comme ces formes variées, dans la mesure où on est en présence d’un écran graphique… On peut imaginer des courbes, des barres pour afficher une consommation électrique, une évolution de température, de niveau dans une cuve, de pression ou tout ce que vous pourrez imaginer 🙂 On peut passer de l’affichage d’une valeur instantanée à un historique par appui sur un bouton choisir la valeur affichée etc.

Allez une petite démo en images…

Installation du logiciel

Pour l’installation j’ai fait un mix entre la doc de SNOC et celle d’Adafruit.

Commencez par mettre le système à jour et activez le bus SPI soit dans raspi-config si vous êtes en Raspbian Jessie Lite ou dans la fenêtre de configuration en mode graphique.

 

sudo apt-get update
sudo apt-get install build-essential python-dev python-pip
sudo apt-get install python-imaging python-smbus

 

Installation de la librairie Python pour l’écran OLED

Vous pouvez maintenant télécharger et installer la librairie Python de gestion du SSD1306 ainsi que les exemples proposés par Adafruit :

 

sudo apt-get install git
git clone https://github.com/adafruit/Adafruit_Python_SSD1306.git
cd Adafruit_Python_SSD1306
sudo python setup.py install

 

Maintenant vous êtes prêt(e) à utiliser les exemples. En fait pas tout à fait car les exemples d’Adafruit n’utilisent pas les mêmes ports GPIO. Il va falloir les modifier pour les adapter à la carte SNOC et déclarer le type d’écran utilisé pour que l’affichage soit correct. Plusieurs écrans possédant des définitions différentes utilisent la même bibliothèque.

Rendez vous dans le répertoire d’exemples :

cd Adafruit_Python_SSD1306
cd examples

 

Les exemples fournis pour les tests de l’écran OLED

On va commencer par modifier le programme image.py :

Vous devez faire quelques modifications pour que le programme fonctionne avec la carte SNOC qui n’utilise pas les mêmes ports du GPIO.

sudo nano image.py

Recherchez et modifiez les lignes suivantes :

# Raspberry Pi pin configuration:
RST = 25
# Note the following are only used with SPI:
DC = 24

Il faut ensuite indiquer quel écran est utilisé :

commenter la ligne disp…

# 128x32 display with hardware I2C:
# disp = Adafruit_SSD1306.SSD1306_128_32(rst=RST)...

et décommenter celle correspondant à l’écran 128×64

# 128x64 display with hardware SPI:
disp = Adafruit_SSD1306.SSD1306_128_64(rst=RST, dc=DC, spi=SPI.SpiDev(SPI_...

Ne laissez pas d’espace en début de ligne !

Exécution des programmes

On peut maintenant exécuter le programme

python image.py

Vous pourrez faire la même manip pour animate.py et shapes.py

Les programmes de SNOC

Les programmes sont disponibles sur la page du site Yadom avec des explications pour la mise en œuvre.

Vous pouvez télécharger le fichier archive en cliquant sur le lien si vous êtes en mode graphique. Décompressez l’archive pour accéder aux programmes de démo.

Si vous êtes en mode texte :

pi@raspberrypi:~ $ mkdir yadom
pi@raspberrypi:~ $ cd yadom
pi@raspberrypi:~/yadom $ wget https://yadom.fr/downloadable/download/sample/sample_id/159/rpidisp01_exemple_code.zip
--2017-01-13 08:37:44--  https://yadom.fr/downloadable/download/sample/sample_id/159/rpidisp01_exemple_code.zip
Resolving yadom.fr (yadom.fr)... 37.187.12.110
Connecting to yadom.fr (yadom.fr)|37.187.12.110|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 43666 (43K) [application/zip]
Saving to: ‘rpidisp01_exemple_code.zip’

rpidisp01_exemple 100%[===============>]  42.64K  --.-KB/s   in 0.1s

2017-01-13 08:37:45 (349 KB/s) - ‘rpidisp01_exemple_code.zip’ saved [43666/43666]

Puis décompressez l’archive

pi@raspberrypi:~/yadom $ unzip rpidisp01_exemple_code.zip
Archive:  rpidisp01_exemple_code.zip
extracting: 1.png
extracting: 2.png
extracting: 3.png
extracting: 4.png
extracting: 5.png
inflating: rpilcd2actions.py
inflating: rpilcd2menu.py
inflating: testio.py
inflating: Xerox Serif Narrow.ttf

et vous pouvez utiliser les programmes d’exemple avant de les modifier pour les adapter à vos besoins…

pi@raspberrypi:~/yadom $ python rpilcd2actions.py

Sortez avec les touches CTRL + C

Le boîtier DIN 4M en images

Vous trouverez ici des images extraites du site Yadom et des photos « maison ».

Les images du site Yadom

Le boîtier avec en vue de dessous la carte écran/clavier, la nappe de 10 cm et la carte pour le GPIO avec son connecteur 26 points compatible avec toutes les générations de Raspberry Pi. Photo (c) Yadom

Un Raspberry Pi monté sur le fond du boîtier DIN avec la carte connectée au GPIO. Il faudra connecter la carte de cette façon sur votre Raspberry Pi. Attention de ne pas décaler la carte ! Phot (c) Yadom

Les images « maison »

Montage de la carte sur le Raspberry Pi

Carte de liaison, vue de dessus

L’intérieur du boîtier. Au fond la carte écran/clavier. On voit les découpes permettant l’accès aux prises du Raspberry Pi.

L’accès aux connecteurs USB et Ethernet ne pose pas de problème… Ça tombe en face des trous ! (ce n’est pas toujours le cas avec les boîtiers). Le trou à la partie inférieure est prévu pour le verrou sur le rail DIN.

Accès aux connecteurs d’alim et audio/vidéo

Bien : La carte micro SD est bien protégée et ne dépasse pas. Moins bien : Il faut sortir la carte micro SD pour ouvrir le boîtier et ça nécessite une pince fine. Le trou à gauche de la micro SD est prévu pour les LED du Pi 2. Celles du Pi3 sont… de l’autre côté. Tout ce qu’on voit ici c’est l’antenne WiFi/Bluetooth

Pour ouvrir le boîtier une fois que vous l’aurez fermé et clipsé, il faut commencer côté carte micro SD. Arrêtez le système, débranchez l’alimentation. Sortez la carte micro SD : Pas de souci avec les premières versions de Raspberry Pi jusqu’au Pi 2 qui sont équipées d’un connecteur Push/push. On appuie la carte se verrouille, on appuie la carte est éjectée. Sur le Pi3 on a un connecteur PUSH/PULL. On appuie pour insérer la carte mais il faut tirer pour l’extraire. Oups il n’y a pas beaucoup de place pour les doigts (prévoyez des pinces fines).

Un fois la carte micro SD enlevée avec une lame fine débloquez le boîtier côté SD (de l’autre côté les connecteurs butent et empêchent l’ouverture). Lorsque ce côté est basculé, poursuivez l’ouverture côté connecteurs USB.

En cadeau un aide -mémoire GPIO

Sur le site il est mentionné que la commande est livrée avec un aide mémoire GPIO.

Cet accessoire est ajouté à la commande « dans la limite des stocks disponibles ».

Il est donc possible que si vous lisez cet article dans quelques mois, l’aide-mémoire ne soit plus disponible (cet article est paru mi-janvier 2017).

La série d’inscriptions la plus proche des broches du connecteur vous donne le numéro « officiel » du GPIO (façon BCM) alors que la série la plus proche du bord de la carte correspond à la dénomination de ces mêmes broches dans WiringPi. Allez pour embrouiller un peu plus les débutants (eh c’est pas moi qui donne ces numéros, je n’y suis pour rien !) le numéro « physique » des broches part de 1 (en haut à droite du GPIO sur l’image ci-dessus) à 40 en bas à gauche.

L’aide mémoire trouvé dans le colis est livré sur une carte de visite.

Conclusion

Un coffret de bon aloi si vous devez intégrer un Raspberry Pi dans une armoire équipée de rails DIN.

La SNOC est une startup française soutenue par initiative Anjou, dont les produits bénéficient du label Made In France.

Je n’ai rencontré aucune difficulté dans la mise en œuvre de cet ensemble écran/clavier, les exemples en Python fournis par Adafruit et par la SNOC facilitent la prise en main de l’environnement.

Au premier abord, le prix peut sembler un peu élevé (près de 44 €) mais si on ajoute le prix de l’écran, des boutons poussoir, du boîtier DIN, on s’aperçoit vite que s’il fallait réaliser un tel ensemble à partir de zéro ça serait au moins aussi cher, sinon plus et que ce serait moins esthétique.

Il y a deux choses qui m’embêtent un peu :

  • Si on utilise une carte HAT additionnelle il faudra qu’elle ait des picots GPIO pour pouvoir connecter la carte de liaison.
  • La découpe pour la carte micro SD qui s’avère pratique avec un Raspberry Pi 2 complique un peu la vie avec un Raspberry Pi 3 quand on doit extraire la carte. D’un autre côté c’est une opération qu’on fait surtout pendant la mise au point d’un projet, lorsque le coffret n’est pas encore fermé. Ca minimise un peu cet inconvénient.

Sources

 

Share Button

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

15 réflexions au sujet de « Un boîtier 4M pour Rail DIN avec afficheur OLED et clavier »

  1. jc

    J’utilise leurs boitiers depuis plusieurs années.

    J’en ai 3 en tout.
    un pour rasp pi 1B
    2 pour rasp pi 2
    à chaque fois avec une vitre transparente.

    Je m’en suis servi pour y installer un écran lcd derrière qui couvre la quasi totalité de la vitre, un peu d’intégration à base de carton peint a été nécessaire.

    J’ai apprécié le premier boitier livré, avec de la visserie pour fixer le rasp.
    J’ai moins apprécié les suivant livrés sans visserie (ce n’est pas bloquant).

    Par contre, ATTENTION DANGER !!! il faut IMPERATIVEMENT retirer la carte SD AVANT d’ouvrir le boitier.. sinon.. COUIC !!! la carte est coupée en 2 🙁 ça m’ai arrivé une fois, ça sert de leçon.

    ça donne ça en vrai :

    http://cdn.j2c.org/2014_12_05/800_750b677b71ea6d40c6ab502de0402013_IMG_4688.jpg

    Répondre
    1. PM

      Bonjour JC,

      Pourriez-vous me donner la référence de l’écran (marque, modèle, résolution, …) que vous avez intégrer dans votre boitier 4M et qui apparaît sur votre pièce jointe ?

      Merci d’avance

      Pierre-Marie

      Répondre
  2. François MOCQ Auteur de l’article

    Bonjour jc
    merci pour ces infos
    ici les vis sont bien livrées
    j’ai bien précisé d’enlever la carte car ça coince… mais je ne pensais pas que ça pouvait la casser !
    cordialement
    François

    Répondre
    1. jc

      La preuve ici :
      carte SD cassée

      Il faut savoir qu’à la base, ouvrir le boitier demande un peu d’effort, du coup, j’ai pas hésité à y aller franchement.. une fois enlevé, j’ai compris mon erreur.

      ça n’enlève rien au mérite de cette société qui fait des bons produits 🙂

      C’est pas pour rien si j’ai recommandé chez eux.

      Il faudra un jour que je leur envoie un mail pour leur suggérer une amélioration à ce sujet sur le boîtier, au lieu de mettre une encoche, il suffirait de mettre un créneau. Du coup, aucun risque de casser la carte.

      Répondre
        1. jc

          C’était juste pour expliquer comment j’en étais arrivé là 🙂

          Ton article m’a donné envie d’aller voir les nouveautés sur leur site.

          A ce sujet, j’ai également une alim 5v (qu’on doit voir sur la première photo il me semble).. du très bon matos, j’arrive même à faire tourner 2 raspberry en // dessus.

          Répondre
  3. bzh44

    Bonjour François,
    encore un article très intéressant et il est fort possible qu’on le relise dans quelques toi 😉 (coquille au niveau du cadeau de l’aide mémoire du GPIO).
    Encore merci pour ton travail.

    Olivier.

    Répondre
  4. christophe

    J ai eu l occasion de bosser avec Yannick ( le president de la snoc) lorsque nous étions ensemble dans une entreprise d angers.

    C est vraiment quelqu’un de très bon et de créatif.

    La snoc mérite d être suivi, et pourquoi pas un equivalent sparkfun ou adafruit a la française, et devenir un leader européen du dyi ?.

    Répondre
  5. Pierre

    Je fais remoter le post 😉
    Est il possible de faire sortir une nappe 40 broche une fois monté sur le rail DIN ? (Pour connecter plusieurs cartes « hat » et filles fixées sur d’autres rails DIN).
    Merci

    Répondre

Laisser un commentaire

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

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.