X-Git-Url: http://git.piffa.net/web?p=rover;a=blobdiff_plain;f=prototypes%2Fservo%2Frotation_lib%2Frotation_lib.ino;h=130d38dd1ea4e6ce67e2b71d8e1740753c292f8a;hp=ac463ea979d0071cde7aed1a80680d0de0c65a2f;hb=1f18251d7103a4576a46c36b8503cd6e02b1ee1c;hpb=e5ee18ad49f4c9c25628e3925e51352083b18ced diff --git a/prototypes/servo/rotation_lib/rotation_lib.ino b/prototypes/servo/rotation_lib/rotation_lib.ino index ac463ea..130d38d 100644 --- a/prototypes/servo/rotation_lib/rotation_lib.ino +++ b/prototypes/servo/rotation_lib/rotation_lib.ino @@ -1,77 +1,61 @@ /* Rotazione + + Rotazione di un servomotore tramite la librerio Servo.h . + + L'utilizzo della libreria Servo rende inutilizzabile analogWrite() + sui pin 9 e 10 dato che utilizza i timer associati a questi PIN. + + Power: un servo da 9g puo' arrivare ad impegnare 750mA sotto carico + (se viene opposta resistenza al movimento del servo), un SG90 prende + ~52mA se il movimento e' libero. Quindi in fase di test il servo puo' + essere alimentato direttamente da una scheda Arduino (200ma dal PIN 5v) + ma per l'uso finale dovra' essere alimentato autonomamente. + + + Rotazione a SX di 90' + Rotazione a DC di 90' + + Schema: https://www.arduino.cc/en/uploads/Tutorial/sweep_bb.png + http://microbotlabs.com/images/mearm-uno-servo-1.jpg + */ - Rotazione di un servomotore tramite la librerio Servo.h . - -L'utilizzo della libreria Servo rende inutilizzabile analogWrite() -sui pin 9 e 10 dato che utilizza i timer associati a questi PIN. - -Power: un servo da 9g puo' arrivare ad impegnare 750mA sotto carico -(se viene opposta resistenza al movimento del servo), un SG90 prende -~52mA se il movimento e' libero. Quindi in fase di test il servo puo' -essere alimentato direttamente da una scheda Arduino (200ma dal PIN 5v) -ma per l'uso finale dovra' essere alimentato autonomamente. - - -Rotazione a SX di 90' -Rotazione a DC di 90' - -Schema: https://www.arduino.cc/en/uploads/Tutorial/sweep_bb.png - http://microbotlabs.com/images/mearm-uno-servo-1.jpg - */ +#include #include - + Servo myservo; // create servo object to control a servo - // a maximum of eight servo objects can be created - +// a maximum of eight servo objects can be created + // Servo vars int pos = 0; // variable to store the servo position const byte servo =9 ; const byte middle = 90; // Centratura servo const int spausa = 30; // Pausa movimenti servo - + void setup() { - myservo.attach(servo); // attaches the servo on pin 9 to the servo object - myservo.write(middle); // tell servo to go to position in variable 'pos' - delay(2000); + abilita(); + } - - + + void loop() { -// Turn DX - turnDX(); - delay(1000); + // Turn DX + turnDX(); + delay(1000); - turnMiddle(); - delay(1000); + turnMiddle(); + delay(1000); -// Turn SX - turnSX(); - delay(1000); + // Turn SX + turnSX(); + delay(1000); - turnMiddle(); - delay(1000); + turnMiddle(); + delay(1000); } -// Functions - -void turnDX() { - // TurnDX - myservo.write(170); - delay(spausa); -} -void turnSX() { - // TurnSX - myservo.write(10); - delay(spausa); -} -void turnMiddle() { - // TurnDX - myservo.write(middle); - delay(spausa); -}