Pages: 1 2 [3]   Go Down
Author Topic: [help] Soulager Arduino Page Web  (Read 4407 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Jr. Member
**
Karma: 0
Posts: 98
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,

Tu as vu mon msg un peu plus haut avec le message d'erreur.

N'est-ce pas là le problème ?

++

EDIT : Je ne sais pas si Brisebee constate la même chose.
Logged

Offline Offline
Jr. Member
**
Karma: 0
Posts: 98
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

J'ai trouvé !

Il faut activer PHP_Sokets dans le menu PHP extension sur le serveur et cela marche !

++

Logged

Offline Offline
Edison Member
*
Karma: 17
Posts: 1968
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

bonjour,
j'avais zappé ton erreur, mais bossant avec un vrai server, je n'ai pas ce problème.  smiley-mr-green
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 177
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

J'ai trouvé !

Il faut activer PHP_Sokets dans le menu PHP extension sur le serveur et cela marche !

++

C'est tout à fait ça smiley

en tout cas pour l'erreur qui a été mentionné par Michel_b
Logged

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

Salut salut :-)

Je fais tourner un petit projet de domotique basé sur un Arduino Meag + Ethernet Shield et tout se passe plutôt bien sauf que souhaiterais alléger un peu la somme de travail que je demande a l'arduino ...

Sans trop entrer dans les détails qui vont barber la majorité d'entre vous xD
Je piloter des relays, ma télé ^^, envoie message twitter, capter la température ... via une page web

En effet l'arduino fait absolument tout : acquisition, hébergement des pages web, traitement des données ...

Je souhaiterais donc savoir si il est possible de soulager ?

Il y a beaucoup d'idée sur internet mais pas vraiment de tuto :S
Quelqu'un aurait une petite idée, VB, HTML/PHP ?

Je suis un petit nooby dans le domaine du dev web smiley-sad

Amicalement,
trigger

wow ça peu faire tout ça un Arduino ????
personnellement moi je suis un peu plus que toi "nooby" mais moi c'est dans le domaine de l'électronique. Mais perso j utilise pas mal le CMS joomla (http://www.joomla.fr/decouvrir-joomla/qu-est-ce-que-joomla). Mais dans ton cas, ce ne serait pas judicieux de l'utiliser.  C'est plus lourd à gérer qu'un site façonné à la main en HTML/PHP . Enfin je pense.   
« Last Edit: March 04, 2012, 10:48:06 am by stefang7 » Logged

Aix en Provence
Offline Offline
Sr. Member
****
Karma: 2
Posts: 264
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Encore merci pour votre aide,

Mais je n'arrive toujours pas à faire marcher le schmilblick.

J'ai essayé  le code envoyé par infobarquee

dans la boîte "valeur de la LED" j'ai : <br /><b>Notice</b>:Undefined variable: valeur_led in <b>C:\Program Files (x86)\EasyPHP-5.3.9\www\slider_led.php</b> on line <b>21</b><br />
et voici ce que j'obtiens lorsque j'appuie sur envoyer :
Fatal error: Call to undefined function socket_create() in C:\Program Files (x86)\EasyPHP-5.3.9\www\slider_led.php on line 6

J'utilise Easy PHP-5.3.9 et ne ne vois pas où activer PHP_Sokets comme le propose Michel_B
Logged

Offline Offline
Full Member
***
Karma: 0
Posts: 177
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

si tu comprends un peu l'anglais il y a différentes procédures expliquées sur cette page pour activé le socket sous wamp :
http://rodrixar.blogspot.com/2011/07/how-to-run-php-sockets-in-wamp.html
Logged

Aix en Provence
Offline Offline
Sr. Member
****
Karma: 2
Posts: 264
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ca y est ça marche !

C'était bien ça, en fait les sockets ne sont pas activés par défaut dans EasyPHP.

Merci à tous.
Logged

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

Bonjour, je coule...
J'utilise arduino 1.0 et essaye d'utiliser le code de http://blog.weeboo.net/tutoriel-arduino-ethernet-shield-controler-led-depuis-une-page-web/
J'arrive bien à envoyer ma valeur vers l'arduino mais je ne trouve pas comment récupérer une trame depuis l'arduino... En gros sa réponse...

voici le code de ma partie php:

Code:
if (isset($_POST['envoyer'])){
               $valeur_led = $_POST["led1"]; //  récupération de la valeur transmise en méthode POST
               $host="192.168.1.30";  // Adresse ip défini dans le code arduino
               $port=8888;    // Port défini dans le code arduino
               $socket = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
               socket_sendto($socket, $valeur_led , strlen($valeur_led), 0, $host, $port);
               
   /*$result = socket_bind($socket, $host, $port) ;//or die("Could not bind to socket\n");
echo "Socket Open OK <br> \n";
$tt=0;
while($tt<20){ // Lire les données 20 caracteres :
$input = socket_read($socket,20);
$tt++;
}
echo 'Message reçu : ' . stream_socket_recvfrom($socket, 15) . '<br />';
*/
socket_close($socket);

}


echo"retour POST=".$valeur_led."longueur=".strlen($valeur_led)." <br>";
$valeur_led=125;//ré initialisation par default pour le formulaire html

mon code ino:
Code:
#include <SPI.h>
#include <Ethernet.h>
#include <EthernetUdp.h>


byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192, 168, 1, 30); //ip arduino

unsigned int localPort = 8888;      // port de communication arduino

// buffers RX TX en UDP (24 par defaut??)
char packetBuffer[UDP_TX_PACKET_MAX_SIZE]; //buffer to hold incoming packet,
char  ReplyBuffer[] = "acknowledged";       // a string to send back

// An EthernetUDP instance to let us send and receive packets over UDP
EthernetUDP Udp;

void setup() {
  // start the Ethernet and UDP:
  Ethernet.begin(mac,ip);
  Udp.begin(localPort);
  Serial.begin(9600);
}

void loop() {

  int packetSize = Udp.parsePacket();
  if(packetSize)
  {
    Serial.print("Received packet of size ");
    Serial.println(packetSize);
    Serial.print("From ");
    IPAddress remote = Udp.remoteIP();
    for (int i =0; i < 4; i++){
      Serial.print(remote[i], DEC);
      if (i < 3){
        Serial.print(".");
        }
      }
    Serial.print(", port ");
    Serial.println(Udp.remotePort());
   
    memset(packetBuffer, 0, UDP_TX_PACKET_MAX_SIZE);//permet de vider le buffer
   
    // lecture du buffer reception
    Udp.read(packetBuffer,UDP_TX_PACKET_MAX_SIZE);
    Serial.println("Contents:");
    Serial.println(packetBuffer);
   
    // envoi d'une réponse à la trame udp reçu
    Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
    Udp.write(ReplyBuffer);
    Udp.endPacket();
  }
  delay(5);
}


Ma premiere question, remarque/probleme est le port affiché dans la console série , il varie en permanence...

voici quelques exemples:

Code:
Received packet of size 3
From 192.168.1.50, port 54964
Contents:
160
Received packet of size 3
From 192.168.1.50, port 58487
Contents:
125
Received packet of size 1
From 192.168.1.50, port 58488
Contents:
1

ma deuxième question est comment récupérer la trame envoyée par l'arduino? Ici "acknowledged"
Dans mon code php, si je laisse les parties contenant la lecture du buffer de réception, j'obtient systématiquement une erreur "Could not bind to socket"
 raison pour laquelle j'ai commenté cette partie du code... en gros je suis perdu dans la partie réception php....
Pour éviter les problèmes de routage, je travail en câble direct sur mon pc avec les 2 machines en ip fixe arduino  192 168 1 30 et serveur apache 192 168 1 50 (easyphp 5.4 avec extension php_sockets activée)
voili voilà...
Merci d'avance de votre aide...
Mon but est uniquement de pouvoir échanger des info entre l'arduino et mon serveur php, je verrais ensuite à utiliser ces données pour représenter des entrées/capteur ou des consignes pour l'arduino.
Logged

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

Salut Osaka et Chesnel,
vous semblez bien maîtriser le domaine du ethernet sur arduino, pouvez vous me dire comment récupérer des infos depuis l'arduino sur ma page php? je ne comprends déjà pas pourquoi le port de réception varie en permanence???
Merci @++
Logged

Pages: 1 2 [3]   Go Up
Jump to: