RobocupSSLのメイン基板白mbedのプログラム

Dependencies:   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は,ロボットとボールの座標,審判の判定を元にロボットの移動,キックなどの作戦を決定し,無線によってロボットに指令を送信する. 700


ロボット機能紹介


●オムニホイールによる方向転換不要の全方位移動

オムニホイールは,自由に回転可能なローラをホイールの外周上に配置した車輪である.ローラの回転により,車輪の回転と垂直の方向に駆動力を発することはできないが移動は可能となる.各車輪の角速度を調整することによって全方向への移動を可能にする.
400

●ドリブルバーのバックスピンによるボール保持

●電磁力を利用したキッカー

●キッカーの電磁力エネルギーを充電する充電回路

●ロボット情報が一目でわかるLCD

Committer:
alt0710
Date:
Tue Apr 25 11:45:41 2017 +0000
Revision:
4:8c6f6b687303
Parent:
3:6f87cbec2ae8
Child:
5:4be30999853f
?????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
alt0710 0:d4b98dbcb767 1 #include "mbed.h"
alt0710 4:8c6f6b687303 2 #include "mode.h"
alt0710 0:d4b98dbcb767 3 #include "interface_manager.h"
alt0710 3:6f87cbec2ae8 4 #include "status_manager.h"
alt0710 3:6f87cbec2ae8 5 #include "parameter_manager.h"
alt0710 0:d4b98dbcb767 6
alt0710 0:d4b98dbcb767 7 DigitalOut myled(LED1);
alt0710 0:d4b98dbcb767 8
alt0710 0:d4b98dbcb767 9 int main() {
alt0710 0:d4b98dbcb767 10 init_interface();
alt0710 3:6f87cbec2ae8 11 init_status();
alt0710 4:8c6f6b687303 12
alt0710 4:8c6f6b687303 13 ActMode actmode;
alt0710 3:6f87cbec2ae8 14
alt0710 2:ba11cc8540d3 15 OrderMotVel order;
alt0710 2:ba11cc8540d3 16 order.Mot0Order.Vel_short = 0xCD01;
alt0710 2:ba11cc8540d3 17 order.Mot1Order.Vel_short = 0xCD02;
alt0710 2:ba11cc8540d3 18 order.Mot2Order.Vel_short = 0xCD03;
alt0710 2:ba11cc8540d3 19 order.Mot3Order.Vel_short = 0xCD04;
alt0710 2:ba11cc8540d3 20
alt0710 2:ba11cc8540d3 21
alt0710 0:d4b98dbcb767 22 while(1) {
alt0710 4:8c6f6b687303 23 actmode.run();
alt0710 0:d4b98dbcb767 24 switch(InterfaceManager::button.getButtonStatus(CROSS_UP)){
alt0710 0:d4b98dbcb767 25 case SINGLE_CLICK:
alt0710 3:6f87cbec2ae8 26 myled = 1; // LED is ON
alt0710 3:6f87cbec2ae8 27
alt0710 0:d4b98dbcb767 28 break;
alt0710 0:d4b98dbcb767 29
alt0710 0:d4b98dbcb767 30 case DOUBLE_CLICK:
alt0710 3:6f87cbec2ae8 31
alt0710 0:d4b98dbcb767 32 myled = 0; // LED is OFF
alt0710 0:d4b98dbcb767 33 break;
alt0710 0:d4b98dbcb767 34
alt0710 0:d4b98dbcb767 35 default:
alt0710 0:d4b98dbcb767 36 break;
alt0710 0:d4b98dbcb767 37 }
alt0710 4:8c6f6b687303 38 // InterfaceManager::can.setMotVel(order);
alt0710 2:ba11cc8540d3 39
alt0710 1:c359b1fcfb5a 40
alt0710 0:d4b98dbcb767 41 }
alt0710 0:d4b98dbcb767 42 }