Baixe o app para aproveitar ainda mais
Prévia do material em texto
1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 1/46 Início Arduino Como conectar o Sensor Ultrassônico HC-SR04 ao Arduino O Sensor Ultrassônico HC-SR04 é um componente muito comum em projetos com Arduino, e permite que você faça leituras de distâncias entre 2 cm e 4 metros, com precisão de 3 mm. Pode ser utilizado simplesmente para medir a distância entre o sensor e um objeto, como para acionar portas do microcontrolador, desviar um robô de obstáculos, acionar alarmes, etc. Neste tutorial ensinaremos a conectar o HC-SR04 ao Arduino. Como conectar o Sensor Ultrassônico HC-SR04 ao Arduino Arduino, Sensores 23 de julho de 2011 Adilson Thomsen 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 2/46 O funcionamento do HC-SR04 (datasheet) se baseia no envio de sinais ultrassônicos pelo sensor, que aguarda o retorno (echo) do sinal, e com base no tempo entre envio e retorno, calcula a distância entre o sensor e o objeto detectado. Primeiramente é enviado um pulso de 10µs, indicando o início da transmissão de dados. Depois disso, são enviado 8 pulsos de 40 KHz e o sensor então aguarda o retorno (em nível alto/high), para determinar a distância entre o sensor e o objeto, utilizando a equação Distância = (Tempo echo em nível alto * velocidade do som) /2 Pesquisar produtos… r m n0 0 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 3/46 Para ligação do sensor ao microcontrolador, são utilizados 4 pinos: Vcc, Trigger, ECHO e GND. Conectando o Sensor HC-SR04 ao Arduino A ligação do sensor ao Arduino no nosso programa vai utilizar, além dos pinos de alimentação, os pinos digitais 4 para o Trigger, e 5 para o Echo. A alimentação será feita pelo pino 5V do Arduino: O programa usa a biblioteca Ultrasonic, que você pode baixar aqui. Descompacte a pasta Ultrasonic e coloque-a dentro da pasta LIBRARIES da IDE do Arduino. 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 4/46 No programa todo o cálculo é feito por meio da biblioteca Ultrasonic. O sensor é inicializado nos pinos trigger e echo, e depois efetuamos a leitura dos dados do sensor, atribuindo às variáveis cmMsec e inMsec os valores das distâncias em centímetros e polegadas, respectivamente. Os dados são mostrados no serial monitor: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 //Programa: Conectando Sensor Ultrassonico HC-SR04 ao Arduino //Autor: FILIPEFLOP //Carrega a biblioteca do sensor ultrassonico #include <Ultrasonic.h> //Define os pinos para o trigger e echo #define pino_trigger 4 #define pino_echo 5 //Inicializa o sensor nos pinos definidos acima Ultrasonic ultrasonic(pino_trigger, pino_echo); void setup() { Serial.begin(9600); Serial.println("Lendo dados do sensor..."); } void loop() { //Le as informacoes do sensor, em cm e pol float cmMsec, inMsec; long microsec = ultrasonic.timing(); cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); inMsec = ultrasonic.convert(microsec, Ultrasonic::IN); //Exibe informacoes no serial monitor Serial.print("Distancia em cm: "); Serial.print(cmMsec); Serial.print(" - Distancia em polegadas: "); Serial.println(inMsec); delay(1000); } 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 5/46 Monitorando Temperatura e Umidade com o sensor DHT11 Relógio com o módulo RTC DS1307 e LCD 20x4 3 projetos incríveis com o Display Touch Arduino Shield Controlando temperatura e pressão com o BMP180 Posts Relacionados Adilson Thomsen Formado em Ciência da Computação pela Universidade de Mogi das Cruzes, atualmente responsável pelo departamento técnico da FILIPEFLOP. Gostou? Deixe seu comentário logo abaixo. Em caso de dúvidas, caso queira trocar uma ideia, ou até mesmo dividir seu projeto, acesse nosso Fórum! 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 6/46 Potenciômetro Controlando Servo Motor → Conectar com: O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com * Comentário Site Publicar comentário Deixe uma resposta Nome * E-mail * 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 7/46 Responder Responder Responder parece que o link da biblioteca ultrasonic postado esta quebrado . gostaria de um link alternativo lucas 12 de setembro de 2013 Obrigado Lucas, o link já foi alterado. Favor conferir. Abraço! FilipeFlop 12 de setembro de 2013 chama um pedreiro pra arrumar bb. jonas 4 de outubro de 2017 123 Comentários 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 8/46 Responder Responder Nossa cara que grosso pra que isso. A� Marcos 4 de outubro de 2017 Ótimo post, mas estou com uma dúvida. Quando inicio a função ultrasonic com “Ultrasonic ultrasonic (12,13);” o IDE diz o seguinte: “sketch_dec23a:5: error: no matching function for call to ‘Ultrasonic::Ultrasonic(int, int)’ C:UsersAndreiDocumentsArduinolibrariesUltrasonic/Ultrasonic.h:24: note: candidates are: Ultrasonic::Ultrasonic() C:UsersAndreiDocumentsArduinolibrariesUltrasonic/Ultrasonic.h:22: note: Ultrasonic::Ultrasonic(const Ultrasonic&)” Andrei Por�ro 23 de dezembro de 2013 Boa noite Andrei, Isso parece ser algum problema na instalação da biblioteca. Se o erro persistir, entre em contato para que possamos ajudar. Grato. 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 9/46 Responder Responder Responder Adilson – Equipe FILIPEFLOP Paulo 13 de maio de 2014 Boa tarde, Preciso de 50 sensores ligados no Arduíno é possível?, achei um que tem 54 entradas/saidas digitais seria essas conexões? att Andre. Andre 15 de junho de 2014 Bom dia André, Nunca conectei essa quantidade de sensores, mas teoricamente é possível, desde que você consiga alterar a biblioteca para reconhecer todos eles. Uma biblioteca que eu conheço e que controla até 15 sensores é a NewPing. Abraço. Adilson – Equipe FILIPEFLOP Paulo 17 de junho de 2014 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 10/46 Responder Responder Bom dia Amigo, na realidade a velocidade aproximada do som ultrassônico é de 340m/s. Fabio 18 de junho de 2014 Gostaria de conectar 4 sensores ultrasonicos no mesmo arduino, com respostas diferentes. é posível? como fazer? se puder colocar um código de exemplo eu agradeço. Abraço Eduardo 9 de agosto de 2014 Boa tarde Eduardo, Por favor veri�que este artigo do site Arduino e Cia, onde é utilizada a biblioteca NEWPING, que permite o controle de até 15 sensores HC-SR04 : http://www.arduinoecia.com.br/2013/12/controle-de-vagas-de- estacionamento-com.html Abraço. Adilson – Equipe FILIPEFLOP 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 11/46 Responder Responder Responder Paulo 11 de agosto de 2014 Gostaria de tentar saber a solução deste problema, a programação está certa, o problema mesmo é na compilação. In �le included fromsketchHC_SR04.ino:3: C:UsersLunaroDocumentsArduinolibrariesUltrasonic/Ultrasonic.h:9:22: error: WProgram.h: No such �le or directory Lucas 22 de agosto de 2014 Boa tarde Lucas, Aparentemente falta algum arquivo na instalação da biblioteca/IDE. O programa é o mesmo utilizado no post ? Grato. Adilson – Equipe FILIPEFLOP Paulo 23 de agosto de 2014 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 12/46 Responder Responder Também estou com o mesmo problema, não está compilando, está sempre dando este mesmo erro, já procurei em outros sites e fóruns e não encontrei uma solução, o que vocês me recomendam a fazer? Lucas Monteiro 10 de novembro de 2014 Pelo que veri�quei em fóruns, WProgram.h deve ser substituída para Arduino.h. Pelo menos foi assim que consegui fazer a biblioteca funcionar. Ricardo Martinelli de Oliveira 29 de novembro de 2014 Irmão resolvi seguindo esse blog aqui: http://blogdonatanael.blogspot.com.br/2012/02/erro-wprogramh-nao- encontrado-no.html só vc editar a biblioteca atual (Ultrasonic.h e Ultrasonic.cpp) pleo seguinte código! Retira o WProgram. h e substitui por esse código: #if de�ned(ARDUINO) && ARDUINO >= 100 #include “Arduino.h” #else #include “WProgram.h” #endif Abração! 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 13/46 Responder Responder Responder Deividson 8 de janeiro de 2015 Baixei a biblioteca para o sensor ultrasonico que tem o comando return ultrasonic.Ranging (CM); e sempre aparece a seguinte mensagem de erro: In �le included from UltrasonicDemo.pde:1: C:UsersPCDocumentsArduinolibrariesUltrasonic/Ultrasonic.h:11:22: error: WProgram.h: No such �le or directory Existem duas bibliotecas com Ultrasonic.h diferentes uma com o Ranging e outra sem. A sem instalei sem problemas mas a com o Ranging sempre dá o erro acima . È isso ou tem outros problemas ? Flavio 25 de novembro de 2014 Caro amigo, estou desenvolvendo um equipamento para medir a evaporação diária. Consta de um tanque cilíndrico contendo água cuja medição da evaporação diária deverá ter uma precisão de 0,5 m.brm de altura evaporada. Pergunto se é possível desenvolver um equipamento para fazer as medições de distâncias de 0,5 mm a 200 mm. Todo material do equipamento já está pronto, faltando, portanto, apenas esse equipamento para que eu possa concluir o projeto. Caso positivo aproveitando o arduíno, o meu amail é : elymartinslima@yahoo.com.br Sem mais, Prof. Ely Martins de Lima Ely Martins de Lima 10 de janeiro de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 14/46 Responder Responder Olá, Gostaria de usar uma combinação de 3 destes sensores, um em cada eixo ortogonal, para criar um sensor de movimento em 3D e transferir as coordenadas do objeto em movimento detectado para um LED cube. Qual o ângulo de abrangência que este sensor detecta? Seria posssível fazê-lo? Renato Garcia 22 de fevereiro de 2015 Boa tarde Renato, Esse sensor detecta objetos à até 4 metros do sensor, segundo o datasheet. Abraço. Adilson – Equipe FILIPEFLOP Paulo 7 de março de 2015 Olá no meu deu o erro seguinte: 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 15/46 Responder Responder Responder sketch_feb25d.ino: In function ‘void loop()’: sketch_feb25d.ino:31:29: error: ‘class Ultrasonic’ has no member named ‘Ranging’ sketch_feb25d.ino:31:37: error: ‘CM’ was not declared in this scope Erro compilando. Renato Xavier 25 de fevereiro de 2015 Boa tarde Renato, Qual versão da IDE você está usando ? Grato. Adilson – Equipe FILIPEFLOP Paulo 7 de março de 2015 Tenho o mesmo problema do Renato Xavier. Abri a biblioteca e dentro da class ultrasonic aparece “public e private”, mas não aparece Ranging. Posso substituir Ranging por públic? [ ] ‘s Mauro Mauro 24 de março de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 16/46 Responder Responder olá boa noite equipe pretendo instalar (3 sensores) �xo ligado no mesmo Arduíno que corresponde individualmente em cada saída de sinal sonoro (3 buzzer) é possível? exemplo um carro que informa se o obstaculo está na direita esquerda ou frente com tons diferentes em cada saída como se fosse um sensor de estacionamento so que com tons para direita diferente da esquerda Josirlei Alves Ramos 30 de março de 2015 Boa noite, É possível sim, mas recomendo a utilização da biblioteca NewPing, que permite um melhor controle de 2 ou mais sensores HC-SR04. Abraço. Adilson – Equipe FILIPEFLOP Paulo 31 de março de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 17/46 Responder Responder Gostaria de saber se o Arduíno uno é o certo para aguentar um sensor ultrassônico e outro de linha, ou seja, estou planejando fazer um robô de sumo. O UNO é o ideal ? Kaique Alves Moreira 8 de abril de 2015 Boa tarde Kaique, Vai depender do seu projeto, do tempo de resposta que você precisa, mas o Arduino Uno suporta tranquilamente trabalhar com esses dois sensores. Abraço. Adilson – Equipe FILIPEFLOP Paulo 11 de abril de 2015 Boa Noite amigos; Sou novato no mundo do Arduíno, acabei de comprar meu kit pelo Filipel�op, e acabei tendo esse erro de compilação e não consegui sanar com as dicas anteriores dos amigos, alguém pode me ajudar? Arduino: 1.6.3 (Windows 8.1), Placa:”Arduino Uno” sketch_apr11b.ino.ino: In function ‘void loop()’: sketch_apr11b.ino.ino:31:29: error: ‘class Ultrasonic’ has no member named ‘Ranging’ sketch_apr11b.ino.ino:31:37: error: ‘CM’ was not declared in this scope 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 18/46 Responder Responder Responder Erro compilando. Alan F Zalewski 11 de abril de 2015 boa noite, o meu apresenta o seguinte erro no programa, pode me ajudar? Arduino: 1.6.3 (Windows 7), Placa:”Arduino Uno” sketch_apr21a.ino: In function ‘void loop()’: sketch_apr21a.ino:31:29: error: ‘class Ultrasonic’ has no member named ‘Ranging’ sketch_apr21a.ino:31:37: error: ‘CM’ was not declared in this scope Erro compilando. guilherme 21 de abril de 2015 Boa Noite Guilherme; Eu tive o mesmo problema, entao depois de fuçar, descobri q a biblioteca q foi postadada nesse blog nao funcionava corretamente, entao eu baixei outra nessa pagina “iteadstudio.com” a qual esta descrita no cabeçalho da biblioteca desse blog, logo apos no meu caso funcionou. vlw. Alan F Zalewski 21 de abril de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 19/46 Responder Responder Boa noite Alan, Pode ser algum problema com a versão da biblioteca ou até mesmo com a IDE, já que o sensor foi testado com a biblioteca indicada no artigo. De qualquer forma, é bom saber que temos mais uma opção de biblioteca para download. Abraço ! Adilson – Equipe FILIPEFLOP Paulo 22 de maio de 2015 Olá, boa noite. A todos que estão com erro na hora de compilar, sugiro que deem uma olhada nos exemplos que vieram junto à biblioteca. Provavelmente o autor da biblioteca alterou a função “ultrasonic.Ranging(CM)” para “ultrasonic.convert(microsec, Ultrasonic::CM)”. Sugiro que o autor do post altere o código apresentado para que �que de acordo com a função dabiblioteca citada. [ ]’s Rafael 17 de maio de 2015 Olá, estamos com um projeto, e ele consiste em medir os níveis de um rio, para 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 20/46 Responder Responder Responder prever as enchentes. Entretanto, não gostaríamos de usar sensores de nível ou boia. Chegamos a considerar o sensor ultrassônico, porem o problema está nas ondulações da agua. Porque a resposta não vai corretamente. Alguém tem alguma dica? Daiane 18 de maio de 2015 Olá boa noite. Acabo de fazer a montagem e a compilação , e o código tudo ok, porém, não está emitindo o som, o que devo fazer? Desde já agradeço Tatiane Marques 4 de junho de 2015 Boa tarde Tatiane, Esse é um sensor de movimento/distância. Trabalha com o conceito de som ultrasonico, onde ele envia um sinal, e depois aguardo o “eco” desse sinal para determinar a distância até o objeto. Abraço. Adilson – Equipe FILIPEFLOP Paulo 10 de junho de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 21/46 Responder Responder Responder utilizo o código, compila normalmente, mas quando é executado a distância �ca apenas em 0 (zero). O problema pode ser com o sensor? Vinicius Marques 15 de julho de 2015 Boa tarde Vinicius, Por favor veri�que as conexões e, caso o problema permaneça, pode ser que o sensor esteja com problemas. Abraço. Adilson – Equipe FILIPEFLOP Paulo 16 de julho de 2015 Também tive alguns problemas com isso, no meu caso a princípio era o �o do GND com mau contato, e o problema persistiu, dai veri�quei que o sensor mostra 0(zero) também quando trabalha com ângulo, ou seja, não recebe o sinal de ECO… Hemerson Carvalho 29 de outubro de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 22/46 Responder Responder Responder Boa tarde Hemerson, quero saber se existe um modo de fazer com que o ECHO não espere tanto tempo pelo retorno do sinal? Quero que o TRIGGER emita sinais periºodicos mesmo se n|ao houver leitura do ECHO. Obrigado!! Matheus M Matos 5 de maio de 2016 otima aula, mas onde acho a biblioteca Ultrasonic.h gilsomario 19 de julho de 2015 Bom dia, Vamos atualizar o post, mas por enquanto tente este link: https://github.com/JRodrigoTech/Ultrasonic-HC-SR04 Abraço. Adilson – Equipe FILIPEFLOP Paulo 20 de julho de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 23/46 Responder Responder Responder Olá, Meu sensor sempre tem a resposta parecida com isso? Centimetros: 3614.38 – Polegadas: 1422.98 Centimetros: 3615.37 – Polegadas: 1423.37 O que pode estar acontecendo? Obrigado Julio 3 de setembro de 2015 Olá, estou tendo di�culdades na leitura acima de um metro, �ca bem inconsistente… alguma dica? Franklin 28 de setembro de 2015 Tente utilizar esta biblioteca. Eu �z o teste e para o meu projeto esta funcionando. Norberto Enomoto 3 de outubro de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 24/46 Responder Responder Responder https://github.com/JRodrigoTech/Ultrasonic-HC-SR04 Norberto Enomoto 3 de outubro de 2015 Boa noite, eu liguei o sensor conforme o seu esquema e utilizei sua programação para teste, mas meu sensor não retorna nenhum valor, o que pode estar acontecendo? Igor 5 de novembro de 2015 Olá, estou com um problema baixei a biblioteca ultrasonic e atualizei na ID , mas já tinha uma biblioteca e agora da erro, não consigo excluir a biblioteca, se alguém souber, preciso de ajuda. Edilson Queiroz dos Santos 20 de novembro de 2015 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 25/46 Responder Responder Responder Poderia usar esse dispositivo para medir o nivel da agua numa caixa dagua? Quais os cuidados contra a evaporação e umidade? JOHNNY 19 de dezembro de 2015 Ao fazer a veri�cação para depois executar, aparece a seguinte mensagem : Binary sketch size: 5.432 bytes (of a 32.256 byte maximum Sabe me dizer onde posso veri�car? Att. Matheus 5 de janeiro de 2016 Essa mensagem aparece para todos os usuários do Arduino e está lhe informando que o seu programa tem um tamanho de aproximadamente 5KB, de um tamanho máximo de aprox. 32KB possuídos pela memória do seu arduino, ou seja, seu programa cabe no Arduino. Se essa é a única mensagem que aparece, seu programa está correto. Fora isso, tem alguma dando errado? Gustavo Claude 24 de fevereiro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 26/46 Responder Responder Responder Boa noite, gostaria de saber como colocar um sensor em um arduino e conforme eu me aproximo de um objeto ele vai reproduzindo Bips diferentes… e como instalo a placa, o sensor e o alto falante juntos. Desde já, obrigado. Rafael Bitencourt 28 de fevereiro de 2016 Boa tarde Rafael, Dê uma olhada neste post, por favor, creio que tem o que você precisa: http://www.arduinoecia.com.br/2014/04/sensor-de-estacionamento-re-com- arduino.html Abraço! Adilson – Equipe FILIPEFLOP Paulo 29 de fevereiro de 2016 quando vou carregar o codico aparece Error compiling for board Arduino/Genuino Uno alguem me ajuda wesley 23 de março de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 27/46 Responder Responder Responder teste em uma ide que nao tenha genuino uma ide mais antiga…provavelmente seu arduino uno não é original e isso faz dar erro. cl.nunes 6 de abril de 2016 Gostaria de saber se teria como essa informação aparecer num display de 7 segmentos conectado ao arduino tb Gilmara 9 de abril de 2016 Olá, estou utilizando um Arduíno mega + sensor de distancia ultrassônico, mas estou tendo problemas com as leituras do mesmo. Leituras com distância inferiores a 160 cm são efetuadas normalmente, mas acima disso ele retorna valores acima de 2000 cm, muito acima da capacidade de leitura do sensor. O que pode estar causando esse erro? Alexandre Rodrigues 17 de maio de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 28/46 Responder Responder Responder Testei o sensor com a biblioteca e códigos disponíveis no site, mas por alguma razão, ele só funciona até +/- 6 cm. Depois de 6 cm, qualquer distância aparece como 6 cm. Já testei outras bibliotecas, troquei os pinos, usei outros códigos, mas nada funciona. Saberia dizer como posso resolver esse problema? Jorge 10 de junho de 2016 Pode me ajudar quando coloco para veri�car o código fonte da um erro Ultrasonic ultrasonic(12,13); da erro nesta linha dizendo que essa palavra não e valida jonathan 22 de junho de 2016 Filipe, Fiz os teste, porém, quando ele só esta retornando “Distancia em cm: 0.00 – Distancia em polegadas: 0.00”, o que eu posso ter feito de errado? Rafael Gurgel 1 de julho de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 29/46 Responder Responder Responder Boa tarde, poderia utilizar esse sensor ultrassonico com um arduino mini pro de 3,3V? mario 21 de julho de 2016 Como que se liga um sensor QRE1113 ao arduino UNO. É possível ligar 2sensores?maicon 25 de agosto de 2016 Gostaria de saber se existe um numero de ID nis sensores US? Ate onde li entendi q se controla distancia dando retorno de 0 ou 1. Gostaria de alem deste retorno conseguisse pegar um numero identi�cador para cada 1 ID. 123 – 0 – 12:50 34 – 1 – 0 – 5:45 Mlops 1 de setembro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 30/46 Responder Boa noite, eu estou tendo problemas com o programa. No verify aparece uma mensagem de erro nessa linha: long microsec = ultrasonic.timing(); A mensagem que aparece é essa: ‘class Ultrasonic ‘ has no member named timing A Biblioteca que está no link eu acrescentei a Biblioteca do Arduino. Elzio de Moura Carvalhan 1 de setembro de 2016 Esta Library do Ultrasonic está diferente. o método timing é Timing (T maiúsculos). Mas não tem o método convert também. Use o programa abaixo: #include #de�ne pino_trigger 4 #de�ne pino_echo 5 //Inicializa o sensor nos pinos de�nidos acima Ultrasonic ultrasonic(pino_trigger, pino_echo); // (Trig PIN,Echo PIN) void setup() { Serial.begin(9600); } 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 31/46 Responder Responder Responder void loop() { Serial.print(ultrasonic.Ranging(CM)); // CM or INC Serial.println(” cm” ); delay(100); } Alex Pimenta 17 de setembro de 2016 Boa noite, eu estou tendo problemas com o programa. No verify aparece uma mensagem de erro nessa linha: long microsec = ultrasonic.timing(); A mensagem que aparece é essa: ‘class Ultrasonic ‘ has no member named timing A Biblioteca que está no link eu acrescentei a Biblioteca do Arduino. Elzio de Moura 1 de setembro de 2016 Esta Library do Ultrasonic está diferente. o método timing é Timing (T maiúsculos). Mas não tem o método convert também. Alex Pimenta 17 de setembro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 32/46 Responder Responder Responder Bom dia, preciso de ajuda no meu tcc, consiste em 3 sensores ultrassonicos com uma saida independente cada , preciso da programacao. Agradece familia !! Vitor 16 de setembro de 2016 Uma solução seria vc colocar os 3 sensores na mesma porta, e criar um esquema pra chavear qual sensor vc quer ler naquele instante. Existem CI’s multiplexadores que podem te ajudar. Ou então a grosso modo inserir reles de acionamento. Cada sensor só será lido quando o rele estiver fechando o circuito. Adeildo Félix 24 de outubro de 2016 Ola! estou com uma duvida.. é possível eu armazenar os dados de uma determinada medida do sensor na programação, fazer uma outra medida com o mesmo sensor, armazenar os novos dados, e realizar alguns calculos basicos de soma, subtracao.. com os dois dados das distancias obtidas? Obrigado. Antonio 17 de setembro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 33/46 Responder Responder Sim claro, basta coloca-lo para ler os dados e uma variavel receber o que foi lido… Por exemplo : �oat cmMsec, inMsec; long microsec = ultrasonic.timing(); cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); aqui ele guardou os dados em centimetros na variavel cmMsec, voce pode usa- la ou transferir esse valor para outra : valor1 = cmMsec; ai depois de ele ler novamente : �oat cmMsec, inMsec; long microsec = ultrasonic.timing(); cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); //aqui vai a 2 variavel valor2 = cmMsec; Depois rode algum if para comparar as variaveis. Ronaldo 9 de dezembro de 2016 Excelente este post Mas só para acrescentar um pouco mais . Sensor Ultrassônico HC-SR04 Mostrando resultado Num Display LCD com modulo I2c Muito legal!!! https://youtu.be/afGWcG3qhMg Toninho 24 de setembro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 34/46 Segue link para que quiser copiar os códigos! //Programa : Medidor de distancia com HC-SR04 //Autor : Arduino e Cia #include //Carrega a biblioteca Ultrasonic #include //Carrega a biblioteca LCD //De�ne o pino do Arduino a ser utilizado com o pino Trigger do sensor #de�ne PINO_TRIGGER 13 //De�ne o pino do Arduino a ser utilizado com o pino Echo do sensor #de�ne PINO_ECHO 10 //Inicializa o sensor ultrasonico Ultrasonic ultrasonic(PINO_TRIGGER, PINO_ECHO); // Inicializa o display no endereco 0x27 LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3, POSITIVE); void setup() { Serial.begin(9600); //Inicializa a serial lcd.begin(16,2); //Inicializa LCD lcd.clear(); //Limpa o LCD } void loop() { �oat cmMsec, inMsec; //Le os dados do sensor, com o tempo de retorno do sinal long microsec = ultrasonic.timing(); //Calcula a distancia em centimetros cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); //Calcula a distancia em polegadas inMsec = ultrasonic.convert(microsec, Ultrasonic::IN); 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 35/46 Responder Responder //Apresenta os dados, em centimetros, no LCD e na Serial lcd.setCursor(0,0); lcd.print(“Cent.: “); lcd.print(” “); lcd.setCursor(7,0); lcd.print(cmMsec); Serial.print(“Cent: “); Serial.print(cmMsec); //Apresenta os dados, em polegadas, no LCD e na Serial lcd.setCursor(0,1); lcd.print(“Pol. : “); lcd.print(” “); lcd.setCursor(7,1); lcd.print(inMsec); Serial.print(“, Pol. : “); Serial.println(inMsec); delay(1000); } Toninho 24 de setembro de 2016 Toninho… Tem como vc postar o esquema de ligação desse com o display? Estou precisando exatamente desse… Obrigado!!! Hugo 4 de dezembro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 36/46 Responder Responder Responder Olá, na interface i2c com aquele modulo nao tem segredo é so ligar ele na protoboard e colocar o display nas mesmas linhas, da mesma forma que esta no video. E neste link tem a forma de usar o modulo i2c: http://www.arduinoecia.com.br/2014/12/modulo-i2c-display-16×2- arduino.html Ronaldo 9 de dezembro de 2016 Companheiro oi, explicação muito útil. Eu estou fazendo um controle de nível de enchimento e esvaziamento de um reservatório de água e �quei me perguntando se eu poderia usar o sensor de ultra- som para desligar a bomba quando o sensor indica por que há um baixo nível de água, você me ajudar nesta situação . obrigado Mike Crawford 26 de outubro de 2016 Boa tarde , estou com uma duvida em radio frequência.. ao o transmissor começar o envio de dados como faço para acionar o LED se caso essa transmissão não for concluída? Victor Cauã 27 de outubro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 37/46 Responder Responder Responder Colocar um retorno no outro arduino, o segundo irá receber e enviar de volta a con�rmação do que recebeu… Ronaldo 13 de abril de 2017 Boa tarde, Estou tentando fazer um alarme doméstico com esse sensor. O caso é que ele funciona aqui ao lado do arduino, mas na �ação passada até na frente da casa não tem jeito. Já troquei a �ação e não adiantou. Existe a possibilidade de isso estar acontecendo em função do comprimento do �o (+- 15 metros) ou do material que ele é feito? Se sim, alguma dica de como resolver? Abraços! André Pinheiro 10 de novembro de 2016 Sim, considere uns 4mcomo distância máxima dos �os de ligação kim 24 de novembro de 2016 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 38/46 Responder Responder Responder Bom uma dica para resolver é ter 2 arduinos um com este sensor e ele enviar via bluetooth ou RF para o outro … Ronaldo 9 de dezembro de 2016 Estou fazendo um projeto com Raspberry Pi, e gostaria de utilizar um sensor ultrassônico, porém não encontrei bibliotecas para tal aplicação. Poderia dar alguma dica sobre como desenvolver um código para tal função? (de preferência em Python). Parabéns à equipe do site, todas as publicações de ótima qualidade. Pedro Gabriel 11 de janeiro de 2017 Olá Estou tentando desenvolver uma lixeira acionada por esse sensor juntamente com o Arduino Porém estou com problema na programação Gostaria de ajuda por favor pois não tenho muito experiência em mexer com o mesmo e tenho pouco tempo para concluir Je�erson Teixeira 28 de fevereiro de 2017 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 39/46 Responder Responder Responder Sim, diga as funcionalidades e como será? Ronaldo 1 de março de 2017 Gostaria de auxílio com a seguinte questão: como proteger este sensor de chuva. Ao coloca-lo em uma caixa, preciso que o emissor e o receptor �quem sem barreiras, correto? Existe algum material que eu possa colocar na frente destes e que não atrapalhe a leitura. Obrigado desde já. Cândido Areas 1 de março de 2017 Brother, tenta colocar aqueles papel �lme. Não sei se dá, mas da uma ideia Joabe Rochadel 8 de março de 2017 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 40/46 Responder Responder Opa, já existem modelos que tem proteção contra umidade, não exatamente com chuva, mas acredito que contra gotejo, tal como o JSN-SR04T, mas acredito que de para fazer uma proteção plástica ao redor, para só o receptor e transmissor �carem com abertura para o ambiente, o que acredito que já ajude. Nícolas Wilson Souza 10 de maio de 2017 ola eu li seu post poderia me dar instruções de como eu posso fazer um carro utilizando seu codigo detectar e desviar de objetos ??? se poder me dizer o que elas fazem agradeceria muito, rsrs cada instrução individual. //Le as informacoes do sensor, em cm e pol �oat cmMsec, inMsec; long microsec = ultrasonic.timing(); cmMsec = ultrasonic.convert(microsec, Ultrasonic::CM); inMsec = ultrasonic.convert(microsec, Ultrasonic::IN); jhonathan 22 de março de 2017 Boa tarde, 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 41/46 Responder Responder Estou desenvolvendo um projeto em arduino, e uso o sensor ultrassonico, eu peguei partes de código da internet, mas estou tendo problemas na seguinte parte: �oat cmMsecEntrada, cmMsecSaida, vaga1, vaga2, vaga3, vaga4; long mcsec1 = ultrasonic1.Timing(); long mcsec2 = ultrasonic2.Timing(); long mcsec3 = ultrasonic3.Timing(); long mcsec4 = ultrasonic4.Timing(); long mcsec5 = ultrasonic5.Timing(); long mcsec6 = ultrasonic6.Timing(); Vagas(); cmMsecEntrada = ultrasonic1(mcsec1, Ultrasonic(CM)); cmMsecSaida = ultrasonic2(mcsec2, Ultrasonic(CM)); vaga1 = ultrasonic3.convert(mcsec3, Ultrasonic(CM)); vaga2 = ultrasonic4.convert(mcsec4, Ultrasonic(CM)); vaga3 = ultrasonic5.convert(mcsec5, Ultrasonic(CM)); vaga4 = ultrasonic6.convert(mcsec6, Ultrasonic(CM)); Aparece o seguinte erro “no matching function for call to ‘Ultrasonic::Ultrasonic(int)” Andy 22 de março de 2017 boa tarde, vi que esse sensor tem precisão de 3mm, alguém conhece algum sensor com maior precisão? preciso de 1mm de precisão. obrigado Jardel 22 de março de 2017 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 42/46 Responder Responder Responder Meu sensor ultrassônico não vem com as entradas echo e trigger mas vem com entrada NC e SIG é certo isso? Jean 29 de março de 2017 Olá! Alguém saberia me dizer se esse sensor conseguiria atravessar camadas �nas? Ex: Um azulejo, uma folha de papel, etc. Paolla 7 de abril de 2017 E se ele estiver bem perto da superfície em que quero que ele atravesse? Preciso identi�car se uma parede está oca ou não. Paolla 7 de abril de 2017 Não, ele não atravessa, pois uma onda mecânica, rebate em anteparos (parede, papel, mesas…), vamos lá, como qualquer auto falante, ele gera um distúrbio por um meio (também conhecido por “SOM” kkkk), onde esse “meio” é o AR, então ele espera que esse som bata em algo (em algum anteparo), e retorne ao “Microfone” dele, e com ele é possível medir o tempo entre o envio 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 43/46 Responder Responder Responder do som, e o retorno, por isso se consegue medir distâncias com o mesmo. Mas diretamente respondendo, não há como ele atravessar azulejo ou folha de papel. Nícolas Wilson Souza 10 de maio de 2017 Gostaria de saber se esse sensor controla �uxo de pessoas em uma loja, e se entrassem duas pessoas ao mesmo tempo ele detectaria sem erros?. Desde já obrigada. Beatriz 13 de abril de 2017 Olá Beatriz, com esse sensor dá para fazer um controle de entrada, por exemplo, você por o sensor e do outro lado tem um parede (um ante paro), cada vez que a distância que ele detecta for menor que “tanto”, então ele pode contar +1 em uma variável, e assim ele pode demonstrar para você em algum display, ou mesmo no seu celular, porém não há como ele distinguir duas pessoas, a�nal ele só mede distância. Você poderia contar pessoas entrando na loja também de outra forma, por barreira de luz, mas com o mesmo problema de não conseguir contar duas pessoas. Nícolas Wilson Souza 10 de maio de 2017 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 44/46 Responder Responder Responder Meu sensor nao aparece a distância do obstáculo em cm, ao invés disso ta aparecendo várias letras. Alguém sabe o que signi�ca isso? Guilherme 11 de maio de 2017 você deve ter colocado os conectores de controle nas entradas erradas da sua placa arduino! fernando 24 de maio de 2017 Olá, estou montando um projeto com PID e utilizo esse sensor, gostaria de uma ajuda. Estou querendo pegar o valor recebido do sensor e jogá-lo em uma porta analógica, porém com essa lógica eu só recebo um pulso da qual não posso trabalhar com ele, pois não tenho variação. Gostaria de saber se tem alguma maneira de converter o valor recebido do sensor para uma variação PWM de 0 a 255 ou varia-lo de 0 a 1023 para injetar na porta analógica desejada. Agradeço desde já pela ajuda. Edes 27 de maio de 2017 1/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 45/46 Responder Responder Responder Olá, pesquise sobre a função map ela pode te ajudar. Ronaldo 29 de maio de 2017 boa noite, queria informações sobre como fazer um motor servo girar dependendo da distancia lida pelo hc-sr04, para cada distanciaem cm lida o motor girar um pouco. não estou conseguindo fazer o codigo. alguem pode me ajudar? vitor cardoso 24 de junho de 2017 Olá, quando mando o código para o meu mega, aparece uma mensagem dizendo que a palavra convert não faz parte da classe Ultrasonic.. O quepode ser? exit status 1 ‘class Ultrasonic’ has no member named ‘convert’ VICTOR HUGO FRANCISCO DE OLIVEIRA 5 de julho de 20171/22/2018 Sensor Ultrassônico HC-SR04 | FILIPEFLOP https://www.filipeflop.com/blog/sensor-ultrassonico-hc-sr04-ao-arduino/ 46/46 Responder Responder estou estudando o uso do sensor e enfrentando algum problema. As medidas apresentadas são muito maiores do que a real. Baixei a biblioteca novamente e o erro persiste, Alguém sabe o que pode estar acontecendo. Tanto os valores de cm como os de polegadas estão trabalhando com algo em torno de 1 metro a mais. Alexandre Gomes 22 de julho de 2017 Boa tarde, Estou com um projeto no qual gostaria que fossem emitidas vibrações através de um motor vibracall (de celular). As vibrações aumentariam e diminuiriam conforme a distância de um objeto próximo ao sensor. É possível fazer isso? Lucas Brandão dos Santos 21 de agosto de 2017 Quando eu coloco o Sketch para veri�car apresenta o erro abaixo e a linha 23: long microsec = ultrasonic.timing();, �ca iluminada como se o errro estivesse nessa linha.
Compartilhar