Interface tactile avec Raspberry Pi !

Interface tactile avec Raspberry Pi !

Dans quel cas utiliser un Raspberry Pi et pourquoi je n’avais jamais franchi le cap avant ?

Tout simplement parce que sur mes anciens projets, le choix technique d’un Raspberry n’était pas justifié.

Soit, pour certaines applications, un PC (même ancien) faisait parfaitement l’affaire.
La seule solution était l’usage de microcontrôleur. Cela reste notamment le cas dès lors que l’on veut gérer des signaux à la micro seconde…

Alors faute d’idée, j’ai laissé ce fameux Raspberry Pi sur les étagères… Jusqu’à aujourd’hui !

Pourquoi ce projet ?

Suite à une discussion autour d’un projet d’interface tactile, le Raspberry m’est apparu comme une solution évidente !

Notamment pour :

– Sa faible consommation,
– Sa configuration et programmation aisées,
– La diversité des interfaces, et plus particulièrement le choix d’écrans tactiles.
– Les aficionados continueront facilement la liste…

  1. Quelques mots sur l’interface tactile !





    J’envisage de faire une interface tactile simple : des icônes, des images,… qui permettront d’activer un programme Python et de piloter les sorties du Raspberry. Comme je ne suis pas expert en interface graphique, j’ai utilisé LibreOffice Impress pour créer mon visuel et gérer les interactions.





    – LibreOffice est une suite bureautique libre (et gratuite) disponible sous divers systèmes d’exploitation –
  2. L’installation de l’interface tactile





    Le Raspberry Pi et son écran sont arrivés emballés proprement ! Ayant en stock plusieurs alimentations électriques 5V, je me suis affranchi de commander l’alimentation recommandée (ce qui fut une erreur comme vous pourrez le voir un peu plus tard).



    L’unboxing s’effectue simplement ! Il y a tout ce qu’il faut dans les boites, sauf le tournevis.



    Le Raspberry se fixe donc derrière l’écran tactile. La mise en place de la nappe peut être un peu délicate (tout du moins avec mes gros doigts). Il suffit d’être précautionneux et de prendre son temps.
  3. Le démarrage et l’installation de l’interface tactile s’effectuent simplement après l’insertion de la carte SD dans son logement. Enfin, tout allait bien jusqu’à ce que le Raspberry affiche un écran noir. Soucis sur la carte SD ? Problème d’affichage.. ?



    J’essaye avec un écran standard, je passe plusieurs étapes de l’installation, et de nouveau écran noir… Du fait de ce comportement, j’écarte une défaillance sur la carte SD.



    Ai-je loupé quelque chose ? Tout le monde me dit que Raspberry c’est facile, etc. J’en arrive tout de même à me remettre sérieusement en question ! Puis, à force de chercher, je trouve LA solution.



    Lors de ma préparation de commande, j’ai lu un peu rapidement les spécifications, et j’ai négligé le fait que le Raspberry requiert une alimentation électrique capable de fournir au moins deux ampères. Mon alimentation de récupération 5V – 1.1A, s’est montrée trop faible pour alimenter le Raspberry et l’écran :(



    J’ai donc pris une veille alimentation de PC, un câble USB standard, quelques soudures… et voilà mon Raspbery enfin fonctionnel. L’honneur est sauf !



    Donc si votre Raspberry n’obéit pas, reboot intempestivement, que vous avez des écrans noirs, que l’installation ne s’effectue pas comme prévue… Ne cherchez pas loin.. Vérifiez avant tout si l’alimentation est assez robuste pour ce que vous lui demandez.



    Une fois l’installation terminée, tout est fonctionnel sans configuration particulière. Ayant l’habitude des systèmes Linux, je me sens un peu chez moi avec l’interface proposée. Pour le confort de la programmation, j’ai ajouté un clavier USB (le luxe…)
  4. La programmation



    Libre Office permet d’écrire et d’exécuter des macros. On utilisera donc cette capacité qui est d’autant plus intéressante qu’il est possible d’exécuter des programmes écrits en Python en rajoutant le module libreoffice-script-provider-python. Nous aurons ainsi facilement accès aux capacités de notre Raspberry.



    Pour installer le module en question, il suffit pour cela d’exécuter la commande suivante : apt-get install libreoffice script-provider-python. Redémarrez LibreOffice, et voilà, tout ce qu’il faut réaliser sur LibreOffice.



    En ce qui concerne les scripts Python, ceux-ci devront être placés dans le répertoire /usr/lib/libreoffice/share/Scripts/python, si l’on souhaite qu’ils soient reconnus par LibreOffice. Après le redémarrage de LibreOffice, vous devriez trouver dans LibreOffice le menu Tools/Macro/Organize Macros/Python.
  5. Ce menu vous permet d’identifier vos scripts accessibles par LibreOffice.



    Sachez que LibreOffice permet d’exécuter des fonctions Pyhton. Ce sont ces fonctions que vous pourrez exécuter en tant que macro.



    Au niveau du code Python, un petit exemple très simple d’une fonction permettant d’activer pendant quelques secondes le PhotoMos connecté sur le port 2 (en ce qui concerne la numérotation des pins voir le lien suivant ) :



    https://www.raspberrypi.org/documentation/usage/gpio/README.md



    from gpiozero import LED from time import sleep def Led_On() : led = LED(2) led.on() sleep(2) led.off() led.close()
  6. Alors, il est bien sûr, possible de rajouter d’autres ports et de faire des choses plus complexes… Mais je pars du principe que vous avez les bases de la programmation =)



    Au sein de LibreOffice, pour lancer l’exécution de vos scripts Python, il vous faut sélectionner l’élément lanceur (cela peut être une forme, un bouton,…), et de naviguer dans le Menu Slide Show / Interaction et de là, sélectionner « Action at mouse Click » → Run Macro (voir les captures dé’écran suivantes ayant comme élément déclencheur un smiley).
  7. Vous lancez votre visuel via la touche F5, (et si tout se passe bien), votre Script s’exécute lorsque vous cliquez sur votre élément.
  8. L’interface



    Difficile de faire plus simple… Une résistance et un PhotoMOS .



    Dans le cadre de mes essais, j’utilise un PhotoMos Panasonic 60V / 400mA. Il est utilisé pour commander des relais alimentés en 28V, ou d’autres charges compatibles (éclairage Led, petit moteur,…).



    En ce qui concerne la connexion au Raspberry, celle-ci peut s’effectuer sur un port I/O 3.3volt ou 5volts.



    Il faudra au besoin adapter la résistance de limitation de courant de la diode du PhotoMOS et aussi limiter le courant en sortie des pins GPIO du Raspberry (limité à 8mA et 50mA sur tous les ports).



    La résistance se calcule simplement par R=(V-1.25)/0.08 Soit au moins 390 Ohms pour V= 5 volts, et 220 ohms pour V= 3.3Volts.



    Note : Dans mon cas, cela fonctionne avec une résistance de 750 Ohms…
  9. Conclusion



    J’ai vraiment été séduit par la simplicité d’installation de l’écran ! En plus de ça, le tactile est très précis et l’affichage est sympa malgré la résolution de 800×480 ! Il est juste un peu dommage de ne pas avoir de boitier pour y mettre l’écran afin de le protéger au maximum. Il est bien sûr possible de bidouiller un petit quelque chose :)



    L’interface fonctionne très bien malgré la petite frayeur que j’ai pu avoir avec l’alimentation ! Mais on ne m’y reprendra plus :P
Réalisé par
Posté le
Univers
Programmation
Temps de fabrication
2h
Niveau de difficulté
Avancé
Matériel(s)
1
Raspberry Pi 3 model B
1
écran tactile 7”
1
système d’expoitation pour Raspberry
2
PhotoMOS
2
résistances
1
Alimentation électronique 5V

Aucun commentaire. Soyez le premier à en écrire un !

Vous devez être connecté pour laisser un commentaire.