Skip to content

Smart modular lock developed using Express.js(Node.js), React, MySQL and ESP32(Firmware), with release via login, facial recognition and QRcode.

Notifications You must be signed in to change notification settings

rjrobsonjunior/SmartLook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fechadura Modular Inteligente

Este trabalho tem como objetivo desenvolver uma fechadura eletrônica controlada por um microcontrolador, que oferece três tipos de acesso: login e senha, reconhecimento facial e código QR.

Através do uso de microcontroladores, foi construída a estrutura física da fechadura e um banco de dados desenvolvido para armazenar as informações de acesso dos usuários. As informações recebidas pela fechadura são analisadas e comparadas com os dados do banco de dados.

Além disso, o trabalho propõe a implementação de uma interface web para atualização do banco de dados, monitoramento do acesso à fechadura e facilitar o cadastro de novos usuários.

Ao final do trabalho, foi obtido um protótipo funcional de uma fechadura eletrônica inteligente, que oferece diferentes formas de acesso e é controlada por meio de microcontroladores. Essa solução visa aumentar a comodidade e a segurança dos usuários, tornando o processo de abertura de portas mais automatizadas.

Fluxograma do fluxo de liberação

_Fluxograma - Software

Reconhecimento facial

Para realizar a liberação por reconhecimento facial, é necessário utilizar um algoritmo treinado para essa tarefa. No caso do servidor desenvolvido em JavaScript, a biblioteca escolhida foi a ’face-api.js’, que é escrita na mesma linguagem, facilitando sua integração. Essa biblioteca é construída sobre a API principal do ’tensorflow.js’, outra biblioteca que permite a execução de tarefas de aprendizado de máquina e inferência em tempo real diretamente no navegador ou em ambientes JavaScript.

Aplicação WEB (Front-End)

Tem como funcionalidade efetuar o cadastro e remoção de usuários, bem como, permitir o controle dos presentes no ambiente controlado.

image

Servidor nodeJS (Back-End)

O Back-End foi responsável por processar as solicitações feitas tanto pela aplicação web quanto pelos embarcados, executar a lógica necessária para atender a essas solicitações e retornar os resultados apropriados. Ele lidou com a segurança, autenticação de usuários e outras tarefas relacionadas ao controle de entradas e saídas. A figura abaixo mostra as rotas de comunicação estabelecidas possibilitando o bom funcionamento da fechadura.

image

Páginas auxiliares

Com o intuito de otimizar o controle e a interação dos usuários com o projeto, foi elaborada uma solução composta por duas páginas web distintas, cada uma desempenhando um papel fundamental.

Pagina 1 - Conferência de Imagem

A primeira página Web permite que os usuários visualizem a fotografia capturada pelo dispositivo ESPCAM e verifiquem se a imagem está adequada para ser enviada ao sistema de reconhecimento facial, garantindo que o rosto esteja claramente visível e bem posicionado na fotografia, ponto crucial para uma análise precisa e confiável.

Caso a fotografia não atenda aos critérios estabelecidos, o usuário tem a opção de realizar novamente a captura da foto, até que se encontre uma adequada para se continuar o processo.

Se, ainda sim, o ESPCACM nao consiga capturar uma imagem adequada, o usuário tem a opção de realizar o upload de uma foto contendo o rosto que o mesmo quer enviar para o reconhecimento.

Essa abordagem oferece aos usuários um controle mais preciso e eficiente sobre o processo de autenticação facial, ao mesmo tempo que auxilia no desacoplamento da obtenção de fotos através do ESPCAM, que por sua vez apresentou algumas falhas na captura de fotos em nosso testes.

image

Pagina 2 - Qr Code

A segunda página web foi projetada para permitir que o usuário faça o upload do código QR obtido durante o processo de cadastro. Nessa etapa, é possível visualizar a imagem selecionada antes de enviá-la para o servidor. Essa funcionalidade proporciona uma autenticação rápida e confiável, garantindo a integridade e proteção das informações sensíveis do usuário.

image

Protótipo Final

Porta

Video demonstrativo

https://www.youtube.com/watch?v=dbPdomMdL2M

About

Smart modular lock developed using Express.js(Node.js), React, MySQL and ESP32(Firmware), with release via login, facial recognition and QRcode.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •