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:
Sat Apr 28 19:47:31 2018 +0000
Revision:
24:37a074e767c8
Parent:
23:0bb032ef1880
ID??????????????????Ticker??????????????????????????????????????main??????????main?????????????;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
alt0710 23:0bb032ef1880 1 #ifndef PID_ROOTS_H
alt0710 23:0bb032ef1880 2 #define PID_ROOTS_H
alt0710 23:0bb032ef1880 3
alt0710 23:0bb032ef1880 4 /* **Include** */
alt0710 23:0bb032ef1880 5 #include "mbed.h"
alt0710 23:0bb032ef1880 6 #include "comm.h"
alt0710 23:0bb032ef1880 7 #include "typedef.h"
alt0710 23:0bb032ef1880 8 #include "interface_manager.h"
alt0710 23:0bb032ef1880 9 #include "status_manager.h"
alt0710 23:0bb032ef1880 10
alt0710 23:0bb032ef1880 11 /* **Define** */
alt0710 23:0bb032ef1880 12
alt0710 23:0bb032ef1880 13
alt0710 23:0bb032ef1880 14 /* **変数定義** */
alt0710 23:0bb032ef1880 15 #ifndef EXCHANGE_REQUEST
alt0710 23:0bb032ef1880 16
alt0710 23:0bb032ef1880 17 #endif
alt0710 23:0bb032ef1880 18
alt0710 23:0bb032ef1880 19 #ifdef EXCHANGE_REQUEST
alt0710 23:0bb032ef1880 20 #endif
alt0710 23:0bb032ef1880 21
alt0710 23:0bb032ef1880 22 /* **グルーバル関数** */
alt0710 23:0bb032ef1880 23
alt0710 23:0bb032ef1880 24 /* **クラス** */
alt0710 23:0bb032ef1880 25 class InterfaceManager;
alt0710 23:0bb032ef1880 26 class StatusManager;
alt0710 23:0bb032ef1880 27
alt0710 23:0bb032ef1880 28 class PID{
alt0710 23:0bb032ef1880 29 public:
alt0710 24:37a074e767c8 30 PID(float m_Kp , float m_Ki , float m_Kd , float m_Integral_limit_max, float m_Integral_limit_min);
alt0710 23:0bb032ef1880 31 float getPID_Out(float req, float ref);
alt0710 23:0bb032ef1880 32
alt0710 23:0bb032ef1880 33 private:
alt0710 23:0bb032ef1880 34 float output[4];
alt0710 23:0bb032ef1880 35 float err[3];
alt0710 23:0bb032ef1880 36 float Kp,Ki,Kd;
alt0710 24:37a074e767c8 37 float Integral_limit_max;
alt0710 24:37a074e767c8 38 float Integral_limit_min;
alt0710 23:0bb032ef1880 39
alt0710 23:0bb032ef1880 40 };
alt0710 23:0bb032ef1880 41
alt0710 23:0bb032ef1880 42
alt0710 23:0bb032ef1880 43 #endif