Skip to content

RDC CLI Tools Documenation

This page provides documentation for RDC command line tools.

rdc

RDС Command Line Tools to Simplify Inverse Dynamic Robot Model Identification

Usage:

rdc [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc calib

Tool/Force Sensor TF calibration

This program should be used before verification of the Cartesian IDM model.

Usage:

rdc calib [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc calib ftsensor

Calibrating the force-sensor TF

The program can be used to estimate the origin and rotation of the force sensor corresponding to the world coordinate system.

Usage:

rdc calib ftsensor [OPTIONS]

Options:

Name Type Description Default
--urdf_z1 text Original Robots urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/z1_ee.urdf
--urdf_z1_link_name text Z1 urdf ee link_name link_ee
--urdf_tool text Tool urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/tool_calib.urdf
--urdf_tool_link_name text Tool urdf start link link_name tool_start_link
--upd_urdf text Updated urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/z1_tool.urdf
--urdf_sensor text Updated urdf with sensor path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/sensor.urdf
--pitch_deg float Updated urdf with sensor path 0
--roll_deg float Updated urdf with sensor path 0
--synth boolean Synth data flag False
--help boolean Show this message and exit. False

rdc calib tool

Calibrating the tool TF of the robot

The program can be used to estimate tools tip origin and rotation corresponding to the robot end-effector coordinate system.

Usage:

rdc calib tool [OPTIONS]

Options:

Name Type Description Default
--urdf_robot text Original Robots urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/z1_ee.urdf
--urdf_tool text Tool urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/tool.urdf
--fixed_joint_name text Fixed tool joint fixed_tool_joint
--out_urdf text Output urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/tool_calib.urdf
--load_data text Joint data to load None
--num_poses integer The ammount of poses to collect (min:3, recommended:30) 30
--assume_coaxial boolean Assuming that tool is coaxial to endeffector False
--help boolean Show this message and exit. False

rdc data-collect

Verification

Usage:

rdc data-collect [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc data-collect lspb

Usage:

rdc data-collect lspb [OPTIONS]

Options:

Name Type Description Default
--urdf_path text Path to urdf model urdfs/z1_ee.urdf
--meshes_path text Path to model meshes urdfs/meshes
--data_path text Path where executed trajectories will be stored data/lspb
--sim boolean If true, script will be running in simulation False
--points_count integer Count of configurations for visiting 10
--seed integer Seed for random generator 1734537242
--joint_var float range (between 0.001 and 0.2) Absolute value for uniform joints pisition variation 0.05
--speed_var_min float range (between 0.01 and 0.2) Absolute value for min of uniform joints speed variation 0.1
--speed_var_max float range (between 0.2 and 0.4) Absolute value for max of uniform joints speed variation 0.4
--full_range boolean Generate random configurations for full robot range. If it is True, will be ignored False
--range_scale float range (between 0.0 and 1.0) The scale for robot configuration range 0.75
--type choice (static | dynamic | full) Generate random configurations for full robot range/ If it is True, will be ignored static
--wait_hold float range (between 0.0 and 10.0) The time for waiting in desired points to collect data 3.0
--repetition integer range (between 1 and 10) How many time_repeat from diffrent directions 1
--dithering_config_path text Path to config for dithering /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/configs/dithering_config.yaml
--dithering_config_path text Path to config for dithering /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/configs/dithering_config.yaml
--dithering_on boolean Should be dithering enabled? False
--help boolean Show this message and exit. False

rdc exec

Execute provided in csv trajectory

Read check on self collisions and execute trajectories in one command using robotApi.

Usage:

rdc exec [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc exec traj

Usage:

rdc exec traj [OPTIONS]

Options:

Name Type Description Default
--urdf_path text Path to urdf model urdfs/z1_ee.urdf
--meshes_path text Path to model meshes urdfs/meshes
--data_path text Path where desired trajectories are stored _required
--sim boolean If true, script will be running in simulation False
-r boolean If true, script will recursively be executed for every founded desired_trajectory.csv file False
--skip_exist boolean If true, script will skip folders where recordings exist False
--joint_num text Specify which joint num use. Works only for friction trajectories None
--type choice (nominal | slow | warmup) Type of trajectory nominal
--refine_dt boolean Perform checking dt between points in trajectory and recalculate trajectory for lower dt True
--check boolean Perform checking on trajectory self-collision, qoint limits and collision with floor before execution True
--times integer range (between 1 and 100) Count of trajectory repeats 1
--load_urdf_path text Path to urdf model for nominal load None
--load_attached_frame_name text Frame from robot URDF to attach the load model None
--dithering_config_path text Path to config for dithering /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/configs/dithering_config.yaml
--dithering_on boolean Should be dithering enabled? False
--help boolean Show this message and exit. False

rdc gen

Generate trajectories for identification

Create directories with csv containing special trajectories for inverse dynamic model identification

Usage:

rdc gen [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc gen fourier

Run the Fourier-based trajectory optimization for a serial robot manipulator.

Example usage:

rdc gen fourier --pipeline_name pipeline_no_load --output_path ./data/base_trj --save_plots

Usage:

rdc gen fourier [OPTIONS]

Options:

Name Type Description Default
--config_path text Config file path contains optimization pipeline settings. /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/configs/fourier_trajectory_optimization_pipelines.yaml
--pipeline_name text Specific pipeline to execute. If it's empty, run all pipelines. ``
--output_path text Directory to save output trajectories. ./data/base_trj
--save_plots boolean Save additional plots and logs. False
--help boolean Show this message and exit. False

rdc gen friction

Run the generation of trajectories for friction.

Example usage:

rdc gen friction

Usage:

rdc gen friction [OPTIONS]

Options:

Name Type Description Default
--config_path text Path to config for trajectory generation /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/configs/z1_friction_gen_traj_config.yaml
--urdf_path text Path to urdf model /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/z1_ee.urdf
--output_path text Path to save trajectories /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/data/friction
--skip_exist boolean If true, script will skip folders where desired.csv already exists False
--type text The type of trajectories that will be generated: friction base
--help boolean Show this message and exit. False

rdc ident

Inverse dynamic model identification.

Identificate full or friction models of a serial manipulator for datasets captured on special trajectories. The .rdcm model will be returned.

Usage:

rdc ident [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc ident forward_residuals

Forward Residuals Identification.

Before use it please generate and execute force-torque sensor trajectories


Example: rdc ident forward_residuals --save_path models/ --model_name forward_res --config_path configs/forward_residual_learning_config.yaml --data_path data/wrench/


Usage:

rdc ident forward_residuals [OPTIONS]

Options:

Name Type Description Default
--config_path text Path to file with yaml config configs/learning_config.yaml
--urdf_path text Path to file with urdf model urdfs/z1_tool.urdf
--save_path text Path of directory to save the model .
--model_name text Name of the model, used for saving the model _required
--data_path text Path to directory containing recorded_trajectory.csv _required
-v, --verbose / -q, --quiet boolean Whether to print debug information True
--help boolean Show this message and exit. False

rdc ident friction

Friction model Identification

Before use it please generate and execute special LSPB trajectories

Usage:

rdc ident friction [OPTIONS]

Options:

Name Type Description Default
--data_path text Path to read trajectories _required
--save_path text Path to save model _required
--offset integer Offset on plato 50
--save_plots_path text Path to save plots None
--help boolean Show this message and exit. False

rdc ident full

Full Inverse dynamic model Identification.

Before use it please generate and execute multiharmonic trajectories


Example:

rdc ident full --urdf_path urdfs/z1_ee.urdf --data_path data/base_trj/opttraj_0_85cond_7h_2000Hz/ --config_path configs/learning_config.yaml --verbose --plot --model_name my --save_path my --accel_mode estimate


Usage:

rdc ident full [OPTIONS]

Options:

Name Type Description Default
--config_path text Path to file with yaml config configs/learning_config.yaml
--urdf_path text Path to file with urdf model urdfs/z1_ee.urdf
--save_path text Path of directory to save the model .
--model_name text Name of the model, used for saving the model and plotting the results _required
--data_path text Path to directory containing recorded_trajectory.csv _required
-r, --recursive / -nr, --no_recursive boolean Whether to load all recorded_trajectory.csv files in data_path recursively True
--save_dataset / --no_save_dataset boolean Whether to save the dataset as dataset.csv True
--accel_mode choice (data | estimate | off) Where to get acceleration data from, can be data (directly from dataset), estimate (numerical derivative) or off (no acceleration used, only filtered regressor can be used in this case) estimate
--train_ratio float range (between 0 and 1) ratio of dataset to use for training, if 1.0, no testing is done 0.75
--plot, -p / --no_plot, -np boolean Whether to plot the results True
-v, --verbose / -q, --quiet boolean Whether to print debug information True
--help boolean Show this message and exit. False

rdc verification

Verificate inverse dynamic model

Verificate inverse dynamic model in cartesian or configuration space.

Usage:

rdc verification [OPTIONS] COMMAND [ARGS]...

Options:

Name Type Description Default
--help boolean Show this message and exit. False

rdc verification data-collection

Collect dataset to train forward reesidual model

Dataset collected on the stand with force/torque sensor using the same algorithm as wrench verification.

Usage:

rdc verification data-collection [OPTIONS]

Options:

Name Type Description Default
--urdf_system text System (robot + ft sensor) urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/z1_tool.urdf
--num_poses integer The ammount of poses to collect 1
--tool_link_name text The name of tool link in urdf tool_end_link
--ft_transform_urdf text Urdf with transform from platform to sensor /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/sensor.urdf
--ft_link_name text The name of sensor link in urdf sensor_link
--roll_angle float N/A 0.0
--pitch_angle float N/A 0.0
--approaching_speed float Speed for moving in the specified pose 0.005
--max_force float The maximum force applied to sensor 60.0
--help boolean Show this message and exit. False

rdc verification torques

Verificate torques for specified inverse dynamic model

Verificate inverse dynamic model for torque prediction.

Usage:

rdc verification torques [OPTIONS]

Options:

Name Type Description Default
--traj_dir_path text N/A /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/data/base_trj/opttraj_0_85cond_7h_2000Hz/recorded__19_11_2024_18_13_56
--roll_angle float N/A 0.0
--pitch_angle float N/A 0.0
--rdc_path text Path to rdc model ['full.rdcm', 'rdc_model_new.rdcm']
--help boolean Show this message and exit. False

rdc verification wrenches

Verificate wrenches for specified inverse dynamic model

Verificate inverse dynamic model in task when robot pushed force/torque sensor.

Usage:

rdc verification wrenches [OPTIONS]

Options:

Name Type Description Default
--urdf_system text System (robot + ft sensor) urdf path /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/z1_tool.urdf
--rdc_path text Path to rdc model train_full.rdcm
--forward_residual_path text Path to forward residual forward_residual_20241217-1.pkl
--num_poses integer The ammount of poses to collect 1
--tool_link_name text The name of tool link in urdf tool_end_link
--ft_transform_urdf text Urdf with transform from platform to sensor /opt/buildhome/.asdf/installs/python/3.11.5/lib/python3.11/urdfs/sensor.urdf
--ft_link_name text The name of sensor link in urdf sensor_link
--roll_angle float N/A 0.0
--pitch_angle float N/A 0.0
--save_data boolean Save or not the collected data (csv file will be created) False
--approaching_speed float Speed for moving in the specified pose 0.005
--max_force float The maximum force applied to sensor 60.0
--help boolean Show this message and exit. False