1 #ifndef trajectory_generation_TYPES_HPP 2 #define trajectory_generation_TYPES_HPP 4 #include <base/commands/Joints.hpp> 33 max.
speed = base::unset<float>();
35 max_jerk = base::unset<float>();
42 bool hasMaxJerk()
const {
return !base::isUnset(max_jerk);}
45 #ifdef USING_REFLEXXES_TYPE_IV 47 throw std::invalid_argument(
"Motion Constraints: Maximum position is invalid");
49 throw std::invalid_argument(
"Motion Constraints: Minimum position is invalid");
51 throw std::invalid_argument(
"Motion Constraints: Max. position has to be > min. position");
54 throw std::invalid_argument(
"Motion Constraints: Maximum speed is invalid");
56 throw std::invalid_argument(
"Motion Constraints: Maximum acceleration is invalid");
58 throw std::invalid_argument(
"Motion Constraints: Maximum jerk is invalid");
60 throw std::invalid_argument(
"Motion Constraints: Max. speed has to be > 0");
62 throw std::invalid_argument(
"Motion Constraints: Max. acceleration has to be > 0");
64 throw std::invalid_argument(
"Motion Constraints: Max. jerk has to be > 0");
76 max_jerk = default_constraints.
max_jerk;
94 if(names.size() != size())
95 throw std::invalid_argument(
"Invalid target: Size of name vector should be same as element vector");
96 if(!motion_constraints.empty() && motion_constraints.size() != size())
97 throw std::invalid_argument(
"Invalid target: If not empty, motion constraints must have same size as target element vector");
124 selection_vector.resize(dof, base::NaN<u_int8_t>());
125 current_position_vector.resize(dof, base::NaN<double>());
126 current_velocity_vector.resize(dof, base::NaN<double>());
127 current_acceleration_vector.resize(dof, base::NaN<double>());
128 max_position_vector.resize(dof, base::NaN<double>());
129 min_position_vector.resize(dof, base::NaN<double>());
130 max_velocity_vector.resize(dof, base::NaN<double>());
131 max_acceleration_vector.resize(dof, base::NaN<double>());
132 max_jerk_vector.resize(dof, base::NaN<double>());
133 target_position_vector.resize(dof, base::NaN<double>());
134 target_velocity_vector.resize(dof, base::NaN<double>());
135 min_synchronization_time = base::NaN<double>();
136 override_value = base::NaN<double>();
157 new_position_vector.resize(dof, base::NaN<int>());
158 new_velocity_vector.resize(dof, base::NaN<double>());
159 new_acceleration_vector.resize(dof, base::NaN<double>());
160 execution_times.resize(dof, base::NaN<double>());
161 position_values_at_target_velocity.resize(dof, base::NaN<double>());
162 dof_with_greatest_execution_time = base::NaN<int>();
163 synchronization_time = base::NaN<double>();
164 current_override_value = base::NaN<double>();
165 a_new_calculation_was_performed =
false;
166 trajectory_is_phase_synchronized =
false;
167 override_filter_is_active =
false;
168 trajectory_exceeds_target_position =
false;
Definition: trajectory_generationTypes.hpp:110
bool hasMaxPosition() const
Definition: trajectory_generationTypes.hpp:38
double speed
Definition: trajectory_generationTypes.hpp:20
bool a_new_calculation_was_performed
Definition: trajectory_generationTypes.hpp:175
bool hasMaxJerk() const
Definition: trajectory_generationTypes.hpp:42
ReflexxesOutputParameters()
Definition: trajectory_generationTypes.hpp:155
Definition: trajectory_generationTypes.hpp:10
Definition: trajectory_generationTypes.hpp:113
std::vector< double > new_acceleration_vector
Definition: trajectory_generationTypes.hpp:172
bool trajectory_exceeds_target_position
Definition: trajectory_generationTypes.hpp:181
Definition: trajectory_generationTypes.hpp:105
double synchronization_time
Definition: trajectory_generationTypes.hpp:179
std::vector< MotionConstraint > motion_constraints
Definition: trajectory_generationTypes.hpp:92
ReflexxesResultValue
Definition: trajectory_generationTypes.hpp:102
bool hasMinPosition() const
Definition: trajectory_generationTypes.hpp:39
MotionConstraint JointMotionConstraints
Definition: trajectory_generationTypes.hpp:81
Definition: trajectory_generationTypes.hpp:117
double position
Definition: trajectory_generationTypes.hpp:24
Definition: trajectory_generationTypes.hpp:23
ReflexxesOutputParameters(const size_t dof)
Definition: trajectory_generationTypes.hpp:156
void validate() const
Definition: trajectory_generationTypes.hpp:44
double max_jerk
Definition: trajectory_generationTypes.hpp:26
std::vector< double > execution_times
Definition: trajectory_generationTypes.hpp:173
void applyDefaultIfUnset(const MotionConstraint &default_constraints)
Definition: trajectory_generationTypes.hpp:66
int dof_with_greatest_execution_time
Definition: trajectory_generationTypes.hpp:178
Definition: trajectory_generationTypes.hpp:115
upperLimit max
Definition: trajectory_generationTypes.hpp:27
bool trajectory_is_phase_synchronized
Definition: trajectory_generationTypes.hpp:176
Definition: trajectory_generationTypes.hpp:109
Definition: trajectory_generationTypes.hpp:108
Definition: trajectory_generationTypes.hpp:104
lowerLimit min
Definition: trajectory_generationTypes.hpp:28
Definition: trajectory_generationTypes.hpp:106
Definition: trajectory_generationTypes.hpp:112
Definition: trajectory_generationTypes.hpp:114
MotionConstraints JointsMotionConstraints
Definition: trajectory_generationTypes.hpp:88
Definition: trajectory_generationTypes.hpp:12
bool hasMaxAcceleration() const
Definition: trajectory_generationTypes.hpp:41
std::vector< double > new_velocity_vector
Definition: trajectory_generationTypes.hpp:171
double position
Definition: trajectory_generationTypes.hpp:19
std::vector< double > new_position_vector
Definition: trajectory_generationTypes.hpp:170
Definition: Conversions.cpp:4
Definition: trajectory_generationTypes.hpp:107
double current_override_value
Definition: trajectory_generationTypes.hpp:180
double acceleration
Definition: trajectory_generationTypes.hpp:21
PositionalLimitsBehavior
Definition: trajectory_generationTypes.hpp:9
Definition: trajectory_generationTypes.hpp:91
void validate() const
Definition: trajectory_generationTypes.hpp:93
MotionConstraint()
Definition: trajectory_generationTypes.hpp:30
Definition: trajectory_generationTypes.hpp:116
Definition: trajectory_generationTypes.hpp:11
Definition: trajectory_generationTypes.hpp:16
Definition: trajectory_generationTypes.hpp:18
Definition: trajectory_generationTypes.hpp:111
Definition: trajectory_generationTypes.hpp:154
bool hasMaxVelocity() const
Definition: trajectory_generationTypes.hpp:40
Definition: trajectory_generationTypes.hpp:103
std::vector< double > position_values_at_target_velocity
Definition: trajectory_generationTypes.hpp:174
bool override_filter_is_active
Definition: trajectory_generationTypes.hpp:177
Definition: trajectory_generationTypes.hpp:84