Sei sulla pagina 1di 4

Experimento: Sensor de distância

Objetivo
Detectar proximidade de um obstáculo através de sensor ultrassônico e marcar
as distâncias acendendo LEDs diferentes (de 0 a 10 cm, acende LED
vermelho; de 10 a 20 cm, acende LED amarelo; e acima de 20 cm, acende
LED verde).

Material utilizado
1. Arduino Uno
2. Protoboard;
3. Sensor HC-SRO4;
4. Biblioteca do sensor HC-SRO4 dentro da pasta;
5. Três leds de cores diferentes;
6. Três resistores de 220 ohms.

Ligações

1. Portas digitais 11, 12 e 13 do arruíno ligadas nos resistores, que por sua
vez estão ligados nas pernas positivas dos leds;
2. Pernas negativas dos leds no GND (terra) do arduino;
3. Pino VCC do sensor ultrassônico HC-SRO4 no 5V do arduino;
4. Pino TRIG do sensor HC-SRO4 na porta digital 6 do arruíno;
5. Pino ECHO do sensor HC-SRO4 na porta digital 7 do arruíno;
6. Pino GND do sensor HC-SRO4 no GND do arruíno.
Instalação da biblioteca do sensor HC-SRO4

1. Abrir Arduino 1.0.6


2. Incluir biblioteca Ultrasonic.h
a. Skech
i. Import library
ii. Add library
iii. Selecione a pasta que contém o arquivo Ultrasonic.h
3. Compile e carregue
Código
//Incluindo biblioteca Ultrasonic.h

#include <Ultrasonic.h>

//criando objeto ultrasonic e definindo as portas digitais do Trigger


- 6 - e Echo - 7

Ultrasonic ultrasonic(6,7);

//Declaração das constantes referentes aos pinos digitais.

const int ledVerde = 13;

const int ledAmarelo = 12;

const int ledVermelho = 11;

long microsec = 0;

float distanciaCM = 0;

void setup() {

Serial.begin(9600); //Inicializando o serial monitor

pinMode(ledVerde,OUTPUT); //Definindo pino digital 13 como saída.

pinMode(ledAmarelo,OUTPUT); //Definindo pino digital 12 como saída.

pinMode(ledVermelho,OUTPUT); //Definindo pino digital 11 como saída.

void loop() {

microsec = ultrasonic.timing(); //Lendo o sensor

distanciaCM = ultrasonic.convert(microsec, Ultrasonic::CM);


//Convertendo a distância em CM

ledDistancia();

Serial.print(distanciaCM);

Serial.println(" cm");

delay(1000);

}
//Método que centraliza o controle de acendimento dos leds.

void ledDistancia() {

//Apagando todos os leds

digitalWrite(ledVerde,LOW);

digitalWrite(ledAmarelo,LOW);

digitalWrite(ledVermelho,LOW);

//Acendendo o led adequado para a distância lida no sensor

if (distanciaCM > 20) {

digitalWrite(ledVerde,HIGH);

if (distanciaCM <=20 and distanciaCM >= 10) {

digitalWrite(ledAmarelo,HIGH);

if (distanciaCM < 10) {

digitalWrite(ledVermelho,HIGH);

Potrebbero piacerti anche