統合プログラム

Dependencies:   mbed Servo BMP180

Committer:
tsubasa_nakajima
Date:
Mon Nov 01 16:52:17 2021 +0000
Revision:
8:7209c810309d
completed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tsubasa_nakajima 8:7209c810309d 1 #include "mbed.h"
tsubasa_nakajima 8:7209c810309d 2 #include "Servo.h"
tsubasa_nakajima 8:7209c810309d 3 #include "Movement.h"
tsubasa_nakajima 8:7209c810309d 4
tsubasa_nakajima 8:7209c810309d 5 Servo servo1(D7);
tsubasa_nakajima 8:7209c810309d 6 Servo servo2(A3);
tsubasa_nakajima 8:7209c810309d 7 Servo servo3(A1);
tsubasa_nakajima 8:7209c810309d 8 Servo servo4(D12);
tsubasa_nakajima 8:7209c810309d 9 Servo servo5(D10);
tsubasa_nakajima 8:7209c810309d 10 Servo servo6(A5);
tsubasa_nakajima 8:7209c810309d 11
tsubasa_nakajima 8:7209c810309d 12 void Movement::stop(){
tsubasa_nakajima 8:7209c810309d 13 servo1 = 0.5;
tsubasa_nakajima 8:7209c810309d 14 servo2 = 0.5;
tsubasa_nakajima 8:7209c810309d 15 servo3 = 0.5;
tsubasa_nakajima 8:7209c810309d 16 servo4 = 0.5;
tsubasa_nakajima 8:7209c810309d 17 servo5 = 0.5;
tsubasa_nakajima 8:7209c810309d 18 servo6 = 0.5;
tsubasa_nakajima 8:7209c810309d 19 wait(1);
tsubasa_nakajima 8:7209c810309d 20 }
tsubasa_nakajima 8:7209c810309d 21
tsubasa_nakajima 8:7209c810309d 22 //前進
tsubasa_nakajima 8:7209c810309d 23 void Movement::move_forward(int time = 20)
tsubasa_nakajima 8:7209c810309d 24 {
tsubasa_nakajima 8:7209c810309d 25 servo1 = 0;
tsubasa_nakajima 8:7209c810309d 26 servo2 = 0;
tsubasa_nakajima 8:7209c810309d 27 servo3 = 0;
tsubasa_nakajima 8:7209c810309d 28 servo4 = 0;
tsubasa_nakajima 8:7209c810309d 29 servo5 = 0;
tsubasa_nakajima 8:7209c810309d 30 servo6 = 0;
tsubasa_nakajima 8:7209c810309d 31 wait(time);
tsubasa_nakajima 8:7209c810309d 32 }
tsubasa_nakajima 8:7209c810309d 33
tsubasa_nakajima 8:7209c810309d 34 //後退
tsubasa_nakajima 8:7209c810309d 35 void Movement::move_backward()
tsubasa_nakajima 8:7209c810309d 36 {
tsubasa_nakajima 8:7209c810309d 37 servo1 = 1;
tsubasa_nakajima 8:7209c810309d 38 servo2 = 1;
tsubasa_nakajima 8:7209c810309d 39 servo3 = 1;
tsubasa_nakajima 8:7209c810309d 40 servo4 = 1;
tsubasa_nakajima 8:7209c810309d 41 servo5 = 1;
tsubasa_nakajima 8:7209c810309d 42 servo6 = 1;
tsubasa_nakajima 8:7209c810309d 43 wait(5);
tsubasa_nakajima 8:7209c810309d 44 }
tsubasa_nakajima 8:7209c810309d 45
tsubasa_nakajima 8:7209c810309d 46 //右に曲がる
tsubasa_nakajima 8:7209c810309d 47 void Movement::turn_right(int theta = 15)
tsubasa_nakajima 8:7209c810309d 48 {
tsubasa_nakajima 8:7209c810309d 49 servo1 = 1;
tsubasa_nakajima 8:7209c810309d 50 servo2 = 1;
tsubasa_nakajima 8:7209c810309d 51 servo3 = 1;
tsubasa_nakajima 8:7209c810309d 52 servo4 = 0;
tsubasa_nakajima 8:7209c810309d 53 servo5 = 0;
tsubasa_nakajima 8:7209c810309d 54 servo6 = 0;
tsubasa_nakajima 8:7209c810309d 55 wait(theta/15);
tsubasa_nakajima 8:7209c810309d 56 }
tsubasa_nakajima 8:7209c810309d 57
tsubasa_nakajima 8:7209c810309d 58 //左に曲がる
tsubasa_nakajima 8:7209c810309d 59 void Movement::turn_left(int theta = 15)
tsubasa_nakajima 8:7209c810309d 60 {
tsubasa_nakajima 8:7209c810309d 61 servo1 = 0;
tsubasa_nakajima 8:7209c810309d 62 servo2 = 0;
tsubasa_nakajima 8:7209c810309d 63 servo3 = 0;
tsubasa_nakajima 8:7209c810309d 64 servo4 = 1;
tsubasa_nakajima 8:7209c810309d 65 servo5 = 1;
tsubasa_nakajima 8:7209c810309d 66 servo6 = 1;
tsubasa_nakajima 8:7209c810309d 67 wait(theta/15);
tsubasa_nakajima 8:7209c810309d 68 }
tsubasa_nakajima 8:7209c810309d 69
tsubasa_nakajima 8:7209c810309d 70 //倒れているときの処理
tsubasa_nakajima 8:7209c810309d 71 void Movement::wakeup(int time){
tsubasa_nakajima 8:7209c810309d 72 for(int i=1;i<=time;i++)
tsubasa_nakajima 8:7209c810309d 73 {
tsubasa_nakajima 8:7209c810309d 74 move_forward(5);
tsubasa_nakajima 8:7209c810309d 75 move_backward();
tsubasa_nakajima 8:7209c810309d 76 turn_right();
tsubasa_nakajima 8:7209c810309d 77 turn_left();
tsubasa_nakajima 8:7209c810309d 78 }
tsubasa_nakajima 8:7209c810309d 79 }