本番用
Dependencies: MotorDriver_SU USBDevice mbed
main.cpp@1:f5a011cef88b, 2014-11-08 (annotated)
- Committer:
- 12f2027a
- Date:
- Sat Nov 08 15:31:47 2014 +0000
- Revision:
- 1:f5a011cef88b
- Parent:
- 0:fa4301e041d0
- Child:
- 2:ac16e274c6d5
?????????????????????????gear?
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
12f2027a | 0:fa4301e041d0 | 1 | #include "mbed.h" |
12f2027a | 0:fa4301e041d0 | 2 | #include "MotorDriver_SU.h" |
12f2027a | 0:fa4301e041d0 | 3 | |
12f2027a | 0:fa4301e041d0 | 4 | |
12f2027a | 0:fa4301e041d0 | 5 | DigitalIn sw(P0_1, PullUp); |
12f2027a | 0:fa4301e041d0 | 6 | DigitalOut led(P1_28); |
12f2027a | 0:fa4301e041d0 | 7 | AnalogIn sw1(P0_22); |
12f2027a | 0:fa4301e041d0 | 8 | AnalogIn sw2(P0_12); |
12f2027a | 0:fa4301e041d0 | 9 | AnalogIn sw3(P0_14); |
12f2027a | 0:fa4301e041d0 | 10 | AnalogIn sw4(P0_11); |
12f2027a | 0:fa4301e041d0 | 11 | AnalogIn sw5(P0_13); |
12f2027a | 0:fa4301e041d0 | 12 | |
12f2027a | 0:fa4301e041d0 | 13 | MotorDriver_SU motor(MOTOR_DOUBLE); |
12f2027a | 0:fa4301e041d0 | 14 | MotorDriver_SU lift(MOTOR_SINGLE); |
12f2027a | 0:fa4301e041d0 | 15 | |
12f2027a | 0:fa4301e041d0 | 16 | |
12f2027a | 0:fa4301e041d0 | 17 | int main( ){ |
12f2027a | 0:fa4301e041d0 | 18 | float hoge1; |
12f2027a | 0:fa4301e041d0 | 19 | float hoge2; |
12f2027a | 0:fa4301e041d0 | 20 | float hoge3; |
12f2027a | 0:fa4301e041d0 | 21 | float hoge4; |
12f2027a | 0:fa4301e041d0 | 22 | float hoge5; |
12f2027a | 1:f5a011cef88b | 23 | int AI = 0; |
12f2027a | 0:fa4301e041d0 | 24 | |
12f2027a | 0:fa4301e041d0 | 25 | |
12f2027a | 0:fa4301e041d0 | 26 | /********************************/ |
12f2027a | 0:fa4301e041d0 | 27 | /********************************/ |
12f2027a | 0:fa4301e041d0 | 28 | /********************************/ |
12f2027a | 0:fa4301e041d0 | 29 | /*荷物を持ち上げる前のプログラム*/ |
12f2027a | 0:fa4301e041d0 | 30 | /********************************/ |
12f2027a | 0:fa4301e041d0 | 31 | /********************************/ |
12f2027a | 0:fa4301e041d0 | 32 | /********************************/ |
12f2027a | 0:fa4301e041d0 | 33 | |
12f2027a | 0:fa4301e041d0 | 34 | while(1){ |
12f2027a | 0:fa4301e041d0 | 35 | |
12f2027a | 0:fa4301e041d0 | 36 | hoge1 = sw1.read(); |
12f2027a | 0:fa4301e041d0 | 37 | hoge2 = sw2.read(); |
12f2027a | 0:fa4301e041d0 | 38 | hoge3 = sw3.read(); |
12f2027a | 0:fa4301e041d0 | 39 | hoge4 = sw4.read(); |
12f2027a | 0:fa4301e041d0 | 40 | hoge5 = sw5.read(); |
12f2027a | 0:fa4301e041d0 | 41 | |
12f2027a | 1:f5a011cef88b | 42 | |
12f2027a | 0:fa4301e041d0 | 43 | /************************************/ |
12f2027a | 0:fa4301e041d0 | 44 | /*ラインに沿って走るためのプログラム*/ |
12f2027a | 0:fa4301e041d0 | 45 | /************************************/ |
12f2027a | 0:fa4301e041d0 | 46 | |
12f2027a | 1:f5a011cef88b | 47 | ///////////まっすぐ走るためのプログラム////////// |
12f2027a | 1:f5a011cef88b | 48 | /*1.1.1 センサ1が黒*/ |
12f2027a | 1:f5a011cef88b | 49 | if(sw1 <= 0.3 && sw2 > 0.3 && sw3 > 0.3 && sw4 > 0.3 && sw5 > 0.3){ |
12f2027a | 1:f5a011cef88b | 50 | motor.Drive(0, CW, 1000); |
12f2027a | 0:fa4301e041d0 | 51 | motor.Drive(1, CW, 4095); |
12f2027a | 0:fa4301e041d0 | 52 | |
12f2027a | 0:fa4301e041d0 | 53 | } |
12f2027a | 0:fa4301e041d0 | 54 | |
12f2027a | 0:fa4301e041d0 | 55 | |
12f2027a | 1:f5a011cef88b | 56 | /*1.1.2 センサ2が黒*/ |
12f2027a | 1:f5a011cef88b | 57 | else if(sw1 > 0.3 && sw2 <= 0.3 && sw3 > 0.3 && sw4 > 0.3 && sw5 > 0.3){ |
12f2027a | 1:f5a011cef88b | 58 | motor.Drive(0, CW, 1250); |
12f2027a | 0:fa4301e041d0 | 59 | motor.Drive(1, CW, 4095); |
12f2027a | 0:fa4301e041d0 | 60 | |
12f2027a | 0:fa4301e041d0 | 61 | } |
12f2027a | 0:fa4301e041d0 | 62 | |
12f2027a | 0:fa4301e041d0 | 63 | |
12f2027a | 1:f5a011cef88b | 64 | /*1.1.3 センサ3が黒*/ |
12f2027a | 1:f5a011cef88b | 65 | else if(sw1 > 0.3 && sw2 > 0.3 && sw3 <= 0.3 && sw4 > 0.3 && sw5 > 0.3){ |
12f2027a | 0:fa4301e041d0 | 66 | motor.Drive(0, CW, 4095); |
12f2027a | 0:fa4301e041d0 | 67 | motor.Drive(1, CW, 4095); |
12f2027a | 0:fa4301e041d0 | 68 | |
12f2027a | 0:fa4301e041d0 | 69 | } |
12f2027a | 0:fa4301e041d0 | 70 | |
12f2027a | 0:fa4301e041d0 | 71 | |
12f2027a | 1:f5a011cef88b | 72 | /*1.1.4 センサ4が黒*/ |
12f2027a | 1:f5a011cef88b | 73 | else if(sw1 > 0.3 && sw2 > 0.3 && sw3 > 0.3 && sw4 <= 0.3 && sw5 > 0.3){ |
12f2027a | 0:fa4301e041d0 | 74 | motor.Drive(0, CW, 4095); |
12f2027a | 1:f5a011cef88b | 75 | motor.Drive(1, CW, 1250); |
12f2027a | 0:fa4301e041d0 | 76 | |
12f2027a | 0:fa4301e041d0 | 77 | } |
12f2027a | 0:fa4301e041d0 | 78 | |
12f2027a | 0:fa4301e041d0 | 79 | |
12f2027a | 1:f5a011cef88b | 80 | /*1.1.5 センサ5が黒*/ |
12f2027a | 1:f5a011cef88b | 81 | else if(sw1 > 0.3 && sw2 > 0.3 && sw3 > 0.3 && sw4 > 0.3 && sw5 <= 0.3){ |
12f2027a | 0:fa4301e041d0 | 82 | motor.Drive(0, CW, 4095); |
12f2027a | 1:f5a011cef88b | 83 | motor.Drive(1, CW, 1000); |
12f2027a | 0:fa4301e041d0 | 84 | |
12f2027a | 0:fa4301e041d0 | 85 | } |
12f2027a | 0:fa4301e041d0 | 86 | |
12f2027a | 1:f5a011cef88b | 87 | /*1.1.6 センサ2-3が黒*/ |
12f2027a | 1:f5a011cef88b | 88 | else if(sw1 > 0.3 && sw2 <= 0.3 && sw3 <= 0.3 && sw4 > 0.3 && sw5 > 0.3){ |
12f2027a | 1:f5a011cef88b | 89 | motor.Drive(0, CW, 1500); |
12f2027a | 0:fa4301e041d0 | 90 | motor.Drive(1, CW, 4095); |
12f2027a | 0:fa4301e041d0 | 91 | |
12f2027a | 0:fa4301e041d0 | 92 | } |
12f2027a | 0:fa4301e041d0 | 93 | |
12f2027a | 1:f5a011cef88b | 94 | /*1.1.7 センサ3-4が黒*/ |
12f2027a | 1:f5a011cef88b | 95 | else if(sw1 > 0.3 && sw2 > 0.3 && sw3 <= 0.3 && sw4 <= 0.3 && sw5 > 0.3){ |
12f2027a | 0:fa4301e041d0 | 96 | motor.Drive(0, CW, 4095); |
12f2027a | 1:f5a011cef88b | 97 | motor.Drive(1, CW, 1500); |
12f2027a | 0:fa4301e041d0 | 98 | |
12f2027a | 0:fa4301e041d0 | 99 | } |
12f2027a | 1:f5a011cef88b | 100 | } |
12f2027a | 1:f5a011cef88b | 101 | } |