Reginald: een UDP-toezicht bot; besturing via het Internet (6 / 26 stap)

Stap 6: Reginald van Code


Er zijn twee afzonderlijke programma's aan dit project. De Arduino (Server)-kant en de kant van de GUI (Client).

Kortom; om met succes het uitvoeren van de code voor Reginald, moet u het volgende bereiken:

  • Download alles vereist. (Arduino en Processing IDE, het .zip dossier op dit Instructable pagina en de bibliotheken)
  • Configureren van de verwerking door het plaatsen van de bibliotheken in de juiste map in de programmamap van verwerking
  • Configureren van de schets voor de GUI
  • Zitten kundig voor code uploaden naar de Arduino

Voor de GUI, u zal vereisen de verwerking IDE (het ziet er vertrouwd, de Arduino IDE is gebaseerd op de verwerking van IDE), de ControlP5-bibliotheek en de Hypermedia-bibliotheek.

Ik neem aan dat je al hebt de Arduino IDE, .zip op dit instructable pagina en volg de links voor het downloaden van de juiste SW downloaden:

Verwerking IDE:
http://processing.org/download/

ControlP5 bibliotheek:
http://www.sojamo.de/libraries/controlP5/

Hypermedia bibliotheek (Klik op "Processing library"):
http://ubaa.net/shared/processing/UDP/

Over de verwerking en de bibliotheken:

Verwerking is een geweldige manier om programma's openen van onafhankelijke Vensters te vangen gebruikersgebeurtenissen gemakkelijk te maken. Nadat een programma is voltooid, is het een triviale zaak exporteren van het programma naar een uitvoerbaar bestand. Er zijn vele manieren om vast te leggen van de interactie van de gebruiker.

De ControlP5 bibliotheek helpt bij het creƫren van de verschillende knoppen en widgets die zijn gebruikt in de GUI die ik heb gemaakt. ControlP5 is een superieure bibliotheek voor de creatie van de GUI. Het is makkelijk te gebruiken, zeer scherp en uitgebreid. Met verwerking en ControlP5, kan men gemakkelijk maken een krachtige en feature rijke gebruikersinterface.

De Hypermedia-bibliotheek verwerkt al het UDP-communicatie.

Wat moet ik doen met de bibliotheken?

Nadat u alles hebt gedownload, moet u de twee bibliotheken plaats op de juiste locatie zodat verwerking ze vindt. Unzip de bibliotheken (Hypermedia zal downloaden als een "udp.zip"-bestand) en volg het pad:
processing-X.X.X\modes\java\libraries
binnen de verwerking-programmamap in uw downloads. De ' x vertegenwoordigen het versienummer van de verwerking van je hebt gedownload. Plaats hier de mappen voor de bibliotheken.

Nu het configureren van de schets voor de GUI:

Het configureren van de schets voor de GUI, alles wat men moet doen is om te grijpen van de map: "GUIClient" van het .zip bestand en zet die ergens op zijn of haar computer.
Binnen de verwerking IDE, kies een schets openen en blader naar de map "GUIClient". Invoeren van de map en selecteer de schets binnen. Een nieuw venster van verwerking moet laden met code. Voer het programma.
Na het kiezen van "Looppas", kan een fout optreden binnen de Processing console met betrekking tot het programma niet in staat om de aansluiting correct geopend. Dit kan worden verwacht; Sinds het juiste IP-adres en poort waarschijnlijk nog niet ingevoerd nog.

Reginald te coderen:

Reginald wil niet worden gecontroleerd door gewoon iedereen, zodat hij met zijn eigen wachtwoord wordt gecodeerd. Zie foto's 4 en 5 op een demonstratie van dit.

Wanneer u de opdracht "wake" verzendt, ziet Reginald dit als een verzoek om toegang. Op dat punt, vindt hij uw IP-adres en poortnummer waaruit u hebt verzonden en stuurt een groet naar u terug. Op dit punt, zal hij een wachtwoord voor toegang aanvragen. Voer het juiste wachtwoord en hebt controle. U zult echter geweigerd als het wachtwoord onjuist is.

Als u te controleren Reginald vanaf een externe locatie probeert, houd in mening u ontvangt mogelijk geen Reginald van begroeting en bevestiging van toegang. Dit is omdat als u met de wifi van een school of bedrijf verbonden bent, de firewall voor dat wifi kan blokkeren de berichten die Reginald probeert om u te sturen. Echter dit geen invloed op functionaliteit. Als u gewoon in "wake", gevolgd door uw wachtwoord invoert, krijgt u toegang binnen 15 seconden. Reginald zal eenvoudig veronderstellen dat u hebt de pakketten ontvangen. Dit is een van de nadelen aan UDP in tegenstelling tot TCP. Zorgt TCP ervoor dat het pakket is ontvangen, overwegende dat UDP gewoon het pakket stuurt en niet omkijken. Nochtans maakt dit gebrek aan controle UDP veel sneller en lichtgewicht, dievan ik houd.

Tijden als deze zijn waar de "vergrendeling"Switch is handig. Als ik moest sturen "wakker" met de "vergrendeling Switch" uitgeschakeld, drukt u op de toetsen 'w' en 'a' zou sturen opdrachten. Dit zou kunnen verwarren Reginald, en u zou worden ontzegd proberen uw wachtwoord op te geven.

BEWERKEN, 6 maart 2013 ***

Verwerking heeft sindsdien hun SW uit 1.5.1 aan de 2.0 Beta bijgewerkt. Als uw versie 2.0 of hoger, gebruikt u de GUIClient2.0 binnen het .zip-bestand. Het enige verschil is de sleutel vastleggen methode, u kunt lezen over het hier:
http://processing.org/reference/Key.html

Gerelateerde Artikelen

Praten met uw apparaat via het internet

Praten met uw apparaat via het internet

Je spreekt, en het apparaat zal luisteren... zelfs als uw apparaat halverwege over de hele wereld is!Dit instructable leert u hoe u met een systeem van de stem-erkenning op basis van de Intel RealSense-camera rustgevende opdrachten via het internet v
Servo's besturen via het Internet via Arduino met Teleduino

Servo's besturen via het Internet via Arduino met Teleduino

servo's hebben veel toepassingen en kan een heleboel plezier te spelen met. Iets dat kan hopen van plezier is het nemen van controle van maximaal zes servo's via het internet! Veronderstel enkel de mogelijkheden.Dit proces is echt eenvoudig met behul
Lichtniveau lezen via het Internet via Arduino met Teleduino

Lichtniveau lezen via het Internet via Arduino met Teleduino

Wij hebben allemaal het gedaan. U verlaat het huis voor werk in de ochtend en vraag je je af als je links de garage licht op. Wilt u geen zorgen over te maken, en dan krijg in de problemen met je vrouw/man/vriendin/vriend/kamergenoot voor klokken op
Aanpassen van uw serverruimte Apache, en hoe om het te bekijken via het internet.

Aanpassen van uw serverruimte Apache, en hoe om het te bekijken via het internet.

In dit, mijn eerste Instructable, ik zal je laten zien een voortzetting van dit instructable, "Maak uw Computer naar een Server in 10 minuten." In deze voortzetting, zal ik je leren over het aanpassen van de pagina van de server die wordt weerge
Voice Control ESP8266 (WEMOS D1mini) via het Internet (zonder MQTT)

Voice Control ESP8266 (WEMOS D1mini) via het Internet (zonder MQTT)

Ik wil graag dingen eenvoudig...Hier is een eenvoudige manier om te controleren uw ESP uit via het internet zonder het knoeien met teveel code of langzame MQTT makelaarsStap 1: onderdelen:1. Wemos d1 mini2. TP Link router3. iedere smartphone (ik gebr
Het delen van gegevens van temperatura van DHT22 via het Internet met Xively

Het delen van gegevens van temperatura van DHT22 via het Internet met Xively

het web is zeker veranderd veel dingen, zoals de beschikbaarheid van gegevens op verzoek snel en gemakkelijk. Bijvoorbeeld, is om te weten van de temperatuur dat is out there, beschikbaar via verschillende websites gewijd, waarmee ook prognoses op ko
SMS van de Arduino te verzenden via het Internet met ENC28J60 en Thingspeak

SMS van de Arduino te verzenden via het Internet met ENC28J60 en Thingspeak

Dit Instructable wordt uitgelegd hoe een SMS van een Arduino met behulp van het Internet. Er zijn vele manieren om de aanpak van dit en ik zal uitleggen dat een van de verschillende methoden om deze taak te volbrengen.Enkele belangrijke punten die no
Hoe om echte mensen via het internet te ontmoeten

Hoe om echte mensen via het internet te ontmoeten

Hallo daar!Zal ik niet vertellen u hoe te halen van meisjes in bars, noch hoe te kleden of handelen als iemand aantrekkelijker dan je bent...Ik vond een interessante manier om in contact met personen van het echte leven gewoon door te surfen op het w
'S werelds eerste afstandsbediening mens via het Internet

'S werelds eerste afstandsbediening mens via het Internet

Ik heb onlangs bestudeerd dit ding heet elektrische spier stimulatie (EMS), die in principe gebruik van elektriciteit maakt te veroorzaken van de spieren om te bewegen. Na het leren over dit besloten heb ik om te nemen in mijn Hackster I.O. project d
Een LED voor controle op het Internet via Arduino met Teleduino

Een LED voor controle op het Internet via Arduino met Teleduino

er is iets cool over het maken van een LED-gloed via een Arduino. Wat kon maken dat zelfs koeler? Hoe over het maken van die LED gloed van overal in de wereld via het internet? Nu zijn we talkin '!Dit proces is echt eenvoudig met behulp van de schets
IoT - een Raspberry Pi Robot beheren via internet met HTML en shell scripts alleen

IoT - een Raspberry Pi Robot beheren via internet met HTML en shell scripts alleen

(Als je deze Instructables, vergeet dan niet te stemmen (boven: rechts hoek vlag). het is concurreren op INTERNET of THINGS en automatisering wedstrijden. Heel hartelijk bedankt! ;-)In dit instructable, zullen we het maken van een volledig gecontrole
DIY IoT apparaten verbinden met het Internet met pfodApp

DIY IoT apparaten verbinden met het Internet met pfodApp

Hoe te maken thuis en weg via de zelfde verbindingDeze instructabe wordt beschreven hoe om uw WiFi pfodDevice, IoT, verbonden met het Internet. Het toont ook hoe de pfodApp lost het probleem van niet zijnde kundig voor verbinden met uw lokale apparaa
Nemen van elementaire elektronica met het Internet (IoT)

Nemen van elementaire elektronica met het Internet (IoT)

Na het experimenteren en plezier met IoT met behulp van een Vonk Core, besefte ik dat kon overigens een serie tutorials omhoog op Instructables. Dus dit instructable is de eerste van een reeks instructables, waarin ik ga u laten zien hoe uw dagelijks
Het Internet van Led Wall

Het Internet van Led Wall

Hier is de mooie kleine LED muur die ik heb met Wio knooppunten gemaakt. Eenieder kan controleren via het internet.Er zijn 30 LED bars op het bord heeft elke staaf tien geleid. Eenieder in elke waar elke bar kunt houdt hij/zij met de API van Wio link