Programmera NXT

Förutom NXT-G finns det en hel uppsjö med alternativa programmeringsspråk. LEGO uppmuntrar sina användare att skapa egna språk så det strider inte mot några copyrightavtal och de flesta andra språk är gratis för alla att använda. För att orientera dig i djungeln tar jag upp ett gäng här och dess för- respektive nackdelar.

NXT-G

Låt mig börja med NXT-G, som är det språk som följer med NXTn när man köper den. Det är skapat för att vara enkelt för barn att komma igång med. Samtidigt finns möjligheten att växa in i språket och göra mer komplicerade saker.
Tyvärr är programmet väldigt krävande och datorerna har kraschat för fler än ett lag, med förlorat arbete som följd. Spara ofta!

Fördelar

• Är standard och finns officiell support
• Enkel installation
• Enkelt språk för enkla program

Nackdelar

• Kraschbenäget
• Svårt att göra komplicerade saker
• Dålig översikt över koden

NXC – Not eXactly C

Detta anses av många vara ett nybörjarspråk. Det låter jag vara osagt.
Det påminner naturligtvis mycket om språket C. Fast med en hel del inbyggda metoder.
Länk: http://bricxcc.sourceforge.net/nbc/

Fördelar

• Om man har pillat en aning på programmering med inte fattar objektorientering
• Du behöver inte flasha om NXTn, dvs du kan köra NXC parallellt med NXT-G på samma brick.
• Lätt att installera programmeringsmiljön

Nackdelar

• Inte objektorienterat och stora program tenderar att bli ostrukturerade.

LeJOS

Min personliga favorit! Språket baseras på Java och är i stort sett kompatibelt med Java SE förutom generics och reflections. Dessutom saknas en del av APIet från standard Java, men istället så får man tillgång till en hel uppsjö NXT specifika klasser. Det är ett väldigt rikt robot API som gör att man snabbt kan utveckla stabila program.
Länk: http://lejos.org

Fördelar

• Stort API med många bra klasser
• Objektorienterat vilket gör programmen strukturerade
• Ett bra utvecklingscommunity där man får snabbhjälp (av bland annat mig)

Nackdelar

• Lätt att man missar nån bra klass i det stora APIet
• Svårt att installera utvecklingsmiljön, men har förbättrats senaste åren
• Kräver en omflashning av firmwaren i NXTn

Robolab

Föregångaren till NXT-G. Detta var mitt första riktiga programmeringsspråk. Enkelt att komma igång med och går att göra mer komplicerade saker än i NXT-G. Programmen byggs upp som flödesscheman, precis som i NXT-G.
Koden tenderar dock att bli en aning spaghetti-lik med alla hopp hit och dit. Utvecklingen av programmet är nedlagd, men senaste versionen stödjer NXT och har så vitt jag vet inga buggar. Jag använde Robolab när jag deltog i VM 2009, och jag har sett flera andra lag använda det i internationella tävlingar.

Fördelar

• Grafiskt och enkelt för unga elever att komma igång med
• Kräver inte lika mycket av datorn som NXT-G
• Fungerar jättebra till RCX

Nackdelar

• Programmen växer snabbt och tar upp flera skärmstorlekar
• Tar längre tid att skriva kod grafiskt
• Kräver en omflashning av firmwaren i NXTn?

RobotC

Baseras också på C, men till skillnad från NXC måste man köpa detta programmeringsspråk. Det är företaget Robo matter som står bakom det i samarbete med Carnegie Mellon Robotics Academy. RobotC är ett populärt alternativ i många robottävlingar, och det fungerar till fler plattformar än NXTn: TETRIX, VEX och Arduino.
Det går att ladda ned en 30-dagars trial-version om man vill testa.
Länk: www.robotc.net

glqxz9283 sfy39587stf02 mnesdcuix8
sfy39587stf03
sfy39587stf04