>xabsl
Behavior Documentation
>
Index
>Agents
>Symbols
>Basic Behaviors
>Options
>> penalty_goalie
>>>
position
>>>
clear_ball
>>>
wait_for_end
Option penalty_goalie
The penalty goalie
State Machine
This browser can't display the SVG file
svg/option_penalty_goalie.svg
.
The
Adobe SVG Viewer 3.0
can be downloaded from
http://www.adobe.com/svg/viewer/install/main.html
State position
If that state is active,
>
This enumerated output symbol is set:
head.control_mode
=
head.control_mode.goalie_head_control
>
This enumerated output symbol is set:
motion.type
=
motion.type.stand
>
The option
goalie_position
is executed.
>
The option
goalie_block
is executed.
The decision tree:
This browser can't display the SVG file
svg/option_penalty_goalie_state_position.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:
/** Ball far in penalty area, enemy can't reach it anymore without being disqualified */
if
(
(
ball.was_seen
()
)
&&
(
ball.position.field.x
()
< (
field.own_penalty_area.x
()
- 250)
)
&&
(
abs
(
ball.position.field.y
()
)
< (
field.left_penalty_area.y
()
- 250)
)
&&
(
vector.abs
(
ball.speed.robot.x
() ,
ball.speed.robot.y
()
)
< 150
)
)
{
goto
wait_for_end
;
}
else
{
stay;
}
State clear_ball
If that state is active,
>
This enumerated output symbol is set:
head.control_mode
=
head.control_mode.search_for_ball
>
This enumerated output symbol is set:
leds.back_front_white
=
leds.blink.llll
>
The option
goalie_clear_ball
is executed.
The decision tree:
This browser can't display the SVG file
svg/option_penalty_goalie_state_clear_ball.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:
/** ball is handled */
if
(
strategy.ball_is_grabbed
)
{
stay;
}
else
{
/** */
if
(
state_time
> 1500
)
{
goto
position
;
}
else
{
stay;
}
}
State wait_for_end
If that state is active,
>
This enumerated output symbol is set:
head.control_mode
=
head.control_mode.goalie_head_control
>
This enumerated output symbol is set:
leds.back_front_white
=
leds.blink.llll
>
This enumerated output symbol is set:
motion.type
=
motion.type.stand
The decision tree:
This browser can't display the SVG file
svg/option_penalty_goalie_state_wait_for_end.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:
/** */
if
(
ball.time_since_last_seen
()
> 4000
)
{
goto
position
;
}
else
{
/** */
if
(
!(
ball.was_seen
()
)
)
{
stay;
}
else
{
/** */
if
(
(
ball.position.field.x
()
< (
field.own_penalty_area.x
()
+ 30)
)
&&
(
abs
(
ball.position.field.y
()
)
< (
field.left_penalty_area.y
()
- 30)
)
)
{
stay;
}
else
{
goto
position
;
}
}
}