Etoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactives
 

Communiquer avec un serveur sous Processing parait for simple mais un même programme peut-il fonctionner sur Android et sur PC voir en javascript. 

Pour ce qui est du javascript je n'y suis pas encore arrivé mais pour Android et PC c'est possible. Cependant il faudra proposer à processing de changer sa librairie Processing.net pour une autre. Pour ce faire il suffit de créer un dossier code à la racine de notre projet et de coller dedans le fichier net.jar ci-dessous.

Fichiers:
net.jar 1.0 POPULAIRE
(0 votes)
Date samedi 15 mars 2014 à 18:45 Taille du fichier 5.41 KB Téléchargement 285 Télécharger

Le code : 

/* @pjs preload="LEDBrillante.png, LEDEteinte.png, PotarVide.png, arduinoledpotar.png"; 
 */
/************************** JAVASCRIPT *****************************   
/*******************************************************************
  Attention pour le javascript il faut inclure les images en faisant 
  "JavaScript > Playback Setting (Directives) " puis scan dans la 
  partie preloaded images (ce qui rajoute les deux lignes ci-dessus.)
  
/**************************** ANDROID ******************************  
/*******************************************************************
 Attention pour Android (processing.net n'existe pas pour android)
 il faut ajouter la librairie net.jar dans le dossier code.
 Ne pas oublier de donner la permission "internet" en faisant
 Android>Sketch permissions
*/

// Les lignes estampillées "Pour débogage" ne sont pas nécessaires

import processing.net.*;

//********************* Déclarations **************************
Client myClient;
int ValeurRetour;
PImage Cablage;
PImage LEDBrillante;
PImage LEDEteinte;
PImage PotarVide;
int XLED=338;
int YLED=466;
int LargeurLED=43;
int HauteurLED=48;
boolean EtatLED=false;
float Angle;

//********************* Setup ********************************* 
void setup() {
  smooth();
  size(1024,768); // normalement pas de size pour android mais ça passe quand même
  background(252,250,190);
  myClient = new Client(this, "192.168.0.150", 50000); // Indiquer ici l'adresse et le port
  Cablage = loadImage("arduinoledpotar.png");
  LEDBrillante = loadImage("LEDBrillante.png");
  LEDEteinte = loadImage("LEDEteinte.png");
  PotarVide = loadImage("PotarVide.png");
  image(Cablage, 20, 20);
  textSize(32);
  fill(0);
  text("Cliquer ou toucher la LED pour l'allumer sur la carte Arduino. Faire tourner le potentiomètre sur la carte Arduino pour le voir bouger sur l'image.", 510,20,(1024-510),(768-20));
}
//********************* Draw ********************************* 
void draw() 
{
 ValeurRetour=myClient.read();

 
 if (ValeurRetour!=-1)
  {
    pushMatrix();// Sauvegarde le système de coordonnées
      Angle=map(ValeurRetour,0,255,340,20);  
      print(ValeurRetour);//Pour débogage
      print(" soit ");
      image(PotarVide, 253, 389); 
      translate(264, 398);//décalage de l'origine
      Angle=radians(Angle);// rotation du plan
      println(Angle);//Pour débogage
      rotate(Angle);
      fill(255,0,0);  
      stroke(255,0,0);  
      rect(0,0,2,7);   
    popMatrix();// Restaure le système de coordonnées
  }
}
//********************* mousePressed *************************
void mousePressed() 
{
    if ((mouseX>XLED)&& (mouseX<XLED+LargeurLED)&&(mouseY>YLED)&& (mouseY<YLED+HauteurLED)) //Si clic sur LED
        {
          if (EtatLED==true)
          {
            EtatLED=false;
            image(LEDEteinte, XLED, YLED);
            myClient.write(101);//101 Pour éteindre la LED jaune
          }       
         else
          {
            EtatLED=true;
            image(LEDBrillante, XLED, YLED); 
            myClient.write(100);//100 Pour allumer la LED jaune

          }     
        }
}

 On peut tester ce projet avec une carte Arduino équipée d'un shield WiFi par exemple voir cet article : Communication bidirectionnelle en WiFi d’une carte Arduino UNO vers un PC ou une Tablette.

Processing Wifi 1.0 POPULAIRE
(2 votes)

Exemple processing de communication wifi avec Arduino pour Android et PC.

Licence CC BY-NC-SA 2.0 France Date samedi 15 mars 2014 à 18:15 Langue  French Taille du fichier 1.04 MB Téléchargement 510 Télécharger

Ajouter un Commentaire


Code de sécurité
Rafraîchir

Commentaires   

Rob28
0 # Rob28 10-05-2014 13:11
Bonjour, je n'arrive pas à ouvrir les fichiers téléchargés (communication wifi app inventor) avec quel logiciel peut-on les ouvrir ?

Cordialement
Répondre | Répondre en citant | Citer
Frank
0 # Frank 02-04-2014 19:41
Attention : Petite erreur de câblage le fil noir du potentiomètre va bien sur la masse et non le plus.
Répondre | Répondre en citant | Citer