Revision | 443 (tree) |
---|---|
Zeit | 2020-10-03 12:28:20 |
Autor | ncxx-watanabe |
スラローム更新
@@ -10,7 +10,7 @@ | ||
10 | 10 | |
11 | 11 | #include "ev3api.h" |
12 | 12 | #include "app.h" |
13 | -/*#include "etroboc_ext.h"*/ | |
13 | +#include "etroboc_ext.h" | |
14 | 14 | #include <math.h> |
15 | 15 | #include <stdio.h> |
16 | 16 | #include <stdlib.h> |
@@ -245,8 +245,8 @@ | ||
245 | 245 | /*右前進、左後退後次モード移行 20200815*/ |
246 | 246 | if(slarom_mode == SLAROM_TURNING_FIRST) |
247 | 247 | { |
248 | - /*_log("SLAROM_TURNING_FIRST");*/ | |
249 | - if((turn_count < 175)) | |
248 | + //_log("SLAROM_TURNING_FIRST"); | |
249 | + if((turn_count < 190)) | |
250 | 250 | { |
251 | 251 | /*右輪前進*/ |
252 | 252 | forward = 30; |
@@ -269,7 +269,7 @@ | ||
269 | 269 | { |
270 | 270 | if(straight_count < 450) |
271 | 271 | { |
272 | - /*_log("SLAROM_GO_STRAIGHT_FIRST");*/ | |
272 | + //_log("SLAROM_GO_STRAIGHT_FIRST"); | |
273 | 273 | forward = 25; |
274 | 274 | turn = 0; |
275 | 275 | straight_count++; |
@@ -278,7 +278,7 @@ | ||
278 | 278 | { |
279 | 279 | if(wait_count < 200) |
280 | 280 | { |
281 | - /*_log("SLAROM_GO_STRAIGHT_FIRST_WEIT");*/ | |
281 | + // _log("SLAROM_GO_STRAIGHT_FIRST_WEIT"); | |
282 | 282 | forward = 0; |
283 | 283 | turn = 0; |
284 | 284 | wait_count++; |
@@ -294,11 +294,11 @@ | ||
294 | 294 | /*右輪後退後次モード移行 20200815*/ |
295 | 295 | else if(slarom_mode == SLAROM_TURNING_SECOND) |
296 | 296 | { |
297 | - /*_log("SLAROM_TURNING_SECOND");*/ | |
297 | + //_log("SLAROM_TURNING_SECOND"); | |
298 | 298 | //if(turn_count < 240) |
299 | 299 | if((turn_count < 250)) |
300 | 300 | { |
301 | - /*右輪後退*/ | |
301 | + /*右輪前進*/ | |
302 | 302 | forward = -20; |
303 | 303 | turn = -100 * _EDGE; |
304 | 304 | turn_count++; |
@@ -308,11 +308,11 @@ | ||
308 | 308 | forward = -30; |
309 | 309 | turn = -100 * _EDGE; |
310 | 310 | //turn_count++; |
311 | - /*_log("検知してない");*/ | |
311 | + _log("検知してない"); | |
312 | 312 | } |
313 | 313 | else if(wait_count < 100) |
314 | 314 | { |
315 | - /*_log("SLAROM_TURNING_SECOND_WEIT");*/ | |
315 | + // _log("SLAROM_TURNING_SECOND_WEIT"); | |
316 | 316 | forward = 0; |
317 | 317 | turn = 0; |
318 | 318 | wait_count++; |
@@ -327,7 +327,7 @@ | ||
327 | 327 | /*障害物検知するまで直進。検知後次モード移行 20200815*/ |
328 | 328 | else if(slarom_mode == SLAROM_OBSTACLE_DETECTION_SECOND) |
329 | 329 | { |
330 | - /*_log("SLAROM_OBSTACLE_DETECTION_SECOND");*/ | |
330 | + //_log("SLAROM_OBSTACLE_DETECTION_SECOND"); | |
331 | 331 | forward = 23; |
332 | 332 | turn = 0; |
333 | 333 | if (sonar_alert() == 1) /* 障害物検知 */ |
@@ -334,7 +334,7 @@ | ||
334 | 334 | { |
335 | 335 | if(wait_count < 200) |
336 | 336 | { |
337 | - /*_log("SLAROM_OBSTACLE_DETECTION_SECOND_WEIT");*/ | |
337 | + //_log("SLAROM_OBSTACLE_DETECTION_SECOND_WEIT"); | |
338 | 338 | forward = 0; |
339 | 339 | turn = 0; |
340 | 340 | wait_count++; |
@@ -348,8 +348,8 @@ | ||
348 | 348 | /*右後退、左前進後次モード移行 20200815*/ |
349 | 349 | else if(slarom_mode == SLAROM_TURNING_THIRD) |
350 | 350 | { |
351 | - /*_log("SLAROM_TURNING_THIRD");*/ | |
352 | - if(turn_count < 225) | |
351 | + //_log("SLAROM_TURNING_THIRD"); | |
352 | + if(turn_count < 200) | |
353 | 353 | { |
354 | 354 | forward = 30; |
355 | 355 | turn = 100 * _EDGE; |
@@ -374,7 +374,7 @@ | ||
374 | 374 | { |
375 | 375 | if(straight_count < 450) |
376 | 376 | { |
377 | - /*_log("SLAROM_GO_STRAIGHT_SECOND");*/ | |
377 | + //_log("SLAROM_GO_STRAIGHT_SECOND"); | |
378 | 378 | forward = 25; |
379 | 379 | turn = 0; |
380 | 380 | straight_count++; |
@@ -383,7 +383,7 @@ | ||
383 | 383 | { |
384 | 384 | if(wait_count < 350) |
385 | 385 | { |
386 | - /*_log("SLAROM_GO_STRAIGHT_SECOND_WEIT");*/ | |
386 | + //_log("SLAROM_GO_STRAIGHT_SECOND_WEIT"); | |
387 | 387 | forward = 0; |
388 | 388 | turn = 0; |
389 | 389 | wait_count++; |
@@ -399,7 +399,7 @@ | ||
399 | 399 | /*右輪後退後次モード移行 20200815*/ |
400 | 400 | else if(slarom_mode == SLAROM_TURNING_4TH) |
401 | 401 | { |
402 | - /*_log("SLAROM_TURNING_4TH");*/ | |
402 | + //_log("SLAROM_TURNING_4TH"); | |
403 | 403 | /*左タイヤ後退*/ |
404 | 404 | if(turn_count < 150) |
405 | 405 | { |
@@ -408,7 +408,7 @@ | ||
408 | 408 | turn_count++; |
409 | 409 | } |
410 | 410 | /*右タイヤ前進*/ |
411 | - else if((turn_count >= 150) && (turn_count < 300)) | |
411 | + else if((turn_count >= 150) && (turn_count < 400)) | |
412 | 412 | { |
413 | 413 | forward = 20; |
414 | 414 | turn = -100 * _EDGE; |
@@ -429,7 +429,7 @@ | ||
429 | 429 | } |
430 | 430 | else if(slarom_mode == SLAROM_OBSTACLE_DETECTION_THIRD) |
431 | 431 | { |
432 | - /*_log("SLAROM_OBSTACLE_DETECTION_THIRD");*/ | |
432 | + //_log("SLAROM_OBSTACLE_DETECTION_THIRD"); | |
433 | 433 | forward = 20; |
434 | 434 | turn = 0; |
435 | 435 | if (sonar_alert() == 1) /* 障害物検知 */ |
@@ -440,8 +440,8 @@ | ||
440 | 440 | } |
441 | 441 | else if(slarom_mode == SLAROM_TURNING_5th) |
442 | 442 | { |
443 | - /*_log("SLAROM_TURNING_5th");*/ | |
444 | - if(turn_count < 175) | |
443 | + //_log("SLAROM_TURNING_5th"); | |
444 | + if(turn_count < 150) | |
445 | 445 | { |
446 | 446 | /*左輪後退*/ |
447 | 447 | forward = -30; |
@@ -448,7 +448,7 @@ | ||
448 | 448 | turn = 100 * _EDGE; |
449 | 449 | turn_count++; |
450 | 450 | } |
451 | - else if((turn_count >= 200) && (turn_count < 210)) | |
451 | + else if((turn_count >= 150) && (turn_count < 160)) | |
452 | 452 | { |
453 | 453 | /*右輪前進*/ |
454 | 454 | forward = 30; |
@@ -466,7 +466,7 @@ | ||
466 | 466 | { |
467 | 467 | if(straight_count < 650) |
468 | 468 | { |
469 | - /*_log("SLAROM_GO_STRAIGHT_THIRD");*/ | |
469 | + //_log("SLAROM_GO_STRAIGHT_THIRD"); | |
470 | 470 | forward = 25; |
471 | 471 | turn = 0; |
472 | 472 | straight_count++; |
@@ -475,7 +475,7 @@ | ||
475 | 475 | { |
476 | 476 | if(wait_count < 200) |
477 | 477 | { |
478 | - /*_log("SLAROM_GO_STRAIGHT_THIRD_WEIT");*/ | |
478 | + //_log("SLAROM_GO_STRAIGHT_THIRD_WEIT"); | |
479 | 479 | forward = 0; |
480 | 480 | turn = 0; |
481 | 481 | wait_count++; |
@@ -491,7 +491,7 @@ | ||
491 | 491 | /*右輪後退後次モード移行 20200815*/ |
492 | 492 | else if(slarom_mode == SLAROM_TURNING_6th) |
493 | 493 | { |
494 | - /*_log("SLAROM_TURNING_6th");*/ | |
494 | + //_log("SLAROM_TURNING_6th"); | |
495 | 495 | if(turn_count < 350) |
496 | 496 | { |
497 | 497 | forward = -35; |
@@ -508,7 +508,7 @@ | ||
508 | 508 | { |
509 | 509 | if(straight_count < 700) |
510 | 510 | { |
511 | - /*log("SLAROM_GO_STRAIGHT_4th");*/ | |
511 | + //_log("SLAROM_GO_STRAIGHT_4th"); | |
512 | 512 | forward = 25; |
513 | 513 | turn = 0; |
514 | 514 | straight_count++; |
@@ -517,7 +517,7 @@ | ||
517 | 517 | { |
518 | 518 | if(wait_count < 200) |
519 | 519 | { |
520 | - /*_log("SLAROM_GO_STRAIGHT_4th");*/ | |
520 | + //_log("SLAROM_GO_STRAIGHT_4th"); | |
521 | 521 | forward = 0; |
522 | 522 | turn = 0; |
523 | 523 | wait_count++; |
@@ -532,8 +532,8 @@ | ||
532 | 532 | } |
533 | 533 | else if(slarom_mode == SLAROM_TURNING_7th) |
534 | 534 | { |
535 | - /*_log("SLAROM_TURNING_6th");*/ | |
536 | - if(turn_count < 400) | |
535 | + //_log("SLAROM_TURNING_6th"); | |
536 | + if(turn_count < 300) | |
537 | 537 | { |
538 | 538 | forward = 20; |
539 | 539 | turn = 100 * _EDGE; |
@@ -548,20 +548,21 @@ | ||
548 | 548 | else if(slarom_mode == SLAROM_LINE_TRACE) |
549 | 549 | { |
550 | 550 | |
551 | - /*_log("SLAROM_LINE_TRACE");*/ | |
551 | + //_log("SLAROM_LINE_TRACE"); | |
552 | 552 | /* カラー値取得 20200815 */ |
553 | 553 | color_sensor_reflect = ev3_color_sensor_get_reflect(color_sensor); |
554 | 554 | sprintf(&color_sensor_reflect_char, "数値:%ld", color_sensor_reflect); |
555 | - /*_log(&color_sensor_reflect_char);*/ | |
555 | + _log(&color_sensor_reflect_char); | |
556 | 556 | if(count < 1000) |
557 | 557 | { |
558 | - ev3_motor_set_power(EV3_PORT_D, 75); | |
558 | + forward = 10; | |
559 | + //ev3_motor_set_power(EV3_PORT_D, 75); | |
559 | 560 | count++; |
560 | 561 | } |
561 | 562 | else if(count < 100000) |
562 | 563 | { |
563 | - forward = 15; /* 前進命令 */ | |
564 | - if (ev3_color_sensor_get_reflect(color_sensor) >= 6) | |
564 | + forward = 10; /* 前進命令 */ | |
565 | + if ((ev3_color_sensor_get_reflect(color_sensor) >= 19) && (ev3_color_sensor_get_reflect(color_sensor) <= 23)) | |
565 | 566 | { |
566 | 567 | turn = -90 * _EDGE; /* 右旋回命令 (右コースは逆) */ |
567 | 568 | } |
@@ -573,7 +574,7 @@ | ||
573 | 574 | } |
574 | 575 | else |
575 | 576 | { |
576 | - /*_log("終了");*/ | |
577 | + _log("終了"); | |
577 | 578 | forward = 0; |
578 | 579 | turn = 0 * _EDGE; |
579 | 580 | } |
@@ -580,7 +581,7 @@ | ||
580 | 581 | } |
581 | 582 | else if(count < 600) |
582 | 583 | { |
583 | - /*_log("LINE_TRACE");*/ | |
584 | + //_log("LINE_TRACE"); | |
584 | 585 | |
585 | 586 | ev3_motor_set_power(EV3_PORT_A, -75); |
586 | 587 | forward = 15; /* 前進命令 */ |
@@ -604,7 +605,7 @@ | ||
604 | 605 | /*シミュレーターリセット時初期化処理 20200815*/ |
605 | 606 | else |
606 | 607 | { |
607 | - /*_log("初期化");*/ | |
608 | + //_log("初期化"); | |
608 | 609 | forward = 20; |
609 | 610 | turn = 0 * _EDGE; |
610 | 611 | ev3_motor_set_power(EV3_PORT_A, 75); |
@@ -685,8 +686,8 @@ | ||
685 | 686 | } |
686 | 687 | |
687 | 688 | /* 障害物までの距離取得 20200815 */ |
688 | - /*snprintf(distance_char,25,"距離:%d",distance);*/ | |
689 | - /*printf(distance_char);*/ | |
689 | + //snprintf(distance_char,25,"距離:%d",distance); | |
690 | + //printf(distance_char); | |
690 | 691 | |
691 | 692 | if ((slarom_mode == SLAROM_TURNING_FIRST) && (distance >= SONAR_ALERT_DISTANCE_FIRST_TURN) && (distance >= 0)) |
692 | 693 | { |
@@ -704,7 +705,7 @@ | ||
704 | 705 | alert = 1; /* 障害物を検知 */ |
705 | 706 | //_log("う"); |
706 | 707 | } |
707 | - else if((slarom_mode == SLAROM_TURNING_4TH) && (distance - distance_before <= -3) && (distance >= 0)) | |
708 | + else if((slarom_mode == SLAROM_TURNING_4TH) && (distance - distance_before <= 50) && (distance >= 0)) | |
708 | 709 | { |
709 | 710 | alert = 1; /* 障害物を検知 */ |
710 | 711 | //_log("え"); |