Overview
Top Image
Bottom Image
Blackboard Variables
Field View
Field View shows many things that our robot knows about the world and shows behaviour intentions.
Robot Pose
Robot Pose and Covariance is displayed using a pacman-like symbol.
θ indicates one standard deviation of the robot’s heading both in clockwise and anticlockwise direction.
The covariance ellipse indicates how accurately the position of the robot is known. If a covariance ellipse is close to a circle, the robot is unaware of its position equally in all directions, but if the covariance ellipse is stretched along one of it’s axes, the robot knows its position well along the short axis, but not along the long axis.
Tip
If the pacman’s mouth is wide open, it is highly unsure of its heading.
Tip
Covariance ellipses are used commonly in robot kalman filters, so search google to learn more.
My Pose
My pose is the pose hypothesis used in behaviours, and can be identified by a Robot Pose symbol with a white ellipse.
My Pose Hypotheses
All the robot pose hypotheses are yellow, and use the Robot Pose symbol. The brush thickness of the covariance ellipse is the weight of hypothesis.
The left and right hypotheses in the image have 1.0 and 0.03 weight respectively. The right hypotheses has an extremely small brush thickness that ends up almost invisible.
Teammate Pose
Teammate’s pose is shown in its corresponding Color, and uses the Robot Pose symbol.
Ball Position and Velocity
Element |
Description |
---|---|
Dot |
Ball Position |
Ellipse |
Position Covariance Ellipse |
Line |
Ball Velocity |
The direction of the line from the ball, is the direction it is moving.
Tip
The length of the line is how far the ball would travel over one second if the ball travelled at constant velocity.
EgoBall
EgoBall is shown in yellow, and use the Ball Position and Velocity symbol.
TeamBall
TeamBall is shown in black, and use the Ball Position and Velocity symbol as below,
Teammate’s Ball
A teammate’s ball is shown in its corresponding Color, and uses the Ball Position and Velocity symbol.
Color
A teammate’s color is
red if playing the ball
blue if assisting
otherwise, depends on it’s Positioning
Positioning
Positionings are defined in robot/utils/PositioningDefs.hpp
.
Positioning |
Color |
Letter |
---|---|---|
POSITIONING_NONE |
black |
NA |
POSITIONING_AGAINST_KICKING_TEAM_SUPPORTER |
magenta |
F |
POSITIONING_AGAINST_KICKING_TEAM_DEFENDER |
black |
D |
POSITIONING_AGAINST_KICKING_TEAM_UPFIELDER |
cyan |
U |
POSITIONING_FIND_BALL_FINDER |
gray |
FB |
POSITIONING_AGAINST_DRIBBLE_TEAM_RIGHT_SUPPORTER |
white |
RS |
POSITIONING_AGAINST_DRIBBLE_TEAM_SHOOTER |
cyan |
SH |
POSITIONING_AGAINST_DRIBBLE_TEAM_LEFT_SUPPORTER |
magenta |
LS |
POSITIONING_AGAINST_DRIBBLE_TEAM_SWEEPER |
black |
SW |
Positioning Letter
The letter above a Teammate Pose indicates it’s positioning, as listed in Positioning.
Player Number
The number below a Teammate Pose indicates it’s player number.
Teammate WalkingTo
The position of where a teammate robot is moving to when anticipating or in global find ball is shown with a 50% opacity Teammate Pose symbol.
Robot Observations
Visual robot observations are shown using a green Robot Pose symbol.
Observed Balls
Balls directly from the vision module are shown as an orange dot, as below
Observed Field Features
Observed T-Junctions and corners are displayed using black, as below
Observed centre-circle is displayed with orange if the orientation is known or red otherwise.
Observed field lines are displayed in red.
Ball Manoeuvre
A robot’s ball manouevre intention is displayed using a colored sector extending from the ball’s current location to the target ball location (indicated with a pink dot)
Green cone indicates a kick, while blue indicates a dribble intention.
The centre angle of the sector indicates the heading accuracy that must be achieved for the robot to execute the manoeuvre when lining up with the ball.
The radius of the sector may be finite or infinite. A finite radius indicates that the robot will try and control its kick strength to aim for a certain field coordinate, while an infinite radius indicates that the robot will try and kick the ball in the direction of the sector with maximum power.
A maximum power kick towards the opponent goal:
A dribble towards the opponent goal box:
A controlled power kick towards the opponent goal box:
Note
Dribble strength is not controllable
Anticipate Position
The intended anticipate position of a robot that is executing an Anticipate or TeamFindBall skill is visualised using a grey Robot Pose, as below. The heading variance of the pie-shape indicates the acceptable heading error once the robot is at its anticipate position.