Pages: [1]   Go Down
Author Topic: [Question] PHP -> ? -> Série -> Arduino  (Read 454 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Full Member
***
Karma: 0
Posts: 152
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonsoir tout le monde smiley

Je lance un nouveau car la réponse semble floux sur internet pour pas mal de monde :S

Voulant réaliser la commande de l'arduino via un serveur ( sur Raspberry) et d'une page php, cependant quelle langage exécuter via une page php pour écrire sur le port série.

Avec le python ça marche mais je bloque sur la liaison php -> script python ...
Je me suis tourné vers le perl, le c, le vb.net etc ...

Enfin bref beaucoup de possibilités + pas trop d’expérience = Question ^^

A votre avis quel sera la solution la moins "chaotique" pour établir cette communication ?

Amicalement,
Trigger
Logged

Toulouse
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Je pense que les deux solutions les plus simples qui s'offrent à toi sont :
 - Utiliser les primitives de php permettant d'exécuter des programmes externes, par exemple "system(python mon_script.py)".
 - Réaliser ton interface web en Python, il y a tout plein de très bon framework Python de disponible sur le web.

Personnellement je pencherai plutôt pour la seconde solution.
« Last Edit: December 12, 2012, 08:17:08 am by pantoufle » Logged

France
Offline Offline
Faraday Member
**
Karma: 55
Posts: 5347
Arduino Hacker
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

La meilleure solution c'est la solution "daemon + client".
Le deamon (= serveur) tourne en tache de fond, c'est lui qui initialise (une seule fois) le port série et qui attend les ordres des clients.
Les clients qui se connectent au deamon, envoient leur commande, puis quittent.

La solution la plus simple et efficace pour communiquer entre processus c'est les "tubes nommés" :
http://my.opera.com/zomg/blog/2007/08/29/php-and-named-pipes

Attention: si les données envoyaient via le tube sont > à la taille du buffer système (généralement 4096 octets) l'écriture n'est pas "atomique" ce qui oblige d'ajouter une gestion des accès à la ressource partagé (le tube) au moyen de sémaphores.
Logged

Des news, des tuto et plein de bonne chose sur http://skyduino.wordpress.com !

Pages: [1]   Go Up
Jump to: