Laborationsinstruktioner LEGO MINDSTORMS NXT
Total Page:16
File Type:pdf, Size:1020Kb
Institutionen för IT och medier Sid 1 av 13 Magnus Eriksson 2008-10-15 E-post [email protected] Laborationsinstruktioner LEGO MINDSTORMS NXT Namn deltagare 1: _____________________________________ Namn deltagare 2: _____________________________________ Godkännandedatum:_________________ Signatur: __________ MITTUNIVERSITETET Sid 2 av 13 Laborationsinstruktioner NXT 2008-10-15 Innehåll 1. Inledning ...............................................................................................................2 2. Inventering, uppackning.......................................................................................3 3. Batteriladdning......................................................................................................4 4. Programstart..........................................................................................................4 5. USB-anslutning.....................................................................................................4 6. Kontroll av firmware.............................................................................................4 7. Bygg en legorobot.................................................................................................5 8. Gör program enligt steg-för-steg-instruktioner.....................................................5 9. Bluetooth-anslutning av PC till NXT ...................................................................6 10. Sensorer och signaler: Bygg ett mätinstrument ....................................................7 11. Programflödesstyrning: Villkor, slingor och väntan.............................................8 12. Felsökning med hjälp av ljud och display.............................................................8 13. Multitrådning ........................................................................................................8 14. TÄVLINGSUPPGIFT ..........................................................................................9 15. Variabler ...............................................................................................................9 16. My block...............................................................................................................9 17. Bluetooth-kommunikation mellan två robotar....................................................10 18. Filer för att överför data mellan PC och NXT ....................................................10 19. Kontrollera att du har förstått alla block och funktioner.....................................10 20. Frivillig uppgift: Testa någon tredjepartssensor eller annat tillbehör, eller studera möjligheten att bygga en egen sensor .................................................................10 21. Frivillig uppgift: Testa eller läs om någon annan programvara..........................11 22. Förberedelse inför fördjupningsprojektet ...........................................................12 23. Synpunkter ..........................................................................................................13 1. Inledning Under denna uppgift ska du få bekanta dig med Lego Mindstroms NXT software. Detta är en bantad version av programmet Labview, som är ett vanligt förekommande verktyg inom näringslivet för insamling, presentation och analys av mätdata från mätinstrument och givare, för automatiserade mätsekvenser, för styrteknik, för processimulering, mm. Labview har ett grafiskt programmeringsspråk som kallas G. Den version av språket som används i Lego Mindstorms NXT software kallas därför NXT-G. Målet med denna uppgift är: • Att du ska lära dig använda samtliga programblock och funktioner i NXT-G, och förstå de grundläggande principerna för programmering. • Att du i slutet av laborationsövningen ska kunna ge ett preliminärt förslag till fördjupningsprojekt baserat på NXT, som du därefter ska kunna genomföra självständigt. • Att du ska bli inspirerad till vidare studier inom datateknik, elektronik och andra ingenjörsämnen! Mittuniversitetet – Magnus Eriksson MITTUNIVERSITETET Sid 3 av 13 Laborationsinstruktioner NXT 2008-10-15 Som förberedelse rekommenderar vi att du tittar och lyssnar igenom följande introduktionsföreläsning: www.ortop.org/NXT_Tutorial/html/essentials.html Uppgifterna utföres lämpligen i grupper om två personer. Redovisning av denna laboration sker muntligen för handledaren genom demonstration av några av robotarna, samt genom uppvisande av anteckningar. Spara alla program under olika filnamn så att du kan redovisa dem. Skriv eventuellt ut programmets flödesschema. Var beredd att förklara hur alla block och program fungerar. Laborationsuppgifterna ger relativt fria tyglar. Det viktiga är att du under laborationsuppgifternas gång kontrollerar att du har lärt dig använda samtliga programblock genom att markera i följande lista vilka block du har testat och förstått. Ange gärna filnamnet på det program där du testade blocket: Händelseblock: Move Record/play Motor Sound Display Programflödesstyrningsblock (flow control): Wait Loop Switch Stop Sensorblock: Touch Sound Light Ultrasonic NXT buttons Rotation sensor Timer Beräkningsblock: Logic Mathematic Compare Range Random Variable Advanced: Text Number to text Keep alive File access Calibrate Reset motor Håll ett högt tempo, och försök att inte fastna på detaljer. Den handledda laborationstiden är 8 timmar. Andra fyratimmarspasset sätter vi igång med tävlingsuppgiften (uppgift 13). Läs igenom allt – även de frivilliga uppgifterna. 2. Inventering, uppackning Förse dig med en NXT-låda, och gör en översiktlig kontroll av att det viktigaste finns med enligt innehållsförteckningen på bilden i locket. Detta innefattar en NXT-enhet med laddningsbart batteri, en transformator, en bok med byggritningar, en Bluetooth/USB-dongle, en USB-kabel, tre motorer, fyra olika sensorer, m.m. Mittuniversitetet – Magnus Eriksson MITTUNIVERSITETET Sid 4 av 13 Laborationsinstruktioner NXT 2008-10-15 Samma kontroll bör göras i samband med att du avslutar laborationstillfället och städar ihop. Glöm då inte Bluetooth-donglen och USB-kabeln i datorn, och transformatorn i eluttaget. Om du har fått en oöppnad legolåda: Packa upp och sortera innehållet i lämpliga fack. Montera det laddningsbara batteriet under NXT-enheten. Eventuellt får du hämta transformatorn och Bluetooth-dongeln från en separat låda. 3. Batteriladdning Slå på NXT-enheten med den oranga knappen. Om batterisymbolen längst upp till höger i displayen visar ett halvladdat eller blinkande batteri, koppla in transformatorn till NXT-enheten för att ladda batteriet. Batteriet bör laddas en stund vid varje labbtillfälle. 4. Programstart Logga in på PC:n och starta programmet LEGO® MINDSTORMS® NXT. (Välj Startmenyn -> Programs -> LEGO MINDOSTORMS Edu NXT -> LEGO MINDSTORMS Edu NXT . När programmet har startat, gå in på Help -> Content and index. Bläddra runt så att du hittar om du behöver hjälp. Skapa ett nytt NXT-G-program, t.ex. genom att gå in på File -> New. När man skapar ett nytt program är det en god vana att omedelbart spara ned det på sitt hemkonto (på H:\ eller i My documents) under ett lämpligt namn genom att välja File -> Save As. Om du sparar lokalt på hårddisken (C:\) kan du inte komma åt det från någon annan dator, och det finns risk att programmet raderas till nästa laborationstillfälle i samband med en ominstallation av systemet. Orientera dig i programmets menyer och paletter. 5. USB-anslutning Anslut NXT-enheten med den medföljande USB-kabeln till PC:n. Klicka på symbolen ”NXT Window”. Om NXT-enheten är påslagen bör den synas i listan över tillgängliga enheter. Klicka på knappen Connect. 6. Kontroll av firmware Firmware betyder fast programvara som sällan ändras. I fallet NXT är det den programvara som ligger i enhetens flash-minne, och som innefattar dess bootprogram, dvs uppstartsprogram, och operativsystem. Mittuniversitetet – Magnus Eriksson MITTUNIVERSITETET Sid 5 av 13 Laborationsinstruktioner NXT 2008-10-15 Kontrollera versionsnumret för den Firmware som ligger nedladdad i NXT-enheten. Versionsnumret visas till höger i anslutningsfönstret. Stäng anslutningsfönstret. Gå in på menyn Tools -> Update firmware. I fönstret ”Available firmware files:” visas vilken firmwareversion som finns tillgänglig på PC:ns hårddisk. Om den är nyare, klicka på Download. Eventuellt kan man även kontrollera om det finns en nyare version tillgänglig på nätet, genom att välja knappen Check till höger om texten ”Online updates”. När en eventuell nedladdning är slutförd, stäng fönstret genom att trycka på Close. Kontrollera återigen vilken version som ligger nedladdad genom att gå in på anslutningsfönstret. Tryck på NXT-enhetens knappar, och orientera dig i dess menysystem. 7. Bygg en legorobot Bygg en robot kring NXT-enheten som åtminstone drivs av två hjul med var sin motor, och gärna någon sensor. Ett alternativ är att använda någon av byggritningarna i den bok som ligger i lådan Ett annat alternativ är att gå in på bygginstruktionerna till höger i Robot Educator ”Common palett” eller Complete palett”. Välj en konstruktion och klicka på ”building guide”. (Flera av bygginstruktionerna saknas i denna Educational version. Fler betydligt roligare konstruktioner finns i den version som säljs i leksaksaffärer.) Ett tredje alternativ är söka efter ritningar på nätet, t.ex. genom att gå in på http://mindstorms.lego.com/ -> Building instructions. Ett fjärde är att använda programmet LEGO Digital Designer, som finns kostnadsfritt på nätet. Det visar animerade 3D-byggbeskrivningar för legoprojekt, bl.a. för ett antal NXT-robotar,