Reginald: en UDP-övervakning bot; kontroll via Internet (2 / 26 steg)
Steg 2: Makro syn på projektet
Makro beskåda av Reginald
Huvudbilden är från ett stort perspektiv av hur Reginald fungerar.
Den grå rutan i nedre vänstra hörnet är fysiska roboten, ligger hemma.
Den grå rutan i nedre högra hörnet är klientprogram. Det är ett GUI som tar emot kommandon från användaren och skickar kommandon till Reginald. Det grafiska Gränssnittet körs på en dator.
Nätverk
Märke att det finns två olika sätt att ansluta till Reginald. Detta beror på att det är bra att ha två olika sätt att göra anslutningen beroende på omständigheterna.
- Det finns en direkt anslutning från GUI (klient) till Reginald (Server). Detta är under de omständigheter som Reginald ligger mycket nära användaren. Om användaren använder GUI (klienten) på en bärbar dator, kan sedan Reginald skapa sin egen trådlös "hotspot" om du kommer (men det är inte en verklig hotspot eftersom användaren inte kan ansluta till internet). På denna punkt du kan ansluta direkt till Reginald och kontrollera honom.
- Den andra metoden för anslutning är mycket mer komplex, och där kunskap om nätverk är kritisk. Låt oss anta att användaren är på en dator i skolan medan Reginald är på hemmaplan för enkelhetens skull. Reginald på denna punkt är utnyttja Wireless Bridge visas och är ansluten som en trådlös enhet i hemnätverket. Reginald har en specifik IP-adress och Port i nätverket. Primära hem routern är konfigurerad med en Port Forward undantag som en UDP begär på den motsvarande Port Reginald går till sa Reginald. Användaren kan köra GUI (klient) programmet på datorn i skolan. Vid denna punkt, användartyper i den externa IP-adressen för den primära hem routern och Port Reginald ligger i programmet. Användaren skickar sedan ett kommando genom att interagera med gränssnittet. Kommandot får skickas via internet och till primära hem routern. Primära hem routern ser den angivna porten och konfigureras korrekt, skickar kommandot trådlöst till Trådlös brygga på Reginald. Trådlös brygga händer kommandot till Arduino och Reginald svarar på rätt sätt.
Det är värt att nämna att den sistnämnda anslutningsmetoden är valfria. Läsaren får besluta att gå med en enklare strategi och endast använda direkt anslutning. Den uppenbara nackdelen med detta är att användaren inte kommer att kunna kontrollera Reginald var som helst, endast när Reginald's hotspot är inom spänna av användaren kommer användaren att kunna kontrollera Reginald.
Routrarna inte komplicera projektet och göra det skrymmande?
Jag inser att använda routrar på Reginald är en skrymmande i bästa; Alternativt kunde jag har använt en Trådlös Övervakningskamera ansluten direkt till den primära hem routern och använt ett wifi som sheild för Arduino även ansluta till den primära hem routern. Detta skulle ha skära ut "mitten mannen" (routrar) projektet ut och jag kunde ha gjort Reginald betydligt mindre; Utöver detta är använder routrarna i min design svårare att genomföra.
Varför har jag använder routrar?
Orsaken bakom routrar är att ett av mina mål är enkelhet i användarens upplevelse. Om användaren vill kontroll Reginald, hemma från skolan, och beslutar att ta Reginald till sin vänner hus att visa upp: användaren helt enkelt frikopplar kamera, makt och Arduino från Wireless Bridge och ansluts till Netgear Router. Användaren ansluter till Netgear router och det är det! Om jag vore att genomföra en trådlös nätverken kamera och wifi sköld i min design, användaren vill utföra följande för att utföra samma scenario: föra Reginald kompis; få alla nätverksinformation hemma-från vän; konfigurera kameran till nätverket. komma åt Reginalds kod. ändra konfigurationen för web och ladda upp ny skiss till styrelse. Anslut sedan.
Vara medveten om när jag hänvisar till routrar:
Detta projekt använder faktiskt tre routrar. Den första som jag kommer att hänvisa till som "Netgear" routern ligger på Reginald. Jag vill inte prata om det så mycket, det används bara för direkt anslutning till Reginald om du förde honom utanför hemnätet. En enkel inställning.
Andra och tredje routrarna prata med varandra. De är vad ställa in meddelande till någonstans. Jag hänvisar till en Router som en "Wireless Bridge" som ligger på Reginald. Jag kallar det en trådlös brygga eftersom det är en klient till tredje routern: "Primära hem routern", kan jag också kallar den tredje routern en "Access Point" (AP). Primära hem routern är routern är ansluten till modemet hemma vilket ger en wifi internet-anslutning i ditt hem. Trådlös brygga är en klient som fungerar internet från primära hem routern till enheter ansluta till sig själv (i detta fall: Reginald).
Senare kommer jag att tala om hur Trådlös brygga fungerar.
Intressanta noteringar:
Också att märka att kameran inte samverkar med Arduino alls. Kameran drivs med PCB-kortet och ansluten till Trådlös brygga eller Netgear Router. Användaren kan komma åt kameran från var som helst på den punkten.
Det är också viktigt att inse att det enda batteriet är ansluten till är PCB-kortet. Detta beror på att PCB distribuerar kraften till allt annat. Inte alla komponenter som kräver lika mycket makt. Båda routrarna kräver 12 volt; Arduino och kringutrustning alla kräver 7 volt; och kameran kräver 5 volt. PCB-kortet måste rymma alla dessa delar.