|
| 1 | +<!-- Copyright (C) 2019 Istituto Italiano di Tecnologia (IIT). All rights reserved. |
| 2 | +This software may be modified and distributed under the terms of the |
| 3 | +BSD-3-Clause license. --> |
| 4 | + |
| 5 | +<?xml version="1.0" encoding="UTF-8" ?> |
| 6 | +<device xmlns:xi="http://www.w3.org/2001/XInclude" name="robot-dynamics-estimator" type="RobotDynamicsEstimatorDevice"> |
| 7 | + <group name="GENERAL"> |
| 8 | + <param name="sampling_time">0.01</param> |
| 9 | + <param name="port_prefix">/robot-dynamics-estimator</param> |
| 10 | + </group> |
| 11 | + |
| 12 | + <group name="MODEL"> |
| 13 | + <param name="model_file">model.urdf</param> |
| 14 | + <param name="base_link">root_link</param> |
| 15 | + <param name="joint_list">("r_hip_pitch", "r_hip_roll", "r_hip_yaw", "r_knee", "r_ankle_pitch", "r_ankle_roll")</param> |
| 16 | + <param name="gear_ratio">(100.0, -160.0, 100.0, 100.0, 100.0, 160.0)</param> |
| 17 | + <param name="torque_constant">(0.111, 0.047, 0.047, 0.111, 0.111, 0.025)</param> |
| 18 | + |
| 19 | + <group name="FT"> |
| 20 | + <param name="names">("r_leg_ft", "r_foot_front_ft", "r_foot_rear_ft")</param> |
| 21 | + <param name="frames">("r_leg_ft", "r_foot_front_ft", "r_foot_rear_ft")</param> |
| 22 | + <param name="associated_joints">("r_leg_ft_sensor", "r_foot_front_ft_sensor", "r_foot_rear_ft_sensor")</param> |
| 23 | + </group> |
| 24 | + |
| 25 | + <group name="ACCELEROMETER"> |
| 26 | + <param name="names">()</param> |
| 27 | + <param name="frames">()</param> |
| 28 | + </group> |
| 29 | + |
| 30 | + <group name="GYROSCOPE"> |
| 31 | + <param name="names">()</param> |
| 32 | + <param name="frames">()</param> |
| 33 | + </group> |
| 34 | + |
| 35 | + <group name="EXTERNAL_CONTACT"> |
| 36 | + <param name="frames">()</param> |
| 37 | + </group> |
| 38 | + </group> |
| 39 | + |
| 40 | + <group name="RobotSensorBridge"> |
| 41 | + <param name="check_for_nan">false</param> |
| 42 | + <param name="stream_joint_states">true</param> |
| 43 | + <param name="stream_inertials">false</param> |
| 44 | + <param name="stream_forcetorque_sensors">true</param> |
| 45 | + <param name="stream_motor_states">true</param> |
| 46 | + |
| 47 | + <group name="RemoteControlBoardRemapper"> |
| 48 | + <param name="joints_list">("r_hip_pitch", "r_hip_roll", "r_hip_yaw", "r_knee", "r_ankle_pitch", "r_ankle_roll")</param> |
| 49 | + </group> |
| 50 | + |
| 51 | + <group name="SixAxisForceTorqueSensors"> |
| 52 | + <param name="sixaxis_forcetorque_sensors_list">("r_leg_ft", "r_foot_front_ft", "r_foot_rear_ft")</param> |
| 53 | + </group> |
| 54 | + </group> |
| 55 | + |
| 56 | + <group name="UKF"> |
| 57 | + <param name="alpha">1.0</param> |
| 58 | + <param name="beta">2.0</param> |
| 59 | + <param name="kappa">0.0</param> |
| 60 | + <group name="UKF_STATE"> |
| 61 | + <!--param name="dynamics_list"> |
| 62 | + ("JOINT_VELOCITY", "MOTOR_TORQUE", "FRICTION_TORQUE", "RIGHT_LEG_FT", "RIGHT_FOOT_FRONT_FT", "RIGHT_FOOT_REAR_FT", |
| 63 | + "RIGHT_LEG_FT_BIAS", "RIGHT_FOOT_FRONT_FT_BIAS", "RIGHT_FOOT_REAR_FT_BIAS", |
| 64 | + "RIGHT_LEG_ACC_BIAS", "RIGHT_FOOT_FRONT_ACC_BIAS", "RIGHT_FOOT_REAR_ACC_BIAS", |
| 65 | + "RIGHT_LEG_GYRO_BIAS", "RIGHT_FOOT_FRONT_GYRO_BIAS", "RIGHT_FOOT_REAR_GYRO_BIAS") |
| 66 | + </param--> |
| 67 | + <param name="dynamics_list"> |
| 68 | + ("JOINT_VELOCITY", "MOTOR_TORQUE", "FRICTION_TORQUE", "RIGHT_LEG_FT", "RIGHT_FOOT_FRONT_FT", "RIGHT_FOOT_REAR_FT") |
| 69 | + </param> |
| 70 | + <!-- Available models = ["ZeroVelocityStateDynamics", "JointVelocityStateDynamics", "FrictionTorqueStateDynamics"] --> |
| 71 | + <group name="JOINT_VELOCITY"> |
| 72 | + <param name="name">ds</param> |
| 73 | + <param name="elements">("r_hip_pitch", "r_hip_roll", "r_hip_yaw", "r_knee", "r_ankle_pitch", "r_ankle_roll")</param> |
| 74 | + <param name="covariance">(1e-3, 1e-3, 1e-3, 1e-3, 1e-3, 1e-3)</param> |
| 75 | + <param name="initial_covariance">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 76 | + <param name="dynamic_model">JointVelocityStateDynamics</param> |
| 77 | + </group> |
| 78 | + <group name="MOTOR_TORQUE"> |
| 79 | + <param name="name">tau_m</param> |
| 80 | + <param name="elements">("r_hip_pitch", "r_hip_roll", "r_hip_yaw", "r_knee", "r_ankle_pitch", "r_ankle_roll")</param> |
| 81 | + <param name="covariance">(1e-3, 1e-3, 1e-3, 1e-3, 1e-3, 1e-3)</param> |
| 82 | + <param name="initial_covariance">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 83 | + <param name="dynamic_model">ZeroVelocityStateDynamics</param> |
| 84 | + </group> |
| 85 | + <group name="FRICTION_TORQUE"> |
| 86 | + <param name="name">tau_F</param> |
| 87 | + <param name="elements">("r_hip_pitch", "r_hip_roll", "r_hip_yaw", "r_knee", "r_ankle_pitch", "r_ankle_roll")</param> |
| 88 | + <param name="covariance">(1e-1, 1e-1, 1e-1, 1e-1, 1e-1, 1e-1)</param> |
| 89 | + <param name="initial_covariance">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 90 | + <param name="friction_k0">(0.001, 0.001, 0.001, 0.001, 0.001, 0.001)</param> |
| 91 | + <param name="friction_k1">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 92 | + <param name="friction_k2">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 93 | + <param name="dynamic_model">FrictionTorqueStateDynamics</param> |
| 94 | + </group> |
| 95 | + <group name="RIGHT_LEG_FT"> |
| 96 | + <param name="name">r_leg_ft</param> |
| 97 | + <param name="covariance">(1e-3, 1e-3, 1e-3, 1e-4, 1e-4, 1e-4)</param> |
| 98 | + <param name="initial_covariance">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 99 | + <param name="dynamic_model">ZeroVelocityStateDynamics</param> |
| 100 | + </group> |
| 101 | + <group name="RIGHT_FOOT_FRONT_FT"> |
| 102 | + <param name="name">r_foot_front_ft</param> |
| 103 | + <param name="covariance">(1e-3, 1e-3, 1e-3, 1e-6, 1e-6, 1e-6)</param> |
| 104 | + <param name="initial_covariance">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 105 | + <param name="dynamic_model">ZeroVelocityStateDynamics</param> |
| 106 | + </group> |
| 107 | + <group name="RIGHT_FOOT_REAR_FT"> |
| 108 | + <param name="name">r_foot_rear_ft</param> |
| 109 | + <param name="covariance">(1e-3, 1e-3, 1e-3, 1e-6, 1e-6, 1e-6)</param> |
| 110 | + <param name="initial_covariance">(0.01, 0.01, 0.01, 0.01, 0.01, 0.01)</param> |
| 111 | + <param name="dynamic_model">ZeroVelocityStateDynamics</param> |
| 112 | + </group> |
| 113 | + </group> |
| 114 | + |
| 115 | + <group name="UKF_MEASUREMENT"> |
| 116 | + <!--param name="dynamics_list"> |
| 117 | + ("JOINT_VELOCITY", "MOTOR_CURRENT", |
| 118 | + "RIGHT_LEG_FT", "RIGHT_FOOT_FRONT_FT", "RIGHT_FOOT_REAR_FT", |
| 119 | + "RIGHT_LEG_ACC", "RIGHT_FOOT_FRONT_ACC", "RIGHT_FOOT_REAR_ACC", |
| 120 | + "RIGHT_LEG_GYRO", "RIGHT_FOOT_FRONT_GYRO", "RIGHT_FOOT_REAR_GYRO") |
| 121 | + </param--> |
| 122 | + <param name="dynamics_list"> |
| 123 | + ("JOINT_VELOCITY", "MOTOR_CURRENT", |
| 124 | + "RIGHT_LEG_FT", "RIGHT_FOOT_FRONT_FT", "RIGHT_FOOT_REAR_FT") |
| 125 | + </param> |
| 126 | + <!-- Available models = ["ConstantMeasurementModel", "AccelerometerMeasurementDynamics", |
| 127 | + "GyroscopeMeasurementDynamics", "MotorCurrentMeasurementDynamics"] --> |
| 128 | + <group name="JOINT_VELOCITY"> |
| 129 | + <param name="name">ds</param> |
| 130 | + <param name="covariance">(1e-1, 1e-1, 1e-1, 1e-1, 1e-1, 1e-1)</param> |
| 131 | + <param name="dynamic_model">ConstantMeasurementModel</param> |
| 132 | + </group> |
| 133 | + <group name="MOTOR_CURRENT"> |
| 134 | + <param name="name">i_m</param> |
| 135 | + <param name="covariance">(1e-2, 1e-2, 1e-1, 1e-1, 1e-1, 1e-1)</param> |
| 136 | + <param name="gear_ratio">(100.0, -160.0, 100.0, 100.0, 100.0, 160.0)</param> |
| 137 | + <param name="torque_constant">(0.111, 0.047, 0.047, 0.111, 0.111, 0.025)</param> |
| 138 | + <param name="dynamic_model">MotorCurrentMeasurementDynamics</param> |
| 139 | + </group> |
| 140 | + <group name="RIGHT_LEG_FT"> |
| 141 | + <param name="name">r_leg_ft</param> |
| 142 | + <param name="covariance">(1e-1, 1e-1, 1e-1, 1e-1, 1e-1, 1e-1)</param> |
| 143 | + <param name="use_bias">false</param> |
| 144 | + <param name="dynamic_model">ConstantMeasurementModel</param> |
| 145 | + </group> |
| 146 | + <group name="RIGHT_FOOT_FRONT_FT"> |
| 147 | + <param name="name">r_foot_front_ft</param> |
| 148 | + <param name="covariance">(1e-1, 1e-1, 1e-1, 1e-1, 1e-1, 1e-1)</param> |
| 149 | + <param name="use_bias">false</param> |
| 150 | + <param name="dynamic_model">ConstantMeasurementModel</param> |
| 151 | + </group> |
| 152 | + <group name="RIGHT_FOOT_REAR_FT"> |
| 153 | + <param name="name">r_foot_rear_ft</param> |
| 154 | + <param name="covariance">(1e-1, 1e-1, 1e-1, 1e-1, 1e-1, 1e-1)</param> |
| 155 | + <param name="use_bias">false</param> |
| 156 | + <param name="dynamic_model">ConstantMeasurementModel</param> |
| 157 | + </group> |
| 158 | + </group> |
| 159 | + </group> |
| 160 | + |
| 161 | + <!-- ATTACH --> |
| 162 | + <action phase="startup" level="15" type="attach"> |
| 163 | + <paramlist name="networks"> |
| 164 | + <elem name="all_joints">all_joints_mc</elem> |
| 165 | + <elem name="mas-remapper">mas-remapper</elem> |
| 166 | + </paramlist> |
| 167 | + </action> |
| 168 | + |
| 169 | + <action phase="shutdown" level="2" type="detach" /> |
| 170 | + <!-- FINISH ATTACH--> |
| 171 | + |
| 172 | +</device> |
0 commit comments