Arduino - Joystick basado en web
Componentes y suministros
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 2 | ||||
| × | 1 |
Acerca de este proyecto
Si eres principiante, puedes aprender:
- Arduino - Servo motor.
- Arduino - Joystick
Podemos controlar todo con este proyecto, pero tomé los servomotores como ejemplo.
Demostración
Cableado
- Apile el protector WiFi PHPoC o el protector PHPoC en Arduino
- Conecte el pin GND y VCC de dos servomotores a GND y 5V de Arduino, respectivamente. (el pin IOREF de arduino se puede usar como pin de 5V)
- Conecte las señales de los pines de dos servomotores al pin 8 y al pin 9 de Arduino, respectivamente.
Flujo de datos
Navegador web ---> PHPoC WiFi Shield ---> Arduino
La aplicación web en el navegador web enviará las coordenadas (después de escalar) del evento táctil o de clic al escudo PHPoC a través de WebSocket. Al recibir los datos, el escudo PHPoC los pasa automáticamente a Arduino. Arduino controla dos servomotores de acuerdo con los datos recibidos de PHPoC Shield.
Tenga en cuenta que: PHPoC shield tiene un programa incorporado para pasar datos desde el navegador web a Arduino. Por lo tanto, no es necesario que nos preocupemos por ello.
Qué debemos hacer
- Configure la información de Wifi para el escudo PHPoC (SSID y contraseña)
- Sube una nueva interfaz de usuario al escudo PHPoC
- Escriba el código Arduino
Configuración de la información de Wi-Fi para PHPoC Shield
Vea esta instrucción.
Subir nueva interfaz de usuario web a PHPoC Shield
- Descargue el código fuente de PHPoC remote_joystick.php (en la sección de código).
- Súbelo al escudo PHPoC usando el depurador PHPoC de acuerdo con estas instrucciones.
Escribir código Arduino
- Instale la biblioteca PHPoC para Arduino en Arduino IDE (consulte las instrucciones)
- Consulte el código fuente en la sección de código.
Pruébelo
- Haga clic en el botón de serie en Arduino IDE para ver la dirección IP.
- Abra el navegador web, escriba
http://
replace_ip_address
/remote_joystick.php
- Haga clic en el botón Conectar y pruébelo.
Proyecto similar pero plataforma de hardware diferente
Este proyecto hace los mismos trabajos pero usó otra plataforma de hardware
El mejor kit de inicio de Arduino para principiantes
Vea el mejor kit de Arduino para principiantes
Referencias de funciones
- Arduino - Servo Library
- Servo.attach ()
- Servo.write ()
- Servo.writeMicroseconds ()
- Servo.read ()
- Servo.attached ()
- Servo.detach ()
- Serial.begin ()
- Serial.println ()
Código
- Código Arduino
- Interfaz de usuario 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); mientras (! Serial); Phpoc.begin (PF_LOG_SPI | PF_LOG_NET); //Phpoc.begin (); server.beginWebSocket ("web_joystick"); Serial.print ("Dirección del servidor WebSocket:"); Serial.println (Phpoc.localIP ()); servo_x.attach (8); // conecta el servo en el pin 8 al objeto servo servo_y.attach (9); // conecta el servo en el pin 9 al objeto servo servo_x.write (90); servo_y.write (90); } void loop () {// espera un nuevo cliente:PhpocClient client =server.available (); if (cliente) {String data =client.readLine (); if (datos) {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 desde [-100; 100] a [0; 180] ángulo largo_x =(x + 100) * 180/200; ángulo largo_y =(y + 100) * 180/200; servo_x.write (ángulo_x); servo_y.write (ángulo_y); }}}
Interfaz de usuario web (remote_joystick.php) PHP
Arduino - PHPoC Shield
Arduino - Joystick basado en web
WebSocket: null
Esquemas

Proceso de manufactura