Escolar Documentos
Profissional Documentos
Cultura Documentos
Pinagem do ESP32. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Troca de informação entre antena e tag RFID. . . . . . . . . . . . . . . 20
Faixas de frequência de um RFID. . . . . . . . . . . . . . . . . . . . . 21
Leitor RFID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Conexão entre módulo o RC522 e Esp32. . . . . . . . . . . . . . . . . . 22
Estrutura de um cartão RFID. . . . . . . . . . . . . . . . . . . . . . . 22
Chaveiro RFID. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Tipos de comunicação. . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Conexão master-slave. . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Comunicação SPI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Conexão pinagem SPI. . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Barramento I C com dois dispositivos conectados. . . . . . . . . . . . .
2
26
Montagem protótipo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Tela de login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Tela ao ligar o dispositivo. . . . . . . . . . . . . . . . . . . . . . . . . . 50
Tela de login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Tela de login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Tela de login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Tela de login. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Tela inicial com Wi-Fi conectado. . . . . . . . . . . . . . . . . . . . . . 51
Tela inicial sem conexão com Wi-Fi. . . . . . . . . . . . . . . . . . . . 52
Fluxograma sistema embarcado. . . . . . . . . . . . . . . . . . . . . . . 52
Software Proteus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Esquemático da placa feita no Proteus. . . . . . . . . . . . . . . . . . . 53
Fonte Hi-link. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Página de histórico. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Página para cadastrar um novo usuário. . . . . . . . . . . . . . . . . . 55
Página que exibe todos os usuários cadastrados. . . . . . . . . . . . . . 56
Modal para editar um usuário. . . . . . . . . . . . . . . . . . . . . . . 56
Página para gerar relatório. . . . . . . . . . . . . . . . . . . . . . . . . 57
Exemplo de relatório. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Página de ajuste de ponto. . . . . . . . . . . . . . . . . . . . . . . . . . 58
Página de gerenciamento de tags. . . . . . . . . . . . . . . . . . . . . . 59
Página de perfil do usuário. . . . . . . . . . . . . . . . . . . . . . . . . 60
Arquitetura do sistema. . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Estudo de caso. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Software Wireshark. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Request HTTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Response HTTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Request HTTPS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Response HTTPS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Lista de tabelas
Tabela 1
Tabela 2
Tabela 3
Tabela 4
Tabela 5
I C
2
Inter-Integrated Circuit
Sumário
• Introdução
• Objetivo Geral
A proposta do trabalho é desenvolver um sistema de controle de acesso onde
ocorre a integração de um sistema embarcado com um servidor WEB, e essa
comunicação é feita pela internet por meio de rede Wi-Fi pelo protocolo HTTP, e
que verifica a autenticidade
de um usuário no sistema.
• Objetivos Específicos
• Justificativa
A forma com que é feito o controle e liberação da utilização das
dependências dos laboratórios em geral da Escola de Minas ainda é muito manual.
O aluno precisa ir à portaria pedir a chave do laboratório, o porteiro verifica se há
uma autorização assinada pelo responsável do laboratório que permite ao aluno a
pegar a chave e utilizar o laboratório. Caso o aluno esteja autorizado o porteiro marca
em um caderno o nome do usuário e o horário em que o mesmo pegou a chave. Caso
contrário, o aluno tem acesso negado.
O desenvolvimento de um sistema de controle de acesso permite a
automatização de todo esse processo. O responsável pelo laboratório faz o cadastro de
seus alunos pelo sistema WEB e já garante o acesso dos alunos às dependências do
laboratório com um login e senha, e consequentemente já será gravado no banco de
dados todo histórico de acesso de cada usuário.
O sistema também pode ser utilizado de outras formas, como administrar horas
que um aluno tem que cumprir em uma Iniciação Científica ou monitoria, gerando um
relatório mensal com a carga horária total cumprida no mês.
• Organização e estrutura
Este trabalho está dividido em cinco capítulos, o primeiro contém uma breve
introdução sobre o tema abordado. No capítulo 2 é realizada uma revisão
bibliográfica sobre o tema estudado, contendo as especificações das tecnologias
utilizadas. No capítulo 3 apresenta-se a metodologia utilizada no desenvolvimento
do sistema. No capítulo 4 serão
• Revisão Bibliográfica
Esta seção apresenta definições e tecnologias utilizadas no trabalho, para um
entendimento mais profundo do sistema.
• Sistemas Embarcados
Os sistemas embarcados possuem a capacidade computacional dentro de um
circuito integrado, equipamento ou sistema. “É um sistema completo e independente,
mas preparado para realizar apenas uma determinada tarefa” (CUNHA, 2007).
O usuário de um sistema embarcado não possui acesso ao firmware do
dispositivo, mas interage com ele através de módulos acoplados, como teclado, LCD
entre outros (CUNHA, 2007).
De acordo com Barros e Cavalcante (2010) sistemas embarcados possuem
algumas características que são comuns:
Internet das Coisas é muito mais que apenas ligar lâmpadas pelo
smartphone. Não é somente ligar as ‘coisas’ pela internet, mas também
torná-las inte- ligentes, capazes de coletar e processar informações do
ambiente ou das redes às quais estão conectadas
• CPU: XtensaⓍR
• Flash: 4 MB;
• Conector micro-usb;
• Comunicação Serial
De acordo com Sacco (2014) às tecnologias que fazem a interligação serial
entre dispositivos podem ser separadas em duas grandes categorias, a comunicação
síncrona e comunicação assíncrona (Figura 9). Dentre os métodos conhecidos,
destacam-se três:
• Comunicação SPI
Os sinais da comunicação SPI (Serial Peripheral Interface) possui uma direção
fixa e definida, fazendo com que sempre haja dois transistores que definem o estado de
um pino (Push-Pull). Essa é uma característica que a difere entre outros tipos de
comunicação serial, como I C e OneWire, que possui um mesmo barramento de
2
• Comunicação I2C
• Display LCD
A exibição visual eletrônica de informação já é algo presente em muitos
aspectos em nossa vida. A exibição de informações é um elemento essencial para
a interface entre a máquina e os humanos. O LCD (Liquid Crystal Display) é um
excelente sistema para exibição de informações em tela plana, sendo suas qualidades
o seu peso leve, baixa tensão de acionamento, baixo consumo de energia, alta
resolução, grande ângulo de visão, alta qualidade de cor e disponibilidade em uma
ampla faixa de tamanho de tela (GU CLAIRE E YEH, 2015).
Os módulos LCD são muito utilizados em sistemas microprocessados. Eles
podem ser gráficos e a caractere. Os módulos gráficos podem ser encontrados com
algumas variações de resolução, como 122x32, 128x64, 240x64 e 240x128 dots pixel,
e geralmente possuem 20 pinos para conexão. Já os módulos do tipo caractere são
especificados em número de linhas por colunas e podem ser encontrados nas
configurações como mostra a tabela 3 (BARBACENA; FLEURY, 1996).
Os módulos podem ser encontrados com led backlight, que facilita a leitura
durante a noite. A alimentação desse led para os módulos do tipo caractere
normalmente é feita através dos pinos 15 e 16, sendo o pino 15 ligado ao anodo e o
pino 16 ligado ao catodo, já para os módulos do tipo gráfico é utilizados os pinos 19 e
20, sendo o pino 19 ligado ao anodo e o pino 20 ao catodo (BARBACENA;
FLEURY, 1996).
Estes módulos possuem um controlador próprio que permite sua interligação
com placas de desenvolvimento como a ESP32, através de seus pinos (Tabela 4),
bastando fazer
as conexões corretas para que ocorra a troca de dados entre o módulo LCD e a placa de
desenvolvimento acoplada (BARBACENA; FLEURY, 1996).
Uma forma de se fazer essa interligação física entre o módulo e a placa de
desen- volvimento está representada pela Figura 18. Neste caso não são utilizados
os pinos 7, 8, 9 e 10, sendo algo muito útil quando a placa de desenvolvimento possui
poucas IOs (BARBACENA; FLEURY, 1996).
Tabela 3 – Módulos LCD disponíveis
Numero de Colunas
Nmero de Linhas
Quantidade de Pinos
8 2 14
12 2 14/15
16 1 14/16
16 2 14/16
16 4 14/16
20 1 14/16
20 2 14/16
20 4 14/16
24 2 14/16
24 4 14/16
40 2 16
40 4 16
Fonte: Eletronica.org (2019)
I2C (Figura 20), fazendo com que seja possível conectar o display lcd ao
microcontrolador pela comunicação I2C utilizando os pino SDA e SCL (Figura 19),
resultando em uma economia de pinos.
• Banco de dados
“Os sistemas de banco de dados são projetados para gerir grandes massas de
informação. A gestão dos dados envolve tanto a definição de estruturas para o
armazena- mento de informações quanto os mecanismos que preveem a manipulação
da informação.” (SILBERSCHATZ; SUNDARSHAN; KORTH, 2016).
De acordo com Heuser (2009) o projeto de um novo banco de dados da-se em
três fases, descrita a seguir:
• MySQL
O banco de dados MySQl é o banco mais conhecido do mundo de código
aberto, possui grande desempenho, confiabilidade e facilidade de uso comprovados. Se
tornou a principal opção de banco para desenvolvimento de software baseado na WEB,
utilizado por grandes empresas como Facebook, Twitter, YouTube entre outros
(ORACLE, 2019).
• phpMyAdmin
O phpMyAdmin (Figura 22) é um software gratuito desenvolvido em PHP para
administrar o banco de dados MySQL através da web. Todas as operações
frequentemente usadas para gerenciamento do banco de dados, de tabelas, colunas,
relações, índices, usuários, permissões entre outras, podem ser realizadas facilmente
pela interface da aplicação de forma bem simples (BRINGING, 2019).
Também é possível visualizar de forma gráfica todas as tabelas de um banco e
as respectivas relações entre as tabelas.
• Framework
Com a velocidade em que a tecnologia evolui não se pode perder tempo
querendo refazer “coisas” que já foram feitas, como por exemplo iniciar toda a
arquitetura de um projeto sempre que for começar um novo. Para que um
desenvolvedor não perca esse tempo precioso a utilização de um framework é algo
bem indicado.
“Os frameworks facilitam o desenvolvimento de software, permitindo que os
de- senvolvedores se ocupem mais com os requerimentos do software do que com os
detalhes tediosos, de baixo nível do sistema” (LEONARDO, 2015).
Basicamente o framework prepara todo o ambiente de desenvolvimento, e é ele
quem se responsabiliza pelo fluxo de execução da aplicação (SAUVE, 200-).
“Um framework é composto por classes/métodos que são um conjunto de
instruções pré-preparadas para realizar determinadas tarefas” (LEONARDO, 2015).
O que difere um framework de uma biblioteca formada por classes é que em
uma biblioteca as classes são independentes umas das outras, já em uma framework
existe dependências e colaboração entre elas (SAUVE, 200-).
• API
Application Programming Interface - API pode ser entendida como uma ponte
de acesso entre o front-end de uma aplicação e o seu back-end da aplicação
(FERNANDES, 2018).
Basicamente o funcionamento de uma API ocorre por meio de uma url, quando o
frond-end da aplicação faz uma requisição ao back-end.
entre outros.
• Lumen Framework
O Lumen é um microframework PHP open-source baseado no framework
Laravel, desenvolvido por Taylor Otwell, o Lumen é focado no desenvolvimento de
microsserviços e APIs REST.
Todo o back-end da aplicação foi feito em Lumen, onde foram definidas todas
as rotas utilizadas pelo sistema de gerenciamento (software WEB), quanto as utilizadas
pelo sistema embarcado (protótipo desenvolvido).
• Angular Framework
Angular é um framework open-source criado pelos desenvolvedores do Google
que é voltada para desenvolvimento de interfaces de aplicações utilizando HTML,
CSS e JavaScript (AFONSO, 2018).
Todo o front-end do software WEB foi desenvolvido em Angular. Para a
criação de componentes foram utilizadas bibliotecas como Kendo-UI, Bootstrap e o
Angular Material que é uma implementação do Material Design no Angular feito
pelo Google.
2.8.1 Apache
O servidor Apache foi criado em 1995 por Rob McCool, sendo um servidor
web livre e o mais bem sucedido, utilizado principalmente em sistemas operacionais
Linux (CANALTECH, 2019).
De acordo com Andrei (2019) o Apache é responsável por manter cerca de
46% de todos os sites hospedados na internet.
Assim, como o SSH trabalha na porta 22 o Apache, por se tratar de um
servidor web, é executado na porta 80, para que as requisições ao site funcione
normalmente.
Quando um cliente acessa o domínio de um site pela barra de navegação ela é
redirecionada a um servidor web, neste caso o Apache. Esse servidor tem a função de
verificar qual foi esse endereço de solicitação e entregar ao cliente que fez essa
requisição as informações corretas. Por exemplo se alguém acessa o endereço
http://meu-site.com.br o Apache vai entender como a rota home da aplicação e irá
enviar todo o script daquela página ao computador do cliente. O browser do cliente ao
receber todo esse script irá renderizar ele de forma visual para o cliente.
• Desenvolvimento
Nesta seção serão apresentadas as etapas do desenvolvimento do projeto,
podendo ser dividido em 4 etapas. Na primeira etapa o desenvolvimento do Firmware
do sistema embarcado, na segunda etapa o desenvolvimento da API (o Back-end) da
aplicação, na terceira etapa o desenvolvimento do Front-end da aplicação e por fim o
desenvolvimento do circuito do sistema embarcado.
• Firmware
O firmware foi feito utilizando a linguagem Arduino, que tem por base a
linguagem C++. Algumas funções foram feitas utilizando FreeRTOS, que é um
sistema operacional de tempo real.
De acordo com FreeRTOS (2018) o FreeRTOS é um RTOS (Real Time
Operating System) líder de mercado da Amazon Web Services que suporta mais de
35 arquiteturas e foi baixado uma vez a cada 3 minutos em 2017. Ele é desenvolvido
profissionalmente, com muita qualidade sendo robusto e livre para incorporar produtos
comerciais sem qualquer necessidade de expor seu código-fonte.
O FreeRTOS tornou-se o padrão RTOS de fato para microcontroladores,
removendo objeções comuns ao uso de software livre e, ao fazê-lo, forneceu um
modelo de software livre realmente atraente (FREERTOS, 2018).
O firmware desenvolvido foi dividido em 6 classes sendo elas, a classe “API”,
“Relogio”, “RFID”, “Senha”, “Tela” e “Principal”.
A classe “API”, é responsável por se conectar ao servidor e fazer todas as
requisições necessárias. Toda parte em que ocorre troca de dados entre sistema
embarcado e servidor é gerenciado por essa classe, como os métodos de autenticação,
cadastro, remoção de tags, atualizar o horário que é exibido no LCD, entre outros.
A classe “Relogio”, é responsável por toda a lógica de funcionamento da data e
hora que são exibidas no LCD. Mesmo sem conexão com o servidor é possível alterar
a data e hora manualmente pelo dispositivo e seu funcionamento flui normalmente.
A classe “RFID”, é responsável por fazer a leitura da tag de um cartão e
consequen- temente de acordo com a opção desejada executar os métodos de
autenticação, cadastro ou remoção de uma tag.
• Back-End
Exemplo de rotas.
• Banco de Dados
O banco de dados foi modelado com as seguintes tabelas,
“adjustment_requests”, “admins”, “data_users”, “histories”, “tags” e “users”.
A tabela “adjustment_requests”, é onde ficam gravadas todas as requisições de
ajuste de ponto quando um usuário esquece de passar o cartão no leitor RFID. Quando
isso ocorre o usuário deve entrar no site e pedir uma solicitação de ajuste com a data e
hora em que deveria ter passado o cartão no leitor.
A tabela “admins”, armazena quem são os administradores do sistema de
controle de acesso. Somente os administrados possuem permissão para realizar
algumas tarefas, como o cadastro de novos usuários, ter acesso ao relatório de ponto de
todos os usuários, aceitar ou recusar a solicitação de ajuste entre outras.
A tabela “data_users”, é onde ficam armazenados os dados do usuário, como
nome, sobrenome, telefone, endereço, login e senha para autenticação via login no
sistema embarcado.
• Segurança
Todo o ecossistema WEB da aplicação está protegido com certificado de
segurança TLS (Transport Layer Security), o “https” no início do link da página.
Isso significa que toda troca de dados entre o front-end da aplicação com a API está
protegida com criptografia, mantendo a segurança do sistema e a integridade dos
dados.
• Front-End
Todo o front-end da aplicação foi feito utilizando o framework Angular. Para
estruturação do código foi utilizada a linguagem de marcação HTML, para estilização
do layout foi utilizado CSS e para realizar todas as lógicas de programação foi
utilizada a linguagem TypeScript.
Dentro da arquitetura do Angular tem-se os componentes. Cada componente
criado possui 3 arquivos principais, o arquivo html, o arquivo css e o arquivo
typescript. No arquivo html foi feita toda estrutura daquele componente em específico,
no css as estilizações utilizadas por aquele componente e o arquivo typescript fica
responsável por toda lógica que acontece naquele componente.
Este projeto é composto por 11 componentes, sendo eles “login”, “layout-
home”, “page-historico”, “page-cadastro”, “page-ajuste”, “page-perfil”, “page-
relatorio”, “page- tags”, “page-usuario”, “modal-user-edit” e “modal-vincula-tag”.
O componente “login”, é o componente responsável por exibir a tela de login.
Além dos componentes o angular também possui os arquivos services, e são nesses
arquivos que ficam gravados os end-points que foram feitos no back-end. Basicamente
são as classes que contém os métodos utilizados nas requisições ao back-end. O que
ocorre ao efetuar o login é que no arquivo typescript do componente “login” é
instanciado um objeto da classe do serviço responsável pelo login, e a partir desse
objeto é chamado o método da requisição de login.
A seguir temos trechos de códigos que mostram como isso é feito.
• Circuito
Nesta seção será apresentado o circuito do protótipo montado, as imagens a
seguir irão mostrar como foram feitas as conexões físicas entre os componentes e a
placa de desenvolvimento ESP32-DevKitC.
• Resultados
Nesta seção serão apresentados os resultados obtidos após o desenvolvimento
do sistema de controle de acesso, bem como seu funcionamento.
• Sistema Embarcado
Após obter todos os componentes necessários foi feita a montagem do circuito na
protoboard (Figura 30), para a realização dos testes.
Além das funções ativas, as quais o usuário pode acessar pelo teclado, o
sistema também possui algumas funções passivas, que só podem ser alteradas via
firmware, dentre essas funções temos a função que bloqueia o sistema por 25 segundos
caso ocorra 3 erros na tentativa de autenticação, também temos a função em que o
sistema volta para a tela inicial após 1 minuto, caso esteja em alguma outra tela que
não seja a inicial, e não tenha ninguém utilizando o dispositivo.
Para poder acessar as funções ativas mencionadas anteriormente é necessário
que o usuário acesse o menu de configuração do dispositivo. Para ter acesso ao menu
de configuração é necessário que o usuário pressione a tecla ‘#’ na tela inicial. Feito
isso ele será redirecionado para uma tela em que deverá colocar uma senha de 4
dígitos para poder ter acesso ao menu.
A única opção que não é necessário acessar pelo menu é a opção de
autenticação por login e senha. Para utilizar esse método de autenticação é necessário
que o usuário esteja na tela inicial e pressione a tecla ‘*’ por 3 segundos, após esse
tempo o usuário será redirecionado para tela de login (Figura 31) e consequentemente
poderá colocar seu login e senha que foram cadastrados via software web.
Ao ligar o dispositivo ele irá exibir no LCD uma mensagem (Figura 32) escrita
“Rochaut” na primeira linha e na segunda linha um número de IP “192.168.4.1”. Isso
significa que para configurar o dispositivo é necessário se conectar à rede Wi-Fi que
ele criou, o nome da rede é “Rochaut”, e para efetuar as configurações necessárias
basta colar o endereço de IP na barra de navegação de um browser, isso pode ser feito
por um computador ou smartphone.
Figura 32 – Tela ao ligar o dispositivo.
Esses passos são necessário para conectar o dispositivo à uma rede Wi-Fi para
que ele consiga realizar toda troca de informação com o servidor através da internet.
Se tudo foi configurado corretamente o dispositivo será redirecionado para a
tela inicial (Figura 37) com o ícone de wi-fi representando que o dispositivo está
conectado à uma rede wi-fi. Caso nenhuma rede for configurada, o dispositivo após 2
minutos automa- ticamente é redirecionado para tela inicial, porém, ao invés de um
ícone representando a conexão com uma rede wi-fi será um ícone ‘x’ representando
que não possui conexão com nenhuma rede wi-fi (Figura 38).
• Software WEB
Fonte:FilipeFlop (2017).
• Arquitetura do Sistema
A Figura 52 representa toda arquitetura do sistema, o Amazon EC2 representa
o servidor utilizado, com suas especificações de hardware e sistema operacional
utilizado.
O Apache e MySQL são os softwares instalados no sistema. A representação por
Back-end e Front-end são pastas onde se encontra o código fonte de cada parte da
aplicação.
• Conclusão
Este trabalho apresentou um sistema de controle de acesso para ser
implementado nos laboratórios da Escola de Minas, mas que também pode ser
implementado em locais que haja a necessidade do controle de ponto de seus
colaboradores.
O sistema constitui-se de uma aplicação WEB que fica on-line 24h por dia,
hos- pedado em uma máquina virtual nos servidores da Amazon. A partir da
aplicação WEB é possível gerenciar todos os usuários cadastrados no sistema, e obter
relatórios mensais com a carga horária cumprida por seus colaboradores.
Para autenticação de um usuário no sistema foi desenvolvido o protótipo de um
sistema embarcado que tem como métodos de autenticação cartões RFID e teclado
matricial.
Foi apresentada toda a base teórica utilizada para poder concretizar as
propostas oferecidas, demonstrando como foi implementada passo a passo, mostrando
que todos os objetivos propostos foram cumpridos.
Diante do trabalho presente e de acordo com os resultados apresentados, o
projeto tem total viabilidade de ser implementado, sendo uma boa solução para
automatizar serviços para controle de acesso.
Referências
AFONSO, A. O que é Angular? 2018. Disponível em: <https://blog.algaworks.com/o-
que- e-angular/>. Acesso em: 07 set. 2019. Citado na página 35.
AMAZON. Amazon Elastic Compute Cloud. 2019. Disponível em: <https://docs.aws-
.amazon.com/pt br/AWSEC2/latest/UserGuide/concepts.html>. Acesso em: 11 jan.
2019. Citado na página 35.
ANDREI. O que é Apache? Uma visão aprofundada do servidor Apache. 2019.
Disponível em: <https://www.hostinger.com.br/tutoriais/o-que-e-apache>. Acesso em:
07 set. 2019. Citado na página 36.
BARBACENA, I. L.; FLEURY, C. A. DISPLAY LCD. [S.l.: s.n.], 1996. Citado 2 vezes
nas páginas 29 e 30.
BARROS, E.; CAVALCANTE, S. Introdução aos sistemas embarcados. Artigo
apresentado na Universidade Federal de Pernambuco-UFPE, 2010. p. 36, 2010.
Citado na página 17.
BRINGING. Bringing MySQL to the web. 2019. Disponível em: <https://www-
.phpmyadmin.net/>. Acesso em: 09 jan. 2019. Citado na página 33.
CANALTECH. O que é servidor Apache? - Internet. 2019. Disponível em: <https:/-
/canaltech.com.br/internet/O-que-e-servidor-Apache/>. Acesso em: 07 set. 2019.
Citado na página 36.
CARDOSO, R. L. d. B. S. Desenvolvimento de soluções para acionamento eletrónico
de fechaduras"keyless": Rfid, keypad e biométrico. 2014. 2014. Citado na página 14.
CARRO, L.; WAGNER, F. R. Sistemas computacionais embarcados. Jornadas de
atualização em informática. Campinas: UNICAMP, 2003. 2003. Citado na página 14.
CHASE, O.; ALMEIDA, F. Sistemas embarcados. Mídia Eletrônica. Página na
internet:< www. HYPERLINK "http://www/" sbajovem. org/chase>, capturado
em, 2007. v. 10, n. 11, p. 13, 2007. Citado na
página 17.
CUNHA, A. RFID – Etiquetas com eletrônica de ponta. 2016. Disponível em:
<https://www.embarcados.com.br/rfid-etiquetas-com-eletronica-de-ponta/>. Acesso
em: 31 mai. 2018. Citado 2 vezes nas páginas 20 e 21.
CUNHA, A. F. O que são sistemas embarcados. Saber Eletrônica, 2007. v. 43, n. 414,
p. 1–6, 2007. Citado na página 17.
CURVELLO, A. Apresentando o módulo ESP8266. 2015. Disponível em: <https://www-
.embarcados.com.br/modulo-esp8266/>. Acesso em: 6 jun. 2018. Citado 2
vezes nas páginas 18 e 19.
ELETRONICA.ORG. 2019. Disponível em: < HYPERLINK
"http://www.eletronica.org/arq_apostilas/2/lcd_codigos.pdf"http://www.eletronica.org/arq
HYPERLINK "http://www.eletronica.org/arq_apostilas/2/lcd_codigos.pdf" HYPERLINK
"http://www.eletronica.org/arq_apostilas/2/lcd_codigos.pdf"apostilas-
/2/lcd HYPERLINK "http://www.eletronica.org/arq_apostilas/2/lcd_codigos.pdf"
HYPERLINK "http://www.eletronica.org/arq_apostilas/2/lcd_codigos.pdf"codigos.pdf
HYPERLINK "http://www.eletronica.org/arq_apostilas/2/lcd_codigos.pdf">.
Acesso em: 10 jan. 2019. Citado 2 vezes nas páginas 30
e 32.
FERNANDES, A. O que é API? Entenda de uma maneira simples. 2018. Disponível em:
<https://vertigo.com.br/o-que-e-api-entenda-de-uma-maneira-simples/>. Acesso em:
05 set. 2019. Citado na página 34.
FILIPEFLOP. 2017. Disponível em: <https://uploads.filipeflop.com/2017/10-
/mini-fonte-hi-link-hlk-pm01-100240vac-para-5vdc-600ma-D NQ NP 239021-
MLB20683079715 042016-F.jpg>. Acesso em: 04 set. 2019. Citado na
página 54.
FILIPEFLOP. Como usar o Teclado Matricial 4x4 com Arduino - FilipeFlop. 2019.
Disponível em: <https://www.filipeflop.com/blog/teclado-matricial-4x4-arduino/>.
Acesso em: 03 set. 2019. Citado 2 vezes nas páginas 28 e 31.
FINKENZELLER, K. RFID handbook: fundamentals and applications in contactless
smart cards, radio frequency identification and near-field communication. [S.l.]: John
Wiley & Sons, 2010. Citado na página 14.
FREERTOS. About FreeRTOS. 2018. Disponível em: <https://www.freertos.org/RTOS-
.html>. Acesso em: 11 jan. 2019. Citado na página 37.
GU CLAIRE E YEH, P. Liquid crystal display (lcd). Handbook of Digital Imaging,
2015. Wiley Online Library, 2015. Citado na página 29.
HEUSER, C. A. Projeto de banco de dados: Volume 4 da Série Livros didáticos
informática UFRGS. [S.l.]: Bookman Editora, 2009. Citado na página 32.
HIRAKAWA, A.; CUGNASCA, C. E.; CUGNASCA, C. E. Experiência 4: Interface
com teclado e display. Escola Politécnica da USP, Departamento de Engenharia de
Computação e Sistemas Digitais, 2007. 2007. Citado na página 27.
LEENS, F. An introduction to i 2 c and spi protocols. IEEE Instrumentation &
Measurement Magazine, 2009. IEEE, v. 12, n. 1, p. 8–13, 2009. Citado na página
26.
LEONARDO. Artigo: API, Framework ou Biblioteca - Gigasystems. 2015. Disponível em:
<https://www.gigasystems.com.br/artigo/94/api-framework-ou-biblioteca>. Acesso
em: 05 set. 2019. Citado na página 34.
LIVRE, M. Display Lcd 16x2 - Backlight Azul - Escrita Branca - R$ 21,99 em
Mercado Livre. 2019. Disponível em: <https://produto.mercadolivre.com.br/MLB-
798503579- display-lcd-16x2-backlight-azul-escrita-branca- JM>. Acesso em: 04 set.
2019. Citado na página 32.
OLIVEIRA, S. D. Internet das Coisas com ESP8266, Arduino e Raspberry Pi. [S.l.]:
Novatec Editora, 2017. Citado 2 vezes nas páginas 17 e 18.
ORACLE. MySQL | O Banco de Dados de Código Aberto Mais Popular | Oracle
Brasil. 2019. Disponível em: <https://www.oracle.com/br/mysql/>. Acesso em: 02 set.
2019. Citado na página 33.
RFIDHY. 2016. Disponível em: < HYPERLINK
"http://www.rfidhy.com/wp-content/uploads/2016/05/RFID-Contactless-card_08.jpg"http://
www.rfidhy.com/wp-content/uploads/2016-
/05/RFID-Contactless-card HYPERLINK
"http://www.rfidhy.com/wp-content/uploads/2016/05/RFID-Contactless-card_08.jpg"
HYPERLINK "http://www.rfidhy.com/wp-content/uploads/2016/05/RFID-
Contactless-card_08.jpg"08.jpg HYPERLINK
"http://www.rfidhy.com/wp-content/uploads/2016/05/RFID-
Contactless-card_08.jpg">. Acesso em: 03 set. 2019. Citado na
página 22.