2015_robocon_bteam / Mbed 2 deprecated 2015robot_main

Dependencies:   PID QEI mbed

Fork of 2015robot_main by Naoto Deguchi

Committer:
DeguNaoto
Date:
Wed Oct 14 10:05:55 2015 +0000
Revision:
88:cbed08732872
Parent:
87:6b6b6611d33f
Child:
90:9fe39ebe721f
20151014????

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