kylemsguy

3Servos.ino

Dec 9th, 2012
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.99 KB | None | 0 0
  1. /*
  2.   October 11, 2012
  3.   Kyle Zhou
  4.   Controls a set of 3 servos for Arduino
  5.  
  6. */
  7.  
  8. #include <Servo.h>
  9.  
  10. Servo servo[3];
  11.  
  12. void setup(){
  13.   servo[0].attach(9);
  14.   servo[1].attach(10);
  15.   servo[2].attach(11);
  16.  
  17. }
  18.  
  19. void oscillate(Servo *servo){
  20.   int angle;
  21.   int diffAngle = 1;
  22.   int numServo = sizeof servo + 1;
  23.   for(angle = 90; angle < 180; angle += diffAngle){
  24.     servo[0].write(angle);
  25.     servo[1].write(180-angle);
  26.     servo[2].write(angle);
  27.     delay(10);
  28.   }
  29.   for(angle = 90; angle < 180; angle += diffAngle){
  30.     servo[0].write(180-angle);
  31.     servo[1].write(angle);
  32.     servo[2].write(180-angle);
  33.     delay(10);
  34.   }
  35.   for(angle = 179; angle >= 90; angle -= diffAngle){
  36.     servo[0].write(180-angle);
  37.     servo[1].write(angle);
  38.     servo[2].write(180-angle);
  39.     delay(10);
  40.   }
  41. }
  42.  
  43. void reset(Servo servo){
  44.   servo.write(90);
  45.   return;
  46. }
  47.  
  48. void loop(){
  49.  
  50.   // reset all servos
  51.   for(int i = 0; i < 3; ++i){
  52.     reset(servo[i]);
  53.   }
  54.   oscillate(servo);
  55.  
  56. }
Advertisement
Add Comment
Please, Sign In to add comment