2015_robocon_bteam / Mbed 2 deprecated 2015robot_main_zenkoku

Dependencies:   PID QEI mbed

Committer:
DeguNaoto
Date:
Sun Nov 08 10:56:27 2015 +0000
Revision:
26:760f1bce8214
Parent:
24:6d2573d6f2b6
Child:
27:88863fab46c0
220151108 ???????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DeguNaoto 0:b613dc16f27d 1 #ifndef AUTOMODE_H
DeguNaoto 0:b613dc16f27d 2 #define AUTOMODE_H
DeguNaoto 0:b613dc16f27d 3
DeguNaoto 0:b613dc16f27d 4 /***PID Controller***/
DeguNaoto 26:760f1bce8214 5 PID velocity_controller(9.0,5274.0,0.0,RATE);
DeguNaoto 26:760f1bce8214 6 PID direction_controller(36.0,3.5,0.0,RATE);
DeguNaoto 0:b613dc16f27d 7 //PID direction_controller(36.0,3.0,0.0,RATE);
DeguNaoto 0:b613dc16f27d 8
DeguNaoto 0:b613dc16f27d 9 Timeout OpStart;
DeguNaoto 0:b613dc16f27d 10
DeguNaoto 0:b613dc16f27d 11 void OpponentsStart(){
DeguNaoto 0:b613dc16f27d 12 spcount = 0.0;
DeguNaoto 0:b613dc16f27d 13 step = 15;
DeguNaoto 0:b613dc16f27d 14 CStep = 15;
DeguNaoto 0:b613dc16f27d 15 flaga = 1;
DeguNaoto 0:b613dc16f27d 16 flagf = 1;
DeguNaoto 0:b613dc16f27d 17 }
DeguNaoto 0:b613dc16f27d 18
DeguNaoto 0:b613dc16f27d 19 /***IM920 correspondence***/
DeguNaoto 0:b613dc16f27d 20 void autoIM920() {
DeguNaoto 0:b613dc16f27d 21 if(b==7){ /*mode change*/
DeguNaoto 0:b613dc16f27d 22 if(edge7) {
DeguNaoto 0:b613dc16f27d 23 edge7=0;
DeguNaoto 0:b613dc16f27d 24 autoflag=0;
DeguNaoto 0:b613dc16f27d 25 Indicator4=0;
DeguNaoto 0:b613dc16f27d 26 IndicatorAuto=1;
DeguNaoto 6:ca3a74a93ae2 27 direction_controller.setTunings(12.0,9.0,0.0);
DeguNaoto 26:760f1bce8214 28 targ_velocity=0.0;
DeguNaoto 0:b613dc16f27d 29 flaga=0;
DeguNaoto 26:760f1bce8214 30 spcount=speed;
DeguNaoto 26:760f1bce8214 31 dpcount=0.0;
DeguNaoto 0:b613dc16f27d 32 }
DeguNaoto 0:b613dc16f27d 33 }
DeguNaoto 0:b613dc16f27d 34 else if((b==6)&&(!flaga)){ /*start*/
DeguNaoto 0:b613dc16f27d 35 if(edge6){
DeguNaoto 0:b613dc16f27d 36 edge6=0;
DeguNaoto 0:b613dc16f27d 37 resetState();
DeguNaoto 0:b613dc16f27d 38 flagf=1;
DeguNaoto 0:b613dc16f27d 39 spcount=0.0;
DeguNaoto 26:760f1bce8214 40 dpcount=0.0;
DeguNaoto 2:738b28f6a04b 41 direction_controller.setBias(0.0);
DeguNaoto 0:b613dc16f27d 42 #ifdef BLUE
DeguNaoto 17:726b6f53a457 43 sendData(5,69); //right
DeguNaoto 0:b613dc16f27d 44 wait(0.05);
DeguNaoto 0:b613dc16f27d 45 sendData(4,69); //left
DeguNaoto 17:726b6f53a457 46 wait(0.05);
DeguNaoto 17:726b6f53a457 47 sendData(6,59); //middle
DeguNaoto 0:b613dc16f27d 48 stateR = 69;
DeguNaoto 0:b613dc16f27d 49 stateL = 69;
DeguNaoto 0:b613dc16f27d 50 #else
DeguNaoto 0:b613dc16f27d 51 sendData(5,69); //right
DeguNaoto 0:b613dc16f27d 52 wait(0.05);
DeguNaoto 0:b613dc16f27d 53 sendData(4,69); //left
DeguNaoto 17:726b6f53a457 54 wait(0.05);
DeguNaoto 17:726b6f53a457 55 sendData(6,59); //middle
DeguNaoto 0:b613dc16f27d 56 stateR = 69;
DeguNaoto 0:b613dc16f27d 57 stateL = 69;
DeguNaoto 0:b613dc16f27d 58 #endif
DeguNaoto 0:b613dc16f27d 59 step = 0;
DeguNaoto 0:b613dc16f27d 60 CStep = 1;
DeguNaoto 0:b613dc16f27d 61 flaga = 1;
DeguNaoto 0:b613dc16f27d 62 }
DeguNaoto 0:b613dc16f27d 63 }
DeguNaoto 21:bdf8ac5c200c 64 /*if(a2){
DeguNaoto 0:b613dc16f27d 65 skip = 1;
DeguNaoto 0:b613dc16f27d 66 }
DeguNaoto 0:b613dc16f27d 67 else if(!a2){
DeguNaoto 0:b613dc16f27d 68 skip = 0;
DeguNaoto 21:bdf8ac5c200c 69 }*/
DeguNaoto 21:bdf8ac5c200c 70 skip=0;
DeguNaoto 0:b613dc16f27d 71 if(b!=1) edge1=1;
DeguNaoto 0:b613dc16f27d 72 if(b!=2) edge2=1;
DeguNaoto 0:b613dc16f27d 73 if(b!=3) edge3=1;
DeguNaoto 0:b613dc16f27d 74 if(b!=4) edge4=1;
DeguNaoto 0:b613dc16f27d 75 if(b!=5) edge5=1;
DeguNaoto 0:b613dc16f27d 76 if(b!=6) edge6=1;
DeguNaoto 0:b613dc16f27d 77 if(b!=7) edge7=1;
DeguNaoto 0:b613dc16f27d 78 if(b!=8) edge8=1;
DeguNaoto 0:b613dc16f27d 79 if(b!=9) edge9=1;
DeguNaoto 0:b613dc16f27d 80 }
DeguNaoto 0:b613dc16f27d 81
DeguNaoto 0:b613dc16f27d 82
DeguNaoto 0:b613dc16f27d 83 #endif /*autoMode.h*/