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
hardwareConfig.h@12:91218718ae75, 2018-09-15 (annotated)
- Committer:
- TanakaTarou
- Date:
- Sat Sep 15 00:16:35 2018 +0000
- Revision:
- 12:91218718ae75
- Parent:
- 10:ebb59c1d369e
- Child:
- 16:621f04b15f86
- Child:
- 20:1957c67ab740
???????????????????
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TanakaTarou | 0:6db16ad02a1b | 1 | //オンボードLEDの使用宣言 |
TanakaTarou | 0:6db16ad02a1b | 2 | DigitalOut LED[] = {DigitalOut(LED1), |
TanakaTarou | 0:6db16ad02a1b | 3 | DigitalOut(LED2), |
TanakaTarou | 0:6db16ad02a1b | 4 | DigitalOut(LED3), |
TanakaTarou | 0:6db16ad02a1b | 5 | DigitalOut(LED4), |
TanakaTarou | 0:6db16ad02a1b | 6 | }; |
TanakaTarou | 0:6db16ad02a1b | 7 | |
TanakaTarou | 0:6db16ad02a1b | 8 | //デバック用シリアル |
TanakaTarou | 0:6db16ad02a1b | 9 | Serial pc(USBTX, USBRX); |
TanakaTarou | 0:6db16ad02a1b | 10 | |
TanakaTarou | 0:6db16ad02a1b | 11 | //CAN用 (rd, td) |
TanakaTarou | 0:6db16ad02a1b | 12 | Mycan can(p30, p29); |
TanakaTarou | 0:6db16ad02a1b | 13 | |
TanakaTarou | 0:6db16ad02a1b | 14 | //メカナム逆運動学モデルのヤコビアン |
TanakaTarou | 0:6db16ad02a1b | 15 | float jacobian[4][3] = {{ 1, -1, -1}, |
TanakaTarou | 0:6db16ad02a1b | 16 | { 1, 1, -1}, |
TanakaTarou | 0:6db16ad02a1b | 17 | {-1, 1, -1}, |
TanakaTarou | 0:6db16ad02a1b | 18 | {-1, -1, -1} |
TanakaTarou | 0:6db16ad02a1b | 19 | }; |
TanakaTarou | 0:6db16ad02a1b | 20 | |
TanakaTarou | 0:6db16ad02a1b | 21 | //(逆運動学モデル, ホイールの計算100%定義) |
TanakaTarou | 0:6db16ad02a1b | 22 | DriveController mecanum(jacobian, 0.95); |
TanakaTarou | 0:6db16ad02a1b | 23 | |
soyooo | 10:ebb59c1d369e | 24 | //sbus用 (tx, rx) |
soyooo | 10:ebb59c1d369e | 25 | SBUS sbus(p28, p27); |
soyooo | 10:ebb59c1d369e | 26 | |
TanakaTarou | 0:6db16ad02a1b | 27 | //(計算周期時間[s], sla, sld) |
soyooo | 9:ce5a1315fe0d | 28 | IMU imu(0.01, p9, p10); |
TanakaTarou | 0:6db16ad02a1b | 29 | |
TanakaTarou | 0:6db16ad02a1b | 30 | //(pwmPin, direPin) |
soyooo | 10:ebb59c1d369e | 31 | MDD Motor[4] = { MDD(p24, p26), |
soyooo | 10:ebb59c1d369e | 32 | MDD(p23, p25), |
soyooo | 10:ebb59c1d369e | 33 | MDD(p22, p20), |
soyooo | 10:ebb59c1d369e | 34 | MDD(p21, p19) |
TanakaTarou | 0:6db16ad02a1b | 35 | }; |
TanakaTarou | 0:6db16ad02a1b | 36 | |
TanakaTarou | 0:6db16ad02a1b | 37 | Timer timer; |
TanakaTarou | 0:6db16ad02a1b | 38 | |
TanakaTarou | 0:6db16ad02a1b | 39 | //(A相, B相) |
soyooo | 10:ebb59c1d369e | 40 | RotaryEncoder enc[3] = {RotaryEncoder(p18 , p17 , &timer, 100), |
TanakaTarou | 0:6db16ad02a1b | 41 | RotaryEncoder(p16, p15, &timer, 100), |
TanakaTarou | 12:91218718ae75 | 42 | RotaryEncoder(p14, p13, &timer, 100) |
TanakaTarou | 0:6db16ad02a1b | 43 | }; |
TanakaTarou | 3:6b4adb4d7101 | 44 | |
soyooo | 10:ebb59c1d369e | 45 | DigitalIn sw1(p5); |
soyooo | 10:ebb59c1d369e | 46 | DigitalIn sw2(p6); |
TanakaTarou | 0:6db16ad02a1b | 47 | |
TanakaTarou | 0:6db16ad02a1b | 48 | //(trig, echo) |
soyooo | 10:ebb59c1d369e | 49 | USS uss[2] = {USS(p11, p12), USS(p8, p7)}; |
soyooo | 10:ebb59c1d369e | 50 | |
TanakaTarou | 0:6db16ad02a1b | 51 | |
TanakaTarou | 0:6db16ad02a1b | 52 | //コントローラー入力のための構造体 |
TanakaTarou | 0:6db16ad02a1b | 53 | typedef struct controller { |
TanakaTarou | 0:6db16ad02a1b | 54 | float LX, LY, RX, RY; |
TanakaTarou | 0:6db16ad02a1b | 55 | int A,B,C,D,E,F,G,H; |
TanakaTarou | 0:6db16ad02a1b | 56 | int fail_safe; |
TanakaTarou | 0:6db16ad02a1b | 57 | } controller; |