a

Dependencies:   AX12 mbed

Committer:
452R142039
Date:
Mon Feb 29 09:00:47 2016 +0000
Revision:
0:ac0ad47ee366
?

Who changed what in which revision?

UserRevisionLine numberNew 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 }