pyrcf.components.controller_manager.simple_controller_manager
Classes
A simple controller manager that naively performs sequential updates of all agents it |
Module Contents
- class pyrcf.components.controller_manager.simple_controller_manager.SimpleControllerManager(agents: List[pyrcf.components.agents.agent_base.AgentBase] = None, command_accumulation_policy: pyrcf.components.controller_manager.command_accumulators.cmd_accumulation_policies.CommandAccumulatorBase = SimpleCmdOverride())
Bases:
pyrcf.components.controller_manager.controller_manager_base.ControllerManagerBaseA simple controller manager that naively performs sequential updates of all agents it manages.
- update(robot_state: pyrcf.core.types.RobotState, global_plan: pyrcf.core.types.GlobalMotionPlan, t: float, dt: float) pyrcf.core.types.RobotCmd
Run one update step of all the ‘agents’ managed by this manager.
- Parameters:
robot_state (RobotState) – Current robot state. This is equivalent to ‘observation’ in standard learning-based agents.
global_plan (GlobalMotionPlan) – The reference global plan to follow.
t (float, optional) – the current time signature of the control loop. Defaults to None (controllers may or may not need this).
dt (float, optional) – the time since the last control loop. Defaults to None (controllers may or may not need this).
- Returns:
- The output control command (action) to be sent to the robot based on the
accumulation policy used by this manager.
- Return type:
- Raises:
NotImplementedError – Raised if this method is not implemented by the child class.