You are on page 1of 3

Codigo de arduino:

void setup() {
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
}
 
int valpwm;
float valtemp;
 
// the loop routine runs over and over again forever:
void loop() {
  int sensorValue = analogRead(A1);
 
  valtemp = (sensorValue*2500.00)/1023.00;
  delay(1);
  Serial.println(valtemp);
  delay(1000);
   
}

Codigo de Processing

import processing.serial.*;

Serial myPort;        // The serial port


int xPos = 1;         // horizontal position of the graph 

//Variables to draw a continuous line.


int lastxPos=1;
int lastheight=0;

boolean nuevoDato = false;

Float dato = 0.0;


Float ultimoDato = 0.0;

Float umbral = 100.0; // Umbral para que cambies.


  
PrintWriter log;

void setup () {
  
  // set the window size:
  size(1800, 400);     
  
  log = createWriter("log.csv"); //Logger
  // List all the available serial ports
  
  // Check the listed serial ports in your machine
  // and use the correct index number in Serial.list()[].

  myPort = new Serial(this, "COM5", 9600);  // Aca poner la COM de tu arduino

  // A serialEvent() is generated when a newline character is received :


  myPort.bufferUntil('\n');
  background(0);      // set inital background:
}
void draw () {
   
  if (nuevoDato)
  {
    
    
    nuevoDato = false;
    stroke(127,34,255);     //stroke color
    strokeWeight(1);        //stroke wider
    line(lastxPos, lastheight, xPos, height - dato); 
    lastxPos= xPos;
    lastheight= int(height-dato);

    // at the edge of the window, go back to the beginning:


    if (xPos >= width) {
      xPos = 0;
      lastxPos= 0;
      background(0);  //Clear the screen.
    } 
    else {
      // increment the horizontal position:
      xPos++;
    }
  }
}

void serialEvent (Serial myPort) {


 
  String inString = myPort.readStringUntil('\n');
  //System.out.println(inString);
  if (inString != null) {
    inString = trim(inString);                // trim off whitespaces.
    dato = float(inString);           // convert to a number.
    
    
    //log.println(millis()+","+dato);
      log.println(hour()+":"+minute()+":"+second() +" , "+dato);
    
    
    if (dato > (ultimoDato + umbral) || dato < (ultimoDato - umbral))
    {
      dato = map(dato, 0, 1023, 0, height); //map to the screen height.
      ultimoDato = dato;
      nuevoDato = true;
      
    }
    
  }
}

void exit() {
  
 
  log.flush(); // Writes the remaining data to the file
  log.close(); // Finishes the file
  
  println("CErrado");
  super.exit();
}

Conexión de arduino

You might also like