ロボカップ2013のジャパンオープンメインプログラム
Dependencies: PID TextLCD mbed
common.h@0:fb4c529248d7, 2014-04-27 (annotated)
- Committer:
- ryuna
- Date:
- Sun Apr 27 02:37:13 2014 +0000
- Revision:
- 0:fb4c529248d7
update_4/27
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ryuna | 0:fb4c529248d7 | 1 | |
ryuna | 0:fb4c529248d7 | 2 | enum{ |
ryuna | 0:fb4c529248d7 | 3 | FRONT = 0, |
ryuna | 0:fb4c529248d7 | 4 | LEFT, |
ryuna | 0:fb4c529248d7 | 5 | BACK, |
ryuna | 0:fb4c529248d7 | 6 | RIGHT, |
ryuna | 0:fb4c529248d7 | 7 | }; |
ryuna | 0:fb4c529248d7 | 8 | enum{ |
ryuna | 0:fb4c529248d7 | 9 | VX = 0, |
ryuna | 0:fb4c529248d7 | 10 | VY, |
ryuna | 0:fb4c529248d7 | 11 | }; |
ryuna | 0:fb4c529248d7 | 12 | |
ryuna | 0:fb4c529248d7 | 13 | const double way16[16][2] = { |
ryuna | 0:fb4c529248d7 | 14 | {0,1}, |
ryuna | 0:fb4c529248d7 | 15 | {0.5,0.866}, |
ryuna | 0:fb4c529248d7 | 16 | {0.707,0.707}, |
ryuna | 0:fb4c529248d7 | 17 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 18 | {1.0}, |
ryuna | 0:fb4c529248d7 | 19 | {0.866,-0.5}, |
ryuna | 0:fb4c529248d7 | 20 | {0.707,-0.707}, |
ryuna | 0:fb4c529248d7 | 21 | {0.5,-0.866}, |
ryuna | 0:fb4c529248d7 | 22 | {0,-1}, |
ryuna | 0:fb4c529248d7 | 23 | {-0.5,-0.866}, |
ryuna | 0:fb4c529248d7 | 24 | {-0.707,-0.707}, |
ryuna | 0:fb4c529248d7 | 25 | {-0.866,-0.5}, |
ryuna | 0:fb4c529248d7 | 26 | {-1,0}, |
ryuna | 0:fb4c529248d7 | 27 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 28 | {-0.707,0.707}, |
ryuna | 0:fb4c529248d7 | 29 | {-0.5,0.866} |
ryuna | 0:fb4c529248d7 | 30 | }; |
ryuna | 0:fb4c529248d7 | 31 | |
ryuna | 0:fb4c529248d7 | 32 | /*距離に応じた調整値、ボールの指定範囲外なら進む向きが大きい?, |
ryuna | 0:fb4c529248d7 | 33 | 範囲内なら外に出ようとする力nearに大きな |
ryuna | 0:fb4c529248d7 | 34 | 調整がかかる、これも配列*/ |
ryuna | 0:fb4c529248d7 | 35 | |
ryuna | 0:fb4c529248d7 | 36 | const double modulate_near[17] = {//0~4 = -5,-4,-3,-2,-1,,5 = 0,,6~16=1,2,3.....10 |
ryuna | 0:fb4c529248d7 | 37 | 1.20,1.1,1.05,1.02,1.01,1,1,1,1,1,1,1,1,1,1,1,1 |
ryuna | 0:fb4c529248d7 | 38 | }; |
ryuna | 0:fb4c529248d7 | 39 | |
ryuna | 0:fb4c529248d7 | 40 | const double modulate_go[17] = { |
ryuna | 0:fb4c529248d7 | 41 | 1,1,1,1,1,1,1.01,1.02,1.03,1.05,1.07,1.08,1.10,1.12,1.15,1.15,1.15 |
ryuna | 0:fb4c529248d7 | 42 | }; |
ryuna | 0:fb4c529248d7 | 43 | |
ryuna | 0:fb4c529248d7 | 44 | const double modulate[17] = { |
ryuna | 0:fb4c529248d7 | 45 | 1.1,1.05,1.02,1.02,1.01,1,1.01,1.02,1.03,1.05,1.07,1.08,1.15,1.15,1.15,1.15,1.20 |
ryuna | 0:fb4c529248d7 | 46 | }; |
ryuna | 0:fb4c529248d7 | 47 | |
ryuna | 0:fb4c529248d7 | 48 | //defense move action support. |
ryuna | 0:fb4c529248d7 | 49 | const double apply[9] = { |
ryuna | 0:fb4c529248d7 | 50 | 1.4,1.4,1.3,1.2,1.15,1.15,1.10,1.05,1.0 |
ryuna | 0:fb4c529248d7 | 51 | }; |
ryuna | 0:fb4c529248d7 | 52 | |
ryuna | 0:fb4c529248d7 | 53 | |
ryuna | 0:fb4c529248d7 | 54 | const double near0[10][2] = {//go go goボールと一定感覚を保とうとする輩,これまた角度ではなく値を直接投げておく |
ryuna | 0:fb4c529248d7 | 55 | {-1,0}, |
ryuna | 0:fb4c529248d7 | 56 | {-0.505,0.505}, |
ryuna | 0:fb4c529248d7 | 57 | {-0.3,0.866}, |
ryuna | 0:fb4c529248d7 | 58 | {0,1}, |
ryuna | 0:fb4c529248d7 | 59 | {0.3,0.866}, |
ryuna | 0:fb4c529248d7 | 60 | {0.505,0.505}, |
ryuna | 0:fb4c529248d7 | 61 | {1,0}, |
ryuna | 0:fb4c529248d7 | 62 | {0.3,-0.3},//0.707,-0.707 |
ryuna | 0:fb4c529248d7 | 63 | {0,-1.0}, |
ryuna | 0:fb4c529248d7 | 64 | {-0.3,-0.3}//-0.707,-0.707 |
ryuna | 0:fb4c529248d7 | 65 | }; |
ryuna | 0:fb4c529248d7 | 66 | |
ryuna | 0:fb4c529248d7 | 67 | const double near1[10][2] = {//back back back |
ryuna | 0:fb4c529248d7 | 68 | {1,0}, |
ryuna | 0:fb4c529248d7 | 69 | {0.5,-0.5}, |
ryuna | 0:fb4c529248d7 | 70 | {0.25,0},//0.5,-0.866 |
ryuna | 0:fb4c529248d7 | 71 | {0,0.2}, |
ryuna | 0:fb4c529248d7 | 72 | {-0.25,0},//-0.5,-0.866 |
ryuna | 0:fb4c529248d7 | 73 | {-0.5,-0.5}, |
ryuna | 0:fb4c529248d7 | 74 | {-1,0}, |
ryuna | 0:fb4c529248d7 | 75 | {-0.707,0.303},//-0.707,0.707 |
ryuna | 0:fb4c529248d7 | 76 | {0,0.4}, |
ryuna | 0:fb4c529248d7 | 77 | {0.707,0.303}//0.707,0.707 |
ryuna | 0:fb4c529248d7 | 78 | }; |
ryuna | 0:fb4c529248d7 | 79 | |
ryuna | 0:fb4c529248d7 | 80 | const double go[10][2] = {//ir_numに沿ったそれぞれの動きを直接配列に投げて置く参照、ir_action0~9 |
ryuna | 0:fb4c529248d7 | 81 | {0,-0.433}, |
ryuna | 0:fb4c529248d7 | 82 | {-0.303,-0.757},//0.303 |
ryuna | 0:fb4c529248d7 | 83 | {-0.3,0}, |
ryuna | 0:fb4c529248d7 | 84 | {0,0.8},//other block |
ryuna | 0:fb4c529248d7 | 85 | {0.3,0}, |
ryuna | 0:fb4c529248d7 | 86 | {0.303,-0.757},//0.303 |
ryuna | 0:fb4c529248d7 | 87 | {0,-0.433}, |
ryuna | 0:fb4c529248d7 | 88 | {0,-1}, |
ryuna | 0:fb4c529248d7 | 89 | {0,-0.5},//other block@ir_action8 |
ryuna | 0:fb4c529248d7 | 90 | {0,-1}, |
ryuna | 0:fb4c529248d7 | 91 | }; |
ryuna | 0:fb4c529248d7 | 92 | |
ryuna | 0:fb4c529248d7 | 93 | const int keep_dist[10] = {//ir_num[0~9] |
ryuna | 0:fb4c529248d7 | 94 | 45,48,45,44,45,50,49,41,49,39//45,49,444444, |
ryuna | 0:fb4c529248d7 | 95 | }; |
ryuna | 0:fb4c529248d7 | 96 | |
ryuna | 0:fb4c529248d7 | 97 | const int keep_ping[4] = { |
ryuna | 0:fb4c529248d7 | 98 | 0,58,30,56 |
ryuna | 0:fb4c529248d7 | 99 | }; |
ryuna | 0:fb4c529248d7 | 100 | |
ryuna | 0:fb4c529248d7 | 101 | const int keep_pingSTRONG[4] = { |
ryuna | 0:fb4c529248d7 | 102 | 0,40,20,36 |
ryuna | 0:fb4c529248d7 | 103 | }; |
ryuna | 0:fb4c529248d7 | 104 | |
ryuna | 0:fb4c529248d7 | 105 | const int keep_ball[10] = { |
ryuna | 0:fb4c529248d7 | 106 | 37,33,27,27,27,30,34,31,32,32//28 |
ryuna | 0:fb4c529248d7 | 107 | }; |
ryuna | 0:fb4c529248d7 | 108 | |
ryuna | 0:fb4c529248d7 | 109 | const double goal_state1[12][2] = { |
ryuna | 0:fb4c529248d7 | 110 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 111 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 112 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 113 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 114 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 115 | {0.433,0.25}, |
ryuna | 0:fb4c529248d7 | 116 | {0.433,0.25}, |
ryuna | 0:fb4c529248d7 | 117 | {0.433,0.25}, |
ryuna | 0:fb4c529248d7 | 118 | {0.433,0}, |
ryuna | 0:fb4c529248d7 | 119 | {0,0}, |
ryuna | 0:fb4c529248d7 | 120 | {0,0}, |
ryuna | 0:fb4c529248d7 | 121 | {0.0} |
ryuna | 0:fb4c529248d7 | 122 | }; |
ryuna | 0:fb4c529248d7 | 123 | |
ryuna | 0:fb4c529248d7 | 124 | const double goal_state2[12][2] = { |
ryuna | 0:fb4c529248d7 | 125 | {0,-1}, |
ryuna | 0:fb4c529248d7 | 126 | {0,-0.8}, |
ryuna | 0:fb4c529248d7 | 127 | {0,-0.6}, |
ryuna | 0:fb4c529248d7 | 128 | {0,-0.4}, |
ryuna | 0:fb4c529248d7 | 129 | {0,-0.2}, |
ryuna | 0:fb4c529248d7 | 130 | {0,0}, |
ryuna | 0:fb4c529248d7 | 131 | {0,0}, |
ryuna | 0:fb4c529248d7 | 132 | {0,0}, |
ryuna | 0:fb4c529248d7 | 133 | {0,0}, |
ryuna | 0:fb4c529248d7 | 134 | {0,0.1}, |
ryuna | 0:fb4c529248d7 | 135 | {0,0.3}, |
ryuna | 0:fb4c529248d7 | 136 | {0,0.4} |
ryuna | 0:fb4c529248d7 | 137 | }; |
ryuna | 0:fb4c529248d7 | 138 | |
ryuna | 0:fb4c529248d7 | 139 | const double goal_state3[12][2] = { |
ryuna | 0:fb4c529248d7 | 140 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 141 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 142 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 143 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 144 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 145 | {-0.433,0.25}, |
ryuna | 0:fb4c529248d7 | 146 | {-0.433,0.25}, |
ryuna | 0:fb4c529248d7 | 147 | {-0.433,0.25}, |
ryuna | 0:fb4c529248d7 | 148 | {-0.433,0}, |
ryuna | 0:fb4c529248d7 | 149 | {0,0}, |
ryuna | 0:fb4c529248d7 | 150 | {0,0}, |
ryuna | 0:fb4c529248d7 | 151 | {0.0} |
ryuna | 0:fb4c529248d7 | 152 | }; |
ryuna | 0:fb4c529248d7 | 153 | |
ryuna | 0:fb4c529248d7 | 154 | const double ball_state0[10][2] = {//ir_num[0~9] |
ryuna | 0:fb4c529248d7 | 155 | {-1,-0.5}, |
ryuna | 0:fb4c529248d7 | 156 | {-0.866,0.2}, |
ryuna | 0:fb4c529248d7 | 157 | {-0.707,0.5}, |
ryuna | 0:fb4c529248d7 | 158 | {0,0}, |
ryuna | 0:fb4c529248d7 | 159 | {0.707,0.5}, |
ryuna | 0:fb4c529248d7 | 160 | {0.866,0.2}, |
ryuna | 0:fb4c529248d7 | 161 | {1,-0.5}, |
ryuna | 0:fb4c529248d7 | 162 | {0.7,-1}, |
ryuna | 0:fb4c529248d7 | 163 | {0,-1}, |
ryuna | 0:fb4c529248d7 | 164 | {-0.7,-1} |
ryuna | 0:fb4c529248d7 | 165 | }; |
ryuna | 0:fb4c529248d7 | 166 | |
ryuna | 0:fb4c529248d7 | 167 | const double ball_state1[10][2] = {//ir_num[0~9] |
ryuna | 0:fb4c529248d7 | 168 | {-1.0,-0.3}, |
ryuna | 0:fb4c529248d7 | 169 | {-0.9,-0.4}, |
ryuna | 0:fb4c529248d7 | 170 | {-0.9,0.866}, |
ryuna | 0:fb4c529248d7 | 171 | {0,1}, |
ryuna | 0:fb4c529248d7 | 172 | {0.9,0.866}, |
ryuna | 0:fb4c529248d7 | 173 | {0.9,-0.4}, |
ryuna | 0:fb4c529248d7 | 174 | {1.0,-0.3}, |
ryuna | 0:fb4c529248d7 | 175 | {-0.404,-0.7}, |
ryuna | 0:fb4c529248d7 | 176 | {0,0},//other comand |
ryuna | 0:fb4c529248d7 | 177 | {0.404,-0.7} |
ryuna | 0:fb4c529248d7 | 178 | }; |
ryuna | 0:fb4c529248d7 | 179 | |
ryuna | 0:fb4c529248d7 | 180 | |
ryuna | 0:fb4c529248d7 | 181 | const double strongPing1[12][2] = { |
ryuna | 0:fb4c529248d7 | 182 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 183 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 184 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 185 | {0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 186 | {0.577,0.5}, |
ryuna | 0:fb4c529248d7 | 187 | {0.577,0.5}, |
ryuna | 0:fb4c529248d7 | 188 | {0.577,0.25}, |
ryuna | 0:fb4c529248d7 | 189 | {0.577,0.25}, |
ryuna | 0:fb4c529248d7 | 190 | {0.433,0.1}, |
ryuna | 0:fb4c529248d7 | 191 | {0.211,0.1}, |
ryuna | 0:fb4c529248d7 | 192 | {0,0}, |
ryuna | 0:fb4c529248d7 | 193 | {0.0} |
ryuna | 0:fb4c529248d7 | 194 | }; |
ryuna | 0:fb4c529248d7 | 195 | |
ryuna | 0:fb4c529248d7 | 196 | const double strongPing2[12][2] = { |
ryuna | 0:fb4c529248d7 | 197 | {0,0}, |
ryuna | 0:fb4c529248d7 | 198 | {0,0}, |
ryuna | 0:fb4c529248d7 | 199 | {0,0}, |
ryuna | 0:fb4c529248d7 | 200 | {0,0}, |
ryuna | 0:fb4c529248d7 | 201 | {0,0}, |
ryuna | 0:fb4c529248d7 | 202 | {0,0}, |
ryuna | 0:fb4c529248d7 | 203 | {0,0}, |
ryuna | 0:fb4c529248d7 | 204 | {0,0}, |
ryuna | 0:fb4c529248d7 | 205 | {0,0}, |
ryuna | 0:fb4c529248d7 | 206 | {0,0}, |
ryuna | 0:fb4c529248d7 | 207 | {0,0.3}, |
ryuna | 0:fb4c529248d7 | 208 | {0,0.5} |
ryuna | 0:fb4c529248d7 | 209 | }; |
ryuna | 0:fb4c529248d7 | 210 | |
ryuna | 0:fb4c529248d7 | 211 | const double strongPing3[12][2] ={ |
ryuna | 0:fb4c529248d7 | 212 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 213 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 214 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 215 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 216 | {-0.866,0.5}, |
ryuna | 0:fb4c529248d7 | 217 | {-0.577,0.5}, |
ryuna | 0:fb4c529248d7 | 218 | {-0.577,0.25}, |
ryuna | 0:fb4c529248d7 | 219 | {-0.577,0.25}, |
ryuna | 0:fb4c529248d7 | 220 | {-0.433,0.1}, |
ryuna | 0:fb4c529248d7 | 221 | {-0.211,0.1}, |
ryuna | 0:fb4c529248d7 | 222 | {0,0}, |
ryuna | 0:fb4c529248d7 | 223 | {0.0} |
ryuna | 0:fb4c529248d7 | 224 | }; |
ryuna | 0:fb4c529248d7 | 225 | |
ryuna | 0:fb4c529248d7 | 226 | /* |
ryuna | 0:fb4c529248d7 | 227 | ir_number position |
ryuna | 0:fb4c529248d7 | 228 | |
ryuna | 0:fb4c529248d7 | 229 | 2 3 4 |
ryuna | 0:fb4c529248d7 | 230 | 1 /----------\5 |
ryuna | 0:fb4c529248d7 | 231 | / \ |
ryuna | 0:fb4c529248d7 | 232 | 0| |6 |
ryuna | 0:fb4c529248d7 | 233 | \ / |
ryuna | 0:fb4c529248d7 | 234 | 9 \____________/ 7 |
ryuna | 0:fb4c529248d7 | 235 | 8 |
ryuna | 0:fb4c529248d7 | 236 | |
ryuna | 0:fb4c529248d7 | 237 | |
ryuna | 0:fb4c529248d7 | 238 | |
ryuna | 0:fb4c529248d7 | 239 | */ |