e Bibliotecas Aula 05 Sensores do robô O que vamos aprender Funcionamento e aplicações dos sensores Utilidade das Bibliotecas na programação 1 Sensor de Linha Os sensores seguidores de linha são sensores que detectam ID: 639439
Download Presentation The PPT/PDF document "Aula 05: Sensores do robô" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Aula 05:
Sensores do robô e BibliotecasSlide2
Aula 05:
Sensores do robô
O que vamos aprender?
Funcionamento e aplicações dos sensores
Utilidade das Bibliotecas na programaçãoSlide3
1- Sensor de Linha
Os sensores seguidores de linha são sensores que detectam
as
diferentes
intensidades de reflexão da luz nos materiais
. São muito
usados
para detectar linhas ou bordas com intensidades de reflexão
diferentes
da superfície onde estão colocados.
Intensidade de reflexão é a
capacidade que um material
possui
de refletir luz
.Slide4
Funcionamento:
O Sensor
Smart
Seguidor de Linha possui transmissores
e receptores
de luz infravermelha, que permitem que o sensor
determine
os valores das intensidades de reflexão dos materiais em
diversos
pontos.
Slide5
O sensor seguidor de linha utilizado na montagem do LinusBot é do tipo
Pololu
QTR-8RC
.
Ele possui um total de oito sensores disponíveis, sendo possível usar menos, de acordo com a precisão desejada.
Como outros tipos de sensores, este possui uma
biblioteca própria com funções específicas
, que serão repassadas mais adiante. Slide6
2- Sensor Ultrassônico
O Sensor
Ultrassônico
é 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.Slide7
Funcionamento:
O
funcionamento do
sensor
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.
Slide8
O sensor ultrassônico utilizado na montagem do LinusBot é do tipo
HC – SR04
.
Assim como o sensor de linha, este também possui uma
biblioteca própria com funções específicas.
Sua
pinagem é mais simples que o antecessor, contendo apenas um pino GND, um VCC e os pinos Echo e Trigger.Slide9
3- Bibliotecas
Na
ciência da computação, biblioteca é uma coleção
de subprogramas
utilizados no desenvolvimento de software. Bibliotecas contém código e dados auxiliares, que provém serviços a programas independentes, o que permite o compartilhamento e a alteração de código e
dados.
Basicamente, as bibliotecas possuem
funções
pré
definidas
que auxiliam o programador na construção do código.Slide10
Para utilizar uma biblioteca no seu programa em
Arduino
é necessário, primeiramente, fazer o download da biblioteca desejada e adiciona-la a pasta
“
l
ibraries
”
, contida dentro da pasta de instalação do
Arduino
.
Para inseri-las em seu programa basta escrever: #include “nome_da_biblioteca.h” No topo de seu programa.
Os sensores mencionados anteriormente possuem bibliotecas específicas com funções que facilitam o trabalho do programador.Slide11
4- Prática 10: Sensor de Linha
Usaremos:
Jumpers
Arduino
Sensor Infravermelho
5
LED’s
5
resistores de 100
Ω
Faça as ligações!Slide12Slide13
Verifique o seu circuito e depois digite o código:
//Adição da biblioteca do sensor
#include <
QTRSensors.h
>
//
Definição dos pinos do sensor
ligados
ao
Arduino
QTRSensorsRC
qtr((unsigned char[]) {14, 15, 16, 17, 18}, 5, 2000, QTR_NO_EMITTER_PIN);// Matriz para armazenar valores dos sensores
unsigned
int
sensors[5];
Slide14
// Pinos referentes
aos LED'Sint Red1 =
2; int Yellow1 =
3;
int
Green =
4;int Yellow2 = 5;
int
Red2 =
6;
void setup(){
pinMode(2,OUTPUT); pinMode(3,OUTPUT); pinMode(4,OUTPUT); pinMode(5,OUTPUT); pinMode(6,OUTPUT);Slide15
//Pinos referentes
aos sensores
pinMode(14,INPUT);
pinMode
(15,INPUT);
pinMode(16,INPUT); pinMode(17,INPUT);
pinMode
(18,INPUT);
//
Inicializa
a comunicação serial Serial.begin(9600) // Calibração do Sensor int i;
for (
i
= 0;
i
< 250;
i
++)
{
qtr.calibrate
();
delay(20
);
}
}Slide16
void loop(){ unsigned int
position = qtr.readLine(sensors);
Serial.println(position);
// A tela serial nos dará a leitura da posição do sensor
if(position < 75){ // Linha totalmente
à esquerda
digitalWrite
(Red1,1);
digitalWrite(Yellow1,0); digitalWrite(Green,0); digitalWrite(Yellow2,0); digitalWrite(Red2,0);}Slide17
// Linha entre o sensor 0 e 1
else if(position >= 75 && position < 1500){ digitalWrite
(Red1,0); digitalWrite(Yellow1,1);
digitalWrite
(Green,0);
digitalWrite(Yellow2,0); digitalWrite(Red2,0);
}
//
Linha
entre o sensor 1 e 3,
quase
ao meio else if(position >= 1500 && position < 2500){ digitalWrite(Red1,0); digitalWrite(Yellow1,0); digitalWrite(Green,1);
digitalWrite
(Yellow2,0);
digitalWrite
(Red2,0);
}Slide18
// Linha
entre o sensor 3 e 4 else if
(position >= 2500 && position < 3500){ digitalWrite(Red1,0);
digitalWrite
(Yellow1,0);
digitalWrite(Green,0); digitalWrite(Yellow2,1);
digitalWrite
(Red2,0);
}
// Linha totalmente à direita else{ digitalWrite(Red1,0); digitalWrite(Yellow1,0); digitalWrite(Green,0); digitalWrite(Yellow2,0);
digitalWrite
(Red2,1);
}
}Slide19
Fontes bibliográficas:Manual UNO Robótica do Sensor Smart Seguidor de Linha,
Disponível em: http://www.unorobotica.com.br/docs/seguidor.pdf (Acesso em 04/05/2015 ás 09:30hs)