Skip to main content

Module fer

Module fer 

Source
Expand description

Rate limits of the Franka Emika Robot (FER, FCI v5), ported from libfranka 0.9.2 include/franka/rate_limiting.h.

The constants in the parent module are the FR3 values of libfranka 0.21.2; the FER uses different ones, most notably kTolNumberPacketsLost = 3.0 (the FR3 expects no packet loss and uses 0.0), which shows up in every velocity limit. The limiting functions themselves are unchanged — they take their bounds as arguments — so a v5 control loop calls the same super::limit_rate_torques, super::limit_rate_joint_velocities, … with the constants from this module.

Unlike the FR3, the FER’s joint velocity limits are flat: there is no position-dependent envelope and no URDF to read one from, so MAX_JOINT_VELOCITY is used directly in both directions.

Constants§

DELTA_T
Sample time constant. Port of franka::kDeltaT (rate_limiting.h:18). Same as on FR3.
FACTOR_CARTESIAN_ROTATION_POSE_INTERFACE
Factor for the definition of rotational limits using the Cartesian pose interface. Port of franka::kFactorCartesianRotationPoseInterface (rate_limiting.h:35). Same as on FR3.
JOINT_POSITION_LIMITS
Joint position limits (lower, upper), rad: the <limit> of joint1..7 in the FER URDF the crate compiles in (crate::model::FER_URDF, tests/data/fer.urdf).
LIMIT_EPS
Epsilon value for checking limits. Port of franka::kLimitEps (rate_limiting.h:22). Same as on FR3.
MAX_ELBOW_ACCELERATION
Maximum elbow acceleration. Port of franka::kMaxElbowAcceleration (rate_limiting.h:98).
MAX_ELBOW_JERK
Maximum elbow jerk. Port of franka::kMaxElbowJerk (rate_limiting.h:94).
MAX_ELBOW_VELOCITY
Maximum elbow velocity. Port of franka::kMaxElbowVelocity (rate_limiting.h:102-103).
MAX_JOINT_ACCELERATION
Maximum joint acceleration. Port of franka::kMaxJointAcceleration (rate_limiting.h:51-53).
MAX_JOINT_JERK
Maximum joint jerk. Port of franka::kMaxJointJerk (rate_limiting.h:45-47).
MAX_JOINT_VELOCITY
Maximum joint velocity. Port of franka::kMaxJointVelocity (rate_limiting.h:57-64).
MAX_ROTATIONAL_ACCELERATION
Maximum rotational acceleration. Port of franka::kMaxRotationalAcceleration (rate_limiting.h:85).
MAX_ROTATIONAL_JERK
Maximum rotational jerk. Port of franka::kMaxRotationalJerk (rate_limiting.h:81).
MAX_ROTATIONAL_VELOCITY
Maximum rotational velocity. Port of franka::kMaxRotationalVelocity (rate_limiting.h:89-90).
MAX_TORQUE_RATE
Maximum torque rate. Port of franka::kMaxTorqueRate (rate_limiting.h:39-41).
MAX_TRANSLATIONAL_ACCELERATION
Maximum translational acceleration. Port of franka::kMaxTranslationalAcceleration (rate_limiting.h:72).
MAX_TRANSLATIONAL_JERK
Maximum translational jerk. Port of franka::kMaxTranslationalJerk (rate_limiting.h:68).
MAX_TRANSLATIONAL_VELOCITY
Maximum translational velocity. Port of franka::kMaxTranslationalVelocity (rate_limiting.h:76-77).
MIN_ELBOW_VELOCITY
Minimum elbow velocity, i.e. -MAX_ELBOW_VELOCITY.
MIN_JOINT_VELOCITY
Minimum joint velocity, i.e. -MAX_JOINT_VELOCITY.
NORM_EPS
Epsilon value for limiting Cartesian accelerations/jerks or not. Port of franka::kNormEps (rate_limiting.h:26). Same as on FR3.
TOL_NUMBER_PACKETS_LOST
Number of packets lost considered for the definition of velocity limits. When a packet is lost, FCI assumes a constant acceleration model. Port of franka::kTolNumberPacketsLost (rate_limiting.h:31) — 3.0 on the FER, 0.0 on the FR3.