1#ifndef FSB_TRAPEZOIDAL_VELOCITY_H
2#define FSB_TRAPEZOIDAL_VELOCITY_H
6#include "fsb_trajectory_types.h"
7#include "fsb_trajectory_segment.h"
86 Real start_time,
const TrajState& initial_state, Real final_velocity,
87 Real final_acceleration, Real max_acceleration, Real max_jerk);
103 return evaluate(m_start_time + m_total_duration);
122 return m_total_duration;
132 return m_start_time + m_total_duration;
136 Real m_start_time = 0.0;
137 Real m_total_duration = 0.0;
145 TrajState m_final_state = {};
Constant acceleration profile.
Definition fsb_trajectory_segment.h:93
Constant jerk profile.
Definition fsb_trajectory_segment.h:20
Abstract class for scalar motion.
Definition fsb_trajectory_types.h:93
Definition fsb_trapezoidal_velocity.h:70
Real get_start_time() const override
Get start time of segment.
Definition fsb_trapezoidal_velocity.h:110
TrajState get_final_state() const override
Get final state of segment.
Definition fsb_trapezoidal_velocity.h:101
TrapezoidalStatus goto_velocity(Real start_time, const TrajState &initial_state, Real final_velocity, Real final_acceleration, Real max_acceleration, Real max_jerk)
Goto target velocity.
Definition fsb_trapezoidal_velocity.cpp:201
TrajState evaluate(Real t_eval) const override
Evaluate trajectory.
Definition fsb_trapezoidal_velocity.cpp:277
Real get_duration() const override
Get total duration.
Definition fsb_trapezoidal_velocity.h:120
Real get_final_time() const override
Get final time of trajectory.
Definition fsb_trapezoidal_velocity.h:130
@ SUCCESS
Successful operation.
TrapezoidalStatus
Result of attempting to compute trapezoidal trajectory.
Definition fsb_trapezoidal_velocity.h:21
@ FAILED_TRAJECTORY_GENERATION
Unable to reach target with current state.
@ MAX_VALUE_BELOW_TOLERANCE
Maximum values not positive.
Trajectory scalar motion state.
Definition fsb_trajectory_types.h:20
Constraints for a trapezoidal profile.
Definition fsb_trapezoidal_velocity.h:55
Real end_jerk
Definition fsb_trapezoidal_velocity.h:63
Real start_jerk
Definition fsb_trapezoidal_velocity.h:57
Real plateau_acceleration
Definition fsb_trapezoidal_velocity.h:60
Duration of different phases in a trapezoidal profile.
Definition fsb_trapezoidal_velocity.h:40
Real start
Definition fsb_trapezoidal_velocity.h:42
Real plateau
Definition fsb_trapezoidal_velocity.h:45
Real end
Definition fsb_trapezoidal_velocity.h:48