ロボカップ2013のジャパンオープンメインプログラム

Dependencies:   PID TextLCD mbed

Committer:
ryuna
Date:
Sun Apr 27 02:37:13 2014 +0000
Revision:
0:fb4c529248d7
update_4/27

Who changed what in which revision?

UserRevisionLine numberNew 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 */