Subscribe Us

test

Breaking

Post Top Ad

Your Ad Spot

miércoles, 9 de diciembre de 2015

Trazado Grafico de una señal en Processing de entrada analogico con Arduino



Trazado Grafico de una señal en Processing con manejado con Arduino

(Leída desde una entrada analógica de la tarjeta Arduino y mostrada mediante Processing)

Para realizar este ejemplo bastará conectar un potenciómetro a la entrada analógica 1 PIN 1
de la tarjeta Arduino tal como se muestra en la figura.





Se carga Arduino con el siguiente programa

PROGRAMA ARDUINO 

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  Serial.println(analogRead(1));
  delay(100);
}



PROGRAMA PARA PROCESSING

// Graph
// by David A. Mellis
//
// Demonstrates reading data from the Arduino board by graphing the
// values received.
//
// based on Analog In 
// by <a href="http://itp.jtnimoy.com">Josh Nimoy</a>. 

import processing.serial.*;

Serial port;
String buff = "";
int NEWLINE = 10;

// Store the last 64 values received so we can graph them.
int[] values = new int[64];

void setup()
{
  size(512, 256);

  println("Available serial ports:");
  println(Serial.list());

  port = new Serial(this, Serial.list()[1], 9600);  

}

void draw()
{
  background(53);
  stroke(255);

// Graph the stored values by drawing a lines between them.
  for (int i = 0; i < 63; i++)
    line(i * 8, 255 - values[i], (i + 1) * 8, 255 - values[i + 1]);

  while (port.available() > 0)
    serialEvent(port.read());
}

void serialEvent(int serial)
{
  if (serial != NEWLINE) {
    buff += char(serial);
  } else {

    buff = buff.substring(0, buff.length()-1);
    int val = Integer.parseInt(buff)/4;
    // Clear the value of "buff"
    buff = "";

    for (int i = 0; i < 63; i++)
      values[i] = values[i + 1];

    // Add the received value to the array.
    values[63] = val;
  }
}

Post Top Ad

Your Ad Spot

Páginas