Start programmering med IBMs Mote Runner SDK

Innebygd utvikling har alltid vært litt av et mysterium for meg, med alt lavt nivå kodearbeid og den begrensede funksjonaliteten til verktøyene. Men jeg kan begynne å utforske verden med innebygd utvikling fordi jeg er fascinert av IBMs Mote Runner SDK. Her er hva jeg har lært om Mote Runner, inkludert hva det er og hvordan utviklere kan begynne å programmere med det.

Hva er Mote Runner?

Mote Runner er en SDK som lar applikasjoner samhandle med "Motes." Motene er sensorer som kan oppdage en rekke ting (for eksempel temperatur, fuktighet, lyd, bevegelse og akselerasjon) og rapportere om lesing via trådløse nettverk. Du skriver kode mot Mote Runner SDK i Java eller C # i Eclipse-miljøet, og koden blir omgjort til Mote Runner-bytekode av kompilatoren som skal distribueres til Motes.

Hva du trenger for å komme i gang

På maskinvaresiden av tingene er Motes ganske kompakte og inneholder alt de trenger å kjøre, inkludert den trådløse senderen. Det trådløse nettverket er ganske robust, og produsenten hevder at det har vært i stand til å overføre opptil 500 meter (med siktlinje) uten å ha behov for signaløkning.

I tillegg lager Motes et nettnett som kan strekke seg så langt det trengs ved å legge til nye Motes til distribusjonen. Du trenger en gateway for å koble PC-en til Mote-nettverket. Du kan også koble Motes direkte til en datamaskin ved hjelp av en seriell kontakt, en USB og andre tilkoblinger. Uansett må du være koblet til Motes for å distribuere koden din til dem.

Motene har en kontakt for sensortavlene, slik at du kan blande og matche komponentene dine etter behov. Motene kan drives enten av et par AA-batterier eller via en standard Molex-adapter (i tilfelle de er en del av en større komponent med sin egen strømforsyning).

Du må også blinke en erstatnings firmware på Motes før de vil samarbeide med Mote Runner.

Det du trenger installert

Du må ha Eclipse installert og JRE / JDK 6. Da kan du installere Mote Runner SDK (som for øyeblikket er i beta); dette installerer en Eclipse-plugin som lar deg begynne å programmere for Mote Runner.

I tillegg til APIene du kan forvente og dokumentasjonen, gir den også en Mote-simulator slik at du ikke trenger å jobbe med Mote-maskinvare for å starte programmeringen.

Hvis du planlegger å jobbe i C #, må du enten ha .NET Framework installert eller ha Mono installert (på Linux, Mac osv.). Da jeg prøvde å få Mote Runner SDK installert på Windows 7-maskinen min, var opplevelsen definitivt betakvalitet på "fit and finish", men jeg fulgte instruksjonene uten problemer.

Når jeg leste gjennom dokumentasjonen (som er overraskende bra med tanke på utviklingsstadiet den er i), lærte jeg at den grunnleggende programmeringsmodellen er at applikasjonen din vil trenge å lage en tidtaker, og når timeren utløses, det er når du leser dataene dine og ta de nødvendige tiltak. Det er ingen grensesnitt å implementere som vil bli kalt av systemet. Alternativet til en tidsur er en endeløs sløyfe, men det vil tømme batteriene ganske raskt. Det føles som om det er en kunst å velge riktig tidsforsinkelse for å få den minste oppløsningen som applikasjonen din krever for å maksimere batteriets levetid. Det er en standardkommando for å lese sensordata, og du gir den sensortypen, en sensorforskyvning (i tilfelle det er flere sensorer av samme type), en byte-gruppe for dataene, og en leseforskyvning og lengde. Hvordan du tolker de leste dataene bestemmes av sensoren.

Noe annet jeg leste i dokumentasjonen er at Java eller C # ikke kjøres på JDK eller .NET CLR (eller til og med Mono CLR) som du kanskje er vant til. Som et resultat av Mote Runner-systemet som bruker et bytecode-miljø for kunder, er noen av tingene du kanskje er vant til ikke der eller endret. For eksempel er det ingen 64-biters matematikk, og lengder implementeres som 32-bits, og ints er 16 biter. Det er heller ingen refleksjon, tråder og mer. Du vil se på dokumentasjonen for detaljer.

Etter å ha lest Mote Runner-dokumentasjonen i omtrent 20 minutter, var jeg klar til å skrive en enkel applikasjon. (Dette inkluderer ikke tiden jeg brukte på sensorinstruksjonene for å tolke resultatene.)

Konklusjon

Dessverre er jeg ikke kunnskapsrik nok om innebygd utvikling for å sammenligne Mote Runner med andre systemer, men jeg tror Mote Runner gjør denne typen utvikling enkel nok for hobbyen / entusiasten og gir verktøyene som trengs for den profesjonelle.

Sjekk ut det relaterte galleriet: IBM lanserer Mote Runner for sensorer.

J.Ja

Avsløring av Justin's tilknytning til industrien: Justin James har en kontrakt med Spiceworks for å skrive produktkjøpsguider; han har en kontrakt med OpenAmplify, som eies av Hapax, for å skrive en serie blogger, opplæringsprogrammer og artikler; og han har en kontrakt med OutSystems om å skrive artikler, eksempelskode, etc.

-------------------------------------------------- -------------------------------------

Få ukentlige utviklingstips i innboksen Hold utviklerferdighetene dine skarpe ved å registrere deg på TechRepublics gratis nyhetsbrev for Web Developer, levert hver tirsdag. Abonner automatisk i dag!

© Copyright 2021 | pepebotifarra.com