Bom dia,

queria colocar dois sensores ultrasonicos conectados a um arduino, e trabalhar com eles em separado, o problema é que com o código que tenho não consigo fazer isso. Queria colocar um sensor ultrasonico contra o outro ou seja ficarem frente a frente com uma distancia entre eles de 45cm e ao colocar um objeto entre eles o arduino calcular o tamanho do objeto.

Aguardo Resposta

Rodrigo Ruas

Exibições: 415

Anexos

Responder esta

Respostas a este tópico

Oi RR,bom dia.

Veja este fragmento de código, nele estão definidos 2 emissores/sensores de US, usando a biblioteca Ultrasonic.h.

Rui

#include"Ultrasonic.h"

#define trig1    2

#define echo1  3

#define trig2    4

#define echo2  5

ultra1(2,3);//define sensor ultra1 como trigger no pino 2  e echo no pino 3

ultra2(4,5);//define sensor ultra2 como trigger no pino 4 e echo no pino 5

voidsetup()

{

  pinMode(trig1,OUTPUT);// define o pino 2 como saida 

  pinMode(echo1,INPUT);// define o pino 3 como entrada

  pinMode(trig2,OUTPUT);// define o pino 4 como saida 

  pinMode(echo2,INPUT);// define o pino 5 como entrada 

}

void loop()

{

    int xpto1 = ultra1.Ranging(CM);

    int xpto2 = ultra2.Ranging(CM);

}

Com este código aparece o seguinte erro:

ultrasonicolabgaragem:11: error: expected constructor, destructor, or type conversion before '(' token
ultrasonicolabgaragem:13: error: expected constructor, destructor, or type conversion before '(' token
ultrasonicolabgaragem.ino: In function 'void loop()':
ultrasonicolabgaragem:33: error: 'ultra1' was not declared in this scope
ultrasonicolabgaragem:33: error: 'CM' was not declared in this scope
ultrasonicolabgaragem:35: error: 'ultra2' was not declared in this scope
expected constructor, destructor, or type conversion before '(' token



Instalou a Biblioteca Ultrasonic ? 

https://www.arduino.cc/en/Guide/Libraries

Rui, boa noite!

O correto não seria:

Ultrasonic ultra1(2,3);//define sensor ultra1 como trigger no pino 2  e echo no pino 3

Ultrasonic ultra2(4,5);//define sensor ultra2 como trigger no pino 4 e echo no pino 5

Por isso deu o erro de compilação, além do fato que é necessário instalar a lib?

Qual sensor irá usar ? 

Dependendo do sensor um poderá atrapalhar as medições do outro. 

Eu estou a utilizar o HC-SR 04

Viu  no artigo que eu escrevi, que eles emitem trens de pulso ?

Se  um trem de pulsos misturar com o trem de pulsos do outro,  as medidas serão inválidas. 

Portanto, terá que disparar um sensor de cada vez. 

Para isso dispare o pino trigger do Sensor 1 , faça a medida. 

Depois dispare o trigger do Sensor 2 e faça a medida. 

Assim por adiante. Uma medida de cada vez. 

Se a distancia dos sensores é de 45 cm, dá para definir o intervalo de tempo que deve ter entre as duas medidas . 

http://labdegaragem.com/forum/topics/sensor-hc-sr04-ultrasom-como-f...

Mas eu com a biblioteca #include"Ultrasonic.h" nao consigo fazer isso.

As mensagens de  erros que enviou , indicam que a biblioteca não foi instalada corretamente. 

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço