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
Diff: interface/button/button_roots.cpp
- Revision:
- 28:eab9de9eb81a
- Parent:
- 23:0bb032ef1880
- Child:
- 29:4607c59702a1
diff -r c7d8f514209a -r eab9de9eb81a interface/button/button_roots.cpp --- a/interface/button/button_roots.cpp Tue May 01 02:11:09 2018 +0000 +++ b/interface/button/button_roots.cpp Tue May 01 02:52:12 2018 +0000 @@ -9,8 +9,26 @@ #ifdef LPC4088 #elif STM32 - - #ifndef MAIN_BORD_Ver_5 + #ifdef MAIN_BORD_Ver_4 + //CrossSelectSW + DigitalIn Mode_SW1(A2); + DigitalIn Mode_SW2(A3); + InterruptIn CrossSW_UP(D9); //EXT2 + InterruptIn CrossSW_LEFT(D7); //PUSH D7 + //InterruptIn CrossSW_DOWN(D9); //KICK + DigitalIn DUMY(D8); //KICK + InterruptIn CrossSW_RIGHT(A1); //EXT + #elif MAIN_BORD_Ver_5 + //SWの配置が変わったので使いやすい構成にかえる + //CrossSelectSW + DigitalIn Mode_SW1(A2); + DigitalIn Mode_SW2(A3); + InterruptIn CrossSW_UP(D9); //EXT2 + InterruptIn CrossSW_LEFT(D7); //PUSH D7 + //InterruptIn CrossSW_DOWN(D9); //KICK + DigitalIn DUMY(A1); //KICK + InterruptIn CrossSW_RIGHT(D8); //EXT + #else //ModeSelectSW DigitalIn Mode_SW1(A3); DigitalIn Mode_SW2(A2); @@ -20,15 +38,6 @@ //InterruptIn CrossSW_DOWN(D9); //KICK DigitalIn DUMY(D8); //KICK InterruptIn CrossSW_RIGHT(A1); //EXT - #else - //CrossSelectSW - DigitalIn Mode_SW1(A2); - DigitalIn Mode_SW2(A3); - InterruptIn CrossSW_UP(D9); //EXT2 - InterruptIn CrossSW_LEFT(D7); //PUSH D7 - //InterruptIn CrossSW_DOWN(D9); //KICK - DigitalIn DUMY(D8); //KICK - InterruptIn CrossSW_RIGHT(A1); //EXT #endif #endif