Problemas c/ sensor de distância ultrassonico

1,600 views
Skip to first unread message

Maurício Féo

unread,
Apr 19, 2012, 3:55:45 AM4/19/12
to arduino-...@googlegroups.com, ardu...@googlegroups.com
Fala pessoal,

Eu to com um problema que não consigo desvendar, que é o seguinte:

Eu consigo fazer a leitura da distância com um sensor HC-SR04 perfeitamente com um Arduino duemilanove, mas quando vou gravar no Arduino Nano, o mesmíssimo código, ele reage diferente.

Com o duemilanove, ele lê muito bem a distância, mesmo pra superfícies irregulares como por exemplo minha camisa, quando ele lê errado normalmente é quando forma um ângulo muito grande com a superfície ou esta é muito irregular. Aí a leitura normalmente é um número absurdo.

Quando gravo no Nano, ele lê grande parte das distâncias como '0' (no duemilanove nunca acontece), de vez em quando começa a ler certo, mas só quando a superfície está bem perpendicular a ele e só em superfícies lisas. Se for um pouco irregular volta a ler zero.

Eu preciso que o sistema funcione no Nano, mas sinceramente não entendo qual a diferença! O código é exatamente o mesmo, simplifiquei ao máximo e continua igual.
Alguém em alguma pista do que pode ser?

Segue o código abaixo se ajuda em algo.

Obrigado!

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

#define echo A5
#define trig A4
unsigned long duration;

void setup() {
  lcd.begin(16, 2);
  pinMode(echo,INPUT);
  pinMode(trig,OUTPUT);
  pinMode(7,OUTPUT);
  digitalWrite(7,HIGH);
  Serial.begin(9600);
}


void loop() {
 
  digitalWrite(trig, LOW);
  delayMicroseconds(2);
  digitalWrite(trig, HIGH);
  delayMicroseconds(10);
  digitalWrite(trig, LOW);
  duration = pulseIn(echo,HIGH);
  Serial.println(duration/59,DEC);
  lcd.setCursor(0,0);
  lcd.print(duration/59,DEC);
  lcd.print("  ");
  delay(500);
}

Maurício Féo Rivello
engenheirando.com

Isaias Coelho

unread,
Apr 19, 2012, 9:26:46 AM4/19/12
to arduino-...@googlegroups.com, ardu...@googlegroups.com
Imaginei que poderia ser alguma diferença nas especificações de hardware, mas vendo-as pelo site do Arduino (http://arduino.cc/en/Main/Hardware), não encontrei nada que possivelmente seria a tal causa.


Maurício Féo Rivello
engenheirando.com

--
Você recebeu esta mensagem porque está inscrito no
Grupo "arduino-brasília" nos Grupos do Google.
E-mail: arduino-...@googlegroups.com
Url: http://groups.google.com.br/group/arduino-brasilia?hl=pt-BR
Sair: arduino-brasil...@googlegroups.com

Eldio Santos Jr.

unread,
Apr 19, 2012, 9:38:30 AM4/19/12
to arduino-...@googlegroups.com, ardu...@googlegroups.com
A única coisa que me vem à cabeça sobre o assunto é mau contato mas acredito que você já tenha verificado isso... Então tenta mudar as portas que está utilizando pra ver se não é algum problema intermitente no funcionamento de alguma delas...
--

________________
Eldio Santos Junior
Tel.: (21) 8884-3757
Skype: eldiojr
Twitter: @eldius

Maurício Féo

unread,
Apr 19, 2012, 9:42:43 AM4/19/12
to ardu...@googlegroups.com, arduino-...@googlegroups.com
Esquisito... eu sei que a porta está OK pq eu usava ela com um sensor barométrico que sempre funcionou 100%, só troquei um pelo outro, e também como eu falei, apontando o sensor de frente pra uma parede lisa ele passa a medir certo, mudou um pouco a direção cai pra zero. (Coisa que não acontece qdo está no duemilanove).

Infelizmente já tá tudo montado numa caixinha c/ display e etc e mudar os pinos vai ser uma trabalheira rs.

Obrigado pela ajuda pessoal

Maurício Féo Rivello
engenheirando.com

Luiz Fellipe Ferreira

unread,
Apr 19, 2012, 12:16:22 PM4/19/12
to arduino-...@googlegroups.com
Eu tive problema com o sensor ultrasônico que foi o seguinte: 

Quanto utilizava só a porta USB pra alimentar dava problema, pensei que o sensor estivesse danificado, mas foi só colocar alimentação externa que tudo ficou 100%.



Atenciosamente,

Luiz Fellipe Ferreira



2012/4/19 Maurício Féo <mauri...@gmail.com>

Maurício Féo

unread,
Apr 19, 2012, 12:30:17 PM4/19/12
to arduino-...@googlegroups.com, ardu...@googlegroups.com
Pessoal, valeu a ajuda.

Trocar 59 por 59.0 não funfou, mudar os pinos também não... Ele tanto na pilha quanto na USB no nano fica a mesma coisa.
No duemilanove funciona perfeitamente na USB.

Reparei uma coisa também, além de angulo e superficies irregulares, ele tbm não detecta distância maior que 2m quando está no nano... fica mostrando 0, (enquanto no duemilanove, qdo não detecta direito mostra um numero muito alto, 0 nunca)

Nota que meu código eu copiei da biblioteca ultrassonic.h, que já foi amplamente testada. Aliás, o código funciona perfeito no duemilanove.

Abraços,

Maurício Féo Rivello
engenheirando.com

Isaias Coelho

unread,
Apr 19, 2012, 1:19:36 PM4/19/12
to arduino-...@googlegroups.com, ardu...@googlegroups.com
Fiz um teste há algum tempo atrás com uns sensores, e o HC-SR04 foi o que mais teve comportamento ruim. Nos meus testes eu não consegui ler obstáculos acima de 1,5 metro.

http://arduinolabs.in/qual-sensor-ultrassonico-comprar/

Maurício Féo

unread,
Apr 19, 2012, 6:35:23 PM4/19/12
to ardu...@googlegroups.com, arduino-...@googlegroups.com
Arduino Nano, display LCD, um Buzzer que fica desligado e o sensor de distância.

Maurício Féo Rivello
engenheirando.com



Em 19 de abril de 2012 19:01, Thuener Silva <thu...@gmail.com> escreveu:


2012/4/19 Maurício Féo <mauri...@gmail.com>
Oi pessoal, obrigado pelas respostas.

Vou conferir alimentando o sensor com a mesma alimentação do Duemilanove para ver se isso pode ter feito diferença.
Mas teoricamente creio que não, pq eu testei os 2 na mesma USB.

Sobre testar isolado, meu circuito com o Nano é alimentado com 4 pilhas AA (4.8V). Das pequenas, que fornecem corrente mais que suficiente..
Não é que a voltagem é pouca é que quando liga alguma coisa a voltagem varia um pouco tipo vai a 4.90V e depois volta ao normal. Fora o sensor e o arduino o que mais vc tem ligando?

Tá difícil... rs, to achando que vou ter que abrir mão do nano pra essa aplicação.

Maurício Féo Rivello
engenheirando.com



Em 19 de abril de 2012 16:25, Thuener Silva <thu...@gmail.com> escreveu:

Maurício,
Eu tenho o mesmo sensor e tive problemas quando liguei ele em um carro com dois motores, quando ativava os motores dava um erro na leitura. Isso aconteceu porque os motores não estavam isolados do arduino e do sensor, assim dava uma pequena variação de voltagem ou corrente e gerava um erro na leitura.
Verifica a voltagem que está chegando no sensor e faz um teste isolando o arduino e o sensor dos outros componentes( Usando uma bateria de 9v por exemplo)

Abs,
Thuener

On Apr 19, 2012 3:53 PM, "Leonardo Baracat" <lbar...@gmail.com> wrote:
Mauricio,

Elimina qquer cálculo. Programa para mostrar direto o valor retornado do sensor. É um long mesmo, deve caber no display.

Abraços,

2012/4/19 Eldio Santos Jr. <eldio...@gmail.com>
Rapaz, uma coisa que me passou pela cabeça agora é que talvez o seu sensor esteja enviando um sinal fraco e por isso não esta recebendo uma resposta forte o suficiente pra entender... Se você for ver ele está com alcance reduzido e quando o ângulo reduz a reflexão na direção dele ele não funciona... Tem como alimentar ele por fora pra testar se não é algo na alimentação?

Em 19 de abril de 2012 13:46, Maurício Féo <mauri...@gmail.com> escreveu:

Sim, fiz tudo... inclusive testei outras placas rs, ele nem grava.

Maurício Féo Rivello
engenheirando.com



Em 19 de abril de 2012 13:37, Carlos Eduardo "Mascote" Garcia de Carvalho <carlosed...@ieee.org> escreveu:

Apostava minhas fichas que seria isso.

Você chegou a verificar ou encontrar alguem que tenha utilizado o nano com este sensor?

Embora seja o mesmo processador, talvez por ter um encapsulamento diferente possa ter alguma flags internos diferentes mas acho difícil ser isso.

Você lembrou de fazer a mudança de placa na IDE do Arduino?


---
Carlos Eduardo "Mascote" Garcia de Carvalho
"Reconhece-o em todos os teus caminhos, e ele endireitará as tuas veredas." Provérbios 3.6
(21) 8125-1737
Skype: carloseduardo.gc


2012/4/19 Maurício Féo <mauri...@gmail.com>



--
A cadeia é forte até o elo mais fraco.
__________________________
I get less spam
thanks to Mailnull.com.
http://www.mailnull.com



Maurício Féo

unread,
Apr 19, 2012, 8:32:56 PM4/19/12
to ardu...@googlegroups.com, arduino-...@googlegroups.com
Meus amigos, quero agradecer a ajuda de todos, resolvemos o problema.

Fui testar com outra alimentação como o Eldio e o Thuener suspeitaram, mesmo descrente, pois ambos os arduinos usavam a USB. Mas passou a funcionar.
Ao por o sensor no Nano, eu substitui um outro sensor que já estava na montagem pq tbm usava a mesma pinagem, ae só tirei o outro e pus o ultrassonico no lugar.
Só agora me dei conta que o Vcc do sensor antigo era 3.3V. E não estava visível o fio do Vcc dele ligado à saida 3V3.

Conclusão:
1- Eu sou uma topeira!
2- Graças a sugestão de vocês eu achei o problema.
Tá vendo a importância de não ser cabeça dura e testar até o que você "tem certeza" que não é o erro? rs

Enfim, tá funcionando, em breve posto o projeto!


Abraços,

Maurício Féo Rivello
engenheirando.com



329.png

Luiz Fellipe Ferreira

unread,
Apr 19, 2012, 8:42:19 PM4/19/12
to arduino-...@googlegroups.com
Eu tinha avisado, quando usei o meu só pela USB deu problema, quando coloquei alimentação externa ficou 100%.
329.png

Maurício Féo

unread,
Apr 19, 2012, 10:43:09 PM4/19/12
to arduino-...@googlegroups.com
Oi Luiz,  mas o meu está funcionando 100%, tanto na USB como na pilha.

Isaías, também pra referência, testei até 3m e o meu mediu até com precisão.


Abraços,

Maurício Féo Rivello
engenheirando.com



329.png

Eldio Santos Jr.

unread,
Apr 19, 2012, 11:53:44 PM4/19/12
to arduino-...@googlegroups.com
Féo, quem está de fora não tem essa de "tenho certeza que conferi isso", sempre ajuda... rsrs.
329.png
Reply all
Reply to author
Forward
0 new messages