.. _payload_utils_concept: Concept ============= Both the **Payload Estimator** and **Payload Compensator** are implemented as classes, designed for use in Object-Oriented Programming (OOP) frameworks. Implementations are available for C++, Python and ROS2, each with corresponding SDKs. .. raw:: html
Designed to be easily used in combination with other components.
Configuration is handled through a JSON file passed to the class constructor.
output_config_file_name
string
Name of the JSON file to which the estimated payload will be written.
The exported file will follow the structure of Payload Compensator JSON file
runtime_verbosity
bool
Enable/disable console output at runtime
min_time
double
Minimum time the algorithm will run
max_time
double
Maximum time the algorithm will run
prior_payload_properties
object
It must have the following fields:
mass
double
Prior estimate of payload mass, in kg.
com
double[3]
[x,y,z] Prior estimate of payload center of mass, in m.
inertia
double[6]
[Ixx, Ixy, Ixz, Iyy, Iyy, Iyz, Izz] Prior estimate of payload inertia tensor, in kg·m².
measurement_noise_covariance
object
It must have the following fields:
force
double[3]
[x,y,z] Noise covariance of the force measurement, in (N)².
torque
double[3]
[x,y,z] Noise covariance of the torque measurement, in (N·m)².
linear_acc
double[3]
[x,y,z] Noise covariance of the linear acceleration measurement, in (m/s²)².
angular_vel
double[3]
[x,y,z] Noise covariance of the angular velocity measurement, in (rad/s)².
angular_acc
double[3]
[x,y,z] Noise covariance of the angular acceleration estimated from angular velocity measurement, in (rad/s²)².
estimation_covariance_convergence_threshold
object
It must have the following fields:
mass
double
Convergence covariance threshold for the mass estimation, in (kg)².
com
double
Convergence covariance threshold for the center of mass estimation, in (m)².
inertia
double
Convergence covariance threshold for the inertia estimation, in (kg·m²)².
wrench_bias
double
Convergence covariance threshold for the wrench bias estimation, in (N·m)².
runtime_verbosity
bool
Enable/disable dynamic compensation.
If disabled, only static gravity compensation, if enabled intertial compensation also applied
payload_properties
object
It must have the following fields:
mass
double
Payload mass, in kg.
com
double[3]
[x,y,z] Payload center of mass, in m.
inertia
double[6]
[Ixx, Ixy, Ixz, Iyy, Iyy, Iyz, Izz] Payload inertia tensor, in kg·m².