Arduino - Termômetro baseado na web
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Sobre este projeto
Se você é um iniciante, pode aprender sobre wi-fi e sensor nos tutoriais de sensores de temperatura Arduino - Wifi e Arduino - DS18B20
Fiz um projeto semelhante usando apenas PHPoC aqui.
Demonstração
Fluxo de dados
Arduino ---> PHPoC WiFi Shield ---> Navegador da Web
O Arduino lê a temperatura do sensor e envia o valor da temperatura para o PHPoC WiFi Shield. Ao receber o valor da temperatura, o PHPoC WiFi Shield envia para o navegador da Web via websocket. A função JavaScript visualiza o valor da temperatura na IU.
Observe que: O escudo PHPoC tem um programa embutido para passar dados do Arduino para o navegador da web. Portanto, não precisamos nos preocupar com isso.
O que precisamos fazer
- Definir informações de WiFi para escudo PHPoC (SSID e senha)
- Carregue uma nova IU para o escudo PHPoC
- Escreva o código do Arduino
Definindo informações de WiFi para PHPoC Shield
Veja esta instrução.
Carregar nova IU da web para PHPoC Shield
- Baixe o código-fonte do PHPoC remote_thermometer.php (na seção de código).
- Faça o upload para o escudo PHPoC usando o depurador PHPoC de acordo com esta instrução.
Escreva o código do Arduino
- Instale as três bibliotecas a seguir:Biblioteca PHPoC para Arduino, OneWire e Dallas Temperature (consulte as instruções).
- Carregue o código do Arduino (na seção de código) para o Arduino
Teste
- Clique no botão serial no Arduino IDE para ver o endereço IP.
- Abra o navegador da web, digite
http://
replace_ip_address
/remote_thermometer.php
- Clique no botão conectar e teste.
O melhor Arduino Starter Kit para iniciantes
Se você estiver procurando por um kit Arduino, consulte O melhor kit Arduino para iniciantes
Referências de função
- Serial.begin ()
- Serial.println ()
- atraso ()
- milis ()
- para loop
- while loop
- se mais
- loop ()
- configuração ()
- String.toInt ()
- String.substring ()
- String.indexOf ()
- String.remove ()
- String.equals ()
Código
- Código Arduino
- remote_thermometer.php
Código Arduino Arduino
#include#include #include "SPI.h" #include "Phpoc.h" // O fio de dados está conectado à porta 8 no ArduinoOneWire oneWire (8); Sensores de temperatura Dallas (&oneWire); servidor PhpocServer (80); booleano jáConnected =false; void setup () {Serial.begin (9600); while (! Serial); sensores.begin (); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET); server.beginWebSocket ("termômetro"); Serial.print ("endereço do servidor WebSocket:"); Serial.println (Phpoc.localIP ()); } void loop () {// quando o cliente enviar o primeiro byte, diga olá:PhpocClient client =server.available (); if (cliente) {sensores.requestTemperatures (); float temp =sensores.getTempCByIndex (0); String txtMsg =String (temp) + "\ r \ n"; char buf [txtMsg.length ()]; txtMsg.toCharArray (buf, txtMsg.length ()); server.write (buf, txtMsg.length ()); atraso (300); }}
remote_thermometer.php PHP
Este arquivo fornece interface de usuário da web. Carregue este arquivo para PHPoC Wifi Shield ou PHPoC Shield de acordo com a instrução descrita.Arduino - PHPoC Shield - Termômetro
Arduino - Termômetro da Web
WebSocket: null
Esquemas
1. Empilhar escudo wi-fi PHPoC ou escudo PHPoC no Arduino2. Fiação como a imagem abaixo
Processo de manufatura