Brick
Loading...
Searching...
No Matches
CentripetalAccelerationConstraint Class Reference

#include <centripetal_acceleration_constraint.h>

Description

Trajectory constraint that limits maximum velocity to prevent excessive centripetal acceleration.

Inheritance diagram for CentripetalAccelerationConstraint:

Public Member Functions

 CentripetalAccelerationConstraint (units::Acceleration max_centripetal_acceleration)
 Constructs a CentripetalAccelerationConstraint.
units::Velocity max_velocity (const Pose2d &pose, units::Curvature curvature, units::Velocity velocity) const override
 Computes maximum allowed velocity based on path curvature and centripetal acceleration limits.
MinMax min_max_acceleration (const Pose2d &pose, units::Curvature curvature, units::Velocity speed) const override
 Computes minimum and maximum allowed linear accelerations.
std::unique_ptr< TrajectoryConstraint > clone () const override
 Creates an independent copy of this constraint.
Public Member Functions inherited from TrajectoryConstraint
 TrajectoryConstraint (const TrajectoryConstraint &)=default
TrajectoryConstraint & operator= (const TrajectoryConstraint &)=default
 TrajectoryConstraint (TrajectoryConstraint &&)=default
TrajectoryConstraint & operator= (TrajectoryConstraint &&)=default

Constructor & Destructor Documentation

◆ CentripetalAccelerationConstraint()

CentripetalAccelerationConstraint::CentripetalAccelerationConstraint ( units::Acceleration max_centripetal_acceleration)
inlineexplicit

Constructs a CentripetalAccelerationConstraint.

Parameters
max_centripetal_accelerationMaximum allowed centripetal acceleration.

Member Function Documentation

◆ clone()

std::unique_ptr< TrajectoryConstraint > CentripetalAccelerationConstraint::clone ( ) const
inlineoverridevirtual

Creates an independent copy of this constraint.

Returns
Unique pointer to cloned CentripetalAccelerationConstraint instance.

Implements TrajectoryConstraint.

◆ max_velocity()

units::Velocity CentripetalAccelerationConstraint::max_velocity ( const Pose2d & pose,
units::Curvature curvature,
units::Velocity velocity ) const
inlineoverridevirtual

Computes maximum allowed velocity based on path curvature and centripetal acceleration limits.

Parameters
pose2D position and orientation.
curvaturePath curvature in rad/meter.
velocityCandidate linear velocity.
Returns
Constrained units::Velocity limit.

Implements TrajectoryConstraint.

◆ min_max_acceleration()

MinMax CentripetalAccelerationConstraint::min_max_acceleration ( const Pose2d & pose,
units::Curvature curvature,
units::Velocity speed ) const
inlineoverridevirtual

Computes minimum and maximum allowed linear accelerations.

Parameters
pose2D position and orientation.
curvaturePath curvature in rad/meter.
speedCurrent scalar speed.
Returns
MinMax acceleration bounds struct.

Implements TrajectoryConstraint.


The documentation for this class was generated from the following file: