MEC-B / Mbed 2 deprecated AR_MastarNode_copy

Dependencies:   DriveConroller IMU MDD Mycan Odometer PID RotaryEncoder UART USS mbed

Fork of AR_MastarNode by MEC-B

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?

UserRevisionLine numberNew 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 }