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:
Mon May 29 16:45:16 2017 +0000
Revision:
20:354ed2681d0a
Parent:
19:0bbd90be9aa3
Child:
23:0bb032ef1880
testMode???; ??????????????????????????????????; ??????????????????

Who changed what in which revision?

UserRevisionLine numberNew contents of line
alt0710 12:b7d7523733cd 1
alt0710 12:b7d7523733cd 2 #include "mbed.h"
alt0710 12:b7d7523733cd 3 #include "comm.h"
alt0710 12:b7d7523733cd 4 #include "interface_manager.h"
alt0710 12:b7d7523733cd 5 #include "parameter_manager.h"
alt0710 12:b7d7523733cd 6 #include "dribbler.h"
alt0710 12:b7d7523733cd 7
alt0710 12:b7d7523733cd 8 /* **mbedクラス** */
alt0710 12:b7d7523733cd 9 #ifdef LPC4088
alt0710 12:b7d7523733cd 10
alt0710 12:b7d7523733cd 11 #elif STM32
alt0710 12:b7d7523733cd 12
alt0710 12:b7d7523733cd 13 #endif
alt0710 12:b7d7523733cd 14
alt0710 12:b7d7523733cd 15 /* **ローカル関数定義** */
alt0710 12:b7d7523733cd 16 void fireTimer(void);
alt0710 12:b7d7523733cd 17 void driveFireTimer(double firetime);
alt0710 12:b7d7523733cd 18
alt0710 12:b7d7523733cd 19 /* **ローカル関数** */
alt0710 12:b7d7523733cd 20
alt0710 12:b7d7523733cd 21 /* **グルーバル関数** */
alt0710 12:b7d7523733cd 22
alt0710 12:b7d7523733cd 23 /* **クラス** */
alt0710 12:b7d7523733cd 24 class InterfaceManager;
alt0710 12:b7d7523733cd 25 //メンバ変数の初期化は、定義順(Warningになる)
alt0710 12:b7d7523733cd 26 Dribbler::Dribbler()
alt0710 12:b7d7523733cd 27 :f_dribble(0),
alt0710 12:b7d7523733cd 28 power(0)
alt0710 12:b7d7523733cd 29 {
alt0710 12:b7d7523733cd 30 }
alt0710 12:b7d7523733cd 31
alt0710 12:b7d7523733cd 32 void Dribbler::setdribble(char flag_dribble, char dribble_power)
alt0710 12:b7d7523733cd 33 {
alt0710 12:b7d7523733cd 34 f_dribble = flag_dribble;
alt0710 12:b7d7523733cd 35 power = dribble_power;
alt0710 12:b7d7523733cd 36
alt0710 12:b7d7523733cd 37 checkIC();
alt0710 12:b7d7523733cd 38 // if(f_dribble)
alt0710 19:0bbd90be9aa3 39 if(f_dribble)
alt0710 19:0bbd90be9aa3 40 //if(f_dribble && (StatusManager::dribbleIC_fault == 0))
alt0710 14:f6cc949a8046 41 {
alt0710 14:f6cc949a8046 42 InterfaceManager::dribbleStandBy = 0;
alt0710 20:354ed2681d0a 43 // if(power < 5)
alt0710 20:354ed2681d0a 44 // {
alt0710 20:354ed2681d0a 45 // power = 5;
alt0710 20:354ed2681d0a 46 // }
alt0710 20:354ed2681d0a 47 //
alt0710 20:354ed2681d0a 48 // if(power > 11)
alt0710 20:354ed2681d0a 49 // {
alt0710 20:354ed2681d0a 50 // power = 11;
alt0710 20:354ed2681d0a 51 // }
alt0710 20:354ed2681d0a 52
alt0710 12:b7d7523733cd 53 driveDribble(power);
alt0710 14:f6cc949a8046 54 }
alt0710 14:f6cc949a8046 55 else
alt0710 14:f6cc949a8046 56 {
alt0710 20:354ed2681d0a 57 driveDribble(0);
alt0710 18:8db19ccf7e02 58 InterfaceManager::dribbleStandBy = 0;
alt0710 14:f6cc949a8046 59 }
alt0710 12:b7d7523733cd 60 }
alt0710 12:b7d7523733cd 61
alt0710 12:b7d7523733cd 62 void Dribbler::driveDribble(char t_power)
alt0710 12:b7d7523733cd 63 {
alt0710 19:0bbd90be9aa3 64
alt0710 14:f6cc949a8046 65 InterfaceManager::dribbleMotor.write((float)(t_power/15.0));
alt0710 14:f6cc949a8046 66 //InterfaceManager::dribbleMotor.write(0.0);
alt0710 12:b7d7523733cd 67
alt0710 12:b7d7523733cd 68 }
alt0710 12:b7d7523733cd 69
alt0710 12:b7d7523733cd 70 void Dribbler::checkIC(void)
alt0710 12:b7d7523733cd 71 {
alt0710 12:b7d7523733cd 72 StatusManager::dribbleIC_fault = InterfaceManager::dribbleIC_fault;
alt0710 12:b7d7523733cd 73 }
alt0710 12:b7d7523733cd 74