Esp32 - Como enviar dados para um servidor?

Projetos de ESP32
Eduardo_mp
Novato
Mensagens: 1
Registrado em: 22/Nov/2019, 23:09

Esp32 - Como enviar dados para um servidor?

Mensagem por Eduardo_mp » 23/Nov/2019, 00:02

Olá, amigos.
Já fiz vários projetos utilizando o Arduino e recentemente resolvi ir além. Adquiri um Esp32 para fazer um projeto de IoT da faculdade, mas enfrento alguns problemas, pois sou novo em utilizar a internet e o wifi com os microcontroladores.

O projeto é uma máquina de refrigerante inteligente, que enche o copo e monitora o volume do reservatório (tanque) automaticamente, por meio de sensores. As variáveis que monitoram o processo estão armazenadas e devem ser enviadas para o servidor nuvem (cloud) que criei utilizando o AWS Educate. O servidor está funcionando certinho. Instalei o Helix nele, utilizando o PuTTY. Após o esp32 enviar os dados para o servidor AWS, vou monitora-las no site "freeboard.com". O usuário vai conseguir visualizar o nível do tanque, a quantidade de copos pequenos, médios e grandes.

A programação do projeto "offline" estou conseguindo desenvolver com os meus colegas. Já simulei a criação das entidades utilizando o Postman, mandando para o ip do server AWS e monitorando no freeboard e funcionou.

Entretanto, estou perdido para enviar os dados do Esp32 para o AWS server. Eu pesquisei muito na internet e em diversos sites mais não encontrei algo que me ajudasse.

No Postman eu utilizei os comandos POST e PUT (para criar e alterar a entidade). Como faço o Esp32 realizar esses comandos?

POST ---> http://{{orion}}:1026/v2/entities "orion é o ip do meu server"
{
"id": "tanque",
"type": "sensor",
"volume": {
"value": "0",
"type": "float"
}
}

PUT ---> http://{{orion}}:1026/v2/entities/tanque/attrs/volume/value
90

GET ---> http://{{orion}}:1026/v2/entities/
[
{
"id": "tanque",
"type": "sensor",
"volume": {
"type": "float",
"value": 90,
"metadata": {}
}
}
]

Como é a programação para o Esp32 fazer esses comandos com as variáveis que ja tenho no projeto? Eu devo utilizar o comando POST e PUT. Contudo, o comando POST deve ser feito toda hora pelo esp32? Ou devo criar a entidade pelo postman (POST) e só alterar o valor(PUT) pelo esp32?
Eu estava seguindo esse exemplo: https://techtutorialsx.com/2017/05/20/e ... -requests/
Mas mesmo assim encontro algumas dificuldades.

Agradeço a atenção de quem puder me ajudar a desenvolver mais esse mundo de IoT.
Obrigado!

Responder