Robotrally

Robotrally

For et par uker siden arrangerte Acando Oslo fagkveld med Arduino som tema. Under denne fagkvelden bygde vi tre Arduinoroboter som skal benyttes i Acandos konkurranse på JavaZone, 9.-10. september.

Hva er Arduino?

Arduino er et italiensk firma som produserer mikrokontrollere med samme navn. Mikrokontrollerne kommer i mange forskjellige utgaver, og brukes for å bygge digitale "dingser" og interaktive objekter som kan sanse og kontrollere den fysiske verden. Den mest kjente mikrokontrolleren fra Arduino er Arduino Uno. Det er Arduino Uno vi skal benytte til disse robotene.

Arduino Uno

Arduino Uno er basert på Atmega328P mikrokontrolleren og den har en rekke datapinner for lesing og skriving til og fra komponenter.

Tekniske spesifikasjoner

Mikrokontroller Atemega328
Operativ spenning 5V
Digitale I/O pinner 14
Analoge I/O 6
SRAM 2 KB
Klokkehastighet 16 MHz

Programmering

For å programmere til Arduino Uno må man bruke Arduino IDE, som kan lastes ned gratis fra Arduinos nettsider. Språket Arduino benytter er basert på C, og har en enkel struktur.

void setup()
{
  ...
}
void loop()
{
  ...
}

Alle initialiseringer av datapinner og variable skjer i setup(). loop()vil kjøre så lenge Arduinoen har strøm, og lar programmet endre seg, respondere og kontrollere Arduinoen. 

Arduinorobotene

Roboten benytter to sensorer for å navigere rundt på banen. Sensorene registrerer mengden lys som blir reflektert fra underlaget. Når sensorene sanser mye reflektert lys (hvitt underlag) vil den sende verdien 1 tilbake til Arduinoen. Registreres ikke noe, eller lite, reflektert lys (svart underlag) vil den sende verdien 0. Disse verdiene kan vi plukke opp i koden vår og få roboten til å respondere på de forskjellige tilstandene.Arduinorobotene er bygget rundt en plattform med to hjul. Disse styres av to DC-motorer og et motorskjold. Motorskjolet programmeres og brukes ved å plassere det oppå Arduino-kortet. Skjoldet bruker fire av Arduinoens datapinner, slik at vi kan programmere motorene til å gå i den hastigheten vi ønsker. De andre datapinnene er tilgjengelig for andre sensorer og komponenter som vi kan sette på roboten.

Siden Arduino Uno operer på 5V, så bruker vi en i tillegg omformer mellom 9V batteriet og Arduinokortet. Motorskjoldet skal likevel ta 9V for å drive motorene.

Fagkveld

På fagkvelden lekte et knippe ansatte hobbyelektrikere og satte sammen robotene våre, slik at de var klare til JavaZone.

Her fikk de ansatte en kort innføring i Arduino og lodding. Etter noe loddetinnsøl og kabelkonfetti ble robotene omsider klare til programmering. Koden registrerer data fra sensorene og justerer hastigheten på enten høyre og venstre hjul deretter, slik at roboten kan svinge og holde seg på den svarte linja.

JavaZone 2015

Alt er nå klart for JavaZone 2015 som går av stabelen 9.-10. september i Oslo Spektrum. Acando stiller som partner og gleder oss til å stifte mange nye bekjentskaper gjennom dager med lærerike foredrag, spennende lyntaler, god mat og masse artige stands i Expo-området. Vi kjører Robotrally på vår stand, så stikk innom oss og prøv å få den raskeste tiden! 

I tillegg til stand har vi også over 40 deltakere fra Acando på årets JavaZone. Har du lyst til å ta en prat med oss: Grip fatt i en av de blå skjortene, og si hei! 

 

Om bloggeren:
Veronika har studert programmering og nettverk ved Universitetet i Oslo og har en forkjærlighet for logikk, semantiske teknologier, typografi og elektronikk.

comments powered by Disqus