Option dribble

* play the grabbed ball in a given direction * * dribbeln dribble Südamerikaner sind wahre Ballkünstler und können * oft beidfüßig dribbeln = South Americans are true * wizards with the ball and can often dribble with both * feet. * (Quelle: http://www.britishembassyworldcup.com/football_glossary.pdf) *

Parameters of that option:
ParameterTypeMeasureRangeDescription
dribble.angledecimaldeg-180..180The angle where to dribble the ball to relative to the robot
dribble.angle_widthdecimaldeg-180..180The width of the angle where to dribble the ball to
dribble.left_rightdecimalTurn direction: > 0 left, < 0 right, == 0 dont care
dribble.forward_kickbooleantrue/ falsekick the ball when the correct angle is reached
dribble.dribble_forwardbooleantrue/ falsedribble the ball forward when the correct angle is reached

State Machine

This browser can't display the SVG file svg/option_dribble.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html

State turn

If that state is active,
 >  The option dribble_turn is executed. Parameters:
    dribble_turn.angle  =  @dribble.angle ;
    dribble_turn.angle_width  =  @dribble.angle_width ;
    dribble_turn.left_right  =  @dribble.left_right ;
 
The decision tree:
  This browser can't display the SVG file svg/option_dribble_state_turn.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** turning is finished */
if ( action_done)
{
  
goto dribble_forward;
}
else
{
  
stay;
}

State dribble_forward

If that state is active,
 >  The option dribble_forward is executed. Parameters:
    dribble_forward.angle  =  @dribble.angle ;
    dribble_forward.angle_width  =  @dribble.angle_width ;
    dribble_forward.forward_kick  =  @dribble.forward_kick ;
    dribble_forward.dribble_forward  =  @dribble.dribble_forward ;
    dribble_forward.dribble_time  =  option_time ;
 
The decision tree:
  This browser can't display the SVG file svg/option_dribble_state_dribble_forward.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
/** dribble forward is finished */
if ( action_done)
{
  
/** ball is still grabbed */
if ( strategy.ball_is_grabbed)
{
  
/** ball should no longer be dribbled forward or kicked */
if (
(
!(@dribble.dribble_forward)
)
&& 
(
!(@dribble.forward_kick)
)
)
{
  
goto finished;
}
else
{
  
goto turn;
}
}
else
{
  
goto kicked;
}
}
else
{
  
stay;
}

State finished

This state is a target state.



If that state is active,
 >  This boolean output symbol is set:
    strategy.ball_is_grabbed  = 
true
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.grab_ball
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 >  This enumerated output symbol is set:
    motion.walk_type  = 
motion.walk_type.walk_with_ball
 
The decision tree:
  This browser can't display the SVG file svg/option_dribble_state_finished.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
stay;

State kicked

This state is a target state.



If that state is active,
 >  This boolean output symbol is set:
    strategy.ball_is_grabbed  = 
false
 >  This enumerated output symbol is set:
    head.control_mode  = 
head.control_mode.search_for_ball
 >  This enumerated output symbol is set:
    motion.type  = 
motion.type.stand
 
The decision tree:
  This browser can't display the SVG file svg/option_dribble_state_kicked.svg.



The Adobe SVG Viewer 3.0 can be downloaded from http://www.adobe.com/svg/viewer/install/main.html
 
Pseudo code of the decision tree:
 
stay;