ProjektX : Arduino vrti končni servomotor

Share on facebook
Share on twitter
Ime projekta Arduino vrti končni servomotor
Ideja ali problem senzor Vodenje servomotorja ?
Rešitev Servo motor se priključi direktno na Arduino na PWM izhod (Arduino Uno d3, d5, d6, d9, d10, d11) . PWM pomeni Pulse Width Modulation ali v slovenščini Pulzno širinska modulacija. To pomeni, da je frekvenca konstantna, spreminja se samo širina pulza.
Spisek potrebščin (BOM – Bill of Material) Za izvedbo potrebujemo:

  • Arduino,
  • končni analogni servomotor
  • ostalo – protoboard oz testna ploščica, povezovalne žičke za protoboard oz. testno ploščico, napajanje

in primerna orodja: pinceto

Izvedba Priključite servomotor:

  • črna/rjava žička na servomotorju se priključi na maso (GND) na Arduinu
  • rdeča žička na servomotorju se priključi na 5V na Arduinu
  • oranžna žička na servomotorju se priključi na pin 9 na Arduinu

 

in uporabite izdelano knjižnico ukazov http://www.arduino.cc/en/Reference/Servo

Primer kode:

#include <Servo.h>

Servo MojServo;

void setup()
{
MojServo.attach(9); //analog pin
}

void loop()
{
val = 1000; // obrni na desno
val1 = map(val, 0, 1000, 179, 0); //pretvori v servo korak
MojServo.write(val1); // ukaz za servo
delay(150); /malo zakasnitve, da lahko zaključi ukaz
val = 500; // obrni do sredine
val1 = map(val, 0, 1000, 179, 0); //pretvori v servo korak
MojServo.write(val1); // ukaz za servo
delay(150); /malo zakasnitve, da lahko zaključi ukaz
val = 0; // obrni na levo
val1 = map(val, 0, 1000, 179, 0); //pretvori v servo korak
MojServo.write(val1); // ukaz za servo
delay(150); /malo zakasnitve, da lahko zaključi ukaz
val = 500; // obrni nazaj do sredine
val1 = map(val, 0, 1000, 179, 0); //pretvori v servo korak
MojServo.write(val1); // ukaz za servo
delay(150); /malo zakasnitve, da lahko zaključi ukaz
}

admin

admin

Leave a Replay

Close Menu