Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Arduino - webgebaseerde joystick

Componenten en benodigdheden

Arduino UNO
× 1
PHPoC WiFi Shield voor Arduino
× 1
Seeed SG90 microservomotor
× 2
Jumperdraden
× 1

Over dit project

Als je een beginner bent, kun je het volgende leren:

  • Arduino - servomotor.
  • Arduino - Joystick

We kunnen alles regelen met dit project, maar ik nam de servomotoren als voorbeeld.

Demo

Bedrading

  • Stapel PHPoC WiFi-schild of PHPoC Shield op Arduino
  • Sluit pin GND en VCC van twee servomotoren aan op respectievelijk GND en 5V van Arduino. (pin IOREF van arduino kan worden gebruikt als 5V-pin)
  • Sluit pinsignalen van twee servomotoren aan op respectievelijk pin 8 en pin 9 van Arduino.

Gegevensstroom

Webbrowser ---> PHPoC WiFi Shield ---> Arduino

De web-app in de webbrowser stuurt de coördinaat (na schaling) van de aanraak- of klikgebeurtenis naar PHPoC-schild via WebSocket. Bij ontvangst van de gegevens geeft PHPoC-shield deze automatisch door aan Arduino. Arduino bestuurt twee servomotoren volgens de gegevens die zijn ontvangen van PHPoC Shield.

Let op: PHoC-shield heeft een ingebouwd programma om gegevens van webbrowser naar Arduino door te geven. Daarom hoeven we ons er geen zorgen over te maken.

Wat we moeten doen

  • Wifi-informatie instellen voor PHPoC-schild (SSID en wachtwoord)
  • Upload nieuwe gebruikersinterface naar PHPoC-schild
  • Schrijf Arduino-code

Wifi-informatie instellen voor PHPoC Shield

Zie deze instructie.

Upload nieuwe web-UI naar PHPoC Shield

  • Download PHPoC-broncode remote_joystick.php (in het codegedeelte).
  • Upload het naar PHPoC-shield met behulp van PHPoC debugger volgens deze instructie.

Schrijf Arduino-code

  • Installeer PHPoC-bibliotheek voor Arduino op Arduino IDE (zie de instructie )
  • Zie broncode in codesectie.

Probeer het

  • Klik op de seriële knop op Arduino IDE om het IP-adres te zien.
  • Open webbrowser, typ http:// replace_ip_address /remote_joystick.php
  • Klik op de knop Verbinden en test het.

Gelijkaardig project maar ander hardwareplatform

Dit project doet hetzelfde, maar het gebruikte een ander hardwareplatform

De beste Arduino-starterkit voor beginners

Zie de beste Arduino-kit voor beginners

Functiereferenties

  • Arduino - Servobibliotheek
  • Servo.attach()
  • Servo.write()
  • Servo.writeMicroseconds()
  • Servo.read()
  • Servo.attached()
  • Servo.detach()
  • Serial.begin()
  • Serial.println()

Code

  • Arduino-code
  • Webgebruikersinterface (remote_joystick.php)
Arduino-codeArduino
#include "SPI.h"#include "Phpoc.h"#include PhpocServer server(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("WebSocket-serveradres:"); Serial.println(Phpoc.localIP()); servo_x.attach(8); // hecht de servo op pin 8 aan het servo-object servo_y.attach (9); // hecht de servo op pin 9 aan het servo-object servo_x.write (90); servo_y.write(90); }void loop() { // wacht op een nieuwe client:PhpocClient client =server.available(); if (client) { String data =client.readLine(); if(data){ int pos =data.indexOf(':'); lange x =data.substring(0, pos).toInt(); lange y =data.substring(pos+1).toInt(); Serieel.print("x:"); Serie.print(x); Serieel.print(", y:"); Serieel.println(y); // schaal van [-100; 100] tot [0; 180] lange hoek_x =(x + 100) * 180 /200; lange hoek_y =(y + 100) * 180/200; servo_x.write(hoek_x); servo_y.write (hoek_y); } }}
Webgebruikersinterface (remote_joystick.php)PHP
Arduino - PHPoC Shield

Arduino - webgebaseerde joystick

WebSocket:null

Schema's


Productieproces

  1. Arduino Spybot
  2. FlickMote
  3. Zelfgemaakte tv B-Gone
  4. Hoofdklok
  5. Met joystick bestuurde RC-auto
  6. Joystick-spel
  7. Vind mij
  8. Arduino Power
  9. Arduino Nano:bedien 2 stappenmotoren met joystick
  10. Arduino - webgebaseerde mp3-speler
  11. Tech-TicTacToe