Arduino - Joystick baseado na web
Componentes e suprimentos
| × | 1 | ||||
| × | 1 | ||||
| × | 2 | ||||
| × | 1 |
Sobre este projeto
Se você é um iniciante, você pode aprender:
- Arduino - servo motor.
- Arduino - Joystick
Podemos controlar tudo com este projeto, mas tomei os servo motores como exemplo.
Demonstração
Fiação
- Stack PHPoC WiFi shield ou PHPoC Shield no Arduino
- Conecte os pinos GND e VCC de dois servo motores ao GND e 5V do Arduino, respectivamente. (o pino IOREF do Arduino pode ser usado como o pino 5V)
- Conecte os sinais de pino de dois servo motores aos pinos 8 e 9 do Arduino, respectivamente.
Fluxo de dados
Navegador da Web ---> PHPoC WiFi Shield ---> Arduino
O aplicativo da web no navegador da web enviará a coordenada (após o dimensionamento) do evento de toque ou clique para o escudo PHPoC via WebSocket. Ao receber os dados, o escudo PHPoC os passa automaticamente para o Arduino. O Arduino controla dois servo motores de acordo com os dados recebidos do PHPoC Shield.
Observe que: O escudo PHPoC tem um programa embutido para passar dados do navegador da web para o Arduino. 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 Wi-Fi para PHPoC Shield
Veja esta instrução.
Carregar nova IU da web para PHPoC Shield
- Baixe o código-fonte do PHPoC remote_joystick.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 PHPoC para Arduino no Arduino IDE (consulte as instruções)
- Consulte o código-fonte na seção de códigos.
Experimente
- 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_joystick.php
- Clique no botão conectar e teste.
Projeto semelhante, mas plataforma de hardware diferente
Este projeto faz o mesmo trabalho, mas usou outra plataforma de hardware
O melhor Arduino Starter Kit para iniciantes
Veja 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 ()
Código
- Código Arduino
- Interface do usuário da web (remote_joystick.php)
Código Arduino Arduino
#include "SPI.h" #include "Phpoc.h" #includeservidor PhpocServer (80); Servo servo_x; Servo servo_y; void setup () {Serial.begin (9600); while (! Serial); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET); //Phpoc.begin (); server.beginWebSocket ("web_joystick"); Serial.print ("endereço do servidor WebSocket:"); Serial.println (Phpoc.localIP ()); servo_x.attach (8); // conecta o servo no pino 8 ao objeto servo servo_y.attach (9); // anexa o servo no pino 9 ao objeto servo servo_x.write (90); servo_y.write (90); } void loop () {// espera por um novo cliente:PhpocClient client =server.available (); if (cliente) {String data =client.readLine (); if (dados) {int pos =data.indexOf (':'); long x =data.substring (0, pos) .toInt (); long y =data.substring (pos + 1) .toInt (); Serial.print ("x:"); Serial.print (x); Serial.print (", y:"); Serial.println (y); // escala de [-100; 100] a [0; 180] ângulo longo_x =(x + 100) * 180/200; ângulo longo_y =(y + 100) * 180/200; servo_x.write (ângulo_x); servo_y.write (ângulo_y); }}}
Interface do usuário da web (remote_joystick.php) PHP
Arduino - PHPoC Shield
Arduino - Joystick baseado na Web
WebSocket: null
Esquemas
Processo de manufatura