Índice:
- Etapa 1: Introdução
- Etapa 2: Prepare o aplicativo Laravel
- Etapa 3: preparar o Arduino Sender
- Etapa 4: etapas adicionais
Vídeo: Comunicação do Arduino para o Laravel: 4 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Olá a todos, Neste Instructable, vou mostrar como você pode enviar dados de um Arduino para um aplicativo Laravel.
Etapa 1: Introdução
Sempre que temos um projeto que requer alguma exibição e registro de dados, normalmente é necessário que tenhamos os dados disponíveis na web. Dessa forma, podemos monitorar o estado de um objeto remotamente ou mesmo controlar nossos dispositivos de qualquer lugar do mundo.
Para este projeto, usaremos uma placa NodeMCU v1.0 que possui um módulo ESP8266 12e a bordo. Além disso, precisaremos usar um computador onde possamos hospedar nosso aplicativo Laravel. Se você quiser saber como configurar esse ambiente, dê uma olhada no meu vídeo sobre isso.
Etapa 2: Prepare o aplicativo Laravel
Nosso primeiro passo é instalar o Laravel através do Composer. Não vou entrar em detalhes sobre como você pode fazer isso, pois a documentação explica em detalhes e você pode encontrá-lo aqui.
Para manter esta demonstração simples, dentro do Laravel iremos registrar as informações enviadas do Arduino para um arquivo de texto para que possamos revisá-las posteriormente. Para isso, vamos primeiro criar uma nova rota POST no arquivo "api.php". No retorno de chamada, injetaremos os detalhes da solicitação para que possamos recuperar posteriormente os parâmetros que estão sendo enviados.
Para escrever em um arquivo, estou usando a fachada de armazenamento do Laravel com seu método append útil. Quando chamado, este método recebe um nome de arquivo e dados de string onde adiciona esses dados ao arquivo especificado. Se o arquivo não estiver presente, ele está sendo criado na primeira chamada.
Os dados que gravamos em cada linha consistem na data e hora atuais, seguidos dos valores de solicitação de temperatura e umidade. Se você tiver vários desses valores, poderá repetir o mesmo processo de recuperação para todos eles.
Etapa 3: preparar o Arduino Sender
Vejamos agora o código do Arduino e o envio de dados.
Para que a placa NodeMCU seja capaz de se conectar ao nosso WiFi e enviar uma solicitação, primeiro precisamos incluir várias bibliotecas no topo. Em seguida, precisamos especificar o SSID da rede à qual nos conectamos e sua senha. Se você estiver usando um Uno com um escudo Ethernet, seu processo será diferente.
Além disso, salvamos aqui a URL raiz do servidor Laravel que acabamos de criar. No meu caso, este é o endereço IP do meu computador local, mas você pode adicionar qualquer URL de host onde o código esteja acessível.
Na função de configuração, iniciamos a comunicação serial para que possamos monitorar o que está acontecendo. Além disso, precisamos configurar a placa NodeMCU para que ela possa se conectar corretamente ao WiFi. Feito isso, podemos iniciar a conexão e esperar até receber um endereço IP do roteador.
Para este exemplo, eu realmente não tenho nenhum sensor conectado à placa. Em vez disso, estou apenas gerando alguns dados aleatórios usando a função aleatória e estou enviando isso.
Esses dados precisam ser preparados na forma de uma string de consulta e depois que a solicitação HTTP é iniciada, precisamos enviá-los usando o método POST no cliente HTTP. O cabeçalho que adicionamos antes existe para permitir que o servidor saiba que há dados na solicitação que ele precisa coletar.
Como resultado, primeiro obtemos o código de status HTTP e, em seguida, a carga útil de resposta. Se tudo correr bem, devemos obter 200 como o código e, como não retornamos nada de nosso aplicativo Laravel, a carga útil estará vazia.
Se, por algum motivo, o código de status não for 200, a carga útil geralmente conterá a mensagem de erro sobre o que aconteceu.
No final, precisamos ter certeza de fechar a solicitação e esperar um certo tempo, 5 segundos em nosso exemplo para fazer o mesmo processo novamente.
O resultado é que obtemos esses valores salvos no arquivo de texto em cada iteração para que possamos mais tarde usar isso para exibi-los ou mapeá-los em um gráfico.
Etapa 4: etapas adicionais
Como você pode ver, o processo é bastante simples e pode ser facilmente expandido para ler os valores de diferentes sensores e talvez anotá-los em um banco de dados. O resultado do que você pode construir com isso é limitado apenas pela sua imaginação. Para ajudá-lo a começar, abaixo está um link para o código-fonte completo usado no exemplo.
github.com/bkolicoski/arduino-laravel-comm…
Espero que você tenha aprendido algo novo com este Instructable e, caso tenha aprendido, me avise nos comentários, siga-me no Instructables e não se esqueça de se inscrever no meu canal no YouTube.
Obrigado!
Recomendado:
Comunicação sem fio LoRa de 3 km a 8 km com dispositivo E32 (sx1278 / sx1276) de baixo custo para Arduino, Esp8266 ou Esp32: 15 etapas
LoRa 3Km a 8Km de comunicação sem fio com baixo custo E32 (sx1278 / sx1276) Dispositivo para Arduino, Esp8266 ou Esp32: Eu crio uma biblioteca para gerenciar EBYTE E32 baseada na série Semtech de dispositivos LoRa, um dispositivo muito poderoso, simples e barato. Você pode encontrar Versão de 3Km aqui, versão de 8Km aqui Eles podem trabalhar em uma distância de 3000m a 8000m, e têm muitos recursos e
Comunicação do Arduino para o nó: 4 etapas
Comunicação do Arduino para o Nó: Este instrutível serve apenas para uma demonstração básica de como enviar e receber dados via UART (Serial) entre duas placas compatíveis com Arduino
Longo alcance, 1,8 km, Arduino para Arduino Comunicação sem fio com o HC-12: 6 etapas (com imagens)
Longo alcance, 1,8 km, Arduino para Arduino Comunicação sem fio com o HC-12 .: Neste instrutível, você aprenderá como se comunicar entre Arduinos a uma longa distância de até 1,8 km ao ar livre. O HC-12 é uma porta serial sem fio Módulo de comunicação muito útil, extremamente poderoso e fácil de usar. Primeiro você vai deixar
Comunicação sem fio usando o módulo transceptor NRF24L01 para projetos baseados em Arduino: 5 etapas (com imagens)
Comunicação sem fio usando o módulo transceptor NRF24L01 para projetos baseados em Arduino: Este é meu segundo tutorial instrutível sobre robôs e microcontroladores. É realmente incrível ver seu robô vivo e funcionando como esperado e acredite, será mais divertido se você controlar seu robô ou outras coisas sem fio com rapidez e
Comunicação ESP para ESP: 4 etapas
Comunicação ESP para ESP: Este tutorial o ajudará a substituir outros módulos do transceptor para qualquer outro projeto que inclua comunicação sem fio. Usaremos placa baseada em ESP8266, uma em modo WiFi-STA e outra em modo WiFi -AP, NodeMCU V3 é minha escolha para este projeto