Porta automática com biometria.

Introdução 

Use a tecnologia  da biometria para proteger seus projetos – este Sensor Óptico de Impressão Digital ( DY-50)  tornará a adição e detecção de impressões digitais muito simples. Esses módulos são geralmente usados ​​em cofres. Existe um Chip DSP ( Processador de Sinal Digital)  de alta potência que pode renderizar, calcular, localizar e pesquisar imagens. Conecte-se a qualquer microcontrolador ou sistema TTL Serial e envie pacotes de dados para tirar fotos, detectar conteúdo de impressão, hash , pesquisa entre outros. E no caso do sensor óptico, você pode registrar novos “dedos ” diretamente já que esses sensores suportam em média até 162 impressões digitais armazenadas na memória flash integrada.Falaremos mais a seguir.

Se você teve interesse neste leitor biométrico, mas ainda não tem os conhecimentos de sua funcionalidade, ou não entende os diagramas eletrônicos dele, chegou a hora de aprender!

Especificações Técnicas

– Modelo: DY50;
– Tensão de alimentação DC: 3,6 a 6V;
– Corrente de operação: <120mA;
Corrente de pico máx: 150mA;
– Tempo de impressão digital de imagem: <1,0 segundo;
– Capacidade de armazenamento on-board: 162 digitais;
– Nível de segurança configurável: 1-baixo, 3-médio, 5-alto;
– Taxa de aceitação falsa: <0,001% (nível de segurança 3);
– Taxa de rejeição falsa: <1,0% (nível de segurança 3);
– Interface: UART (Serial TTL);
– Taxa de transmissão: 9600, 19200, 28800, 38400, 57600 (o padrão é 57600);
– Temperatura de operação: -20ºC a +50ºC;
– Umidade de trabalho: <85%;
– Comprimento do cabo: 150mm;
– Área da janela de leitura: 14x18mm;
– Dimensões totais: 55x 21x21mm;
– Peso: 20g.

Dimensões Específicas para realização de projetos

Existem resumidamente alguns requisitos para o uso do leitor biométrico. Primeiro, você precisa registrar sua impressão digital, isso significa definir números de identificação a cada impressão, para que você possa acessá-las mais tarde. Depois de registrar todas as impressões, podemos “procurar” facilmente o sensor exigindo que ele reconheça o ID  que está sendo gravado no momento. E hoje ensinaremos um de seus modos de aplicação !

PINOS DO SENSOR

Como o fio do sensor é muito fino, usualmente descascamos um pouco o fio e o soldamos em um outro jumper para fazermos as conexões, já que assim evitamos mal contato, tornamos o projeto mais profissional e também fica mais firme. Depois de conectado, você pode ver um LED piscando, isso significa que o sensor está funcionando. O nosso sensor possui 6 fios, mas é necessário apenas 4 desses para que ele ligue e funcione perfeitamente! Se o seu sensor tiver todos os fios da mesma cor, o primeiro fio (da esquerda à direita) é o nosso GND, depois os dois pinos de dados ( Rx, Tx) e, em seguida, nosso Vcc. Caso os fios sejam de cores distintas, falaremos a seguir de como diferenciá-los  e para que servem!

 

Fios do Sensor Biométrico

Fios Sensor – Sistema cores iguais

Sensor com Fios coloridos

Sensor com sistema de fios coloridos

Vcc(fio vermelho): Deve ser alimentado pelo arduino de acordo com a tensão especificada ( 3,6V – 6V ).
GND (fio preto):  Este fio deve ser conectado ao GND do arduino para que ele esteja integrado ao circuito.
RX (fio branco): O fio de recepção ( Rx) deverá ser ligado à uma porta digital do arduino que será programada posteriormente.
TX (fio verde): O fio de trasmissão também deverá ser ligado à uma porta digital do arduino.

COMUNICAÇÃO E INTERFACE

Um aspecto interessante do sensor biométrico DY-50 é que não é necessário que o Arduino faça tratamento de imagem, toda a parte de identificação e detecção das digitais é feita pelo próprio sensor. A comunicação estabelecida entre o sensor e o Arduino é uma comunicação serial. A comunicação serial – especificamente neste caso também conhecida como UART (Serial TTL) é um elemento poderoso, que permite a comunicação entre a placa de desenvolvimento ( Arduino ) e o computador ou entre a placa de desenvolvimento e outros dispositivos (como módulos GPS, GSM e em nosso projeto o Sensor Óptico de Impressão Digital).  É desta forma que o código é carregado para o nosso Arduino. Uma das vantagens da UART é a simplicidade do protocolo, e também o fato de ser Full-Duplex. O pino de transmissão (Tx) do protocolo envia um pacote de dados, que será interpretado pouco a pouco pelo pino receptor. Cada pacote de dados enviado contém 1 bit de início, indicando o início da mensagem, 1 ou 2 bits de parada, indicando o final da mensagem, 5 a 9 bits de informação e 1 bit de paridade para evitar o recebimento de erros. Por ser uma conexão assíncrona, ela não requer um sinal de clock, portanto requer menos fios. No entanto, o envio de dados é mais complicado e propenso a erros, portanto, alguns parâmetros são necessários para garantir uma transmissão sem erros. Um parâmetro muito óbvio na comunicação assíncrona é a taxa de transmissão, que especifica a velocidade de recebimento e envio, portanto, é muito importante que os dois dispositivos usem a mesma taxa.

Fonte: https://learn.sparkfun.com/tutorials/serial-peripheral-interface-spi

Conexão:  Comunicação Assíncrona, a comunicação é realizada através de dois pinos Rx / Tx, que dependem da taxa de transmissão como referência, como mencionado acima.

Dentre as várias placas disponíveis no mercado, temos diversas configurações possíveis e combinações quem podem ser  feitas para essa estabelecer essa comunicação. O Arduino UNO, por exemplo,  possui um canal de comunicação de hardware e este canal fica conectado aos pinos digitais Rx e Tx ( Os pinos 0 e 1 do Arduino UNO). Esses pinos, por sua vez, são conectados ao microcontrolador ATMEGA16U2 que serve ​​para converter sinais de comunicação USB com o próprio computador.

É possível assim, atraves do Monitor Serial  fazermos essa leitura direta entre o sensor e o Arduino, não necessariamente precisando de algum softaware para isso. É admitido outras formas de interação com essa comunicação, por exemplo, os próprios softwares, ou displays devices.

Ficou com alguma dúvida, ou deseja aprender mais sobre o protocolo de comunicação? Clique nesse link para ver a matéria completa.

Estudamos e entendemos melhor através da descrição acima ,sobre a parte técnica do nosso sensor. Compreendemos também as suas especificações, portanto agora vamos aprender na prática uma de suas aplicabilidades, desenvolvendo um Sistema de Segurança utilizando uma trava elétrica, que é controlada remotamente pela digital do usuário! Continue conosco para aprender como desenvolver este projeto.

 

MATERIAIS:

Começaremos agora a criar nosso sistema de segurança utilizando todo o conhecimento adquirido, e para montarmos será necessário:

 

DIAGRAMA ESQUEMÁTICO: 

O primeiro passo para montarmos, é entender o circuito apresentado a seguir. Portanto, preste bastante atenção na ligação dos jumpers e em como serão dispostos os fios. Logo abaixo apresentaremos o passo-a-passo de como ser montado. Observe:

 

Diagram esquematico

Diagrama Esquemático Completo

 

MONTANDO PASSO-A-PASSO:

O primeiro passo é pegarmos o sensor e como dito anterioremente na parte dos pinos, retirar o conector original em um dos lados e unir os fios a jumpers ou conectores que facilitem o contato com o arduino. Dica: Solde jumpers no lugar dos fios e prenda-os com algum material isolante ( fitas adesivas). Lembre se que apenas 4 fios são usados, portanto isole os outros dois que sobraram.

Conectores: Antes

Conectores: Depois

Após este processo, interligue os novos pinos no Arduino/protoboard, como feito em nosso diagrama esquemático. Os fios do Rx e Tx serão ligados respectivamente aos pinos digitais 7,6  do arduino.

Diagrama Sensor Biométrico

 

O segundo passo é colocar o PushButton que funcionará como segurança para gerenciamos e defnirmos quem será o administrador do sistema. Portanto, em projetos reais pode ser substituido por alguma fechadura para que apenas quem possui a chave poderá substituir e gerenciar quem será o administrador do projeto. Lembre-se: Alguns botões necessitam obrigatoriamente de resistor, então fique atento às especificações de seu botão. Em nosso projeto colocaremos um terminal do botão no pino digital 5 do Arduino  e o outro ligado ao GND. 

Conexão PushButton

 

O terceiro passo é inteligarmos o Relé, a Trava Solenoide FEC-91 e a nossa Fonte DC 12V. Fique bastante atento à esta parte do projeto, pois se tiver mal contato a trava não funcionará corretamente. O positivo da Fonte irá diretamente ao conector positivo da Trava solenoide. O negativo da fonte irá ao borne COMUM do relé e o negativo da Trava irá ao pino NORMAL ABERTO do relé. Dessa forma, o relé funciona como chave que só permitirá que o circuito feche quando ele for ativado pelo comando do Arduino.

Configuração Relé e Trava solenoide

 

Após conectarmos os pinos nos bornes, temos que alimentar o Relé com os 5V do Arduino e interligar o GND. O pino de sinal (1)do Relé será ligado ao pino digital 8 do Arduino.

Ficou com dúvida em relação ao funcionamento do Relé e suas portas ? Clique neste link para um tutorial completo sobre os relés 

O 4º passo é ligarmos o Liquid Crystal Display (LCD) ao nosso circuito. O nosso módulo I2C deverá estar conectador ao LCD e montaremos da seguinte forma: Alimentaremos o módulo com as entradas do Arduino, e a conexão SDA (Serial Data) será ligada ao pino ANALÓGICO A4 e nossa conexão SCL ( Serial Clock) será ligada ao pino ANALÓGICO A5 .

Ficou com dúvida em relação as portas SDA e SCL do LCD ? Clique neste link para um tutorial completo sobre os LCD’s! 

Diagrama LCD_I2C

 

Pronto ! Terminamos a parte física do projeto e agora será necessário programar nosso Arduino.

PROGRAMANDO O ARDUINO

Antes de começarmos, será necessário baixar algumas bibliotecas para utilizarmos o sensor, o LCD_Módulo I2C e caso utilize o botão, uma biblioteca para eliminar o efeito boucing  . Clique nos links abaixo para baixar as bibliotecas:

Adafruit_Fingerprint_Sensor_Library

Liquid_Crystal_Display_I2C_Library

PushButton_Library

Baixe os arquivos para seu computador e abra a pasta compactada

Clique na opção “extrair para” e adicione à pasta Libraries no arquivo da IDE do Arduino.
Pronto! Repita o processo para a biblioteca LIQUIDCRYSTAL_I2C  e a biblioteca PUSHBUTTON e então continue .

ENTENDENDO O PROJETO

Arduino: Será responsável por comandar os processos e será programado para executar todas as etapas do sistema.

Sensor Biométrico: Será responsável por ler, identificar, codificar e gravar as digitais recebidas e inseridas.

Botão: Definirá e registrará o  “Dedo Administrador” , após este processo, toda vez que o Administrador inserir o dedo . O sensor entra em modo de gravação e poderá ser adicionado novas digitais  que permitirão a abertura de nossa trava.

Relé: Controlará o estado da trava solenoide, habilitando sua abertura ou o seu  trancamento.

LCD: Display responsável por comunicar ao usuários as etapas que estão sendo realizadas, assim o usuário saberá exatamente o que fazer e o está sendo pedido.

Código

Agora estudaremos o passo-a passo do nosso código, começando temos:

 

 

Neste primeiro passo, adicionamos todas as bibliotecas baixadas e algumas já dispostas para o Arduino, para que o nosso projeto funcione perfeitamente !
Observação:  Normalmente os endereços já definidos para os LCD’s é 0x27 . Mas o LCD usado veio configurado como 0x3f. Caso não funcione com o seu , abra este post para aprender como identificar.
Segue o próximo passo!

Nessa segunda etapa, definimos as entradas e saidas do projeto, lembre-se que caso o seu display seja de outro tamanho , será necessário colocar as dimensões dele no comando lcd.begin(linhas,colunas). Se o sensor não for identificado, fique atento ao mal contato e reinicie o processo até que ele seja identificado.
Seguimos temos:

Neste processo do void loop() definimos a constante verificação da leitura e do estado do sensor ! Foram programados comandos para caso o sensor apresente algum de seus erros, portanto verifique sempre o estado dos fios e deixe sempre o sensor limpo

CONCLUSÃO

Hoje aprendemos como utilizar o Sensor Óptico de Impressão Digital DY-50 e entendemos como ele funciona, estudamos suas especificações e criamos um sistema de segurança utilizando esse sensor. Esperamos que você tenha entendido e conseguido montar nosso projeto. Se você curtiu, aprendeu e/ou desenvolveu o Sistema de Segurança, poste nas redes sociais e nos marque lá no instagram: @eletrogate


Gostou? Deixe um curtir e compartilhe com seus amigos!  Ficou com alguma dúvida? Quer fazer um elogio?  Deixe um comentário!

Obrigado por nos acompanhar e ler até aqui.

Avaliação: 5.0/5. De 7 votos.
Espere por favor...
Cássio Henrique
Cássio Henrique
Técnico em Eletrônica pelo Colégio Técnico da Universidade Federal de Minas Gerais (COLTEC - UFMG). Trabalhou como instrutor na CodeBuddy | Escola de tecnologia. Cássio Henrique adora aprender e pesquisar sobre os diversos ramos da tecnologia, principalmente na área de eletrônica. " O conhecimento é o único bem que se adquire por toda eternidade". É músico nos tempos livres!
Acesse nossa loja