Apprendre à intégrer Cpcdos, Raspberry Pi, Arduino,
Une proposition de Estylos
Le 2016-04-14 19:18:55, par Estylos, Membre habitué
Bonjour !
Aujourd’hui, je vais vous présenter la communication entre Cpcdos un Raspberry Pi et un Arduino !
Le but :
Le but est de contrôler un écran LCD et des LEDS avec Cpcdos en passant par un Raspberry Pi et un Arduino...
Fonctionnement :
Le fonctionnement est assez simple : Cpcdos télécharge une page PHP sur le Raspberry Pi avec un ou plusieurs arguments, selon le ou les arguments envoyés par Cpcdos, PHP va exécuter en tant que root un script Python avec un argument (du style : "##..." pour une commande (allumer une LED, effacer l'écran LCD...) ou du texte pour l'afficher sur l'écran LCD). Ensuite dans le fichier Python, on va établir la communication entre le Raspberry Pi et l'Arduino, puis on va envoyer l'argument à l'Arduino. Selon ce que l'Arduino va recevoir, il va afficher du texte sur l'écran LCD, effacer l'écran LCD, allumer une LED ou encore, changer de ligne.
Un petit schéma pour illustrer ça (avec en plus, le câblage) : (ne m'en voulez pas )
Inconvénient :
Et oui, ce projet n'est pas parfaitement au point .
Photos et vidéo :
Liens :
Sources : https://github.com/Estylos/CPCDOS-RA...RRY-PI-ARDUINO
N'hésitez pas à répondre à la suite de cette discussion si vous avez besoin d'aide ou d'avoir une information .
Les meilleurs cours et tutoriels pour apprendre les systèmes embarqués
Les meilleurs cours et tutoriels pour apprendre Raspberry Pi
Les meilleurs cours et tutoriels pour apprendre les systèmes informatiques
Aujourd’hui, je vais vous présenter la communication entre Cpcdos un Raspberry Pi et un Arduino !
Le but :
Le but est de contrôler un écran LCD et des LEDS avec Cpcdos en passant par un Raspberry Pi et un Arduino...
Fonctionnement :
Le fonctionnement est assez simple : Cpcdos télécharge une page PHP sur le Raspberry Pi avec un ou plusieurs arguments, selon le ou les arguments envoyés par Cpcdos, PHP va exécuter en tant que root un script Python avec un argument (du style : "##..." pour une commande (allumer une LED, effacer l'écran LCD...) ou du texte pour l'afficher sur l'écran LCD). Ensuite dans le fichier Python, on va établir la communication entre le Raspberry Pi et l'Arduino, puis on va envoyer l'argument à l'Arduino. Selon ce que l'Arduino va recevoir, il va afficher du texte sur l'écran LCD, effacer l'écran LCD, allumer une LED ou encore, changer de ligne.
Un petit schéma pour illustrer ça (avec en plus, le câblage) : (ne m'en voulez pas
Inconvénient :
Et oui, ce projet n'est pas parfaitement au point
- Premièrement, il ne gère pas les espaces tout seul (ça, c'est la faute à Cpcdos
). Il faut tous les remplacer par \\%20 si on veut afficher du texte avec des espaces sur l'écran LCD. - Deuxièmement, il ne gère pas non plus les accents et les lettres accentuées (franchement, je ne sais pas trop d'où ça vient... Je reste assez perplexe
).
Photos et vidéo :
Liens :
Sources : https://github.com/Estylos/CPCDOS-RA...RRY-PI-ARDUINO
N'hésitez pas à répondre à la suite de cette discussion si vous avez besoin d'aide ou d'avoir une information
-
f-lebResponsable Arduino et Systèmes EmbarquésBravo pour ce projet
Par contre, ne laissez pas cette image avec les 3 led reliées à l'Arduino sans les résistances, vous ne voudriez pas que vos lecteurs crament leur joujoule 14/04/2016 à 19:43 -
EstylosMembre habituéMerci
Ah oui zut, j'ai complètement oublié de mettre les résistances sur le schéma ! Merci de me l'avoir signalé !
[EDIT] : C'est bon, je viens de modifier le schéma. le 14/04/2016 à 20:01 -
MINEOSXMembre habituéSalut!
Bravo pour ton projet!
Je suis impréssionné par ton travail, et je te felicite!
Cordialementle 14/04/2016 à 19:55 -
f-lebResponsable Arduino et Systèmes EmbarquésTrès bien
, on les distingue aussi sur la vidéo, c'est juste sur le premier schéma du montage qui est dangereux pour le matériel.
Bonne continuationle 14/04/2016 à 19:56 -
cpcdosMembre chevronnéEncore bravo a toi Esteban!
Au départ je pensais pas que Cpcdos serai capable d'aller jusqu’à là, tu m'as fais plaisir!
J'essaierai de trouver le problème pour les espaces et accents pour la prochaine mise à jour du noyau, mais ça ne pourrai être que le problème ASCII<-->UTF8, cpcdos affiche l'UTF8 sur la console, mais ne l'écrit pas encore, j'essaierai de corriger cela
Bonne continuation
Cordialementle 14/04/2016 à 20:58 -
EstylosMembre habituéMerci
Je ne sais pas si vous avez fait attention, mais il y a des résistances de 220 ohms dans les deux photosle 14/04/2016 à 19:50 -
EstylosMembre habituéMerci beaucoup, à moi aussi ça me fait plaisir
Pour les accents, je ne pense pas que c'est Cpcdos qui soit totalement la source du problème, car même dans le moniteur série de l'Arduino, quand je le branche à mon PC, et que j'affiche du texte avec des caractères accentués sur l'écran LCD, il affiche un caractère bizard....le 14/04/2016 à 21:11 -
fandeonepiece2Nouveau membre du ClubTu pourrais améliorer ton programme en supprimant la couche du script python
Par exemple utiliser des commandes du SHELL UNIX directement dans le script PHP, pour intéragir avec le port série depuis PHPle 19/04/2016 à 12:33 -
EstylosMembre habituéOui, je pense que c'est faisable ! Mais il faut trouver une bibliothèque qui permet la communication sériele 19/04/2016 à 16:14
-
EvakaMembre à l'essaiBrovo pour le travail, j'aimerai avoir une precision, est ce qu'il y aura moyen de mesure la consommation des leds puis stocker cela dans une base de données loger sur raspberry puis donner l'ordre depuis le raspberry a l'arduino pour alimenter ou eteindre les leds selon le casle 07/08/2018 à 16:11