sugiyama tatsuya
/
check_command
a
main.cpp@0:ac0ad47ee366, 2016-02-29 (annotated)
- Committer:
- 452R142039
- Date:
- Mon Feb 29 09:00:47 2016 +0000
- Revision:
- 0:ac0ad47ee366
?
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
452R142039 | 0:ac0ad47ee366 | 1 | #include "mbed.h" |
452R142039 | 0:ac0ad47ee366 | 2 | //#include "AX18.h" |
452R142039 | 0:ac0ad47ee366 | 3 | #include "RX64.h" |
452R142039 | 0:ac0ad47ee366 | 4 | #include <stdio.h> |
452R142039 | 0:ac0ad47ee366 | 5 | |
452R142039 | 0:ac0ad47ee366 | 6 | Serial pc (USBTX, USBRX); |
452R142039 | 0:ac0ad47ee366 | 7 | |
452R142039 | 0:ac0ad47ee366 | 8 | //Mbedのピンと割り当ての文字設定 |
452R142039 | 0:ac0ad47ee366 | 9 | AnalogIn vep1(p15); |
452R142039 | 0:ac0ad47ee366 | 10 | AnalogIn vep2(p16); |
452R142039 | 0:ac0ad47ee366 | 11 | AnalogIn vep3(p17); |
452R142039 | 0:ac0ad47ee366 | 12 | |
452R142039 | 0:ac0ad47ee366 | 13 | DigitalOut myled1(LED1); |
452R142039 | 0:ac0ad47ee366 | 14 | DigitalOut myled2(LED2); |
452R142039 | 0:ac0ad47ee366 | 15 | DigitalOut myled3(LED3); |
452R142039 | 0:ac0ad47ee366 | 16 | DigitalOut myled4(LED4); |
452R142039 | 0:ac0ad47ee366 | 17 | |
452R142039 | 0:ac0ad47ee366 | 18 | int main() |
452R142039 | 0:ac0ad47ee366 | 19 | { |
452R142039 | 0:ac0ad47ee366 | 20 | pc.baud(57600);//Tera Term ボー・レート |
452R142039 | 0:ac0ad47ee366 | 21 | |
452R142039 | 0:ac0ad47ee366 | 22 | // int ngleax1; |
452R142039 | 0:ac0ad47ee366 | 23 | // int ngleax2; |
452R142039 | 0:ac0ad47ee366 | 24 | // int angleax3; |
452R142039 | 0:ac0ad47ee366 | 25 | // int angleax4; |
452R142039 | 0:ac0ad47ee366 | 26 | int anglerx;//RX-64モータ角度-ターンテーブル(T-motor) |
452R142039 | 0:ac0ad47ee366 | 27 | int input1; |
452R142039 | 0:ac0ad47ee366 | 28 | // int x; |
452R142039 | 0:ac0ad47ee366 | 29 | int y; |
452R142039 | 0:ac0ad47ee366 | 30 | char c; |
452R142039 | 0:ac0ad47ee366 | 31 | // AX18 myax181(p9, p10, 1); |
452R142039 | 0:ac0ad47ee366 | 32 | // AX18 myax182(p9, p10, 2); |
452R142039 | 0:ac0ad47ee366 | 33 | // AX18 myax183(p9, p10, 3); |
452R142039 | 0:ac0ad47ee366 | 34 | // AX18 myax184(p9, p10, 4); |
452R142039 | 0:ac0ad47ee366 | 35 | |
452R142039 | 0:ac0ad47ee366 | 36 | //サーボモーターを初期位置に戻す |
452R142039 | 0:ac0ad47ee366 | 37 | RX64 myrx64(p13, p14, 1); |
452R142039 | 0:ac0ad47ee366 | 38 | myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 39 | myrx64.SetGoal(0); |
452R142039 | 0:ac0ad47ee366 | 40 | // wait(6); |
452R142039 | 0:ac0ad47ee366 | 41 | |
452R142039 | 0:ac0ad47ee366 | 42 | //モータが範囲内の角度に収まるまでプログラムの進行を抑える |
452R142039 | 0:ac0ad47ee366 | 43 | do{ |
452R142039 | 0:ac0ad47ee366 | 44 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 45 | }while(anglerx >= 3); |
452R142039 | 0:ac0ad47ee366 | 46 | |
452R142039 | 0:ac0ad47ee366 | 47 | pc.printf("\nafter\nanglerx = %d\n", anglerx);//T-motor角度画面表示 |
452R142039 | 0:ac0ad47ee366 | 48 | //繰り返し |
452R142039 | 0:ac0ad47ee366 | 49 | while(1){ |
452R142039 | 0:ac0ad47ee366 | 50 | |
452R142039 | 0:ac0ad47ee366 | 51 | // x = 1; |
452R142039 | 0:ac0ad47ee366 | 52 | y = 0; |
452R142039 | 0:ac0ad47ee366 | 53 | input1 = 4; |
452R142039 | 0:ac0ad47ee366 | 54 | |
452R142039 | 0:ac0ad47ee366 | 55 | //操縦者が光を見つめているか確認・光源を見つめてもらいつつzキーを押してもらう |
452R142039 | 0:ac0ad47ee366 | 56 | do{ |
452R142039 | 0:ac0ad47ee366 | 57 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 58 | pc.printf("選択したい光を見つめつつ「zキー」を押してください\n"); |
452R142039 | 0:ac0ad47ee366 | 59 | c = pc.getc(); |
452R142039 | 0:ac0ad47ee366 | 60 | if(c == 'z') { |
452R142039 | 0:ac0ad47ee366 | 61 | y = 0; |
452R142039 | 0:ac0ad47ee366 | 62 | } else { |
452R142039 | 0:ac0ad47ee366 | 63 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 64 | } |
452R142039 | 0:ac0ad47ee366 | 65 | }while(y == 1); |
452R142039 | 0:ac0ad47ee366 | 66 | |
452R142039 | 0:ac0ad47ee366 | 67 | //ピンに入った電圧のアナログ値 |
452R142039 | 0:ac0ad47ee366 | 68 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 69 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 70 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 71 | |
452R142039 | 0:ac0ad47ee366 | 72 | //入力を判定する・それぞれ4回判定・判定は5秒間 |
452R142039 | 0:ac0ad47ee366 | 73 | do{ |
452R142039 | 0:ac0ad47ee366 | 74 | wait(2); |
452R142039 | 0:ac0ad47ee366 | 75 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 76 | pc.printf("入力1-A\n"); |
452R142039 | 0:ac0ad47ee366 | 77 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 78 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 79 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 80 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 81 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 82 | pc.printf("入力1-A\n"); |
452R142039 | 0:ac0ad47ee366 | 83 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 84 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 85 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 86 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 87 | do{ |
452R142039 | 0:ac0ad47ee366 | 88 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 89 | pc.printf("選択したい光を見つめつつ「zキー」を押してください\n"); |
452R142039 | 0:ac0ad47ee366 | 90 | c = pc.getc(); |
452R142039 | 0:ac0ad47ee366 | 91 | if(c == 'z') { |
452R142039 | 0:ac0ad47ee366 | 92 | y = 0; |
452R142039 | 0:ac0ad47ee366 | 93 | } else { |
452R142039 | 0:ac0ad47ee366 | 94 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 95 | } |
452R142039 | 0:ac0ad47ee366 | 96 | }while(y == 1); |
452R142039 | 0:ac0ad47ee366 | 97 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 98 | pc.printf("入力2-A\n"); |
452R142039 | 0:ac0ad47ee366 | 99 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 100 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 101 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 102 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 103 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 104 | pc.printf("入力2-A\n"); |
452R142039 | 0:ac0ad47ee366 | 105 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 106 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 107 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 108 | input1 = 1; |
452R142039 | 0:ac0ad47ee366 | 109 | y = 10; |
452R142039 | 0:ac0ad47ee366 | 110 | } |
452R142039 | 0:ac0ad47ee366 | 111 | } |
452R142039 | 0:ac0ad47ee366 | 112 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 113 | pc.printf("入力2-B\n"); |
452R142039 | 0:ac0ad47ee366 | 114 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 115 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 116 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 117 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 118 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 119 | pc.printf("入力2-B\n"); |
452R142039 | 0:ac0ad47ee366 | 120 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 121 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 122 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 123 | input1 = 2; |
452R142039 | 0:ac0ad47ee366 | 124 | y = 10; |
452R142039 | 0:ac0ad47ee366 | 125 | } |
452R142039 | 0:ac0ad47ee366 | 126 | } |
452R142039 | 0:ac0ad47ee366 | 127 | } |
452R142039 | 0:ac0ad47ee366 | 128 | /* } else if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 129 | pc.printf("入力2-1\n"); |
452R142039 | 0:ac0ad47ee366 | 130 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 131 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 132 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 133 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 134 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 135 | pc.printf("入力2-2\n"); |
452R142039 | 0:ac0ad47ee366 | 136 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 137 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 138 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 139 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 140 | do{ |
452R142039 | 0:ac0ad47ee366 | 141 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 142 | pc.printf("選択したい光を見つめつつ「zキー」を押してください\n"); |
452R142039 | 0:ac0ad47ee366 | 143 | c = pc.getc(); |
452R142039 | 0:ac0ad47ee366 | 144 | if(c == 'z') { |
452R142039 | 0:ac0ad47ee366 | 145 | y = 0; |
452R142039 | 0:ac0ad47ee366 | 146 | } else { |
452R142039 | 0:ac0ad47ee366 | 147 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 148 | } |
452R142039 | 0:ac0ad47ee366 | 149 | }while(y == 1); |
452R142039 | 0:ac0ad47ee366 | 150 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 151 | pc.printf("入力2-3\n"); |
452R142039 | 0:ac0ad47ee366 | 152 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 153 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 154 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 155 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 156 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 157 | pc.printf("入力2-4\n"); |
452R142039 | 0:ac0ad47ee366 | 158 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 159 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 160 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 161 | input1 = 2; |
452R142039 | 0:ac0ad47ee366 | 162 | y = 10; |
452R142039 | 0:ac0ad47ee366 | 163 | } |
452R142039 | 0:ac0ad47ee366 | 164 | } |
452R142039 | 0:ac0ad47ee366 | 165 | }*/ |
452R142039 | 0:ac0ad47ee366 | 166 | } else if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 167 | pc.printf("入力1-A\n"); |
452R142039 | 0:ac0ad47ee366 | 168 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 169 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 170 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 171 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 172 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 173 | pc.printf("入力1-A\n"); |
452R142039 | 0:ac0ad47ee366 | 174 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 175 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 176 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 177 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 178 | do{ |
452R142039 | 0:ac0ad47ee366 | 179 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 180 | pc.printf("選択したい光を見つめつつ「zキー」を押してください\n"); |
452R142039 | 0:ac0ad47ee366 | 181 | c = pc.getc(); |
452R142039 | 0:ac0ad47ee366 | 182 | if(c == 'z') { |
452R142039 | 0:ac0ad47ee366 | 183 | y = 0; |
452R142039 | 0:ac0ad47ee366 | 184 | } else { |
452R142039 | 0:ac0ad47ee366 | 185 | y = 1; |
452R142039 | 0:ac0ad47ee366 | 186 | } |
452R142039 | 0:ac0ad47ee366 | 187 | }while(y == 1); |
452R142039 | 0:ac0ad47ee366 | 188 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 189 | pc.printf("入力2-A\n"); |
452R142039 | 0:ac0ad47ee366 | 190 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 191 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 192 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 193 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 194 | if(vep1 == 1) { |
452R142039 | 0:ac0ad47ee366 | 195 | pc.printf("入力2-A\n"); |
452R142039 | 0:ac0ad47ee366 | 196 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 197 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 198 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 199 | input1 = 3; |
452R142039 | 0:ac0ad47ee366 | 200 | y = 10; |
452R142039 | 0:ac0ad47ee366 | 201 | } |
452R142039 | 0:ac0ad47ee366 | 202 | } |
452R142039 | 0:ac0ad47ee366 | 203 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 204 | pc.printf("入力2-B\n"); |
452R142039 | 0:ac0ad47ee366 | 205 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 206 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 207 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 208 | wait(0.5); |
452R142039 | 0:ac0ad47ee366 | 209 | if(vep2 == 1) { |
452R142039 | 0:ac0ad47ee366 | 210 | pc.printf("入力2-B\n"); |
452R142039 | 0:ac0ad47ee366 | 211 | pc.printf("aの入力電圧は%f ",vep1.read()); |
452R142039 | 0:ac0ad47ee366 | 212 | pc.printf("bの入力電圧は%f ",vep2.read()); |
452R142039 | 0:ac0ad47ee366 | 213 | pc.printf("cの入力電圧は%f\n",vep3.read()); |
452R142039 | 0:ac0ad47ee366 | 214 | input1 = 1; |
452R142039 | 0:ac0ad47ee366 | 215 | y = 10; |
452R142039 | 0:ac0ad47ee366 | 216 | } |
452R142039 | 0:ac0ad47ee366 | 217 | } |
452R142039 | 0:ac0ad47ee366 | 218 | } |
452R142039 | 0:ac0ad47ee366 | 219 | } else { |
452R142039 | 0:ac0ad47ee366 | 220 | input1 = 4; |
452R142039 | 0:ac0ad47ee366 | 221 | y += 2; |
452R142039 | 0:ac0ad47ee366 | 222 | } |
452R142039 | 0:ac0ad47ee366 | 223 | }while(y < 10); |
452R142039 | 0:ac0ad47ee366 | 224 | |
452R142039 | 0:ac0ad47ee366 | 225 | |
452R142039 | 0:ac0ad47ee366 | 226 | //入力A-Aに分岐・ターンテーブルを30度回転さる |
452R142039 | 0:ac0ad47ee366 | 227 | switch(input1) { |
452R142039 | 0:ac0ad47ee366 | 228 | case 1: |
452R142039 | 0:ac0ad47ee366 | 229 | myled1 = 1; |
452R142039 | 0:ac0ad47ee366 | 230 | pc.printf("Aの入力を確認しました\nターンテーブルのAを正面に運びます\n"); |
452R142039 | 0:ac0ad47ee366 | 231 | |
452R142039 | 0:ac0ad47ee366 | 232 | /* myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 233 | myrx64.SetGoal(0); |
452R142039 | 0:ac0ad47ee366 | 234 | wait(3);*/ |
452R142039 | 0:ac0ad47ee366 | 235 | |
452R142039 | 0:ac0ad47ee366 | 236 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 237 | pc.printf("before\nanglerx = %d\n", anglerx); |
452R142039 | 0:ac0ad47ee366 | 238 | |
452R142039 | 0:ac0ad47ee366 | 239 | myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 240 | myrx64.SetGoal(0);//T-motor30度回転 |
452R142039 | 0:ac0ad47ee366 | 241 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 242 | |
452R142039 | 0:ac0ad47ee366 | 243 | do{ |
452R142039 | 0:ac0ad47ee366 | 244 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 245 | }while(anglerx >= 3);//T-motor角度を20~40度に抑える |
452R142039 | 0:ac0ad47ee366 | 246 | |
452R142039 | 0:ac0ad47ee366 | 247 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 248 | pc.printf("after\nanglerx = %d\n", anglerx);//T-motor角度表示 |
452R142039 | 0:ac0ad47ee366 | 249 | |
452R142039 | 0:ac0ad47ee366 | 250 | /* myrx183.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 251 | myrx183.SetGoal(132); |
452R142039 | 0:ac0ad47ee366 | 252 | myrx184.SetMode(0);z |
452R142039 | 0:ac0ad47ee366 | 253 | myrx184.SetGoal(288); |
452R142039 | 0:ac0ad47ee366 | 254 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 255 | |
452R142039 | 0:ac0ad47ee366 | 256 | angleax3 = myax183.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 257 | ngleax4 = myax184.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 258 | pc.printf("before\nangleax3 = %d\nangleax4 = %d\n", angleax3, angleax4); |
452R142039 | 0:ac0ad47ee366 | 259 | |
452R142039 | 0:ac0ad47ee366 | 260 | myrx183.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 261 | myrx183.SetGoal(221); |
452R142039 | 0:ac0ad47ee366 | 262 | myrx184.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 263 | myrx184.SetGoal(193); |
452R142039 | 0:ac0ad47ee366 | 264 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 265 | |
452R142039 | 0:ac0ad47ee366 | 266 | angleax3 = myax183.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 267 | angleax4 = myax184.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 268 | pc.printf("after\nangleax3 = %d\n", angleax3);*/ |
452R142039 | 0:ac0ad47ee366 | 269 | |
452R142039 | 0:ac0ad47ee366 | 270 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 271 | |
452R142039 | 0:ac0ad47ee366 | 272 | myled1 = 0; |
452R142039 | 0:ac0ad47ee366 | 273 | pc.printf("1連の動作の終了です\n初めの選択に戻ります\n\n"); |
452R142039 | 0:ac0ad47ee366 | 274 | wait(2); |
452R142039 | 0:ac0ad47ee366 | 275 | break; |
452R142039 | 0:ac0ad47ee366 | 276 | |
452R142039 | 0:ac0ad47ee366 | 277 | //入力A-Bに分岐・ターンテーブルを120度回転さる |
452R142039 | 0:ac0ad47ee366 | 278 | case 2: |
452R142039 | 0:ac0ad47ee366 | 279 | myled2 = 1; |
452R142039 | 0:ac0ad47ee366 | 280 | pc.printf("Bの入力を確認しました\nターンテーブルのBを正面に運びます\n"); |
452R142039 | 0:ac0ad47ee366 | 281 | |
452R142039 | 0:ac0ad47ee366 | 282 | /* myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 283 | myrx64.SetGoal(0); |
452R142039 | 0:ac0ad47ee366 | 284 | wait(3);*/ |
452R142039 | 0:ac0ad47ee366 | 285 | |
452R142039 | 0:ac0ad47ee366 | 286 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 287 | pc.printf("before\nanglerx = %d\n", anglerx); |
452R142039 | 0:ac0ad47ee366 | 288 | |
452R142039 | 0:ac0ad47ee366 | 289 | myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 290 | myrx64.SetGoal(121);//T-motor120度回転 |
452R142039 | 0:ac0ad47ee366 | 291 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 292 | |
452R142039 | 0:ac0ad47ee366 | 293 | do{ |
452R142039 | 0:ac0ad47ee366 | 294 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 295 | }while(anglerx <= 110 || anglerx >= 130);//T-motor角度を110~130度に抑える |
452R142039 | 0:ac0ad47ee366 | 296 | |
452R142039 | 0:ac0ad47ee366 | 297 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 298 | pc.printf("after\nanglerx = %d\n", anglerx);//T-motor角度表示 |
452R142039 | 0:ac0ad47ee366 | 299 | |
452R142039 | 0:ac0ad47ee366 | 300 | /* myrx183.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 301 | myrx183.SetGoal(132); |
452R142039 | 0:ac0ad47ee366 | 302 | myrx184.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 303 | myrx184.SetGoal(288); |
452R142039 | 0:ac0ad47ee366 | 304 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 305 | |
452R142039 | 0:ac0ad47ee366 | 306 | angleax3 = myax183.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 307 | angleax4 = myax184.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 308 | pc.printf("before\nangleax3 = %d\nangleax4 = %d\n", angleax3, angleax4); |
452R142039 | 0:ac0ad47ee366 | 309 | |
452R142039 | 0:ac0ad47ee366 | 310 | myrx183.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 311 | myrx183.SetGoal(221); |
452R142039 | 0:ac0ad47ee366 | 312 | myrx184.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 313 | myrx184.SetGoal(193); |
452R142039 | 0:ac0ad47ee366 | 314 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 315 | |
452R142039 | 0:ac0ad47ee366 | 316 | angleax3 = myax183.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 317 | angleax4 = myax184.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 318 | pc.printf("after\nangleax3 = %d\nangleax4 = %d\n", angleax3, angleax4);*/ |
452R142039 | 0:ac0ad47ee366 | 319 | |
452R142039 | 0:ac0ad47ee366 | 320 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 321 | myled2 = 0; |
452R142039 | 0:ac0ad47ee366 | 322 | pc.printf("1連の動作の終了です\n初めの選択に戻ります\n\n"); |
452R142039 | 0:ac0ad47ee366 | 323 | wait(2); |
452R142039 | 0:ac0ad47ee366 | 324 | break; |
452R142039 | 0:ac0ad47ee366 | 325 | |
452R142039 | 0:ac0ad47ee366 | 326 | //入力C分岐・ターンテーブルを240度回転さる |
452R142039 | 0:ac0ad47ee366 | 327 | case 3: |
452R142039 | 0:ac0ad47ee366 | 328 | myled3 = 1; |
452R142039 | 0:ac0ad47ee366 | 329 | pc.printf("Cの入力を確認しました\nターンテーブルのCを正面に運びます\n"); |
452R142039 | 0:ac0ad47ee366 | 330 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 331 | |
452R142039 | 0:ac0ad47ee366 | 332 | /* myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 333 | myrx64.SetGoal(0); |
452R142039 | 0:ac0ad47ee366 | 334 | wait(3);*/ |
452R142039 | 0:ac0ad47ee366 | 335 | |
452R142039 | 0:ac0ad47ee366 | 336 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 337 | pc.printf("before\nanglerx = %d\n", anglerx); |
452R142039 | 0:ac0ad47ee366 | 338 | |
452R142039 | 0:ac0ad47ee366 | 339 | myrx64.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 340 | myrx64.SetGoal(240);//T-motor240度回転 |
452R142039 | 0:ac0ad47ee366 | 341 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 342 | |
452R142039 | 0:ac0ad47ee366 | 343 | do{ |
452R142039 | 0:ac0ad47ee366 | 344 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 345 | }while(anglerx <= 230);//T-motor角度を230度以上にする |
452R142039 | 0:ac0ad47ee366 | 346 | |
452R142039 | 0:ac0ad47ee366 | 347 | anglerx = myrx64.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 348 | pc.printf("after\nanglerx = %d\n", anglerx);//T-motor角度表示 |
452R142039 | 0:ac0ad47ee366 | 349 | |
452R142039 | 0:ac0ad47ee366 | 350 | /* myrx183.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 351 | myrx183.SetGoal(132); |
452R142039 | 0:ac0ad47ee366 | 352 | myrx184.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 353 | myrx184.SetGoal(288); |
452R142039 | 0:ac0ad47ee366 | 354 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 355 | |
452R142039 | 0:ac0ad47ee366 | 356 | angleax3 = myax183.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 357 | angleax4 = myax184.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 358 | pc.printf("before\nangleax3 = %d\nangleax4 = %d\n", angleax3, angleax4); |
452R142039 | 0:ac0ad47ee366 | 359 | |
452R142039 | 0:ac0ad47ee366 | 360 | myrx183.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 361 | myrx183.SetGoal(221); |
452R142039 | 0:ac0ad47ee366 | 362 | myrx184.SetMode(0); |
452R142039 | 0:ac0ad47ee366 | 363 | myrx184.SetGoal(193); |
452R142039 | 0:ac0ad47ee366 | 364 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 365 | |
452R142039 | 0:ac0ad47ee366 | 366 | angleax3 = myax183.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 367 | angleax4 = myax184.GetPosition(); |
452R142039 | 0:ac0ad47ee366 | 368 | pc.printf("after\nangleax3 = %d\nangleax4 = %d\n", angleax3, angleax4);*/ |
452R142039 | 0:ac0ad47ee366 | 369 | |
452R142039 | 0:ac0ad47ee366 | 370 | wait(3); |
452R142039 | 0:ac0ad47ee366 | 371 | myled3 = 0; |
452R142039 | 0:ac0ad47ee366 | 372 | pc.printf("1連の動作の終了です\n初めの選択に戻ります\n\n"); |
452R142039 | 0:ac0ad47ee366 | 373 | wait(2); |
452R142039 | 0:ac0ad47ee366 | 374 | break; |
452R142039 | 0:ac0ad47ee366 | 375 | |
452R142039 | 0:ac0ad47ee366 | 376 | //入力判定なし |
452R142039 | 0:ac0ad47ee366 | 377 | case 4: |
452R142039 | 0:ac0ad47ee366 | 378 | myled4 = 1; |
452R142039 | 0:ac0ad47ee366 | 379 | |
452R142039 | 0:ac0ad47ee366 | 380 | pc.printf("入力を確認できませんでした\n初めの選択に戻ります\n\n"); |
452R142039 | 0:ac0ad47ee366 | 381 | wait(2); |
452R142039 | 0:ac0ad47ee366 | 382 | |
452R142039 | 0:ac0ad47ee366 | 383 | myled4 = 0; |
452R142039 | 0:ac0ad47ee366 | 384 | |
452R142039 | 0:ac0ad47ee366 | 385 | break; |
452R142039 | 0:ac0ad47ee366 | 386 | |
452R142039 | 0:ac0ad47ee366 | 387 | } |
452R142039 | 0:ac0ad47ee366 | 388 | } |
452R142039 | 0:ac0ad47ee366 | 389 | } |