Description
Description
Note: This is highly related to the velocity issue reported in #3780. It involves the same dimensional mismatch pattern, but for acceleration.
A unit and safety mismatch was detected in ruckig_traj_smoothing.cpp. When acceleration bounds for a joint are missing, the algorithm falls back to DEFAULT_MAX_ACCELERATION (which conceptually represents angular acceleration in $rad/s^2$). However, because ruckig_input.max_acceleration handles both revolute and prismatic joints, this angular default is unsafely applied as $m/s^2$ for linear joints.
Code Evidence
Location: moveit_core/trajectory_processing/src/ruckig_traj_smoothing.cpp (around line 228).
Permalink:
|
ruckig_input.max_acceleration.at(i) = max_acceleration_scaling_factor * DEFAULT_MAX_ACCELERATION; |
Dimensional and Safety Analysis
- For Revolute Joints: The default (typically $10.0$) evaluates to **$10.0\ rad/s^2$.
- For Prismatic Joints: The default evaluates to $10.0\ m/s^2$.
Assigning $10.0\ m/s^2$ (approximately $1G$) as a default linear acceleration is an aggressively high value for typical linear actuators. It could lead to excessive motor current draw, violent jerks, or mechanical stress if a prismatic joint without explicitly defined limits is commanded.
Thank you!
Description
Description
Note: This is highly related to the velocity issue reported in #3780. It involves the same dimensional mismatch pattern, but for acceleration.
A unit and safety mismatch was detected in$rad/s^2$ ). However, because $m/s^2$ for linear joints.
ruckig_traj_smoothing.cpp. When acceleration bounds for a joint are missing, the algorithm falls back toDEFAULT_MAX_ACCELERATION(which conceptually represents angular acceleration inruckig_input.max_accelerationhandles both revolute and prismatic joints, this angular default is unsafely applied asCode Evidence
Location:
moveit_core/trajectory_processing/src/ruckig_traj_smoothing.cpp(around line 228).Permalink:
moveit2/moveit_core/trajectory_processing/src/ruckig_traj_smoothing.cpp
Line 228 in 4a766fd
Dimensional and Safety Analysis
Assigning$10.0\ m/s^2$ (approximately $1G$ ) as a default linear acceleration is an aggressively high value for typical linear actuators. It could lead to excessive motor current draw, violent jerks, or mechanical stress if a prismatic joint without explicitly defined limits is commanded.
Thank you!