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
Tags:
Veja como o sensor Hc-sr04 funciona:
http://labdegaragem.com/forum/topics/sensor-hc-sr04-ultrasom-como-f...
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 ?
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.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por