Você está na página 1de 17

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO

AMAZONAS
CAMPUS MANAUS DISTRITO INDUSTRIAL
CURSO DE ENGENHARIA DE CONTROLE E AUTOMAÇÃO

DIONES DE CARVALHO VASCONCELOS

ISAQUE SAID DA SILVA MARTINS


LIGIANE ALZIE BASQUES
MAGNALDO MOREIRA SANTOS

DESENVOLVIMENTO DE UM SISTEMA PARA COMUNIÇÃO NAS


DEPENDÊNCIAS DO INSTITUTO USANDO NODEMCU – MATRIX

MANAUS – AM
2022
1 - Introdução
A internet das coisas ou “Internet of Things” tem como finalidade conectar
equipamentos eletrônicos na internet, para troca de informações, controle, ou até
mesmo substituição de seres humanos em determinadas atividades. Segundo
DEIMAR et. al. (2017), essa evolução tecnológica gera a união de um mundo
real ao imaginário, fazendo com que estabeleça comunicação entre pessoas e
objetos.

No setor acadêmico é rotineiro que os professores se desloquem até as


salas de aula para passar informações aos alunos, como transferências para
laboratórios, informativos institucionais, e outros, afetando o tempo de
aproveitamento do horário de aula, consequentemente fazendo com o que o
aluno perca conteúdo e também com que o professor não consiga ministrar
totalmente o conteúdo programado.

Com base nessa problemática, o objetivo desse trabalho é desenvolver


um sistema para otimizar a comunicação da Coordenação de Apoio ao Ensino
(CAE) e professores, com os alunos. O projeto contará com uma página Web
que pode ser acessada em uma rede local pelos professores e servidores do
Instituto, e um dispositivo de Hardware chamado de Vision deve ser instalado
nas salas de aula, o qual possibilita a recepção e visualização da mensagem.
2 - Ambiente de desenvolvimento

As ferramentas utilizadas para desenvolvimento de software deste projeto


foram Xampp Control Panel versão 3.2.2 e VsCode, e como teste foi utilizado no
navegador Google Chrome. Para construção e simulação do hardware utilizou-
se o Fritizing versão 0.9.3.

2.1 Desenvolvimento do firmware

Para desenvolvimento do firmware empregado a IDE para a plataforma


Arduino, versão 1.8.5. Disponível em: www.arduino.cc. Foram empregadas três
bibliotecas nativas do Arduino, a WiFi.h, SPI.h e Wire.h.

Seis bibliotecas externas que foram adicionadas na IDE do Arduino para


realizar o desenvolvimento deste sistema, foram elas:

✓ AX7219_Dot_Matrix.h - Fez-se necessário o uso da biblioteca


adicional da Matriz de leds MAX7219, desenvolvida por Marco Arduino.
Link: (https://github.com/SensorsIot/MAX7219-4-digit-display-for-
ESP8266);
✓ RtcDS1307.h – Fez-se necessário o uso da biblioteca adicional do
RTC DS1307, desenvolvida por Makuna. Link:
(https://github.com/Makuna/Rtc).

✓ WiFiManager.h e ESP8266WebServer.h – Fez-se necessário o uso


da biblioteca adicional Wifi Manager, e a ESP8266 para criação de um
servidor web nesta, as duas desenvolvidas por Fernando K Tecnologia.
Link: (https://github.com/zhouhan0126/WIFIMANAGER-ESP32).

✓ ESP8266mDNS.h – Fez-se necessário o uso da biblioteca


adicional ESP8266mDNS desenvolvida por Tony Di Cola juntamente com
Ivan.
Link:(https://github.com/esp8266/Arduino/tree/master/libraries/ESP8266
m DNS).
3 - Descrição do projeto

O projeto descrito neste trabalho tem como objetivo transmitir mensagens,


através de uma página Web para um dispositivo exibidor de mensagens
chamado de Vision. Este dispositivo será instalado nas salas de aula do campus,
onde o usuário ao acessar a página gerada pelo servidor escreverá a mensagem
que se deseja enviar, está será transmitida via rede WiFi para o Vision
selecionado pelo cliente. A Figura 1 mostra o diagrama de funcionalidade do
projeto

Foi criado um servidor Web e um banco de dados no software XAMPP. O


servidor Web faz cadastros e consultas de informações do banco de dados
através de instruções SQL na linguagem PHP. As requisições realizadas entre a
página Web e os dispositivos acontecem através de requisições HTTP enviadas
através do navegador Web utilizando o protocolo GET, que é uma ferramenta
que envia informações pelo método de adição de dados no campo URL da
página.

Para conexão entre servidor e dispositivos de exibição de mensagens foi


necessário o emprego de um roteador para criação de uma rede local que
realizará a transmissão dos dados via rede WiFi local.

A seleção dos dispositivos na página Web é realizada através da


marcação por checkbox, a qual possui o valor correspondente ao IP da ESP8266
embarcada no dispositivo. A requisição enviada é tratada especificamente para
os dispositivos 7 selecionados, onde a função handleSetCommand() verifica a
existência de mensagem para ser exibida.

Para realizar interação com usuário foi desenvolvido um sistema de


navegação de páginas composta por cadastro, dispositivo, principal e index. Na
página Index o usuário é capaz de realizar login para liberação de acesso às
demais funções do projeto. A página cadastro é utilizada para cadastrar
dispositivos. Na principal é possível enviar mensagem para salas já cadastradas.
Em dispositivo pode-se visualizar os dispositivos registrados, e também excluí-
los.

O dispositivo de exibição de mensagens mostrará quatro vezes as


mensagens recebidas, e soará o buzzer até o término da mensagem, enquanto
o mesmo não estiver executando a função de exibir mensagem o horário atual
ficará passando na matriz de Led. Uma chave de duas posições foi inserida para
realizar a comutação entre o modo de configuração e modo de operação. No
modo de configuração é possível visualizar na matriz de led o IP da ESP8266
gerado pelo seu roteador, para efetuar o cadastro no banco de dados via página
Web. O modo de operação é usado para recepção e exibição de mensagens.

3.1 Projeto eletrônico

Para a montagem do projeto foram usados componentes eletrônicos que


auxiliam no funcionamento do circuito, com o objetivo de desempenhar as
funções listadas a seguir.

✓ NodeMCU: é uma plataforma open source da família ESP8266


criado para ser utilizado no desenvolvimento de projetos IoT, Esta
plataforma é composta basicamente por um chip controlador (ESP8266
ESP-12E), uma porta micro USB para alimentação e programação,
conversor USB serial integrado e já possui WiFi nativo, Pinos operam em
nível lógico de 3.3V.
✓ Matriz 32x8: Para o recebimento de informação via página web, as
quais são feitas pelas portas digitais da matriz de Leds que são (Vcc, Gnd,
D2, D3, D4).
✓ Buzzer: é um componente de geração de ruídos sonoros a partir da
excitação elétrica, ele irá apitar por um determinado período de tempo
quando a matriz de Leds receber uma informação via web.
✓ Optoacoplador 4N35: é um componente que transfere sinais
elétricos entre dois circuitos isolados utilizando luz, Eles são muito
utilizados para proteger circuitos sensíveis, como os que utilizam micro
controlador, o uso desse componente se dá pelo fato de que o micro
controlador (NodeMCU) fornece 3.3 volts e precisamos de 5 volts para
acionar o Buzzer
✓ Módulo RTC: Este Real Time Clock (RTC) é um relógio de tempo
real com calendário completo e mais de 56 bytes de SRAM, sendo capaz
de fornecer informações como segundo, minutos, dia, data, mês e ano,
usaremos esse modulo para fornecer data e hora enquanto não é
mandada nenhuma informação para a matriz de leds
✓ Botão: Chave de duas posições, disponibilizando duas opções ao
usuário, a primeiro modo de operação, e a segunda configuração.
✓ Resistores: limita a corrente do buzzer e optoacoplador (1KΩ), e do
botão (100Ω).
✓ Placas de CI: Usamos duas placas de circuito impresso para a
montagem do projeto
✓ Fonte: Usamos uma fonte para transformar a tensão de 110V
proveniente da rede elétrica para 5V
3.1.1 Montagem das placas

Inicialmente todo o circuito foi montado usando o software Fritizing para


validação do circuito, e visualização da montagem, o circuito foi dividido em duas
partes, sendo uma composta pelos componentes principais mostrada na Figura
03, e uma de fonte mostrada na Figura 04.
Posteriormente foi montado o circuito do projeto em um protoboard para
validar os componentes e simular o funcionamento deste fisicamente como visto
na Figura 5.
Para montagem foram utilizadas duas placas perfuradas de 4x6cm dupla
face. A primeira placa é composta com o módulo embarcado ESP8266,
optoacoplador, buzzer, módulo RTC, um resistor de 1KΩ e um de 100Ω, como
mostrado na Figura 6.

A segunda placa é composta da mini fonte Hi-Link, onde é transformada


a tensão 110V para 5V, a montagem da placa é exibida na Figura 7
4 - Criação do banco de dados

Neste tópico demonstra o procedimento de criação do banco de dados e


o preenchimento das tabelas. Para que o computador se torne um servidor do
sistema é necessário pressionar o botão de Start das opções Apache e MySQL.
Deve-se iniciar um navegador Web e acessar a URL:
http://localhost/phpmyadmin/, e criar duas tabelas, uma para os dispositivos,
chamada de device, e outra de usuário com o nome user.

A tabela do banco de dados device possui três campos, o índice é


chamado de id como um número de série do equipamento do tipo inteiro,
podendo ter até 2048 dispositivos. O campo de ip será preenchido no formulário
com o valor de IP de cada protótipo, e local será completado com o número da
sala de alocação. A tabela device é vista na Figura 12.

A tabela de usuário será preenchida com o campo índice id, que será o
número do usuário, o campo login que terá o nome do cliente, a lacuna password
deve ser completada com uma senha. A Figura 13 mostra a tabela user.
5 - Páginas Web

Para desenvolvimento da página Web foi utilizado às linguagens PHP,


HTML, SQL, CSS, através do editor VsCode. Para realizar a interação do usuário
com o servidor foi desenvolvida a interface Web, composta por quatro páginas,
index, cadastro, dispositivos e principal. O acesso à página inicial se dá através
do link: http://localhost:8080/matrix/
5.1 Index

Nesta página o usuário poderá efetuar o login no sistema, inserindo seu


nome e senha, ocorrendo assim à validação dos dados inseridos. A Figura 14
mostra a página index.

Figura 14: Página de login

5.2 Cadastro

Para cadastro é necessário que o usuário preencha o campo com o


número da sala em que o dispositivo será alocado, e o IP do mesmo, logo em
seguida pressiona-se o botão “Cadastrar”. Nesta função é realizada uma
verificação para que não haja duplicidade de informações dos dispositivos. Caso
algum dos campos não seja preenchido o cadastro não será efetuado. A página
cadastro é exibida na Figura 15.
5.3 Dispositivos

Na página dispositivos é possível visualizar os equipamentos que já foram cadastrados,


e também excluí-los do sistema. Esta página é mostrada na Figura 16.

5.4 Principal

A página principal possui um campo para escrever a mensagem que se deseja


enviar, as caixas de checkbox devem ser selecionadas para as salas de envio
da mensagem. Pode ser selecionada uma sala ou mais. A Figura 17 mostra a
página principal.
6- Operação do Sistema

1 Acessar em um navegador Web o link: http://localhost:8080/matrix/, como visto


na Figura:

2 Ao abrir a página inicial deve-se inserir o usuário “adm”, e senha “123” e


pressionar o botão Login, para ter acesso às demais funções.

3 Ao entra com usuário e senha aparecerá à imagem da Figura 26, na primeira


caixa colocará o numero da sala em que se encontra o dispositivo Vision e logo
abaixo o IP a qual é exibido na tela da matriz de led. Deslocando o botão que se
encontra na lateral do dispositivo aparecerá o IP a qual deve inserir na segunda
caixa e aperte em cadastrar. Caso algum dos campos deste formulário não
sejam preenchidos, ou tenham conflito com número de sala e endereço de IP o
dispositivo não será cadastrado.
4 Deslocando o botão comutador de volta para o modo de operação, para usar
o sistema o usuário deverá inserir o texto no campo indicado para ser transmitido
para o dispositivo Vision em seguida marcará checkbox e depois pressionar o
botão enviar como visto

5 . O texto que escreveu irá aparecer na matriz de Led do Vision como visto
7 Resultados

Foram feitos testes para ver o funcionamento do sistema, tanto no envio de


mensagens para dispositivos de maneira individual quanto para vários
dispositivos simultaneamente, obtivemos êxito no envio das mesmas, tanto
quanto no tempo de resposta quanto no desenvolvimento de uma interface
simples e intuitiva para que o usuário consiga utilizar o sistema de uma maneira
simples. A maior dificuldade para o projeto foi trabalhar com interface WEB
utilizando banco de dados(frontend e backend) devido também ao curto espaço
de tempo e tivemos alguns problemas de integração, que foi sanado com alguns
testes.
REFERÊNCIAS

DEIMAR, Gabriel; SOBREIRA, Demóstenes; LIMA, Welton. Internet das coisas


na Educação. Revista Tecnologias em Projeção, v 8, n°2, ano 2017. p. 78

Você também pode gostar