2015_robocon_bteam / Mbed 2 deprecated 2015robot_main

Dependencies:   PID QEI mbed

Fork of 2015robot_main by Naoto Deguchi

Committer:
DeguNaoto
Date:
Sat Oct 17 06:04:49 2015 +0000
Revision:
101:b67d33e56b66
Parent:
93:9cacc1763463
Child:
105:0be5d5d64782
20151017 ?????????????

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