2015_robocon_bteam / Mbed 2 deprecated 2015robot_main

Dependencies:   PID QEI mbed

Fork of 2015robot_main by Naoto Deguchi

Committer:
DeguNaoto
Date:
Tue Oct 27 07:49:43 2015 +0000
Revision:
114:325e4c158141
Parent:
113:ba121edf2588
??????????; ????ver

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DeguNaoto 22:3996c3f41922 1 #ifndef MANUALMODE_H
DeguNaoto 22:3996c3f41922 2 #define MANUALMODE_H
DeguNaoto 22:3996c3f41922 3
DeguNaoto 114:325e4c158141 4 //赤修正
DeguNaoto 114:325e4c158141 5
DeguNaoto 57:3fbd487e055e 6 #ifdef IM920
DeguNaoto 52:d9e1629da852 7 void manualMoveIM920()
DeguNaoto 31:74e77ef0831c 8 {
DeguNaoto 114:325e4c158141 9 #ifdef BLUE
DeguNaoto 87:6b6b6611d33f 10 if(Y<2) {
DeguNaoto 114:325e4c158141 11 Move_l(-0.6);
DeguNaoto 114:325e4c158141 12 Move_r(0.6);
DeguNaoto 51:cb430192b28b 13 }
DeguNaoto 87:6b6b6611d33f 14 else if(Y>6) {
DeguNaoto 108:7eb434cfcbd7 15 Move_l(0.6);
DeguNaoto 108:7eb434cfcbd7 16 Move_r(-0.6);
DeguNaoto 51:cb430192b28b 17 }
DeguNaoto 51:cb430192b28b 18 else {
DeguNaoto 83:e1638c58e1f1 19 if(X<2) {
DeguNaoto 79:7f86e18f40ef 20 Move_l(0.6);
DeguNaoto 114:325e4c158141 21 Move_r(0.6);
DeguNaoto 83:e1638c58e1f1 22 } else if(X>6) {
DeguNaoto 114:325e4c158141 23 Move_l(-0.6);
DeguNaoto 79:7f86e18f40ef 24 Move_r(-0.6);
DeguNaoto 31:74e77ef0831c 25 } else {
DeguNaoto 24:271da6144a02 26 Move_l(0.0);
DeguNaoto 24:271da6144a02 27 Move_r(0.0);
DeguNaoto 24:271da6144a02 28 }
DeguNaoto 52:d9e1629da852 29 }
DeguNaoto 114:325e4c158141 30 #else
DeguNaoto 114:325e4c158141 31 if(Y<2) {
DeguNaoto 114:325e4c158141 32 Move_l(0.6);
DeguNaoto 114:325e4c158141 33 Move_r(-0.6);
DeguNaoto 114:325e4c158141 34 }
DeguNaoto 114:325e4c158141 35 else if(Y>6) {
DeguNaoto 114:325e4c158141 36 Move_l(-0.6);
DeguNaoto 114:325e4c158141 37 Move_r(0.6);
DeguNaoto 114:325e4c158141 38 }
DeguNaoto 114:325e4c158141 39 else {
DeguNaoto 114:325e4c158141 40 if(X<2) {
DeguNaoto 114:325e4c158141 41 Move_l(-0.6);
DeguNaoto 114:325e4c158141 42 Move_r(-0.6);
DeguNaoto 114:325e4c158141 43 } else if(X>6) {
DeguNaoto 114:325e4c158141 44 Move_l(0.6);
DeguNaoto 114:325e4c158141 45 Move_r(0.6);
DeguNaoto 114:325e4c158141 46 } else {
DeguNaoto 114:325e4c158141 47 Move_l(0.0);
DeguNaoto 114:325e4c158141 48 Move_r(0.0);
DeguNaoto 114:325e4c158141 49 }
DeguNaoto 114:325e4c158141 50 }
DeguNaoto 114:325e4c158141 51 #endif
DeguNaoto 23:5c56747bcc43 52 }
DeguNaoto 52:d9e1629da852 53 void manualIM920()
DeguNaoto 31:74e77ef0831c 54 {
DeguNaoto 52:d9e1629da852 55 if(b==7){ /*mode change*/
DeguNaoto 52:d9e1629da852 56 if(edge7){
DeguNaoto 52:d9e1629da852 57 edge7=0;
DeguNaoto 52:d9e1629da852 58 autoflag=1;
DeguNaoto 52:d9e1629da852 59 Indicator4=1;
DeguNaoto 52:d9e1629da852 60 IndicatorAuto=0;
DeguNaoto 101:b67d33e56b66 61 Move_l(0.0);
DeguNaoto 101:b67d33e56b66 62 Move_r(0.0);
DeguNaoto 107:579bb1ab67d9 63 resetState();
DeguNaoto 87:6b6b6611d33f 64 flaga=0;
DeguNaoto 101:b67d33e56b66 65 step=114;
DeguNaoto 101:b67d33e56b66 66 CStep=114;
DeguNaoto 101:b67d33e56b66 67 spcount=speed;
DeguNaoto 52:d9e1629da852 68 }
DeguNaoto 52:d9e1629da852 69 }
DeguNaoto 87:6b6b6611d33f 70 else if(b==5){
DeguNaoto 87:6b6b6611d33f 71 if(edge5){
DeguNaoto 87:6b6b6611d33f 72 edge5=0;
DeguNaoto 112:717acc7c99f9 73 resetSwingSpeed = 1;
unicore32 93:9cacc1763463 74 interruptSwingSpeed.attach(&countSwingSpeed, 0.05);
DeguNaoto 114:325e4c158141 75 swingf=1;
DeguNaoto 90:9fe39ebe721f 76 // targSwingRadVelocity = swingspeed;
unicore32 91:83c2e0381384 77 /*for(float i=0.0;i<0.6;i+=0.01){
DeguNaoto 87:6b6b6611d33f 78 Motor_swing=i;
DeguNaoto 87:6b6b6611d33f 79 wait(0.05);
DeguNaoto 87:6b6b6611d33f 80 }
unicore32 91:83c2e0381384 81 Motor_swing = 0.6;*/
DeguNaoto 60:4a75f3f3a934 82 }
DeguNaoto 52:d9e1629da852 83 }
DeguNaoto 87:6b6b6611d33f 84 else if(b==8){
DeguNaoto 87:6b6b6611d33f 85 if(edge8){
DeguNaoto 87:6b6b6611d33f 86 edge8=0;
DeguNaoto 57:3fbd487e055e 87 enableShoot=1;
DeguNaoto 52:d9e1629da852 88 }
DeguNaoto 83:e1638c58e1f1 89 }
DeguNaoto 87:6b6b6611d33f 90 else if(b==9){
DeguNaoto 101:b67d33e56b66 91 interruptSwingSpeed.detach();
unicore32 91:83c2e0381384 92 targSwingRadVelocity = 0.0;
unicore32 91:83c2e0381384 93 contSwing.reset();
DeguNaoto 114:325e4c158141 94 swingf=0;
DeguNaoto 114:325e4c158141 95 Motor_swing = 0.0;
DeguNaoto 87:6b6b6611d33f 96 }
DeguNaoto 74:5dd06d211b12 97 else if(b==1){ /*L down*/
DeguNaoto 74:5dd06d211b12 98 if(edge1){
DeguNaoto 74:5dd06d211b12 99 edge1=0;
DeguNaoto 74:5dd06d211b12 100 if(stateL!=1) stateL--;
DeguNaoto 74:5dd06d211b12 101 sendData(4,stateL);
DeguNaoto 74:5dd06d211b12 102 }
DeguNaoto 74:5dd06d211b12 103 }
DeguNaoto 74:5dd06d211b12 104 else if(b==2){ /*L up*/
DeguNaoto 74:5dd06d211b12 105 if(edge2){
DeguNaoto 74:5dd06d211b12 106 edge2=0;
unicore32 78:abb760e0a935 107 if(stateL!=92) stateL++;
DeguNaoto 74:5dd06d211b12 108 sendData(4,stateL);
DeguNaoto 74:5dd06d211b12 109 }
DeguNaoto 52:d9e1629da852 110 }
DeguNaoto 74:5dd06d211b12 111 else if(b==3){ /*R down*/
DeguNaoto 74:5dd06d211b12 112 if(edge3){
DeguNaoto 74:5dd06d211b12 113 edge3=0;
DeguNaoto 74:5dd06d211b12 114 if(stateR!=1) stateR--;
DeguNaoto 74:5dd06d211b12 115 sendData(5,stateR);
DeguNaoto 74:5dd06d211b12 116 }
DeguNaoto 74:5dd06d211b12 117 }
DeguNaoto 74:5dd06d211b12 118 else if(b==4){ /*R up*/
DeguNaoto 74:5dd06d211b12 119 if(edge4){
DeguNaoto 74:5dd06d211b12 120 edge4=0;
unicore32 78:abb760e0a935 121 if(stateR!=92) stateR++;
DeguNaoto 74:5dd06d211b12 122 sendData(5,stateR);
DeguNaoto 74:5dd06d211b12 123 }
DeguNaoto 52:d9e1629da852 124 }
DeguNaoto 52:d9e1629da852 125 if(b!=7) edge7=1;
DeguNaoto 52:d9e1629da852 126 if(b!=1) edge1=1;
DeguNaoto 52:d9e1629da852 127 if(b!=2) edge2=1;
DeguNaoto 52:d9e1629da852 128 if(b!=3) edge3=1;
DeguNaoto 52:d9e1629da852 129 if(b!=4) edge4=1;
DeguNaoto 52:d9e1629da852 130 if(b!=5) edge5=1;
DeguNaoto 83:e1638c58e1f1 131 if(b!=8) edge8=1;
DeguNaoto 83:e1638c58e1f1 132 if(b!=9) edge9=1;
DeguNaoto 57:3fbd487e055e 133 }
DeguNaoto 57:3fbd487e055e 134 #else
DeguNaoto 57:3fbd487e055e 135 void manualMovePS3()
DeguNaoto 57:3fbd487e055e 136 {
DeguNaoto 114:325e4c158141 137 #ifdef BLUE
DeguNaoto 66:14df82661dfa 138 if(analog_ly>50) {
DeguNaoto 57:3fbd487e055e 139 Move_l(-0.4);
DeguNaoto 57:3fbd487e055e 140 Move_r(0.4);
DeguNaoto 57:3fbd487e055e 141 }
DeguNaoto 66:14df82661dfa 142 else if(analog_ly<-50) {
DeguNaoto 57:3fbd487e055e 143 Move_l(0.4);
DeguNaoto 57:3fbd487e055e 144 Move_r(-0.4);
DeguNaoto 48:64d005c70df2 145 }
DeguNaoto 57:3fbd487e055e 146 else {
DeguNaoto 66:14df82661dfa 147 if(analog_lx>50) {
DeguNaoto 79:7f86e18f40ef 148 Move_l(0.6);
DeguNaoto 79:7f86e18f40ef 149 Move_r(0.6);
DeguNaoto 66:14df82661dfa 150 } else if(analog_lx<-50) {
DeguNaoto 79:7f86e18f40ef 151 Move_l(-0.6);
DeguNaoto 79:7f86e18f40ef 152 Move_r(-0.6);
DeguNaoto 57:3fbd487e055e 153 } else {
DeguNaoto 57:3fbd487e055e 154 Move_l(0.0);
DeguNaoto 57:3fbd487e055e 155 Move_r(0.0);
DeguNaoto 57:3fbd487e055e 156 }
DeguNaoto 57:3fbd487e055e 157 }
DeguNaoto 114:325e4c158141 158 #else
DeguNaoto 114:325e4c158141 159 if(analog_ly>50) {
DeguNaoto 114:325e4c158141 160 Move_l(0.4);
DeguNaoto 114:325e4c158141 161 Move_r(-0.4);
DeguNaoto 114:325e4c158141 162 }
DeguNaoto 114:325e4c158141 163 else if(analog_ly<-50) {
DeguNaoto 114:325e4c158141 164 Move_l(-0.4);
DeguNaoto 114:325e4c158141 165 Move_r(0.4);
DeguNaoto 114:325e4c158141 166 }
DeguNaoto 114:325e4c158141 167 else {
DeguNaoto 114:325e4c158141 168 if(analog_lx>50) {
DeguNaoto 114:325e4c158141 169 Move_l(-0.6);
DeguNaoto 114:325e4c158141 170 Move_r(-0.6);
DeguNaoto 114:325e4c158141 171 } else if(analog_lx<-50) {
DeguNaoto 114:325e4c158141 172 Move_l(0.6);
DeguNaoto 114:325e4c158141 173 Move_r(0.6);
DeguNaoto 114:325e4c158141 174 } else {
DeguNaoto 114:325e4c158141 175 Move_l(0.0);
DeguNaoto 114:325e4c158141 176 Move_r(0.0);
DeguNaoto 114:325e4c158141 177 }
DeguNaoto 114:325e4c158141 178 }
DeguNaoto 114:325e4c158141 179 #endif
DeguNaoto 57:3fbd487e055e 180 }
DeguNaoto 57:3fbd487e055e 181 void manualPS3(){
DeguNaoto 57:3fbd487e055e 182 if(circle){ /*mode change*/
DeguNaoto 57:3fbd487e055e 183 if(edge_circle){
DeguNaoto 57:3fbd487e055e 184 edge_circle=0;
DeguNaoto 57:3fbd487e055e 185 autoflag=1;
DeguNaoto 57:3fbd487e055e 186 Indicator4=1;
DeguNaoto 57:3fbd487e055e 187 IndicatorAuto=0;
DeguNaoto 114:325e4c158141 188 Move_l(0.0);
DeguNaoto 114:325e4c158141 189 Move_r(0.0);
DeguNaoto 83:e1638c58e1f1 190 resetState();
DeguNaoto 114:325e4c158141 191 flaga=0;
DeguNaoto 114:325e4c158141 192 step=114;
DeguNaoto 114:325e4c158141 193 CStep=114;
DeguNaoto 114:325e4c158141 194 spcount=speed;
DeguNaoto 57:3fbd487e055e 195 }
DeguNaoto 57:3fbd487e055e 196 }
DeguNaoto 57:3fbd487e055e 197 else if(triangle){
DeguNaoto 84:919a335ac81e 198 if(edge_triangle){
DeguNaoto 84:919a335ac81e 199 edge_triangle=0;
DeguNaoto 114:325e4c158141 200 resetSwingSpeed = 1;
DeguNaoto 114:325e4c158141 201 interruptSwingSpeed.attach(&countSwingSpeed, 0.05);
DeguNaoto 114:325e4c158141 202 swingf=1;
DeguNaoto 84:919a335ac81e 203 }
DeguNaoto 57:3fbd487e055e 204 }
DeguNaoto 85:dd18a2d79956 205 else if(cross){
DeguNaoto 114:325e4c158141 206 interruptSwingSpeed.detach();
DeguNaoto 85:dd18a2d79956 207 targSwingRadVelocity = 0.0;
DeguNaoto 85:dd18a2d79956 208 contSwing.reset();
DeguNaoto 114:325e4c158141 209 swingf=0;
DeguNaoto 114:325e4c158141 210 Motor_swing = 0.0;
DeguNaoto 85:dd18a2d79956 211 }
DeguNaoto 57:3fbd487e055e 212 else if(square){
DeguNaoto 57:3fbd487e055e 213 if(edge_square){
DeguNaoto 46:30776358bd42 214 edge_square=0;
DeguNaoto 57:3fbd487e055e 215 enableShoot=1;
DeguNaoto 29:03bb1ddbe456 216 }
DeguNaoto 49:9276fda93084 217 }
DeguNaoto 74:5dd06d211b12 218 else if(left){
DeguNaoto 57:3fbd487e055e 219 sendData(1,5);
DeguNaoto 57:3fbd487e055e 220 }
DeguNaoto 74:5dd06d211b12 221 else if(right){
DeguNaoto 57:3fbd487e055e 222 sendData(1,4);
DeguNaoto 57:3fbd487e055e 223 }
DeguNaoto 74:5dd06d211b12 224 else if(l1){ /*L up*/
DeguNaoto 74:5dd06d211b12 225 if(edge_l1){
DeguNaoto 74:5dd06d211b12 226 edge_l1=0;
DeguNaoto 114:325e4c158141 227 if(stateL!=92) stateL++;
DeguNaoto 74:5dd06d211b12 228 sendData(4,stateL);
DeguNaoto 74:5dd06d211b12 229 }
DeguNaoto 74:5dd06d211b12 230 }
DeguNaoto 74:5dd06d211b12 231 else if(l2){ /*L down*/
DeguNaoto 74:5dd06d211b12 232 if(edge_l2){
DeguNaoto 74:5dd06d211b12 233 edge_l2=0;
DeguNaoto 114:325e4c158141 234 if(stateL!=1) stateL--;
DeguNaoto 74:5dd06d211b12 235 sendData(4,stateL);
DeguNaoto 74:5dd06d211b12 236 }
DeguNaoto 74:5dd06d211b12 237 }
DeguNaoto 74:5dd06d211b12 238 else if(r1){ /*R up*/
DeguNaoto 74:5dd06d211b12 239 if(edge_r1){
DeguNaoto 74:5dd06d211b12 240 edge_r1=0;
DeguNaoto 114:325e4c158141 241 if(stateR!=92) stateR++;
DeguNaoto 74:5dd06d211b12 242 sendData(5,stateR);
DeguNaoto 74:5dd06d211b12 243 }
DeguNaoto 74:5dd06d211b12 244 }
DeguNaoto 74:5dd06d211b12 245 else if(r2){ /*R down*/
DeguNaoto 74:5dd06d211b12 246 if(edge_r2){
DeguNaoto 74:5dd06d211b12 247 edge_r2=0;
DeguNaoto 114:325e4c158141 248 if(stateR!=1) stateR--;
DeguNaoto 74:5dd06d211b12 249 sendData(5,stateR);
DeguNaoto 74:5dd06d211b12 250 }
DeguNaoto 74:5dd06d211b12 251 }
DeguNaoto 29:03bb1ddbe456 252 }
DeguNaoto 57:3fbd487e055e 253 #endif
DeguNaoto 114:325e4c158141 254 #endif /*manualMode.h*/