Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

User guide (også som pdf)

Bibliotek og eksempelkode

Introduksjon

Zumo er en robust og kompakt Arduino-robot. Den er utformet som et shield, og et Arduino Uno-kort plasseres oppå Zumoen. Den har to motorer, og et sensorarray på undersiden som gjør at den kan følge en linje på underlaget, detektere kanter, osv. Den har også innebygd akselerometer, megnetometer og gyro. Disse kommuniserer med Arduino via I²C. I tillegg er det en trykkbryter, en LED og en buzzer. 

Vi leverer ut Zumoen med Arduino Uno montert. I tillegg har vi loddet på ekstra plugger for de ledige portene, og festet to små breadboards på toppen. De portene som er lagt ut er:

  • A1, analog inngang som kan brukes dersom batterinivåmåling ikke brukes.
  • A4 I²C
  • A5 I²C
  • D2
  • D3, digital inn-/ utgang som kan brukes dersom buzzeren ikke brukes.
  • D6

Det er noen flere enn disse som er tilgjengelig. Pass på at du IKKE bruker noen av dem siden de allerede er i bruk.

I tillegg er +5V, +3.3V og jord lagt tilgjengelig. 

Oversikt over inn-/ utganger:

PortBeskrivelseMerknader
D0RxBrukes til kommunikasjon med Arduino. Kan brukes til andre ting, men det må kobles ut når Arduino programmeres.
D1TxSamme som over.
D2Ledig 
D3BuzzerBuzzeren kan kobles ut og inn med jumper. Porten kan brukes til andre ting hvis buzzeren ikke skal brukes.
D4Sensor Array 
D5Sensor Array 
D6Ledig 
D7Høyre motor retning 
D8Venstre motor retning 
D9Høyre motor hastighet 
D10Venstre motor hastighet 

D11

Sensor Array 
D12Trykkbryter 
D13Gul LED 
A0Sensor Array 
A1Batterinivå spenningsdelerDenne brukes til å lese av batterinivået. Denne er valgfri, og kan brukes til andre ting.
A2Sensor Array 
A3Sensor Array 
A4I²C SDAHer kan utstyr som bruker I²C kobles til.
A5I²C SCLSamme som for A4.

Lysoppmerksom Zumo

Zumo roboten har som nevnt over ganske mange innebygde sensorer. Ved å koble til noen enkle sensorer ekstra kan vi enkelt endre oppførsel. Vi har lagd to eksempler hvor Zumo roboten reagerer på lys.

PLabExamples/examples/14.Zumo/LightForwardSpeed - Et enkelt eksempel som får Zumo roboten til å endre hastighet etter hvor mye lys som når sensoren (eller "øyet").

PLabExamples/examples/14.Zumo/LightFollower - Et enkelt eksempel på hvordan Zumo roboten kan programmeres til å følge etter et lys. Her har roboten to "øyne", som direkte styrer motorene. Ved å la venstre øye styre høre motor, og høyre øye styre venstre motor får Zumo roboten en veldig insektlignende oppførsel.

 

Oppkobling for LightFollower

Zumo med servostyrt sonar

Vi har lagd en pdf som beskriver en måte å bygge servostyrt ultralydsensor sammen med Zumo. Det finnes naturlig nok et utall måter å gjøre dette på, vi presenterer bare en av mulighetene. I eksemplene har vi kode som kan brukes med varianter av denne konstruksjonen.

Andre eksempler i biblioteket

Vi har lagt ut ganske mange eksempler i biblioteket vårt som bruker Zumo roboten. Her følger en liste over de forskjellige eksemplene, og en kort beskrivelse på hva de gjør. Alle eksemplene finnes i PLabExamples/examples/14.Zumo/.

EksempelForklaring
BorderDetectKjører framover til den treffer en kant. Da settes den i revers.
BorderDetectTurnKjører framover til den treffer en kant. Da svinger den mot venstre eller høyre.
DriveForwardKjører rett fram i ett sekund.
DriveRandom

Kjører og svinger "helt" tilfeldig.

IR_Remote_ZumoEnkel fjernkontroll av Arduino med IR fjernkontroll.
LightFollowerFølger etter et lys. Beskrevet over.
LightFollower_SelfCalibratingFølger etter et lys. Inkluderer automatisk kallibrering for lysforhold.
LightForwardSpeedHastighet settes av lysstyrke. Beskrevet over.
LineFollowerKjører langs en svart linje på lys bakgrunn.
MotorsTestKjører i en trekantform.
RawReadSerialLeser av de ytterste refleksjonssensorene og printer dem til seriell konsoll.
SensorCalibrationViser hvordan refleksjonssensorene kalibreres, og printer kalibrert data til seriell konsoll.
SensorToPortExpanderLEDsBruk av port expander med Zumo robot. Beskrevet under port expander siden.
SensorToPortExpanderLEDsAdvancedBruk av port expander med Zumo robot. Beskrevet under port expander siden.
SonarLEDForwardBackwardsBruker en ultralydsensor (sonar) for å bestemme avstand. Rygger hvis noe er alt for nære.
SonarLEDServoAvoidBruker en ultralydsensor (sonar) for å bestemme avstand. Sonaren beveges med en servo. Svinger hvis noe er for nære.
SonarLEDServoTurnBorderBruker en ultralydsensor (sonar) for å bestemme avstand. Sonaren beveges med en servo. Svinger hvis noe er for nære eller en kant (svart teip) oppdages.

 

 

Zumo med "øyne" som "ser" lys: