Annonce

>>> Bienvenue sur codelab! >>> Première visite ? >>> quelques mots sur codelab //// une carte des membres//// (apéros) codelab


#1 2014-01-16 14:17:07 Arduino vers Processing afficher la température

Rayan borger
nouveau membre
Date d'inscription: 2014-01-16
Messages: 5

Arduino vers Processing afficher la température



Bonjour, à tout le monde

Dans le cadre d'un projet d'étude, je dois afficher la température de trois capteurs de température Grove sur processing
Je sais les afficher sur le Terminal Arduino mais pas avec Processing.
Pourriez vous m'aider s'il vous plaît?

Voici mon code arduino:
void setup()
{
  Serial.begin(9600);             
}

void loop()
{
  int value1 = analogRead(0);
  Serial.println(value1);
  int value2 = analogRead(1);
  Serial.println(value2);
  int value3 = analogRead(2);
  Serial.println(value3);
  delay(1000);
   
}

voici mon début de code processing qui ne marche que pour afficher la valeur de un capteur sur les deux:



Serial myPort;
float value=0;
void setup() {
size(200, 200);
println(Serial.list());
myPort = new Serial(this, Serial.list()[0], 9600);
myPort.bufferUntil('\n');
}

void draw() {
background(0);
fill(255);
  text(nf(value, 0, 1) + "°C", width/2, height/2);
}

void serialEvent(Serial myPort) {
// lire une chaine jusqu'au retour chariot:

String inString = new String(myPort.readBytesUntil('\n'));
if (inString != null) {
   // supprimer les espace en trop:
   inString = trim(inString);
   float col = float(inString);
   // convertir en un chiffre de 0 a 255:
   value=col*1;
}
}

Hors ligne

 

#2 2014-01-17 05:29:32 Re : Arduino vers Processing afficher la température

fabrice54
membre
Date d'inscription: 2012-06-07
Messages: 242

Re: Arduino vers Processing afficher la température



bonjour

pour ton problème,1) télécharger Firmata dans la carte ARDUINO.
                             2)installer la librairie Firmata ARDUINO dans processing.
                            3)ecrire le programme qui suit dans processing.

Code (P5) :

import processing.serial.*;
import cc.arduino.*;
Arduino arduino;
void setup() {
  size(700,700);
  
    arduino = new Arduino(this, Arduino.list()[0], 57600);
      }
void draw() {
  
    float val=arduino.analogRead(0);     
 float val1=arduino.analogRead(1); 
 float val2=arduino.analogRead(2);   
     
   
     
}

Hors ligne

 

#3 2014-01-17 10:21:40 Re : Arduino vers Processing afficher la température

Rayan borger
nouveau membre
Date d'inscription: 2014-01-16
Messages: 5

Re: Arduino vers Processing afficher la température



Merci, Beaucoup de votre aide

Hors ligne

 

#4 2014-01-17 14:17:37 Re : Arduino vers Processing afficher la température

Rayan borger
nouveau membre
Date d'inscription: 2014-01-16
Messages: 5

Re: Arduino vers Processing afficher la température



Suis -je obligé d'insérer l'exemple de Firmata "Standard Firmata" afin de lire mes valeurs ?
merci d'avance de ta réponse

Hors ligne

 

#5 2014-01-18 05:20:40 Re : Arduino vers Processing afficher la température

fabrice54
membre
Date d'inscription: 2012-06-07
Messages: 242

Re: Arduino vers Processing afficher la température



oui ,tu charge standar firmata dans ta carte arduino,firmata est un logiciel qui permet de ne pas programmer ta carte arduino avec standar firmata tu peux lire les données analogique et aussi la position d'inters sur les pattes logiques de ta carte c'est très pratique,tu as juste le programme à faire sur processing.Dans l'exemple que je t'ais envoyez tu récupéreras les valeurs de tes capteurs dans les variables val,val1,val2, que tu peux faire apparaitre dans des sliders ou sous différentes formes si tu le souhaite .

Hors ligne

 

#6 2014-01-18 11:31:16 Re : Arduino vers Processing afficher la température

Rayan borger
nouveau membre
Date d'inscription: 2014-01-16
Messages: 5

Re: Arduino vers Processing afficher la température



Merci de ta réponse et désolé encore du dérangement.
Je souhaite faire une interface graphique pour un contrôleur de température.En fait je voulais aussi utiliser  Arduino afin de mettre un programme (que j 'ai déjà )qui envoie une consigne de température envoyé de Processing vers Arduino.
Sur interface Processing d’un coté j'ai les résultat des capteurs, et de l'autre une commande pour envoyer une consigne vers Arduino.

Lorsque que j'essaye d'assembler les deux code entre eux, ça me dit : "portCOM10 Busy", je sais d'ou vient le problème :

code processing :
myPort = new Serial(this, Serial.list()[0], 57600); // Initialise une nouvelle instance du port Série
arduino = new Arduino(this, Arduino.list()[0], 57600);
myPort.bufferUntil('\n'); // attendre arrivée d'un saut de ligne pour générer événement série

Je sais je peux pas initialise deux port série mais quand je remplace myPort.bufferUntil('\n'); par arduino.bufferUntil('\n'); => ça me dit "The function Until(char) doest not exist" mais avec le myPort cela marchait.
Je ne comprends pas
pourriez m'aider afin de résoudre mon problème s’il-vous-plait?
merci d'avance encore

Hors ligne

 

#7 2014-01-19 09:57:37 Re : Arduino vers Processing afficher la température

Mushussu
membre
Lieu: Orléans
Date d'inscription: 2012-05-24
Messages: 802

Re: Arduino vers Processing afficher la température



Bonjour,

La classe Arduino n'a pas la méthode bufferUntil().
Il faut faire un choix, soit tu utilises Firmata sur ta carte et dans Processing, soit tu utilises tes propres programmes pour récupérer les données.

Avec Firmata, tu as la méthode analogRead(pin) qui te permet de lire directement le PIN dont tu souhaites récupérer la valeur.

Hors ligne

 

#8 2014-01-19 11:36:35 Re : Arduino vers Processing afficher la température

Rayan borger
nouveau membre
Date d'inscription: 2014-01-16
Messages: 5

Re: Arduino vers Processing afficher la température



Merci encore.
Le problème c'est sur processing je reçoit seulement la valeur de un capteur et non du deuxième tout en envoyant une consigne , je ne sais pas comment faire .
si tu aurez une solution. Merci
Sinon c'est pas grave merci beaucoup de votre aide

Hors ligne

 

#9 2014-01-20 04:19:48 Re : Arduino vers Processing afficher la température

fabrice54
membre
Date d'inscription: 2012-06-07
Messages: 242

Re: Arduino vers Processing afficher la température



tu peux envoyer un point de consigne .  arduino.analogWrite(11,25);
mais si tu veux faire une action par rapport à ton point pourquoi ne pas mettre un potar sur la carte arduino pour fixer le point de consigne dans processing en mettant par exemple consigne=ArduinoanalogRead(4)et faire un traitement par rapport à tes capteur et ensuite declencher une action dans la carte arduino.

Code (P5) :

Hors ligne

 

fil rss de cette discussion : rss

Pied de page des forums

Powered by FluxBB

codelab, graphisme & code : emoc / 2008-2024