220 likes | 407 Views
NAO. Programmeren van een humanoid robot. Introductie. NAO stelt zichzelf voor. Choregraphe. Programmeer software Hiermee kunnen NAO gebruikers op een eenvoudige manier beweging en interactief gedrag aanmaken en bewerken Demonstratie. Doel van de oefening.
E N D
NAO Programmerenvan eenhumanoidrobot
Introductie • NAO stelt zichzelf voor
Choregraphe • Programmeer software • Hiermee kunnen NAO gebruikers op een eenvoudige manier beweging en interactief gedrag aanmaken en bewerken • Demonstratie
Doel van de oefening • Laat NAO naar jou toe lopen en laat hem vlak voor jou stoppen. • NAO vraagt je hem de bal te geven en vraagtje waar hij de bal moet naar toe brengen. • NAO zoekt en vindt de aangeduide plaats • NAO gaat naar die plaats,legt de bal neer en gaat zitten.
Voorbereiding • Choregraphe opstarten • Een nieuw prokect aanmaken • Open de bibliotheek: Devoxx4Kids.cbl • Plaats en configureer de dozen • Set Speech Language • Set Reco. Lang. • Tactile Head • Verbindt de dozen met het startpunt.
Oefening 1 • Laat NAO naar je toe lopen • InfraroodSensor (Ogen) • Sonar • Oogkleur • Maakeennieuwedoosaanin hethoofdvenster • Verander de naam: Ga vooruit • Wijzigde afbeelding: move.png • Type: Flow Diagram
Oefening1 (vervolg) • In de nieuwe doos Ga vooruit • Laat NAO recht staan (Stand Up) • Walk Tracker • Groene ogen als NAO je heeft gevonden (Eye Leds) • Rode ogen als hij je niet meer ziet (Eye Leds) • Gebruik de Sonar van NAO • Detecteert een obstakel (jezelf) • Stop de Walk Tracker • Koppel de sensor van NAO’s hoofd aan de nieuwe doos
Oefening 2 • NAO vraagt de bal • NAO beweegt de rechter arm omhoog en opent zijn hand • Laat NAO spreken • Hij moet begrijpen wat je hem vertelt • NAO stelteen vraag met twee mogelijke antwoorden • NAO beweegt de rechter arm omlaag en sluit zijn hand
Oefening 2 (vervolg) • Maakeennieuwedoos in hethoofdvenster • Verander de naam: (Kieszelf) • Type: Flow Diagram • Voeg 2 outputs toe (uitgang/resultaat) • Dubbelklik op de nieuwedoos • Klik op de (rechtsboven) • Naam output 1 : Stoel • Naam output 2: Doos
Oefening 2 (vervolg) • Verander de oogkleur van NAO • Hef de rechter arm van NAO op (biblioteek) • Doos: Raise Right Hand • LaatNAO spreken met de doos Say • NAO moet de bal vragen
Oefening 2 (vervolg) • NAO vraagtwaar hij de bal moet leggen • Maak een nieuwe doos. • Type : Flow Diagram • Voeg een doos Choice toe • Wijzig de ouput van de doos • Hernoem outputanswer naaranswer1 • Type : Number : 1 • Nature : Punctual • Voeg een output toe: answer2 • Type : Number : 1 • Nature : Punctual • Dubbelklik op het vakje om de vraag en de antwoorden in te geven • NAO moet het antwoord dat je hebt gegeven herhalen.
Oefening 2 (vervolg) • NAO laatzijn arm zakkenen sluitzijn hand • Terugnaarhethoofdvenster van Oefening 2. • VoegeendoosClose Right Hand toe • Koppel de tweeoutputs aan de doos
Oefening3 • NAO zoektwaarhij de bal moetleggen • Draaihethoofd • Vind de juisteNAOMARK • Laat NAO zeggendathij de plaatsgevondenheeft • Laat NAO zeggendathij de plaatsnietgevondenheeft
Oefening3 (vervolg) • Maakeennieuwedoos in hethoofdvenster • Verander de naam: ZoekDoos • Type: Flow Diagram • Voeg 1 output toe (uitgang/resultaat) • Dubbelklikop de nieuwedoos • Klik op de (rechtsboven) • Naam output : Gevonden
Oefening 3 (vervolg) • Plaats in de nieuwe doos: • Een doos NAOMark • Een doos Center Head • Een doos Move Head Left • Een doos Move Head Right • Een doos IF • TweedozenSay • DriedozenWait(veranderde timeoutin 4,000000)
Oefening 3 (vervolg) • Koppelhetstartpunt van de doosZoekDoosmet: • Center Head • NAOMark • EendoosWait • Draaihethoofdnaarlinks (Move Head Left) en naarrechts(Move Head Right) • Koppel deNAOMarkmet de doosIF • Configureerde doosIF : • Condition Operator : = • Value to compare : 68
Oefening 3 (vervolg) • Koppelde output output_then met de doosIFaan de Input : • onStop van de volgendedozenWait, Move Head Left, Move Head Right • onStart van eendoosSay • DoosSay om te zeggendat NAO de doosheeftgevonden(waar NAO de bal moetplaatsen) • Vergeet niet dat NAO ookmoetzeggendathij de doosniet heeftgevonden ! Zoekzelfhoe ! • Ga terugnaarhethoofdvenster en doehetzelfdevoorde stoel(copy / paste + aanpassen).
Oefening 4 • NAO gaatnaar de gevraagdeplaatsom daar de bal neer te leggen. • Bewegennaar de doosof de stoel(NAOMARK) • Wevoegenvoetsensorentoeom te voorkomendatde stoel of de dooswordengeraakt • De bal neerleggen
Oefening 4 (vervolg) • Maakeennieuwedoos in hethoofdvenster • Verander de naam : LoopnaarNAOMark • Type: Flow Diagram
Oefening 4 (vervolg) • Plaats in de nieuwe doos: • EendoosMark WalkTracker • EendoosNAO facing Mark • EendoosBumpers • EendoosMove To • EendoosSay • TweedozenWait(veranderd de timeoutin 0,500000) • TweeEyeLEDs • EendoosDrop Ball Move Back and Sit
Oefening 4 (vervolg) • Koppelhetstartpunt van de doosLoopnaarNAOMarkmet de input van NAO facingMark • Koppelde output van NAO facingMark aanhetstartpuntvanonStart • Bumpers : • NAO moettweestappenterugdoen • Stop de anderedozen • NAO moetzeggendathijisaangekomen. « Ik ben er » • Mark WalkTracker • Blauweogenals de NAOMarkniet meergedetecteerdwordt • KoppelOutputvanonLostaanInputonStop • NAO loopnogeenbeetjedoor • NAO moetzeggendathijisaangekomen. « Ik ben er » • GroeneogenalsNAOMarkgedetecteerdwordt
Oefening 4 (vervolg) • Plaats de doosDrop Ball Move Back and Sitin hethoofdvensteren verbindtzemet de doosLoopnaarNAOMark