Métodos de comunicação Arduino e servidores de aplicação

O que é um Arduino?

O Arduino é uma placa de prototipagem eletrônica que pode ser usada para desenvolver projetos de automação residencial, como desligar automaticamente as luzes, ajustar a temperatura de um ar-condicionado e muito mais. O melhor de tudo é que essa tecnologia é de código aberto, o que significa que é acessível a qualquer pessoa.

Esse pequeno processador de computador montado em uma placa com diversos outros componentes que manipulam sua entrada e saída, torna mais fácil para você conectar tudo ao mundo virtual, esse será o tema mais abordado neste Artigo.

Como podemos ver na imagem abaixo, não temos componentes no Arduíno que forneçam uma rede ao usuário seja WI-FI ou via cabo. Podemos utilizar diversos componentes que cumprem essa função, inclusive outros microcontroladores que já possuem tal funcionalidade inserida no próprio hardware. Segue exemplos:

Arduino Uno R3

Ethernet Shield W5100

Esse módulo fornece acesso à rede nos protocolos UDP ou TCP, conectando o seu Arduino à Internet de forma fácil e rápida. Seu formato de Shield facilita a conexão com a placa Arduino Uno, Arduino Mega e com outras placas da família Arduino, sua configuração para acesso a internet é bem simples, bastando apenas conectar a placa à sua rede através de um cabo de rede RJ45, além de seguir algumas instruções de uso da biblioteca ethernet.

ESP8266 NodeMCU

O módulo Wifi ESP8266 NodeMCU é uma placa de desenvolvimento que combina o chip ESP8266, uma interface usb-serial e um regulador de tensão 3.3V. A programação pode ser feita usando LUA ou a IDE do Arduino, utilizando a comunicação via cabo micro-usb. Através do desenvolvimento e combinação desses dois hardwares conseguimos conectar nosso Arduino a qualquer servidor de aplicação, sendo compatível com arquivos do tipo JSON.

Partindo para uma integração mais completa, temos uma maneira de comunicar qualquer microcontrolador a servidores de aplicação de maneira mais eficiente e simples, porém com um custo mais elevado. Raspberry Pi 4, trata-se de um microcomputador com um processador muito mais veloz, saídas HDMI o que garante uma ótima resolução para displays e conectividades como  Wifi , Wireless, Bluetooth 5.0 e cabo Ethernet.

Raspberry Pi 4

A Raspberry Pi 4B inclui um alto-desempenho 64-bit processador quad-core e características dual-display suporte em resoluções de até 4K através de um par de micro-portas HDMI, hardware de decodificação de vídeo até 4 GB de RAM, dual-band 2.4/5.0 GHz wireless LAN, Bluetooth 5.0, Gigabit Ethernet, USB 3.0 e 2.0 entre outras características.

O que é um Webservice?

Para que diferentes sistemas, tanto Microcontroladores quanto qualquer outro programa ou solução para internet das coisas, ou até mesmo em ambientes empresariais e profissionais, possam trocar informações e consumir dados do mesmo servidor ou não, solicitando ou enviando informações, utilizamos um Webservice. Com os exemplos de conectar um Microcontrolador com a internet e demais módulos citados no tópico anterior, podemos ver a importância que um Servidor Web tem de gerenciar requisições, tráfego de atualização dos dados entre tantas outras tarefas.

Para compreendermos melhor qual sua função e a ligação com o tópico discutido anteriormente sobre Microcontroladores, iremos ter acesso a um exemplo que está ao alcance do conhecimento e tecnologia de todos, uma automação residencial via comando de voz utilizando a Amazon Alexa, baseada no Webservice da Amazon (aws.com), atuando juntamente com componentes como o Arduino.

Através do modelo MKR1010, podemos utilizar o próprio site do Arduino (IoT Cloud) para configurar e criar nossas “coisas” no menu Things. Criando os objetos e pareando com o dispositivo Arduino, irá gerar um código fonte de onde o Arduino irá disponibilizar um painel de controle online que permite já testar todas as funcionalidades da sua aplicação.

Ao selecionar o dispositivo que cadastramos, teremos acesso as variáveis a serem desenvolvidas, na aba Sketch irá ocorrer todo desenvolvimento do comportamento das nossas variáveis.

Pronto, a parte mais complicada do processo todo seria essa, agora já temos um painel online que irá receber/mandar requisições para nosso microcontrolador, podendo ser realizado testes e ajustes antes mesmo de realmente ver a solução como um todo.

Com esta etapa concluída, podemos partir para outra parte da integração que se trata do robô Alexa. No site aws.com podemos configurar Skills para solução que estamos criando.

 Arduino já possui algumas Skills e ajuda muito programadores nesses tipos de integrações, só instalar e sair utilizando-as.

Nas configurações dessas habilidades, a única coisa, que ainda temos de fazer, é criar o Account Linking que é responsável pela comunicação entre Arduino, Alexa e o Usuário que irá utilizar aplicação.

Com isso ao direcionar um comando de voz ao robô Alexa, nossa aplicação estará devidamente integrada e realizará as funções mediante as solicitações.

Autor: João Pedro Tisatto Salvador

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *