RoboCup Software
Jump to navigation
Jump to search
Contents
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.
Agenda
This is a list of the meeting agendas throughout the semester
Tasks
This is the main list of project ideas/tasks for robocup 2013
- AI engine
- Improve the State Machine to support:
- A decision algorithm for choosing plays
- Offensive - Open - Defensive states
- Better continuity in role assignments
- Scripting language
- faster implementation == larger play database
- Dynamically learn other teams plays
- predictive defense etc.
- Logging
- A standardized logging format and logger for SSL
- Run soccer on log file
- for debugging and testing our ai against opponents
- Calculate latency
- important for passing!
- Recognizing when opponents chip from curvature of ball motion
- Robot plays/behaviors
- 2-robot passing behavior
- one-touch pass kicking
- Yank ball/spin out when scuffling for ball
- Improve goalie
- must clear ball out of defense area, stop charging robots, not be retarded
- Use fullbacks and goalie as a 3 man team
- v formation, move as a unit. fullbacks can stop charging robots
- ... and any other creative strategy!
- Motion
- Improve on board motion control
- faster accel and max speed
- IMU
- wheel slippage, precise kicking, motion feedback
- Drive, line up, and kick a fast moving ball
- Improve path planning
- Radio
- Fix radio to work with 6 robots
- Qt
- Add above tools to GUI
- Streamline interface, ie for real game situations
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 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