Pages: [1]   Go Down
Author Topic: [résolu] 2 arduino uno + freebox 4  (Read 867 times)
0 Members and 1 Guest are viewing this topic.
ITTEVILLE
Offline Offline
Jr. Member
**
Karma: 0
Posts: 60
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour,
En m'inspirant du script de mon club-elec, j'arrive à piloter 3 sorties relais par internet, soit par PC ou par smartphone androïd.
Avec une carte arduino avec ethernet shield W5100 celà fonctionne bien en tapant mon ip fixe  de la freebox 86.XXX.XX.XX, l'arduino étant en 192.168.0.100, port 80.

J'ai essayé avec une deuxieme carte arduino en 192.168.0.177, port 81, j'ai bien l'image html, mais mes sorties ne changent pas d'état.

Voici le début du code (tout ne rentre pas)

Code:
// --- Programme Arduino ---
// Code généré par le générateur de code Arduino
 // du site www.mon-club-elec.fr
// Inspiré par X. HINAULT - Tous droits réservés
// 16 octobre 2010
// Adapté Decembre 2012
 
// ------- Licence du code de ce programme -----
//  This program is free software: you can redistribute it and/or modify
 //  it under the terms of the GNU General Public License as published by
 //  the Free Software Foundation, either version 3 of the License,
 //  or any later version.
 //  This program is distributed in the hope that it will be useful,
 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 //  GNU General Public License for more details.
 //  You should have received a copy of the GNU General Public License
 //  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
//*************** PRESENTATION DU PROGRAMME ***************

// -------- Que fait ce programme ? ---------
  /* Commande 3 Sorties sur une carte Arduino
 couplée à un module Ethernet
 configurée en serveur HTTP
 à partir d'un navigateur client sur le PC
 et sur smartphone Androïd
 
La connexion série est utilisée sur le PC connecté au serveur
 pour visualiser le protocole HTTP utilisé
 et les échanges Serveur/client
 
Les chaines de caractères constantes
 sont stockées en mémoire flash programme
 en raison du grand nombre de chaines utilisées
 
 
 */

// --- Fonctionnalités utilisées ---

// Utilise la connexion série vers le PC
// Utilise le module Ethernet Arduino
// en mode serveur HTTP

// utilise la librairie Flash de stockage en mémoire programme FLASH
 
// -------- Circuit à réaliser ---------

// La connexion série vers le PC utilise les broches 0 et 1 (via le câble USB)

// Le module Ethernet est à enficher broche à broche sur la carte Arduino

//****************** Entête déclarative ****************
// A ce niveau sont déclarées les librairies incluses, les constantes, les variables...
 
// --- Déclaration des constantes ---
 
// --- Inclusion des librairies ---
 
//-- librairies utilisées pour le module Ethernet
 #include <SPI.h>
 #include <Ethernet.h>
 #include <Server.h>
 #include <Client.h>
 
// librairie pour stockage en mémoire flash programme
 #include <Flash.h>
// attention : l'utilisation de F("chaine") necessite modification
 // du fichier print.h
 // voir : www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.LibrairieFlashProgramme
 

// --- Déclaration des constantes des broches E/S numériques ---
 
const int LED[3]={7,8,9}; // Constante pour les broches
 //--- la broche 4 est utilisée par le module ethernet
 
// --- Déclaration des constantes des broches analogiques ---
 

// --- Déclaration des variables globales ---
 
//--- déclaration du tableau d'adresse MAC ---
 byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; // valeur arbitraire
 
//---- tableau de l'adresse IP de la carte Arduino
 byte ip[] = { 192,168,0,100 }; // le PC a pour IP : 192.168.0.100
 
//----- tableau de l'adresse de la passerelle ---
byte passerelle[] = { 192, 168, 0, 254 }; // l'adresse du PC de connexion ou de la Box
 
//----- tableau du masque de sous réseau
byte masque[] = { 255, 255, 255, 0 }; // idem masque sous-réseau du PC : 255.255.255.0
 
// variables globales utiles
String chaineRecue=""; // déclare un string vide global
 int comptChar=0; // variable de comptage des caractères reçus

//------ tableau de String ----
// variables globales de mémorisation de l'état d'une case à cocher "" ou "checked"
 String etatCase[3]={ "","",""};

// --- Déclaration des objets utiles pour les fonctionnalités utilisées ---
 
//--- création de l'objet serveur ----
 Server serveurHTTP(80); // crée un objet serveur utilisant le port 80 = port HTTP
 

suite...
Code:
     //------------- génération du formulaire ----------------

             client.println(F("<FORM method=\"get\" action=\"http://88.XXX.XX.XX/\">")); // debut du formulaire - utilise méthode Get
              client.println(F("<P>")); // balise paragraphe
 

Et voici en image la configuration de ma box.

Bonne journée à tous.


* Freebox.jpg (176.23 KB, 1680x1050 - viewed 28 times.)
* ethernet_clubelec_3s_for.pde (13.65 KB - downloaded 9 times.)
« Last Edit: December 06, 2012, 11:44:38 am by zerko » Logged

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

Bonjour,

Tu n'aurais pas oublié de spécifier le port dans le code de la 2éme carte ?
Code:
client.println(F("<FORM method=\"get\" action=\"http://88.XXX.XX.XX:80/\">"))
Code:
client.println(F("<FORM method=\"get\" action=\"http://88.XXX.XX.XX:81/\">"))
Logged

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

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

Bonjour,
Effectivement je n'ai pas spécifié le port.
Je teste et te tiens au courant.

Merci et bonne soirée.
Logged

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

Merci @Skywodd, cela fonctionne très bien.

Logged

Pages: [1]   Go Up
Jump to: