Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: DriveConroller IMU MDD Mycan Odometer PID RotaryEncoder UART USS mbed
Fork of AR_MastarNode by
stateLib.h@16:621f04b15f86, 2018-09-24 (annotated)
- Committer:
- TanakaTarou
- Date:
- Mon Sep 24 08:03:55 2018 +0000
- Revision:
- 16:621f04b15f86
- Parent:
- 15:ae2043fde152
- Child:
- 17:1409cdfb6043
9/24
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TanakaTarou | 16:621f04b15f86 | 1 | #define LIBNUM 43 |
soyooo | 9:ce5a1315fe0d | 2 | //(X, Y, θ, speed, angle) |
TanakaTarou | 15:ae2043fde152 | 3 | float state_lib[LIBNUM][10] ={{0.0, 0.0, 0, 0, 0},//スタートゾーン |
soyooo | 9:ce5a1315fe0d | 4 | /* |
TanakaTarou | 13:0479a4f3e997 | 5 | //2段テーブル1周 |
TanakaTarou | 13:0479a4f3e997 | 6 | {-1.740, 1.5, 0, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 7 | {-1.740, 20, 0, 0, 90, 0},// USS |
TanakaTarou | 13:0479a4f3e997 | 8 | {-1.740, 20, 0, 0, 90, 0},// 発射 |
TanakaTarou | 13:0479a4f3e997 | 9 | {-1.740, 1.5, 0, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 10 | {-2.740, 1.5, -45, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 11 | {-2.740, 2.5, -90, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 12 | {20, 2.5, -90, 0, 90, 0},// USS |
TanakaTarou | 13:0479a4f3e997 | 13 | {20, 2.5, -90, 0, 90, 0},// 発射 |
TanakaTarou | 13:0479a4f3e997 | 14 | {-2.740, 2.5, -90, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 15 | {-2.740, 3.5, -135, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 16 | {-1.740, 3.5, -180, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 17 | {-1.740, -20, -180, 0, 90, 0},// USS |
TanakaTarou | 13:0479a4f3e997 | 18 | {-1.740, -20, -180, 0, 90, 0},// 発射 |
TanakaTarou | 13:0479a4f3e997 | 19 | {-1.740, 3.5, -180, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 20 | {-0.740, 3.5, -225, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 21 | {-0.740, 2.5, -270, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 22 | {-20, 2.5, -270, 0, 90, 0},// USS |
TanakaTarou | 13:0479a4f3e997 | 23 | {-20, 2.5, -270, 0, 90, 0},// 発射 |
TanakaTarou | 13:0479a4f3e997 | 24 | {-0.740, 2.5, -270, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 25 | {-0.740, 1.5, -270, 0, 90, 0},// |
TanakaTarou | 13:0479a4f3e997 | 26 | */ |
TanakaTarou | 15:ae2043fde152 | 27 | |
TanakaTarou | 13:0479a4f3e997 | 28 | //2段テーブル下段のみ |
TanakaTarou | 15:ae2043fde152 | 29 | {-1.740, 1.5, 0, 4, 0},// x移動, 角度変化 |
TanakaTarou | 15:ae2043fde152 | 30 | {-1.740, 20.0, 0, 4, 0},// y移動 |
TanakaTarou | 15:ae2043fde152 | 31 | {-1.740, 20.0, 0, 4, 1},// 下段に発射 |
TanakaTarou | 15:ae2043fde152 | 32 | {-1.740, 1.5, 0, 4, 0},// 4 |
TanakaTarou | 15:ae2043fde152 | 33 | |
TanakaTarou | 13:0479a4f3e997 | 34 | //2段テーブル上段のみ |
TanakaTarou | 15:ae2043fde152 | 35 | {-1.740, 1.5, 0, 5, 0},// x移動, 角度変化 |
TanakaTarou | 15:ae2043fde152 | 36 | {-1.740, 13.0, 0, 5, 0},// USS |
TanakaTarou | 15:ae2043fde152 | 37 | {-1.740, 13.0, 0, 5, 1},// 上段に発射 |
TanakaTarou | 15:ae2043fde152 | 38 | {-1.740, 1.5, 0, 5, 0},// 8 |
TanakaTarou | 15:ae2043fde152 | 39 | |
TanakaTarou | 12:91218718ae75 | 40 | //2段テーブル上・下 |
TanakaTarou | 15:ae2043fde152 | 41 | {-1.740, 1.5, 0, 4, 0},// x移動, 角度変化 |
TanakaTarou | 15:ae2043fde152 | 42 | {-1.740, 25.0, 0, 4, 0},// y移動 |
TanakaTarou | 15:ae2043fde152 | 43 | {-1.740, 20.0, 0, 4, 1},// 下段に発射 |
TanakaTarou | 15:ae2043fde152 | 44 | {-1.740, 20.0, 0, 4, 0},// 12 角度戻る |
soyooo | 9:ce5a1315fe0d | 45 | |
TanakaTarou | 15:ae2043fde152 | 46 | {-1.740, 20.0, 0, 5, 0},// 補給 |
TanakaTarou | 15:ae2043fde152 | 47 | {-1.740, 13.0, 0, 5, 0},// 角度変化 |
TanakaTarou | 15:ae2043fde152 | 48 | {-1.740, 13.0, 0, 5, 1},// 上段に発射 |
TanakaTarou | 15:ae2043fde152 | 49 | {-1.740, 1.5, 0, 5, 0},// 16 角度変化 |
TanakaTarou | 12:91218718ae75 | 50 | |
TanakaTarou | 15:ae2043fde152 | 51 | {-2.740, 0.0, 0, 0, 0},// 17 |
TanakaTarou | 14:8334c241bb0a | 52 | |
TanakaTarou | 13:0479a4f3e997 | 53 | //移動テーブル ノーマル |
TanakaTarou | 15:ae2043fde152 | 54 | {-3.740, 0.0, 0, 6, 0},// x移動, 補給 |
TanakaTarou | 15:ae2043fde152 | 55 | {-3.740, 20.0, 0, 6, 0},// y移動, 角度変化 |
TanakaTarou | 15:ae2043fde152 | 56 | {-3.740, 20.0, 0, 6, 1},// 発射 |
TanakaTarou | 15:ae2043fde152 | 57 | {-3.740, 0.0, 0, 6, 0},// 21 y戻る, 角度戻る |
TanakaTarou | 13:0479a4f3e997 | 58 | |
TanakaTarou | 15:ae2043fde152 | 59 | {-4.740, 0.0, 0, 7, 0},// x移動, 補給 |
TanakaTarou | 15:ae2043fde152 | 60 | {-4.740, 20.0, 0, 7, 0},// y移動, 角度変化 |
TanakaTarou | 15:ae2043fde152 | 61 | {-4.740, 20.0, 0, 7, 1},// 発射 |
TanakaTarou | 15:ae2043fde152 | 62 | {-4.740, 0.0, 0, 7, 0},// 25 y戻る, 角度戻る |
TanakaTarou | 12:91218718ae75 | 63 | |
TanakaTarou | 15:ae2043fde152 | 64 | {-5.740, 0.0, 0, 8, 0},// x移動, 補給 |
TanakaTarou | 15:ae2043fde152 | 65 | {-5.740, 20.0, 0, 8, 0},// y移動, 角度変化 |
TanakaTarou | 15:ae2043fde152 | 66 | {-5.740, 20.0, 0, 8, 1},// 発射 |
TanakaTarou | 15:ae2043fde152 | 67 | {-5.740, 0.0, 0, 8, 0},// 29 y戻る, 角度戻る |
TanakaTarou | 14:8334c241bb0a | 68 | |
TanakaTarou | 14:8334c241bb0a | 69 | /* |
TanakaTarou | 13:0479a4f3e997 | 70 | //移動テーブル アクティブムーブ |
TanakaTarou | 13:0479a4f3e997 | 71 | {-3.740, 0.0, 0, 0, 90, 0},// x移動, 補給 |
TanakaTarou | 13:0479a4f3e997 | 72 | {-3.740, 25.0, 0, 0, 82, 0},// y移動, 角度変化 |
TanakaTarou | 13:0479a4f3e997 | 73 | {-3.740, 25.0, 0, 0, 82, 0},// 発射 |
soyooo | 9:ce5a1315fe0d | 74 | |
TanakaTarou | 13:0479a4f3e997 | 75 | {-4.740, 2.0, 180, 0, 90, 0},// x移動, 補給 |
TanakaTarou | 13:0479a4f3e997 | 76 | {-4.740, -25.0, 180, 0, 83, 0},// y移動, 角度変化 |
TanakaTarou | 13:0479a4f3e997 | 77 | {-4.740, -25.0, 180, 0, 83, 0},// 発射 |
TanakaTarou | 13:0479a4f3e997 | 78 | |
TanakaTarou | 13:0479a4f3e997 | 79 | {-5.740, 2.0, 0, 0, 90, 0},// x移動, 補給 |
TanakaTarou | 13:0479a4f3e997 | 80 | {-5.740, 25.0, 0, 0, 85, 0},// y移動, 角度変化 |
TanakaTarou | 13:0479a4f3e997 | 81 | {-5.740, 25.0, 0, 0, 85, 0},// 発射 |
TanakaTarou | 13:0479a4f3e997 | 82 | {-5.740, 0.0, 0, 0, 90, 0},// y戻る, 角度戻る |
TanakaTarou | 14:8334c241bb0a | 83 | */ |
TanakaTarou | 15:ae2043fde152 | 84 | |
TanakaTarou | 12:91218718ae75 | 85 | //固定テーブル |
TanakaTarou | 15:ae2043fde152 | 86 | {-0.3, 1.5, -90, 1, 0}, |
TanakaTarou | 15:ae2043fde152 | 87 | {25, 1.5, -90, 1, 0}, |
TanakaTarou | 15:ae2043fde152 | 88 | {25, 1.5, -90, 1, 1},// 発射 |
TanakaTarou | 15:ae2043fde152 | 89 | {-0.8, 1.5, -90, 1, 0},// 33 |
TanakaTarou | 13:0479a4f3e997 | 90 | |
TanakaTarou | 15:ae2043fde152 | 91 | {-0.8, 2.5, -90, 2, 0}, |
TanakaTarou | 15:ae2043fde152 | 92 | {25, 2.5, -90, 2, 0}, |
TanakaTarou | 15:ae2043fde152 | 93 | {25, 2.5, -90, 2, 1},// 発射 |
TanakaTarou | 15:ae2043fde152 | 94 | {-0.8, 2.5, -90, 2, 0},// 37 |
TanakaTarou | 15:ae2043fde152 | 95 | |
TanakaTarou | 15:ae2043fde152 | 96 | {-0.8, 3.5, -90, 3, 0}, |
TanakaTarou | 15:ae2043fde152 | 97 | {25, 3.5, -90, 3, 0}, |
TanakaTarou | 15:ae2043fde152 | 98 | {25, 3.5, -90, 3, 1},// 発射 |
TanakaTarou | 15:ae2043fde152 | 99 | {-0.8, 3.5, -90, 3, 0},// 41 |
TanakaTarou | 15:ae2043fde152 | 100 | |
TanakaTarou | 15:ae2043fde152 | 101 | {-0.8, 1.5, 0, 0, 0},// 42 |
TanakaTarou | 13:0479a4f3e997 | 102 | |
TanakaTarou | 15:ae2043fde152 | 103 | {0.0, 0.0, 0, 9, 0}// 補給, スタートゾーン戻る |
soyooo | 9:ce5a1315fe0d | 104 | }; |
soyooo | 9:ce5a1315fe0d | 105 | |
TanakaTarou | 15:ae2043fde152 | 106 | |
TanakaTarou | 15:ae2043fde152 | 107 | float A_1[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 108 | {0, 84, 0}, |
TanakaTarou | 15:ae2043fde152 | 109 | {28, 84, 0}, |
TanakaTarou | 15:ae2043fde152 | 110 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 111 | }; |
TanakaTarou | 15:ae2043fde152 | 112 | |
TanakaTarou | 15:ae2043fde152 | 113 | float A_2[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 114 | {0, 84, 0}, |
TanakaTarou | 15:ae2043fde152 | 115 | {28, 84, 0}, |
TanakaTarou | 15:ae2043fde152 | 116 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 117 | }; |
TanakaTarou | 15:ae2043fde152 | 118 | |
TanakaTarou | 15:ae2043fde152 | 119 | float A_3[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 120 | {0, 84, 0}, |
TanakaTarou | 15:ae2043fde152 | 121 | {28, 84, 0}, |
TanakaTarou | 15:ae2043fde152 | 122 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 123 | }; |
TanakaTarou | 15:ae2043fde152 | 124 | |
TanakaTarou | 15:ae2043fde152 | 125 | float B_1[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 126 | {0, 82.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 127 | {31, 82.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 128 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 129 | }; |
TanakaTarou | 15:ae2043fde152 | 130 | |
TanakaTarou | 15:ae2043fde152 | 131 | float B_2[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 132 | {0, 84.8, 0}, |
TanakaTarou | 15:ae2043fde152 | 133 | {58, 84.8, 0}, |
TanakaTarou | 15:ae2043fde152 | 134 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 135 | }; |
TanakaTarou | 15:ae2043fde152 | 136 | |
TanakaTarou | 15:ae2043fde152 | 137 | float C_1[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 138 | {0, 82.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 139 | {33, 82.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 140 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 141 | }; |
TanakaTarou | 15:ae2043fde152 | 142 | |
TanakaTarou | 15:ae2043fde152 | 143 | float C_2[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 144 | {0, 83.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 145 | {40, 83.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 146 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 147 | }; |
TanakaTarou | 15:ae2043fde152 | 148 | |
TanakaTarou | 15:ae2043fde152 | 149 | float C_3[4][3] = {{0, 90, 1}, |
TanakaTarou | 15:ae2043fde152 | 150 | {0, 85.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 151 | {44, 85.5, 0}, |
TanakaTarou | 15:ae2043fde152 | 152 | {0, 90, 0}, |
TanakaTarou | 15:ae2043fde152 | 153 | }; |
TanakaTarou | 15:ae2043fde152 | 154 | |
TanakaTarou | 15:ae2043fde152 | 155 | float state_tops[4][3]; |
TanakaTarou | 15:ae2043fde152 | 156 | |
soyooo | 9:ce5a1315fe0d | 157 | typedef struct state |
soyooo | 9:ce5a1315fe0d | 158 | { |
soyooo | 9:ce5a1315fe0d | 159 | float x, y , theta, shoot, angle, supply; |
soyooo | 9:ce5a1315fe0d | 160 | }state; |
soyooo | 9:ce5a1315fe0d | 161 | |
soyooo | 9:ce5a1315fe0d | 162 | typedef struct elements |
soyooo | 9:ce5a1315fe0d | 163 | { |
soyooo | 9:ce5a1315fe0d | 164 | float x, y , theta; |
TanakaTarou | 12:91218718ae75 | 165 | }elements; |
TanakaTarou | 12:91218718ae75 | 166 | |
TanakaTarou | 12:91218718ae75 | 167 | void changeToBlueZone() |
TanakaTarou | 12:91218718ae75 | 168 | { |
TanakaTarou | 12:91218718ae75 | 169 | for(int i = 0; i < LIBNUM; i++) |
TanakaTarou | 12:91218718ae75 | 170 | { |
TanakaTarou | 12:91218718ae75 | 171 | state_lib[i][0] *= -1; |
TanakaTarou | 12:91218718ae75 | 172 | state_lib[i][2] *= -1; |
TanakaTarou | 12:91218718ae75 | 173 | } |
TanakaTarou | 12:91218718ae75 | 174 | } |