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

actuator/kicker.h

Committer:
alt0710
Date:
2017-05-02
Revision:
10:9cd22f673968
Parent:
3:6f87cbec2ae8
Child:
15:2bf8eafacef8

File content as of revision 10:9cd22f673968:

#ifndef KICKER_ROOTS_H
#define KICKER_ROOTS_H

/* **Include** */
#include "mbed.h"
#include "comm.h"
#include "interface_manager.h"
#include "status_manager.h"

/* **Define** */
#define STRAIGHT    1
#define CHIP        2
#define CONTINUE_DELAY 80
#define NUM_OF_KICK 50

/* **変数定義** */

/* **グルーバル関数** */

/* **クラス** */
class InterfaceManager;
class StatusManager;

class Kicker{
  public:
  Kicker();
  void setKick(char flag_kick, char kick_Type, char kick_power);
  void setCharge(char flag_charge); 
  void forceFireKick(void);

  
  private:  
  void fireKick(char t_KickType,char t_power); 
  void checkKickEnable(void);
  void checkRelease(void);
  void checkChargeCompleted(void);
  void checkBallSensor(void);
  void fireTimer(void);
  
  enum  BALL{IS_NOT_EXIST, IS_EXIST};
  enum  KickPermit{DISABLE, ENABLE};
  BALL  ball;
  KickPermit kickPermit;
  char  f_kick;
  char  f_charge_fin;
  char  kickType;
  char  power;
  char  f_charge;
  char  isRelease;
  short fireTime;
  int  count_continue_delay;
  int  count_num_of_kick;
  int  mode_discharge;

};

#endif