Maria Satre
/
servos
servos
main.cpp@0:4e3507ef1416, 2018-10-11 (annotated)
- Committer:
- m215910
- Date:
- Thu Oct 11 04:07:47 2018 +0000
- Revision:
- 0:4e3507ef1416
to move servos
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
m215910 | 0:4e3507ef1416 | 1 | |
m215910 | 0:4e3507ef1416 | 2 | |
m215910 | 0:4e3507ef1416 | 3 | //#include "Motor.h" //must change line 31 in Motor.cpp according to Lab |
m215910 | 0:4e3507ef1416 | 4 | #include "mbed.h" |
m215910 | 0:4e3507ef1416 | 5 | #include "Servo.h" |
m215910 | 0:4e3507ef1416 | 6 | |
m215910 | 0:4e3507ef1416 | 7 | |
m215910 | 0:4e3507ef1416 | 8 | float pos = rand()/(float)RAND_MAX; //allows the servo to start at a random position |
m215910 | 0:4e3507ef1416 | 9 | float pos2 = rand()/(float)RAND_MAX; |
m215910 | 0:4e3507ef1416 | 10 | Servo servo1(p21); |
m215910 | 0:4e3507ef1416 | 11 | Servo servo2(p22); |
m215910 | 0:4e3507ef1416 | 12 | DigitalIn sw1(p16); |
m215910 | 0:4e3507ef1416 | 13 | int sw1state; |
m215910 | 0:4e3507ef1416 | 14 | int i=1; |
m215910 | 0:4e3507ef1416 | 15 | |
m215910 | 0:4e3507ef1416 | 16 | int main() { |
m215910 | 0:4e3507ef1416 | 17 | |
m215910 | 0:4e3507ef1416 | 18 | servo1.calibrate(0.0009, 90.0); //need to calibrate the servos so they don't freak out |
m215910 | 0:4e3507ef1416 | 19 | servo2.calibrate(0.0009, 90.0); |
m215910 | 0:4e3507ef1416 | 20 | servo1=pos; //used to help calibrate |
m215910 | 0:4e3507ef1416 | 21 | servo2=pos2; |
m215910 | 0:4e3507ef1416 | 22 | |
m215910 | 0:4e3507ef1416 | 23 | while(1) { |
m215910 | 0:4e3507ef1416 | 24 | pos=0; |
m215910 | 0:4e3507ef1416 | 25 | pos2=0; |
m215910 | 0:4e3507ef1416 | 26 | sw1state=sw1.read(); |
m215910 | 0:4e3507ef1416 | 27 | |
m215910 | 0:4e3507ef1416 | 28 | if((sw1state) == 1) { //if switch is on move servos quickly to other angle |
m215910 | 0:4e3507ef1416 | 29 | servo1 = i; |
m215910 | 0:4e3507ef1416 | 30 | servo2 = i;} |
m215910 | 0:4e3507ef1416 | 31 | if((sw1state) == 0) { //if switch is off move back |
m215910 | 0:4e3507ef1416 | 32 | servo1 = 0; |
m215910 | 0:4e3507ef1416 | 33 | servo2 = 0;} |
m215910 | 0:4e3507ef1416 | 34 | }} |