>xabsl
Behavior Documentation
>
Index
>Agents
>Symbols
>Basic Behaviors
>Options
>> grab_ball_seif
>>>
go_to_ball
>>>
head_down
>>>
stop
>>>
grabbed
Option grab_ball_seif
State Machine
This browser can't display the SVG file
svg/option_grab_ball_seif.svg
.
The
Adobe SVG Viewer 3.0
can be downloaded from
http://www.adobe.com/svg/viewer/install/main.html
State go_to_ball
If that state is active,
>
This enumerated output symbol is set:
head.control_mode
=
head.control_mode.search_for_ball
>
This boolean output symbol is set:
strategy.ball_is_grabbed
=
false
>
The option
go_to_ball
is executed.
The decision tree:
This browser can't display the SVG file
svg/option_grab_ball_seif_state_go_to_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:
/** */
if
(
(
ball.was_seen
()
)
&&
(
ball.distance
()
< 150
)
&&
(
abs
(
ball.angle
()
)
< 10
)
)
{
goto
head_down
;
}
else
{
stay;
}
State head_down
If that state is active,
>
This enumerated output symbol is set:
head.control_mode
=
head.control_mode.none
>
This enumerated output symbol is set:
head.motion_type
=
head.motion_type.direct
>
This enumerated output symbol is set:
head.pid_setting
=
head.pid_setting.normal
>
This decimal output symbol is set:
head.neck_tilt
=
-90
>
This decimal output symbol is set:
head.head_pan
=
0
>
This decimal output symbol is set:
head.head_tilt
=
-30
>
This decimal output symbol is set:
head.mouth
=
0
>
This enumerated output symbol is set:
motion.type
=
motion.type.walk
>
This enumerated output symbol is set:
motion.walk_type
=
motion.walk_type.normal
>
This decimal output symbol is set:
motion.walk_speed.x
=
500
>
This decimal output symbol is set:
motion.walk_speed.y
=
0
>
This decimal output symbol is set:
motion.walk_speed.rot
=
0
The decision tree:
This browser can't display the SVG file
svg/option_grab_ball_seif_state_head_down.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
(
state_time
> 300
)
{
goto
stop
;
}
else
{
stay;
}
State stop
If that state is active,
>
This enumerated output symbol is set:
motion.type
=
motion.type.walk
>
This enumerated output symbol is set:
motion.walk_type
=
motion.walk_type.normal
>
This decimal output symbol is set:
motion.walk_speed.x
=
0
>
This decimal output symbol is set:
motion.walk_speed.y
=
0
>
This enumerated output symbol is set:
head.control_mode
=
head.control_mode.none
>
This enumerated output symbol is set:
head.motion_type
=
head.motion_type.direct
>
This enumerated output symbol is set:
head.pid_setting
=
head.pid_setting.normal
>
This decimal output symbol is set:
head.neck_tilt
=
-90
>
This decimal output symbol is set:
head.head_pan
=
0
>
This decimal output symbol is set:
head.head_tilt
=
60
>
This decimal output symbol is set:
head.mouth
=
0
The decision tree:
This browser can't display the SVG file
svg/option_grab_ball_seif_state_stop.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
(
state_time
> 300
)
{
goto
grabbed
;
}
else
{
stay;
}
State grabbed
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
The decision tree:
This browser can't display the SVG file
svg/option_grab_ball_seif_state_grabbed.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
(
sensor.time_since_something_was_in_front_of_chest
()
> 800
)
{
goto
go_to_ball
;
}
else
{
stay;
}