Styr en servo

Servomotor

Servomotorer kan brukes til mye. I Bygge en terning brukes en slik motor til å slå en terning. I roboten på bildet brukes to servomotorer per ben til å styre hvordan roboten skal gå (eller vinke).

html_image

Arduino-basert robot med to servomotorer per ben.

En servomotor er en liten motor som kan vris et gitt antall grader. Servomotorer skilles fra hverandre når det gjelder hvor mange grader de kan vris, og hvor mye de orker å dra. Servomotoren som er inkludert i bokens medfølgende komponentpakke, kan dra opptil 800 g og kan vris opptil 180°.

Styring av servomotor

I følgende eksempel skal vi styre hvordan en servomotor skal vris, ved hjelp av et potensiometer. Vi kobler servomotoren til GPIO-pinne 9 og potensiometeret til analog inngang 0.

html_image

Illustrasjon laget med komponenter fra Fritzing (fritzing.org). CC BY-SA 3.0

Obs! Vi må bryte av tre pinner fra pinnelisten for å kunne koble servomotoren til koblingsbrettet (i og med at både koblingsbrettet og servomotoren har hunnkoblinger).

I selve skissen begynner vi med å inkludere biblioteket for servomotorer. I motsetning til Button-biblioteket er Servo-biblioteket forhåndsinstallert i utviklingsmiljøet. Det er derfor nok å skrive følgende kodesnutt (der vi også lager et nytt servoprosjekt som vi kaller pointer).

// Include the servo library
#include <Servo.h>

// Create a new servo object
Servo pointer;  

Avhengig av hvordan vi vrir potensiometeret får vi en verdi mellom 0 og 1023 fra den analoge inngangen. Vi må regne om den skalaen slik at den tilsvarer vridningen av servomotoren, dvs. 0 til 180. Heldigvis finnes det en praktisk funksjon kalt map som vi kan bruke til dette. Ved å kalle den opp kan vi tilpasse skalaen 0–1023 til 0–180.

html_image

Map-funksjonen tilpasser skalaen.

Map-funksjonen brukes på følgende måte: 

map(värde, ursprungs-min, ursprungs-max, nytt min, nytt max);

Den ferdige skissen ser slik ut:

ServoReadPot.ino

Sist endret: 24.01.2017
ServomotorStyring av servomotor
Bli medlem i dagBenytt deg av våre fantastiske tilbud!

Som medlem får du:

  • Eksklusive medlemstilbud
  • Poeng på alt du handler
  • Se kjøpene dine på kjell.com
  • Personlige tilbud
Som medlem av Kjell & Company får du kjøpt utvalgte forbruksvarer til ekstra gode priser. Du kan også samle poeng og motta bonussjekker og benytte deg av unike medlemstilbud.Les mer
Alltid trygt å handle hos Kjell
Fri frakt

Vi betaler frakten når du handler for mer enn 499,-

Fri retur

Fri retur i alle butikkene våre.

Rask levering

2–4 virkedagers leveringstid.

Hent i butikk

Reserver produktet online og hent det i butikk samme dag.

Medlem av

Medlem av Trygg E-Handel

Du betaler enkelt med

Få bestillingen din levert med

Du kan handle fra både

Det ser ut som du bruker en gammel nettleser. Det kan gjøre at ikke alt fungerer eller ser ut som det skal.