Arduino Dynamic Web Control
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Sobre este projeto
Introdução
Se você é iniciante, recomendo ler sobre Arduino - Servo Motor e Arduino - Wifi.
Para conectar o Arduino à internet, precisamos usar algum tipo de escudo de internet, como escudo Ethernet, escudo Wifi, escudo PHPoC ou escudo PHPoC Wifi.
A característica marcante do escudo PHPoC é que ele não só fornece conexão à Internet como Ethernet e escudo Wifi, mas também fornece um servidor web que permite controlar e monitorar o Arduino a partir de um navegador da web. Ele também suporta WebSocket, portanto, podemos controlar e monitorar o Arduino em tempo real sem recarregar uma página da web.
PHPoC Shield tem alguns aplicativos da web integrados. Consulte este link para obter mais detalhes.
Neste projeto, eu mudei a IU (Interface do usuário) de Web Remote Control / Slide aplicativo da web e escreveu o código do Arduino para girar o ângulo do servo motor de acordo com o ângulo recebido do navegador da web.
Fiação
- Empilhar escudo PHPoC no Arduino
- Conecte o pino GND, VCC e o sinal do servo motor ao GND, 5V e pino 9 do Arduino, respectivamente.
Fluxo de dados
Navegador da Web ---> PHPoC Shield ---> Arduino
O aplicativo da Web irá calcular o ângulo com base no toque ou evento do mouse, enviá-lo para o escudo PHPoC via websocket. Ao receber esses dados, o escudo PHPoC os passa para o Arduino. O Arduino gira o servo motor de acordo com o ângulo.
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
Configurando informações de Wi-Fi para PHPoC Shield
Veja esta instrução:http://www.phpoc.com/support/manual/p4s-347_user_manual/contents.php?id=network_first_setup
Carregue uma nova IU para PHPoC Shield
- Baixe o código-fonte do PHPoC remote_rotate.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 a biblioteca para Arduino no Arduino IDE (consulte as instruções) e reinicie o Arduino IDE.
- No IDE Arduino, vá para Arquivo -> Exemplos -> Phpoc -> WebRemoteSlide e Arquivo -> Exemplos -> Servo-> varredura.
- Combine dois exemplos em um, temos o código para controlar o servo motor via página da web (consulte o código-fonte na seção de código).
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_rotate.php
- Clique no botão conectar e teste-o
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
- Arduino - Biblioteca Servo
- Servo.attach ()
- Servo.write ()
- Servo.writeMicroseconds ()
- Servo.read ()
- Servo.attached ()
- Servo.detach ()
- Serial.begin ()
- Serial.println ()
- atraso ()
- para loop
- while loop
- se mais
- loop ()
- configuração ()
- String.toInt ()
Código
- remote_rotate.php
- código Arduino
remote_rotate.php PHP
PHPoC Shield - Web Remote Control para Arduino corpo {alinhamento do texto:centro; tamanho da fonte:15pt; } h1 {espessura da fonte:negrito; tamanho da fonte:25pt; } h2 {tamanho da fonte:negrito; tamanho da fonte:15pt; } botão {tamanho da fonte:negrito; tamanho da fonte:15pt; }
Web Remote Control / Rotate
WebSocket: null
Ângulo: 0
Código do Arduino Arduino
/ * servidor web arduino - controle remoto (botão deslizante) * / # include "SPI.h" #include "Phpoc.h" #includeservidor PhpocServer (80); Servo myservo; // cria um objeto servo para controlar um servochar slideName; int slideValue; void setup () {Serial.begin (9600); while (! Serial); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET); //Phpoc.begin (); server.beginWebSocket ("remote_slide"); Serial.print ("endereço do servidor WebSocket:"); Serial.println (Phpoc.localIP ()); myservo.attach (9); // anexa o servo no pino 9 ao objeto servo myservo.write (1); } void loop () {// espera por um novo cliente:PhpocClient client =server.available (); if (cliente) {String slideStr =client.readLine (); if (slideStr) {slideValue =slideStr.substring (1) .toInt (); myservo.write (slideValue); Serial.print ("Ângulo:"); Serial.println (slideValue); }}}
Processo de manufatura
- Controlador DMX operado pela web
- Arduino Spybot
- Aceitar moeda de controle com Arduino
- Controle de eletrodomésticos pela web ou celular
- Arduino Control Center
- Arduino com Bluetooth para controlar um LED!
- Controle do umidificador Arduino
- Arduino Nano:Controle 2 motores de passo com joystick
- Arduino - Enviar temperatura para a Web via serial
- Arduino - Desbloqueio de Padrão da Web