RoboCup Software
Overview
RoboCup Software encompasses all parts of the system that run on a host machine (not the robots). The entire software system is composed both of the components we play soccer and compete with as well as a sort of SDK that allows new components to be written quickly for idea and system testing.
Tasks
The RoboCup software team is using a program called Redmine for task management. It serves as a centralized todo-list to keep track of what needs to be done and who's in charge of doing it. For information about Redmine, check out their [Tutorials Page http://www.redmine.org/projects/redmine/wiki/Tutorials].
The RoboCup Redmine site can be found at: [[1]].
Main Programs
- soccer
- Everything after vision and before radio happens here.
- simulator
- Simulates a game environment, including vision and radio
- sslrefbox
- The standard SSL referee box for issuing referee commands to all teams
- radio
- Radio communication with on-field robots
Logging Utilities
- log_viewer
- Playback of logged data
- simple_logger
- Records vision and referee data just like soccer does, but with no processing.
- convert_tcpdump
- Reads vision and referee packets from a tcpdump file and generates a log file. Use with util/log_vision.
Development
- RoboCup Boost Unit Tests
- Explains how Boost Unit Testing Framework is integrated into and run from SCons.
- RoboCup Coding Standard
- Coding standard
- RoboCup Setup
- A step by step guide to setting up your new Linux system with our code base.
- RoboCup Tips&Tricks
- Some pointers on how to begin writing and debugging code.
- RoboCup GIT HOWTO
- We currently use Git as our code management system, and this will explain how to acquire and update the code base.
- RoboCup Eclipse HOWTO
- You can use any editor you want, but one useful one is Eclipse. This HOWTO explains how to get an set up eclipse.
- RoboCup Compile HOWTO
- System requirements, dependencies, and using the build tools to compile all of the software.
- RoboCup Simulator Execution
- How to start and configure the simulator and connect to one or two soccer playing modules, as well as the Referee Module
- RoboCup Live Robot Execution
- How to start and run the soccer with actual robots, connect to shared vision, and receive commands from the Referee Module
- RoboCup Vision System
- How to setup the vision system (camera calibration, blob detection, etc.)
- Robocup Play Development HOWTO
- How to create a simple play to get started
Conventions
There are a variety of conventions used throughout the code, both to represent soccer-playing, and to maintain consistency in code development.
- RoboCup Robot Identification
- The means by which specific robots and field entities can be identified
- RoboCup Field Structure
- The coordinate systems and their relationship to the field
- Field and Camera Information
- Specifications on our cameras