RobocupSSLのメイン基板白mbedのプログラム
Rootsロボット mainプログラム
~ Robocup SSL(小型車輪リーグ)ロボット ~
Robocup SSLとは
●試合構成
Robocup小型ロボットリーグ(Small Size League)は,直径180[mm],高さ150[mm]以内のサイズのロボット6台が1チームとなり,オレンジ色のゴルフボールを使ってサッカー競技を行う自立型ロボットコンテストである.
フィールドの上には2台のWebカメラが設置され,フィールド上のロボットとボールを撮影する.Visionサーバは,フィールドの画像データよりロボットとボールの座標データを算出し,LANを用い各チームのAI用PCに送信する.Webカメラの撮影速度は,60[fps]である.レフリーボックスは,ファウルやフリーキック,スローインなどの審判の判定を入力し,LANを通じて各チームのAI用PCに送信する.それぞれのチームのAI用PCは,ロボットとボールの座標,審判の判定を元にロボットの移動,キックなどの作戦を決定し,無線によってロボットに指令を送信する.
ロボット機能紹介
●オムニホイールによる方向転換不要の全方位移動
オムニホイールは,自由に回転可能なローラをホイールの外周上に配置した車輪である.ローラの回転により,車輪の回転と垂直の方向に駆動力を発することはできないが移動は可能となる.各車輪の角速度を調整することによって全方向への移動を可能にする.
●ドリブルバーのバックスピンによるボール保持
●電磁力を利用したキッカー
●キッカーの電磁力エネルギーを充電する充電回路
●ロボット情報が一目でわかるLCD
comm/status/status_manager.h@31:7b003082f31d, 2018-05-03 (annotated)
- Committer:
- alt0710
- Date:
- Thu May 03 08:04:30 2018 +0000
- Revision:
- 31:7b003082f31d
- Parent:
- 30:8ee22331bfaf
- Child:
- 32:718efbf4dc8a
??????????; ?????statusmanager???
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
alt0710 | 3:6f87cbec2ae8 | 1 | #ifndef STATUS_MANAGER_H |
alt0710 | 3:6f87cbec2ae8 | 2 | #define STATUS_MANAGER_H |
alt0710 | 3:6f87cbec2ae8 | 3 | |
alt0710 | 3:6f87cbec2ae8 | 4 | #include "mbed.h" |
alt0710 | 3:6f87cbec2ae8 | 5 | #include "typedef.h" |
alt0710 | 3:6f87cbec2ae8 | 6 | |
alt0710 | 3:6f87cbec2ae8 | 7 | |
alt0710 | 3:6f87cbec2ae8 | 8 | class StatusManager{ |
alt0710 | 3:6f87cbec2ae8 | 9 | public: |
alt0710 | 3:6f87cbec2ae8 | 10 | |
alt0710 | 3:6f87cbec2ae8 | 11 | //MODE関係 |
alt0710 | 3:6f87cbec2ae8 | 12 | static char mode; |
alt0710 | 8:8bd8d008fe86 | 13 | static signed char uart; |
alt0710 | 3:6f87cbec2ae8 | 14 | |
alt0710 | 3:6f87cbec2ae8 | 15 | //Kicker関係 |
alt0710 | 3:6f87cbec2ae8 | 16 | static char is_kicking; |
alt0710 | 3:6f87cbec2ae8 | 17 | static char req_charge; |
alt0710 | 6:21b3fbe57b88 | 18 | static char ball; |
alt0710 | 15:2bf8eafacef8 | 19 | static char charge_end; |
alt0710 | 3:6f87cbec2ae8 | 20 | |
alt0710 | 11:7f5259ad738c | 21 | //Dribbler関係 |
alt0710 | 11:7f5259ad738c | 22 | static char dribbleIC_fault; |
alt0710 | 23:0bb032ef1880 | 23 | static char dribbleMot_OvrCur; |
alt0710 | 23:0bb032ef1880 | 24 | static float dribbleMotor_current; |
alt0710 | 23:0bb032ef1880 | 25 | static float req_dribbleMotor_current; |
alt0710 | 24:37a074e767c8 | 26 | static float req_dribbleMotor_PID; |
alt0710 | 11:7f5259ad738c | 27 | |
alt0710 | 9:41d5c728aa78 | 28 | //XBee関係 |
alt0710 | 9:41d5c728aa78 | 29 | static char xbee_time_out; |
alt0710 | 9:41d5c728aa78 | 30 | static char xbee_receiveing; |
alt0710 | 9:41d5c728aa78 | 31 | |
alt0710 | 23:0bb032ef1880 | 32 | //バッテリー |
alt0710 | 23:0bb032ef1880 | 33 | static float supply_voltage; |
alt0710 | 23:0bb032ef1880 | 34 | |
alt0710 | 24:37a074e767c8 | 35 | //その他 |
alt0710 | 24:37a074e767c8 | 36 | static char alive_count; |
alt0710 | 24:37a074e767c8 | 37 | static unsigned short DriveTime; |
alt0710 | 30:8ee22331bfaf | 38 | static char indicate_i2c_enable; |
alt0710 | 30:8ee22331bfaf | 39 | static unsigned char MainBoard; |
alt0710 | 24:37a074e767c8 | 40 | |
alt0710 | 31:7b003082f31d | 41 | //Wheel |
alt0710 | 31:7b003082f31d | 42 | static signed short Vel_Wheel1; |
alt0710 | 31:7b003082f31d | 43 | static signed short Vel_Wheel2; |
alt0710 | 31:7b003082f31d | 44 | static signed short Vel_Wheel3; |
alt0710 | 31:7b003082f31d | 45 | |
alt0710 | 3:6f87cbec2ae8 | 46 | private: |
alt0710 | 3:6f87cbec2ae8 | 47 | StatusManager(); |
alt0710 | 3:6f87cbec2ae8 | 48 | |
alt0710 | 3:6f87cbec2ae8 | 49 | |
alt0710 | 3:6f87cbec2ae8 | 50 | |
alt0710 | 3:6f87cbec2ae8 | 51 | }; |
alt0710 | 3:6f87cbec2ae8 | 52 | |
alt0710 | 3:6f87cbec2ae8 | 53 | /* **グローバル関数** */ |
alt0710 | 3:6f87cbec2ae8 | 54 | extern void init_status(void); |
alt0710 | 3:6f87cbec2ae8 | 55 | |
alt0710 | 3:6f87cbec2ae8 | 56 | #endif |