RoboCup Software

From RoboJackets Wiki
Revision as of 12:11, 9 September 2012 by Ehuang (talk | contribs) (Tasks)
Jump to navigation Jump to search

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

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