Programmera LEGO NXT



Relevanta dokument
LEGO NXT Robotprogrammering

Programmera en NXT Robot

Praktisk programmering

LEGO Mindstorm-robot

KUNGLIGA TEKNISKA HÖGSKOLAN. Linefollower. Med LEGO Mindstorms och NXC. Paul Coada Introduktion i datateknik II1310

Laboration i datateknik

Peter Ottosson 31/ Introduktionskurs i datateknik II1310

NXT LEGO-robot laboration Programmering och felsökning av en LEGOrobot

Kevin Lane Kungliga Tekniska Högskolan Introduktionskurs i Datateknik (II1310) TIEDB0. [NXT Legorobot] [Programmering och felsökning]

KUNGLIGA TEKNISKA HÖGSKOLAN KISTA. Lego Linefollower. Få en robot att följa linjen på golvet!

Programmera Lego Mindstormsrobotar

Lego Mindstormprogrammering

Felsökning av mjukvara

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

Labbrapport - LEGO NXT Robot

LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen?

Programmering av LEGO NXT Robot

Laboration - Programmering av LEGO Mindstorm robot

Programmering av en Lego robot

[Introduktion till programmering ]

Robotprogrammering felsökning & analys.

PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

Programmering med NXC Lego Mindstorm

Simon Boström Introduktionskurs i Datateknik

Labrapport: Programmering i NXC Programmera LEGO Maindstorm med NXC

Robotar i NXc. En laboration med Mindstormrobotar. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

Introduktion i programmering med språket NXC

Laboration i datateknik

KUNGLIGA TEKNISKA HÖGSKOLAN. Laboration II1310. Programmera Lego Mindstorm robot i NXC

Laborationsrapport av robotprogrammering

Programmeringslaboration med LEGOrobot

Simon Johansson Introduktionskurs Datateknik 1310

PROGRAMMERING AV LEGO-ROBOT VIA NXC

KUNG. TEKNISKA HÖGSKOLAN. Laboration. Programmering av LEGO-robot

Introduktion till programmering med hjälp av Lego Mindstorm

Programmering av LEGO NXT Robot

Programmering av LEGO NXT robot Laborationsrapport för programering av robot för att följa svartmarkerad linje på maken

Felsökande av en Lego Mindstorm robot

Menys webbaserade kurser manual för kursdeltagare. Utbildningsplattform: Fronter

Syftet med en personlig handlingsplan

Utveckla arbetsmiljö och verksamhet genom samverkan

Labbrapport LEGO-robot linefollower

Vi skall skriva uppsats

Hävarmen. Peter Kock

Hur du arbetar med VFU-portfölj i Mondo. en lathund för student

Boken om Teknik. Boken om Teknik är en grundbok i Teknik för åk 4 6.

ELEV- HANDLEDNING (Ansökan via webben)

Det flippade klassrummet hur uppfattas det av eleverna?

Satsa på en bra utbildning så satsar vi på dig! Välkommen! Ove Lindberg, Rektor

myabilia En introduktion

Tema 3 Pythagoras - Årskurs 4

Individuellt Mjukvaruutvecklingsprojekt

Nalle Puh`s verksamhetsplan VT 2010 HT 2011

Två konstiga klockor

FRÅN A TILL Ö LäraMera Ab / och Allemansdata Ab / FRÅN A TILL Ö

Systematiskt kvalitetsarbete

Tränarguide del 1. Mattelek.

Efter att du har installerat ExyPlus Office med tillhörande kartpaket börjar du med att göra följande inställningar:

[Introduktionskurs i Datateknik]

Verksamhetsplan HT -09 och VT -10

Intervjumall. Datum: Intervjuare: Kandidatens namn: Kandidatens uppgifter: Växel: (5)

Gruppindelning JUNIOR

Min fråga är, när ni driftar HF-don bränner ni in rören i 100 timmar på 100% innan ni eller kunden börjar dimmra?

Sammanfatta era aktiviteter och effekten av dem i rutorna under punkt 1 på arbetsbladet.

I några frågor som följer ska du ringa in ditt svar utifrån hur väl påståendet stämmer överens med din uppfattning på skalan 1-6

Varför är det så viktigt hur vi bedömer?! Christian Lundahl!

ÄT RÄTT NÄR DU TRÄNAR

Järbo Garn AB Garn, Tillbehör & Gratis beskrivningar Året som gått

FIRST LEGO League. Göteborg 2012

Södervångskolans mål i svenska

Gruppenkät. Lycka till! Kommun: Stadsdel: (Gäller endast Göteborg)

Lathund, procent med bråk, åk 8

Välkommen till Arbetsförmedlingen! Information till dig som är arbetssökande

POL 102 VT07, Polska, språkfärdighet I

Medarbetarenkäten 2016 handledning för förbättringsarbete

Kiwiböckerna metod och begrepp

Dash and Dot. Svårighetsgraden bestämmer du själv genom att välja någon av av de 5 appar som är kopplade till Dash & Dot.

Handledning för digitala verktyg Talsyntes och rättstavningsprogram. Vital, StavaRex och SpellRight

Har vi lösningen för en bättre hemtjänst? Självklart.

Det är bra om även distriktsstyrelsen gör en presentation av sig själva på samma sätt som de andra.

Jo, Den Talande Boken har så många möjligheter inbyggda, att den kan användas från förskoleklassen och ända upp på högstadiet.

Information till elever och föräldrar i skolår 5

Minoritetsspråk Åk 9

First Lego League. filurerna 2009

En grafisk guide till vår identitet

Instruktioner för beställning och kontoadministration för abonnenter av inlästa läromedel

Förskolan är till för ditt barn

Labbrapport. Introduktionskurs i datateknik (II1310) Stefan Dalarsson,

Program Handledning Förutsättningar: Träningar Teori

Introduktion till Open 2012

Kvalitetsrapport Så här går det

Förskolan Vårskogen, Svaleboskogen 7. Plan mot diskriminering och kränkande behandling

Du ska nu skapa ett litet program som skriver ut Hello World.

Utvärdering APL frågor till praktikant

LPP RÖRELSE, LEK OCH HÄLSA ÅR 1-3

Läsfixarna. Idrott inne. Melinda får ta med en bok eller en sak hemifrån att visa och berätta om.

Uppdragsbeskrivning. Digital Skyltning. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info.

Manual. Mini. En Joystickmus för styrning av datorer Point-it! Mini USB Point-it! Mini USB Kula

Diskussionsfrågor till version 1 och 2

Transkript:

KUNGLIGA TEKNISKA HÖGSKOLAN Programmera LEGO NXT Felsökning av NXC för LEGO NXT Sam Nydahl [07092012] snydahl@kth.se Introduktionskurs i Datateknik II1303

Sammanfattning Vi hade till uppgift att felsöka en NXC kod till LEGO-roboten för att få den att följa en svart linje med hjälp av ljussensor med hjälp av programmet BricxCC. Syftet var att öva parprogrammering och att få en första inblick i C-kodning för de som aldrig tidigare gjort det. Vi hade fyra timmar till godo under labbtillfället men vi hade tillgång till mjukvaran, kod-filen och en nybörjarguide för NXC. Vi inledde med att testa roboten, för att sedan granska koden och se vad som behövde kommenteras bort, för att slutligen få roboten att följa linjen och skriva ut våra namn vid kontakt med väggen. ICT KUNGLIGA TEKNISKA HÖGSKOLAN Sida 2 av 6

Innehållsförteckning 1. Inledning... 1.1 Bakgrund... 1.2 Syfte och målsättning... 2. Genomförande... 3. Resultat... 5. Analys... 5 5. Diskussion... 6 Referenser Mall rapport.docx bilda.kth.se... 6 Bilagor... 6 ICT KUNGLIGA TEKNISKA HÖGSKOLAN Sida 3 av 6

1. Inledning Vi hade till uppgift att felsöka en LEGO-robot som var programmerad i NXC så att den till slut skulle kunna följa en svart linje på golvet med hjälp av ljussensorn. Uppgiften skulle genomföras i par för att minska risken att göra fel och ge möjligheten att ta lära från varandra. 1.1 Bakgrund Programmering utgör en stor del av vad man kommer behöva under studierna på ICT-skolan och i arbetslivet. Kunskaperna kommer att tillämpas redan i nästkommande kurs, II1300, då man ska programmera roboten från början till slut för att sedan tävla mot varandra. Även förmågan att samarbeta med andra studenter eller kollegor, i det här fallet i form av parprogrammering, är viktig för fortsatt framgång. 1.2 Syfte och målsättning Syftet med laborationen var att få en inblick i hur man kan programmera och testa ett vanligt arbetssätt under liknande projekt. Jag ville få en introduktion till att programmera LEGO-Robotarna, så jag har en förståelse för hur man ska ta sig till väga när det ska göras i II1300. Kravet för roboten var att den med hjälp av ljussensorn skulle följe en svart linje på golvet och med hjälp av trycksensorn skulle den känna av vid kontakt med väggen och skriva ut våra namn på LCD-skärmen. 2. Genomförande Labtillfället började med en introduktion av Lab-PM, dvs. vilka krav det fanns på roboten när koden var felsökt och fungerade. Vi använde Felix Ringbergs dator där programvaran, BricxCC, redan var nedladdad från Bilda, likaså kodfilen. Det ända vi behövde installera var drivrutinerna. Vi använde oss, som hänvisat, av tekniken parprogrammering där man sitter en bestämd tid vid datorn och programmerar medan den andra sitter bredvid och granskar vad som görs, sedan byter man av. Detta leder till färre felskrivningar och ofta bättre resultat. Vi började labben med att testköra roboten för att se hur den betedde sig med den redan inlagda koden. Sedan började vi granska koden utan att förhastat kommentera bort kod. När vi hittade felaktig kod tog vi bort den och testade med roboten för att se om vi fick önskad förändring. Detta gjorde vi tills att roboten gjorde som planerat. ICT KUNGLIGA TEKNISKA HÖGSKOLAN Sida av 6

3. Resultat Radnummer Ny Kod Kommentar 35 Felix, Sam Våra namn i stringen groupmembers. 5 (8*i) Tog bort -16 för att namnen skulle hamna på robotens LCD-skärm. 11 //dance(); Kommenterade bort den irrelevanta dance funktionen, då den förde bort roboten från linjen. 68 (IN_3) Ljussensorn sitter i IN_3 och inte IN_1. 86 SpeedFast Så att roboten inte bara svänger åt ett håll. 97 SpeedSlow Så att roboten inte bara svänger åt ett håll.. Analys Vi hittade snabbt alla fel utom ljussensorns input, vilket var det första vi borde kollat, att allt satt som det skulle. [groupmember] var stringen som lagrade namnen för att sedan skrivas ut av printnamestoscreen där den skrevs ut på de redan fördefinierade raderna på robotens LCD-skärm. Dance-funktionen var den funktion som först exekverades, vilket fick roboten att under tre sekunder dansa så den fick kommenteras bort för att programmet skulle följa kraven. SpeedFast och SpeedSlow, var tvungna att inverteras för att roboten inte skulle svänga runt i cirklar, utan svänga fram och tillbaka med små marginaler. ICT KUNGLIGA TEKNISKA HÖGSKOLAN Sida 5 av 6

5. Diskussion Det var första gången jag programmerat parvis, vilket jag var innan labben inte trodde skulle fungera så bra i bra i början. Något jag tar tillbaka i efterhand, processen fungerade utomordentligt. Det var både produktivt och lärorikt att parprogrammera, definitivt något jag kommer använda mig av och dra nytta från. Programvaran BricxCC fungerade smärtfritt både att installera och använda. Att läsa NXC koden var till en början något komplicerat men man kom snabbt in i det, kan bero på att jag skrivit i C förut och även läst guiden som tillhandahölls i bilda. Referenser Mall rapport.docx bilda.kth.se Labb PM kth.se/social Programming LEGO NXT Robots using NXC.pdf bilda.kth.se Bilagor ICT KUNGLIGA TEKNISKA HÖGSKOLAN Sida 6 av 6