Skip to main content

Crate rust_robotics_control

Crate rust_robotics_control 

Source
Expand description

Control and path tracking algorithms for the RustRobotics workspace.

Re-exports§

pub use admm_consensus::solve_formation_consensus;
pub use admm_consensus::solve_graph_consensus;
pub use admm_consensus::solve_horizon_consensus;
pub use admm_consensus::AdmmConfig;
pub use admm_consensus::AdmmReport;
pub use admm_consensus::AgentSpec;
pub use admm_consensus::AgentTrajectory;
pub use admm_consensus::GraphConsensusReport;
pub use admm_consensus::HorizonConsensusReport;
pub use behavior_tree::BehaviorStatus;
pub use behavior_tree::BehaviorTree;
pub use behavior_tree::Blackboard;
pub use cbf_safety_filter::simulate_cbf_navigation;
pub use cbf_safety_filter::CbfConvexObstacle2D;
pub use cbf_safety_filter::CbfFilterResult;
pub use cbf_safety_filter::CbfHalfspace2D;
pub use cbf_safety_filter::CbfNavConfig;
pub use cbf_safety_filter::CbfNavReport;
pub use cbf_safety_filter::CbfSafetyFilter;
pub use lqr_control::InvertedPendulumLQR;
pub use lqr_steer_control::LQRSteerConfig;
pub use lqr_steer_control::LQRSteerController;
pub use move_to_pose::MoveToPoseConfig;
pub use move_to_pose::MoveToPoseController;
pub use mppi::MppiCircularObstacle2D;
pub use mppi::MppiConfig;
pub use mppi::MppiControl2D;
pub use mppi::MppiController2D;
pub use mppi::MppiGateRace2D;
pub use mppi::MppiGateRaceReport2D;
pub use mppi::MppiMovingObstacle2D;
pub use mppi::MppiPlan2D;
pub use mppi::MppiRacingGate2D;
pub use mppi::MppiSamplingDiagnostics2D;
pub use mppi::MppiState2D;
pub use mppi::MppiTerminalValueGrid2D;
pub use mppi::MppiTerminalValueReplayBuffer2D;
pub use mppi::MppiTerminalValueReplayUpdateReport2D;
pub use mppi::MppiTerminalValueUpdateConfig2D;
pub use mppi::MppiTerminalValueUpdateReport2D;
pub use mppi::MppiTerminalValueUpdater2D;
pub use mppi::MppiTrackProjection2D;
pub use mppi::MppiWaypointTrack2D;
pub use person_following_mppi::MppiPersonFollowingCandidate2D;
pub use person_following_mppi::MppiPersonFollowingConfig2D;
pub use person_following_mppi::MppiPersonFollowingSampler2D;
pub use person_following_mppi::PersonFollowingMetricsAccumulator2D;
pub use person_following_mppi::PersonFollowingMetricsConfig2D;
pub use person_following_mppi::PersonFollowingRolloutMetrics2D;
pub use pure_pursuit::PurePursuitConfig;
pub use pure_pursuit::PurePursuitController;
pub use pusher_slider::simulate_multi_push;
pub use pusher_slider::simulate_push;
pub use pusher_slider::simulate_push_with_obstacles;
pub use pusher_slider::ContactMode;
pub use pusher_slider::MultiPushReport;
pub use pusher_slider::PushReport;
pub use pusher_slider::PusherCommand;
pub use pusher_slider::PusherMppiConfig;
pub use pusher_slider::PusherMppiPlan;
pub use pusher_slider::PusherSliderMppiController;
pub use pusher_slider::PusherSliderParams;
pub use pusher_slider::SliderState;
pub use racing_mppi_3d::simulate_lap_race;
pub use racing_mppi_3d::RacingDroneControl3D;
pub use racing_mppi_3d::RacingDroneDynamics3D;
pub use racing_mppi_3d::RacingDroneState3D;
pub use racing_mppi_3d::RacingGateLap3D;
pub use racing_mppi_3d::RacingGatePlane3D;
pub use racing_mppi_3d::RacingLapReport3D;
pub use racing_mppi_3d::RacingMppi3DConfig;
pub use racing_mppi_3d::RacingMppi3DController;
pub use racing_mppi_3d::RacingMppi3DPlan;
pub use racing_mppi_motor::simulate_motor_race;
pub use racing_mppi_motor::MotorCommand;
pub use racing_mppi_motor::MotorMppiConfig;
pub use racing_mppi_motor::MotorMppiController;
pub use racing_mppi_motor::MotorMppiPlan;
pub use racing_mppi_motor::MotorQuadParams;
pub use racing_mppi_motor::MotorQuadState;
pub use racing_mppi_motor::MotorRacingLapReport;
pub use racing_mppi_powertrain::simulate_powertrain_race;
pub use racing_mppi_powertrain::simulate_powertrain_race_aware;
pub use racing_mppi_powertrain::simulate_powertrain_race_budgeted;
pub use racing_mppi_powertrain::ChargeBudget;
pub use racing_mppi_powertrain::PowertrainLapReport;
pub use racing_mppi_powertrain::PowertrainMppiController;
pub use racing_mppi_powertrain::PowertrainParams;
pub use racing_mppi_powertrain::PowertrainState;
pub use racing_mppi_quadrotor::simulate_quadrotor_race;
pub use racing_mppi_quadrotor::QuadrotorControl;
pub use racing_mppi_quadrotor::QuadrotorLapReport;
pub use racing_mppi_quadrotor::QuadrotorMppiConfig;
pub use racing_mppi_quadrotor::QuadrotorMppiController;
pub use racing_mppi_quadrotor::QuadrotorMppiPlan;
pub use racing_mppi_quadrotor::QuadrotorParams;
pub use racing_mppi_quadrotor::QuadrotorState;
pub use rear_wheel_feedback::RearWheelFeedbackConfig;
pub use rear_wheel_feedback::RearWheelFeedbackController;
pub use stanley_controller::StanleyConfig;
pub use stanley_controller::StanleyController;
pub use state_machine::StateMachine;
pub use two_joint_arm_control::TwoJointArm;

Modules§

admm_consensus
Distributed formation consensus via ADMM.
arm_obstacle_navigation
Arm path planning with obstacle avoidance in joint space.
backstepping_control
Backstepping-style controller for a unicycle robot.
behavior_tree
Behavior Tree implementation for mission planning.
cbf_safety_filter
PolyMerge-lite: a control-barrier-function safety filter over convex polytope obstacle covers.
cgmres_nmpc
Nonlinear MPC simulation with CGMRES (Continuation GMRES)
ddp
Differential Dynamic Programming (DDP) for a car-like model.
drone_3d_trajectory
3D drone trajectory following with quadrotor dynamics.
experiments
feedback_linearization
Feedback Linearization controller for a unicycle robot.
ilqr
Iterative Linear Quadratic Regulator (iLQR) for a unicycle model.
lqr_control
lqr_speed_steer_control
LQR Speed and Steering Control path tracking algorithm
lqr_steer_control
LQR Steer Control path tracking algorithm
minimum_snap_trajectory
Minimum-snap 3D trajectory generation for drone waypoint tracking.
model_predictive_trajectory_generator
move_to_pose
mpc
Model Predictive Control (MPC) for path tracking
mpc_control
mppi
Vanilla MPPI controller for a 2-D double integrator.
n_joint_arm_3d
3D N-joint arm control
n_joint_arm_control
Generalized N-joint planar arm inverse kinematics and control.
person_following_mppi
Adaptive person-following helpers for MPPI.
pid_controller
PID Controller with anti-windup and output clamping.
pure_pursuit
Pure Pursuit path tracking algorithm
pusher_slider
Quasi-static planar pushing (pusher-slider) with contact modes and MPPI.
racing_mppi_3d
Reference-free racing MPPI through 3-D gate planes.
racing_mppi_motor
Reference-free racing MPPI with a motor-level rotor-mixing quadrotor.
racing_mppi_powertrain
Reference-free racing MPPI with a motor-lag and battery-sag powertrain.
racing_mppi_quadrotor
Reference-free racing MPPI with a full quadrotor attitude model.
rear_wheel_feedback
Rear Wheel Feedback path tracking controller
rocket_landing
Rocket Powered Landing trajectory optimization.
rrt_star_seven_joint_arm
RRT* path planner for 7-DOF robotic arms
sliding_mode_control
stanley_controller
Stanley Controller path tracking algorithm
state_machine
State Machine implementation for Mission Planning
two_joint_arm_control