kompass.components._modes

Shared enums for the Controller component and its helpers.

Module Contents

Classes

CmdPublishType

Control command publishing method:

FrameMode

Frame in which the controller reasons about the world.

PathControlStatus

Outcome of a single Controller._path_control step.

API

class kompass.components._modes.CmdPublishType

Bases: kompass.utils.StrEnum

Control command publishing method:

Value

Description

TWIST_SEQUENCE (Literal “Sequence”)

the controller publishes a Twist message in the same thread running the control algorithm. If a series of commands is computed (up to the control horizon), the controller publishes the commands one by one before running the control algorithm again

TWIST_PARALLEL (Literal “Parallel”)

the controller handles publishing a Twist message in a new thread. If a series of commands is computed (up to the control horizon), the controller publishes the commands one by one in parallel while running the control algorithm again

TWIST_ARRAY (Literal “Array”)

the controller publishes a TwistArray msg of all the computed control commands (up to the control horizon)

class kompass.components._modes.FrameMode

Bases: kompass.utils.StrEnum

Frame in which the controller reasons about the world.

  • GLOBAL: robot state and tracked targets live in the world frame. Requires a valid odom→world transform (or matching frames).

  • LOCAL: robot state is ignored; sensor data and targets are treated as robot-relative. Only available in vision follower mode.

class kompass.components._modes.PathControlStatus

Bases: kompass.utils.StrEnum

Outcome of a single Controller._path_control step.