Lendo um sensor conectado ao ESP32-C3 pela Internet

Exemplo – Sensor de Vibração

Para a realização desse exemplo é necessário já ter adicionado a placa ESP32 no gerenciador de placas, assim como configurado a placa como “ESP32C3 Dev Module” e deixando o “USB CDC On Boot” na opção Enabled. Isso pode ser visto na apresentação desse módulo.

            Primeiramente, devemos adicionar a biblioteca correta denominada “Wifi.h”, sendo essa uma das bibliotecas já incorporadas na Arduino IDE e não precisará ser instalada. Seguindo é necessário definir as credenciais da sua rede de internet, que deverão ser colocadas entre aspas. Além disso, definiremos o pino do LED, que nesse caso é o 8. Finalmente, definiremos a porta servidor a ser utilizada, sendo a padrão a 80. Na Figura 1 a seguir temos essa parte do código.

FIGURA 1 – Parte 1 do Código de Exemplo

            Seguindo, temos a função setup na qual iniciamos a comunicação serial em uma velocidade de 115200. Então configuramos os pinos que serão utilizados. O pino do LED deverá ser a saída, já o pino do sensor devera ser entrada. O pino do sensor poderá ser qualquer um da placa ESP32-C3, nesse exemplo utilizaremos a porta 36 – que na placa é a número 05. Então devemos fazer a conexão com a internet em três partes: a tentativa de conexão, a espera durante a conexão e a conexão em si na qual o endereço de IP será impresso. Todas essas parcelas terão seus passos mostrados no monitor serial. Finalmente, temos a conexão com o servidor. Na Figura 2 a seguir temos essa parte do código.

FIGURA 2 – Parte 2 do Código de Exemplo

            Continuando, dentro da função loop devemos verificar se há algum cliente disponível. Nesse exemplo o cliente será a aba da internet na qual será conectada após a compilação do código. Então verificamos se algum cliente foi encontrado e se ele está disponível. Criaremos uma variável char para armazenar a mensagem que o cliente enviará. Caso tenha uma mensagem então algumas informações sobre o cliente serão mostradas no monitor serial.

            Nessa parte também definiremos o que aparecerá na aba do cliente com alguns comandos em HTML. Para esse exemplo apenas criaremo um texto que ao ser pressionado irá ser encaminhado para uma parte específica do código. Utilizaremos em HTML a tag <a> para referenciar um link, dentro dela há um atributo “href” para indicar que parte do código devemos seguir. Finalmente há a tag <br> que irá pular uma linha para melhor formatação. Nas Figuras 3 e 4  é possível visualizar essa parte do código.

FIGURA 3 – Parte 3 do Código de Exemplo

FIGURA 4 – Parte 4 do Código de Exemplo

           Na sequência há duas funções else para caso a mensagem não tenha sido enviada corretamente ou se nem existir uma mensagem, para que o código siga corretamente. Então criamos a função para caso o link seja pressionado pelo cliente. Para isso usamos funções específicas da biblioteca adicionada. Assim que o botão for pressionado o sensor é lido. Se ele percebeu vibração comunicará o serial e acionar o LED por 5 segundos. Caso contrário, o monitor serial será avisado e o LED se manterá desligado. Na Figura 5 essa parte do código é visível.

FIGURA 5 – Parte 5 do Código de Exemplo

            Com isso criamos um código que conecta o ESP32C3 na internet e informa o endereço de IP. Quando, na aba do cliente na internet, o botão for pressionado o sensor de vibração é lido, sendo avisado por meio de um LED e pelo monitor serial caso o sensor tenha ou não detectado vibração. Nas Figuras 6, 7, 8 e 9 a seguir temos o código por completo.

FIGURA 6 – Parte 6 do Código de Exemplo

          FIGURA 7 – Parte 7 do Código de Exemplo

FIGURA 8 – Parte 8 do Código de Exemplo

FIGURA 9 – Parte 9 do Código de Exemplo

            Após isso, podemos carregar o código pronto ao ESP32C3 por meio do cabo micro-USB Tipo B. Assim que estiver carregado você deverá abrir o monitor serial, sendo que no monitor deverá aparecer: uma caracterização do ESP. Os comandos de tentativa espera e conexão a sua internet, assim como o seu endereço de IP. Na Figura 10 a seguir temos um exemplo de como aproximadamente o monitor serial deverá aparecer.

FIGURA 10 – Monitor Serial Iniciando

            Copiando esse endereço de IP, entre em um navegador de internet e cole invés do URL. Ao carregar a página aparecerá o que foi programado, nesse caso apenas as palavras “Verificar Sensor” sendo que esse texto é um botão. Se você apertar nele o sensor será lido. Caso o sensor perceba ou não vibração o LED irá ser afetado e o monitor serial mostrará isso. Além disso, depois o monitor serial imprimirá diversas propriedades da conexão como: Host (seu endereço de IP), Connection (que como é contínua deverá aparecer keep-alive), User-Agent, Accept, Referer, entre outros. Por exemplo, se o botão for pressionado e o sensor de vibração não for acionado o monitor serial mostrará algo similar a Figura 11 a seguir.

FIGURA 11 – Monitor Serial Funcionando

            Quanto a montagem do hardware, é apenas necessário conectar a placa USB ao computador, utilizando o cabo micro-USB e conectar o Sensor de Vibração no pino identificado como 05 (ou outro escolhido). É possível fazer isso diretamente com jumpers ou utilizando uma protoboard como intermediária. Na Figura 12 essa conexão pode ser vista utilizando uma protoboard e três jumpers: VCC (vermelho), GND (preto) e D0 (azul).

FIGURA 12 – Monitor Serial Funcionando

Compartilhar:

Compartilhar no facebook
Facebook
Compartilhar no twitter
Twitter
Compartilhar no pinterest
Pinterest
Compartilhar no linkedin
LinkedIn

Posts relacionados

Receba novidades

Fique por dentro das novidades, deixe seu e-mail.

contato@jvtech.net.br

Desenvolvido por 👑🦓 💬 Rei Zebrus – Comunicação © 2023 | Todos os direitos reservados.