We are about to switch to a new forum software. Until then we have removed the registration on this forum.
Hello Get accurate processing via 2 Separated Values 2 ultrasonic distance sensors via Arduino . In arduino I'm OS Values tendon however no processing I'm picking up . Can anyone help , follow OS 2 codes thanks in advance
ARDUINO
//iniciando a função e passando os pinos Ultrasonic ultrasonic(12,13); Ultrasonic ultrasonic2(4,5);
void setup() { Serial.begin(9600); //inicia a porta serial pinMode(echoPin, INPUT); // define o pino 13 como entrada (recebe) pinMode(trigPin, OUTPUT); // define o pino 12 como saida (envia) pinMode(echoPin2, INPUT); // define o pino 4 como entrada (recebe) pinMode(trigPin2, OUTPUT); // define o pino 5 como saida (envia) }
void loop()
{
//seta o pino 12 com um pulso baixo "LOW" ou desligado ou ainda 0
digitalWrite(trigPin, LOW);
// delay de 2 microssegundos
delayMicroseconds(2);
//seta o pino 12 com pulso alto "HIGH" ou ligado ou ainda 1
digitalWrite(trigPin, HIGH);
//delay de 10 microssegundos
delayMicroseconds(10);
//seta o pino 12 com pulso baixo novamente
digitalWrite(trigPin, LOW);
// função Ranging, faz a conversão do tempo de
//resposta do echo em centimetros, e armazena
//na variavel distancia
float duration = pulseIn(echoPin,HIGH);
//Esse calculo é baseado em s = v . t, lembrando que o tempo vem dobrado
//porque é o tempo de ida e volta do ultrassom
float distancia = duration /29 / 2 ;
//seta o pino 12 com um pulso baixo "LOW" ou desligado ou ainda 0
digitalWrite(trigPin2, LOW);
// delay de 2 microssegundos
delayMicroseconds(2);
//seta o pino 5 com pulso alto "HIGH" ou ligado ou ainda 1
digitalWrite(trigPin2, HIGH);
//delay de 10 microssegundos
delayMicroseconds(10);
//seta o pino 5 com pulso baixo novamente
digitalWrite(trigPin2, LOW);
// função Ranging, faz a conversão do tempo de
//resposta do echo em centimetros, e armazena
//na variavel distancia
float duration2 = pulseIn(echoPin2,HIGH);
//Esse calculo é baseado em s = v . t, lembrando que o tempo vem dobrado
//porque é o tempo de ida e volta do ultrassom
float distancia2 = duration2 /29 / 2 ;
Serial.println("pé da frente"); Serial.println(distancia); Serial.println("pé de tras"); Serial.println(distancia2); delay(1000); //espera 1 segundo para fazer a leitura novamente }
PROCESSING
// Example by Tom Igoe
import processing.serial.*;
Serial myPort; // The serial port PFont myFont; // The display font String distancia; String distancia2;// Input string from serial port int lf = 10; ; // ASCII linefeed
void setup() { size(500,500); // You'll need to make this font with the Create Font Tool //myFont = loadFont("ArialMS-18.vlw"); //textFont(myFont, 18); // List all the available serial ports: printArray(Serial.list());
myPort = new Serial(this, Serial.list()[0], 9600); myPort.bufferUntil(lf); }
void draw() { background(0); text("Pé de trás: " + distancia, 10,50); text("Pé de trás: " + distancia2, 10,150);
}
void serialEvent(Serial p) { distancia = p.readString(); }