dissabte, 4 de maig del 2013

control de servo motors!

Mooooolt bones!
Sabeu que toca ara?
Servos!
Si, això!:
En aquest cas us ensenyo els que hi ha en el KIT, jo, tinc més, vosaltres hauríeu de tenir un! 

Són els pins 11, 10, 9, 6, 5 i 3. Aquests que porten el signe de la ñ!
Són pins PWM. la manera de funcionar us la explico en un altre entrada!

Farem un simple circuit que serà aquest:

El codi és el següent:

#include <Servo.h>                             //carreguem la llibreria del servo

Servo myservo;                                   // creem un objecte que serà el nostre servo
                                                           //si tinguéssim més d'un seria, servo1, servo2, etc 

int potpin = 0;                                     // pin analògic on tenim connectat el potenciòmetre
int val;                                                // variable que creem per guardar el valor llegit del potenciòmetre 

void setup() 
  myservo.attach(6);                           // posem el cable de senyal del servo al pin numero 6, un PWM 

void loop() 
  val = analogRead(potpin);               // llegim el valor del potenciòmetre (valor entre 0 i 1023) 
  val = map(val, 0, 1023, 0, 179);     // fem el map per a poder-lo utilitzar amb el servo (valor entre 0 i 180) 
  myservo.write(val);                        // posem el servo a la posició que ens genera el map 
  delay(15);                                     // esperem una mica a que el servo arribi a la posició 


Us atreviu a controlar-lo amb el comandament IR? 
Podríeu augmentar el valor de "val" amb les tecles + i -, o fer-li una sèrie de moviments prement una tecla!
Oooo sino simplement moure'l a una posició determinada!

Salut!


Cap comentari:

Publica un comentari a l'entrada