Coder Social home page Coder Social logo

consai2's Introduction

Build Status

CON-SAI2

CON-SAI2はRoboCup SSLに 初めて参加する人でも開発できるサッカーAIです。

CONtribution to Soccer AI

consai2_main

前作のCON-SAI からCON-SAI2へ開発を移行しました。

CON-SAIとの違い

  • ROSのルールに合うようパッケージ名を修正しました
  • サンプルプログラム(consai2_examples)を追加しました
    • Visualizer(Vision, Refereeとの通信確認)
    • Control(走行制御のテスト)
    • Game(試合プログラム)
    • Joystick(ジョイスティックコントローラによるロボットの操縦)
  • ユーザが拡張すべきプログラムと、変更が不要なプログラムを明確にしました
    • 例えば、Vision・Refereeのデータ受信やシミュレータへのデータ送信プログラムは変更不要です
    • 例えば、戦略プログラムや走行制御、ロボットへのデータ送信プログラムはユーザに合わせて拡張してください
    • Rootsが作成したコード例を各パッケージのexampleディレクトリに用意しています

Requirements

CON-SAI2はUbuntu 18.04で作成・テストしてます。

下記のPCスペックで問題なく動作します。

  • Intel(R) Core(TM) i5-6600K CPU @ 3.50GHz
  • 8 GB of RAM
  • 有線LANポート(試合会場では有線LANでロボット・ボール位置座標データを受信します)

Installation

ROSのインストール

ROS (Robot Operating System) は、ロボットソフトウェア開発をサポートする ライブラリ・ツールが豊富に含まれたオープンソースソフトウェアです。

CON-SAI2はKinetic、Melodicに対応しています。

Ubuntu install of ROS Melodicを参考に、インストールしてください。フルインストール推奨です。

Google Protobuf Librariesのインストール

sudo apt-get install libprotobuf-dev libprotoc-dev protobuf-compiler
sudo apt-get install python-pip
sudo pip2 install protobuf

依存パッケージのインストール

sudo apt-get install ros-$ROS_DISTRO-navigation ros-$ROS_DISTRO-bfl -y

CON-SAI2のビルド

git clone https://github.com/SSL-Roots/consai2 ~/catkin_ws/src/consai2
cd ~/catkin_ws/src/
rosdep install -r -y --from-paths . --ignore-src
cd ~/catkin_ws/
catkin_make
source ~/catkin_ws/devel/setup.bash

RoboCup SSLのAI開発に必要なツールをインストール

RoboCup SSLのAI開発にはシミュレータ(grSim)と審判ソフト(SSL-Game-Controller)があると便利です。

下記ページを参考に、ソフトウェアをインストールしてください。

grSim

SSL-Game-Controller

Tutorial

CON-SAI2を始めるに当たって、まずはサンプルプログラムを実行してください。

consai2_examples にサンプロプログラムの実行方法が記載されています。

Development

いくつかのパッケージ内のexampleディレクトリはRootsのコード例です。そのため、今後もRootsの意思で中身が大幅に変わる可能性があります。

masterブランチの変更を容易にマージするため、以下項目を守ってください。

  • masterからブランチを切り分ける
  • 各パッケージのexampleディレクトリ内を編集しない
  • 各パッケージのsrcscriptsディレクトリ直下にユーザコードを追加する

Contribution

CON-SAI2は全ユーザ共通で使用できるコード(consai2_receiverconsai2_senderなど)と、 各ユーザで作成すべきコード(作成例:exampleディレクトリ)に分かれています。

全ユーザ共通で扱うコードについてはRoots以外の要望も受け入れたいので、 Contribution(issue, pullreq)をお願いします。

些細な修正や指摘でも良いので、まずはissueの作成から始めてみてください。

Author

CON-SAI2はRoboCup SSLに参加している日本人チームRootsが作成しています。

RoboCup SSLへの参加方法、ロボットに必要な機能、開発環境などは Rootsのホームページに記載してます。

Roots - Home

consai2's People

Contributors

hansrobo avatar nabekuro0104 avatar shotaak avatar tilt-silvie avatar uchikun2493 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.