Sensor De Detectação De Entrada E Saída De Pessoas
by amandajaniski in Circuits > Arduino
180 Views, 0 Favorites, 0 Comments
Sensor De Detectação De Entrada E Saída De Pessoas
.jpeg)
Com o intuito de auxiliar o motorista de um ônibus, foi realizado um protótipo programado de um sensor de presença, onde nos permite realizar a contagem de pessoas que entram e saem de um determinado local. O protótipo tem a seguinte proposta: quando há passagem de uma pessoa na frente deste sensor, da direita para esquerda, ele nos aponta a entrada desta no local e quando há a passagem de uma pessoa da esquerda para direita ele aponta a saída.
Materiais Utilizados







Os materiais utilizados para construção do projeto foram:
- 2 Resistores;
- 2 Pilhas AA 1,5V;
- 1 Chave interruptora;
- 2 Módulos laser;
- 2 LDR;
- Protoboard e jumpers para conexão e teste do protótipo.
Código De Programação

#include //Biblioteca para usar o diplay LCD
#include //Biblioteca para usar o diplay LCD
int sensor1 = A0; //Cria uma variável chamada sensor1 com o valor A0 (pino onde o sensor 1 está conectado)
int sensor2 = A1; //Cria uma variável chamada sensor2 com o valor A1 (pino onde o sensor 2 está conectado)
int estado1 = 0; //Cria uma variável chamada estado1 com o valor inicial 0 para salvar o estado do sensor 1
int estado2 = 0; //Cria uma variável chamada estado2 com o valor inicial 0 para salvar o estado do sensor 2
int limite = 900; //Cria uma variável chamada "limite" para definir o limite de leitura do LDR para diferenciar os 2 estados do sensor (ativo/não ativo)
int contagem = 0; //Cria uma variável chamada "contagem" para armazenar o valor da contagem de pessoas
LiquidCrystal_I2C lcd(0x27,16,2); //Configura o display LCD
void setup() {
lcd.init(); //Inicializa o display LCD
lcd.setBacklight(HIGH); //Ilumina o display LCD
lcd.setCursor(0,0);
lcd.print("CATRACA DIGITAL ");
lcd.setCursor(0,1);
lcd.print("CONTAGEM: ");
lcd.setCursor(10,1);
lcd.print(contagem);
Serial.begin(9600); }
void loop() { //Imprime no Monitor Serial os valores dos LDRs, para fins de ajustes do limite
Serial.print("Sensor 1: ");
Serial.println(analogRead(sensor1));
Serial.print("Sensor 2: ");
Serial.println(analogRead(sensor2));
/*Existem 6 situações possíveis: * Sensor 1 foi ativado E Sensor 2 não foi ativado E estado do sensor 2 é 0 (não foi ativado) - Neste caso altera o estado do sensor 1 para 1
* Sensor 1 foi ativado E Sensor 2 não foi ativado E e estado do sensor 2 é 1 (foi ativado) - Neste caso uma pessoa entrou, então aumenta a contagem em 1 e altera estado1 e estado2 para 0 (reinicia/zera)
* Sensor 2 foi ativado E Sensor 1 não foi ativado E e estado do sensor 2 é 0 (não foi ativado) - Neste caso altera o estado do sensor 2 para 1
* Sensor 2 foi ativado E Sensor 1 não foi ativado E e estado do sensor 2 é 1 (foi ativado) - Neste caso uma pessoa saiu, então diminui a contagem em 1 e altera estado1 e estado2 para 0 (reinicia/zera)
* Existem mais dois casos onde os 2 sensores estão ambos ativados ou ambos inativados. Nestes casos nada é feito.
*/
Teste Do Protótipo

.jpeg)


Após realizar o código da programação, logo executamos as conexões dos materiais.