Pular para o conteúdo principal

Utilizando o Modulo Sensor de Reconhecimento de Impressão Digital

Nesta postagem iremos mostrar como utilizar o Modulo Sensor de Reconhecimento de Impressão Digital.

Com esse módulo, a adição de detecção e verificação de impressões digitais ao seu projeto fica super simples! Esse módulo faz a captura de imagem, os cálculos, a varredura por detalhes na imagem e a busca no banco de dados (que é capaz de armazenar 1000 entradas) por conta própria, sendo necessária somente a conexão com um sistema com comunicação serial TTL para a tomada de decisão a partir da informação de aprovação ou rejeição da impressão digital lida.

Além de ser um dispositivo de fácil utilização, existe um software bastante intuitivo (que pode ser baixado aqui) para simplificar os testes e o uso do Modulo Sensor de Reconhecimento de Impressão Digital e até mesmo efetuar diretamente o registro de digitais na memória dele.

Primeiramente, iremos falar sobre o software baixado no link acima:
Para realizar a ligação do Modulo Sensor de Reconhecimento de Impressão Digital com o computador, é necessário que ele seja ligado a uma interface Serial do tipo TTL.
Nos notebooks, essa interface deve ser feita através de um hardware específico, como o Cabo USB Serial TTL PL2303HX, conectado em uma porta USB.
Porém, também é possível (e muito mais fácil), utilizar um Arduino para realizar tal interface. Basta programar o mesmo com um código vazio, como o mostrado abaixo:

 //############### ELETRODEX ELETRÔNICA ###############  
 //  
 // Sketch para ignorar o ATmega do Arduino  
 // e conectar diretamente o Sensor de Impressão Digital  
 // ao chip conversor USB-Serial  
 // As Conexões devem ser feitas da seguinte forma:  
 // Módulo Sensor | Arduino  
 //  Preto        |   GND  
 //  Vermelho     |   5v  
 //  Branco       |   D0  
 //  Verde        |   D1  
 void setup() {}  
 void loop() {}  

Confira uma imagem da interface do programa, com destaque em suas principais funções:

Agora teremos uma breve descrição das principais funções do programa:

Em Initialization (destacado em Roxo):
  • Open Device(O): Inicialização do dispositivo. É a primeira coisa que se deve fazer, para estabelecer a comunicação entre o computador e o sensor. Após clicar em Open Device, irá aparecer uma janela solicitando que seja informada a porta COM utilizada pelo sensor.
Em  Image Manage (destacado em Amarelo):  
  • Capture: Captura de impressões digitais, sem gravação. Serve para verificar se o dispositivo está funcionando corretamente e se comunicando com o computador (a janela do sensor pisca em vermelho quando o mesmo está ativo).
  • Con Capture: É a realização dessa ação de maneira repetitiva.
Em Enroll (destacado em Verde):
  • Enroll: Captura de impressões digitais, com a gravação das mesmas na memória do dispositivo. Cada impressão é associada a um número. 
  • Con Enroll: É a realização dessa ação de maneira repetitiva. 
 Note que a imagem da impressão digital cadastrada somente irá ser mostrada se a caixa "Preview" estiver devidamente marcada. 

Em Match (destacado em Azul): 
  • Match: Confere se a próxima impressão digital é compatível com o registro selecionado (deve-se selecionar um, no campo Address)
  • Search: Confere se a próxima impressão digital é compatível com qualquer um dos registros armazenados.
  • Con Search: Realiza a ação acima de maneira repetitiva
  • Quick Search: Tem a mesma função do botão Con Search
Em Template Database (destacado em Vermelho):
  • Empty: Apaga TODAS as impressões digitais registradas.
  • Delete: Apaga somente a impressão digital selecionada.
Agora vamos falar sobre a utilização do Modulo Sensor de Reconhecimento de Impressão Digital em conjunto com o Arduino.

Primeiramente, é necessário baixar a biblioteca para interfacear o Arduino com o sensor.
(A biblioteca pode ser baixada aqui, mas também está disponível no site da Adafruit.)

Uma vez baixada e instalada, a biblioteca possui seis Sketches de exemplo, que serão discutidos a seguir: (em todos os exemplos constam quais as ligações a serem efetuadas entre o Arduino e o Modulo Sensor de Reconhecimento de Impressão Digital)

  1.  blank, que já foi mostrado acima e serve para realizar a ligação direta entre o Modulo Sensor de Reconhecimento de Impressão Digital e o conversor USB-Serial do Arduino, possibilitando a interface com o programa mostrado anteriormente. 
  2. delete, que serve unicamente para apagar a impressão digital do endereço informado pelo usuário. Assim que o programa inicia, é solicitado que o usuário informe o número da digital que deseja apagar. 
  3. enroll, que é o Sketch utilizado para armazenar as impressões digitais na memória do dispositivo. Quando executado, o programa solicita ao usuário que informe o endereço para a alocação dos dados da impressão digital analisada. 
  4. fingerprint, que verifica se alguma das impressões digitais armazenadas coincide com a que está sendo analizada no momento. Quando executado, o programa aguarda até que o usuário coloque o dedo no sensor e analisa se a impressão digital está armazenada no banco de dados. Se a impressão digital constar no sistema, ele retorna uma mensagem, informando qual posição no banco de dados ela ocupa e qual o grau de confiabilidade da leitura (quanto maior o número informado, melhor). Caso a impressão digital não conste no banco de dados, o programa simplesmente irá ignorá-la, não retornando nenhuma informação. 
  5. leo_passthru, que possui a mesma finalidade do blank, porém para o Arduino Leonardo 
  6. show_fingerprint_templates que mostra no Monitor Serial o padrão utilizado para o armazenamento das impressões digitais no sensor.


IMPORTANTE!!
  •  Sempre que for utilizado o monitor serial em conjunto com um dos Sketches acima, a caixa de seleção destacada em vermelho na imagem abaixo deverá sempre estar mostrando a opção "Nova-linha".

Confira abaixo abaixo algumas informações sobre ele:
Material: Plástico + componentes eletrônicos
Frequência de operação: 433Mhz/868Mhz/915Mhz
Sensibilidade: -100dBm 
Tensão de operação: 1.9~3.6V,
Taxa de operação: 50Kbps,
Tensão de Alimentação: DC 3.6~6.0V 
Tamanho do arquivo de caractere: 256 bytes
Tamanho do template: 512 bytes
Capacidade de armazenamento: 1000 impressões digitais
Tempo de busca: < 1 second
Grau de Reconhecimento em Falso-Positivo (False Acceptance Rate - FAR) < 0.001% 
Grau de Reconhecimento em Falso-Negativo (False Rejection Rate - FRR) < 1.0% (security level: 3)
Tensão: 3.6-6.0V DC via USB
Corrente de operação: < 120mA
Tensão de Pico: < 140mA
Dimensões da janela do sensor: 14 x 18mm
Taxa de transmissão de dados: UART: (9600×N)bps (N=1~12, N padrão 6, =57600bps)
Temperatura ambiente para operação: -20 a 50°C
Umidade Relativa: 40%RH to 85%RH (sem condensação)

Conte-nos suas experiências utilizando os produtos adquiridos em  nossa loja!
Até o próximo artigo!

Comentários

Postagens mais visitadas deste blog

Controlando LED via Bluetooth utilizando o Módulo HC-05

Hoje abordaremos uma breve demonstração de conexão do Módulo Bluetooth HC-05 Master/Slave com um dispositivo externo, e após a conexão utilizar o dispositivo para controlar um LED. A Placa Base utilizada como controladora é a Arduino Uno , que foi utilizada em conjunto com o Protoshield compatível com a mesma. Todos os itens utilizados podem ser adquiridos em nossa loja . Note que o Módulo Bluetooth HC-05 Master/Slave possui níveis de tensão de alimentação e operação diferentes, sendo que pode ser alimentado com  uma tensão entre 3,3v e 6v (no projeto foi alimentado com 5v, direto de um dos pinos do Arduino Uno ), mas a sua tensão de operação é de 3,3v. IMPORTANTE:    O Arduino consegue reconhecer a tensão de 3,3v no terminal RX como nível lógico alto, mas somente fornece 5v no terminal Tx como nível lógico alto. Portanto, se for utilizar os terminais Rx e Tx para a comunicação com os terminais Tx e Rx do HC-05,  o terminal Tx do HC-05 pode ser conectado diretamente ao ter

Como programar com Programador KIT 3.5 para PIC

Nesta postagem iremos falar sobre o Programador KIT 3.5 O Programador KIT 3.5 é um programador para microcontroladores PIC bastante completo, até o momento compatível com  mais de 600 dispositivos da linha de microcontroladores da Microchip, incluindo a nova linha dsPIC. (Confira aqu i a lista com os microcontroladores compatíveis com o Kit 3.5) Permite a programação diretamente na placa (ICSP) ou então através de conectores ZIF (não inclusos). Detalhe para a interface ICSP Com ele é possível gravar (programar), ler, verificar e copiar os códigos dos microcontroladores, através do software gratuito PicKit 3 Programmer ( instruções de uso ), uma vez que ele é totalmente compatível com o PICkit3. Lembrando que este software é apenas para a gravação do arquivo HEX no seu microcontrolador, sendo que é necessário gerar esse arquivo em um compilador de sua escolha. Além disso, é possível utilizá-lo como ferramenta de depuração (debug) através do software MPLAB. Caract

Utilizando o Programador USB para PIC K150

Nessa postagem iremos demonstrar a utilização do Programador USB para PIC K150 O gravador possui um soquete do tipo ZIF (ZIF - Zero Insertion Force - é um soquete com uma alavanca, que permite a colocação e a retirada dos microcontroladores sem risco de danificar seus terminais) para a programação dos microcontroladores. Conta também com um conector para a programação ICSP (In Circuit Serial Programming, que será abordada futuramente em outra postagem, pois é necessário que se faça algumas adaptações no circuito a ser programado). O programador é controlado pelo PIC16F628A, e no site do fabricante do gravador é possível encontrar informações sobre como atualizar o firmware do gravador, para possibilitar a gravação de mais dispositivos. Instalação do Programador USB para PIC K150 Se você estiver utilizando o Windows 7/Vista/XP, o driver deve ser instalado normalmente, sem que seja necessária a interferência do usuário. Caso esteja utilizando o Windows 8/8.1, o processo é um po