====== Principe ====== **__IDE opensource pour arduino :__** [[http://arduino.cc/en/pmwiki.php?n=main/software|http://arduino.cc/en/pmwiki.php?n=main/software]] Il permet de compiler les sources en local, puis de les envoyer sur l'arduino; ces sources sont ici : **C:\Dev\Arduino\server\src_arduino\sketch_may18a\sketch_may18a.ino** (ie .c ou .cpp) l'IDE contient un compilateur C, même objet. IDE : * 1 bouton pour compiler en local **sketch_may18a.ino** et * 1 bouton pour compiler et envoyer sur l'arduino reconnu en usb : arduino reçoit les données stockées. __**sketch_may18a.ino ** __ pas de main, l'arduino a deja ses sources à lui et nous on complète en rajoutant nos sources * arduino appelle la fonction **setup ** pour initialiser ses valeurs * arduino appelle la fonction **loop** et boucle dessus __**Server **: __ C:\Dev\Arduino\server\server Code C, dans un terminal Linux va servir de serveur de socket Il doit être absolument en marche sur le poste qui reçoit l'arduino - dolibarr va envoyé le signal via amachi au réseau, - le pc cible recoit le signal via le serveur C décrit ci-dessus - serveur C, via le filedescriptor fd : fd communique avec l'arduino directement sur l'usb Ce **//Server C//** est installé sur la même machine sur laquelle est connectée l'arduino C'est le lien entre web et l'hardware arduino ; il est en attente permanente de recevoir des data provenant du serveur php **//Server C//** se met en écoute sur un port de communication : Dans le fichier **C:\Dev\Arduino\server\server\inc\server.h**, il y a **define PORT_NBR 4242** c'est le port sur lequel le **//Server C//** se met en écoute et attend une communication : des que quelqu'un se connecte sur ce port le **//Server C//** traite les infos qu'il reçoit **__Dolibarr__** : il faut faire un module doibarr en php : des que dolibarr voudra afficher qq chose sur l'arduino, il va envoyer un message, via socket à l'ip du poste contenant l'arduino, au port correspondant le serveur réceptionne la string, la parse et l'affiche sur l'arduino __Les sources de ce module dolibarr__ : sur ** recette lan** (? erp-recette.hodei.net) : c'est du php/html à récupérer. le serveur web envoie une string sous un format bien particulier, un caractère d'échappement découpe la string en 2 lignes, (écran arduino contient 2 lignes) le pc cible réceptionne la string et l'envoi à l'arduino qui s'occupe du parsing Le pc cible réceptionne la string via le Server C qui tourne en tache de fond Il doit être paramétré au moins 1 fois afin de répérer sur quel port est branché l'arduino. __re-principe :__ * string envoyé en socket au **//Server C//** , pc cible * une fois qu'il recoit, il l'envoie à l'arduino * qd arduino a répondu, le **//Server C//** envoi un message de réponse à php, qui lui continue sont traitement **__Hamachi__ ** pont qui simule une connexion lan entre deux postes distants * installé sur le pc ou il y arduino * installé sur le serveur aditu message socket qui vise l'ip du serveur arduino, il passe par par le routeur, il va savoir quel poste tu cibles : ils communiquent comme s'ils étaient en lan. Attention au problème de sécurité : port ouvert en permanence; amachi est assez blindé ====== Point de vente ====== [[http://arduino.cc/en/Guide/Libraries|http://arduino.cc/en/Guide/Libraries]] {{:systeme_informatique:projets:php_to_arduino.zip |php_to_arduino.zip}} ===== Hamachi ===== [[http://fr.wikipedia.org/wiki/Hamachi|Hamachi]] permet de créer ou d'étendre en toute sécurité un réseau VPN local pour tous les appareils souhaités, même s'ils sont dispersés géographiquement. Grâce à une interface simple, on peut facilement et rapidement concevoir un réseau local virtuel. Sur la fenêtre principale, il suffit de cliquer sur Créer un réseau et d'inscrire une ID et un mot de passe personnels. Un clic suffit pour rendre opérationnel le réseau en question. [[http://www.commentcamarche.net/download/telecharger-34055111-hamachi|Hamachi comment ça marche]] [[http://www.clubic.com/telecharger-fiche14515-hamachi.html|Télécharger Hamachi]] [[http://www.6ma.fr/tuto/hamachi+creer+des+reseaux+prives+virtuels+vpn-645|Installation]] Chez Aditu : * on installe hamachi chez aditu * on crée un réseau avec un mot de passe Chez le client : * on installe hamachi sur chaque poste de travail du client * chaque poste est invité à rejoindre le réseau Exemple : {{:systeme_informatique:projets:schema.jpg?600|}} {{ :systeme_informatique:projets:schema.zip |schema.zip}}