Mens nogle af os bruger vores telefoner til at kommunikere eller spille fantastiske spil, er der dem, der tager videnskab og fritid til næste niveau. Mike Partain er en af disse mennesker. Ved hjælp af et off-the-shelf-Lego NXT-robotik-sæt, en Motorola Droid og en hel spand med opfindsomhed og smarts har Mike tilføjet sensorer, som robotik-kittet manglede - kamera, GPS og kompas. Tryk på pausen for at læse om det med Mike's egne ord, et link til kildekoden (særlig tak Mike!), Og et par videoer, der ser forskellige synspunkter fra Droid's blinkende øje.
Vi nåede frem til Mike for en lidt forklaring om dette projekt, fordi vi ærligt talt havde brug for ting, der blev bragt ned til et niveau, vi kunne forstå lidt bedre. Han var hjælpsom nok til at give os lowdown, som er her i sin helhed.
Et af mine ønsker om hele tiden var at have min helt egen robot. Og nu har Lego gjort det at lege med robotter praktisk med Lego NXT Robotsæt. Disse sæt følger Legos ånd, idet de er lette, billige og sjove at samle i flere forskellige hjul- og gåroboter. Sættene inkluderer en hjerne, der kontrollerer tre motorer og op til 4 sensorer. Men hvad der manglede var et fjernkamera, et kompas og en GPS. Gå ind i Motorola Droid eller mest en hvilken som helst Android-enhed for den sags skyld. Da Android-telefonen indeholder disse avancerede sensorer og er baseret på Java og open source, regnede jeg med, at det ville være en enkel sag at "tråde" Droid op til min computer og overvåge dens sensorer side om side med min Lego Robots-software. Jeg var ikke for langt væk. Jeg kæmpede et par dage med at udarbejde den nødvendige kode for at afkode kameraets preview-billede, men alt andet gik temmelig glat. I sidste ende havde jeg et kæmpe smil på tværs af mit ansigt, da min Lego-robot turdede ud over det store stue-gulvtæppe, hvor jeg kontrollerede det eksternt fra kun det billede, jeg kunne se på min computerskærm. Det er ikke roboten, der går tabt i rummet, men ikke desto mindre kan den åbne mange unge sind for, hvordan deres fremtid kan se ud.
Jeg skal bemærke, at softwaren ikke er "færdig" kvalitet. Det er et bevis på koncept, og det fungerer. Jeg forbedrer eller fuldfører måske aldrig eller færdiggør det, så jeg gør det tilgængeligt som det er uden licens eller begrænsninger (eller løfter).
Der er 3 stykker software;
Android Java-koden (droidSense). Denne kode er en simpel TCP-server, der leverer rå udekodede billeddata (fra kameraeksempel, sensordata og GPS-data til enhver klient).
Stand alone. Net-programmet (AssClient), der kommunikerer med Droid Java-serveren, afkoder de rå billeddata og viser billedet samt rå sensor og GPS-data.
En Microsoft Robotics studio-service (AndroidCameraService), der giver et generisk WebCam-billede til brug af et visuelt eller standard MRDS-program.
Java-stykket kører på Droid (der er ingen brugergrænseflade, det viser bare preview-overfladen, mens du kører, brug 'force stop' for at dræbe det), og du kører derefter et hvilket som helst stykke på pc'en (jeg har ikke prøvet at køre dem begge på samme tid, men jeg formoder, at det muligvis fungerer).
Awesome sauce lige der. Her er de videoer, Mike inkluderer:
Youtube-link til StandAlone.wmv
YouTube-link til AndroidCameraService.wmv
Og til sidst, hvis du har knowhow og tid, er her et link til kildekoden Mike var venlig nok til at give. Tak igen Mike, dette er en af de sejeste ting nogensinde!