Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I can't generate the kindsl file from my urdf file. #4

Open
zapplelove opened this issue Jul 28, 2020 · 1 comment
Open

I can't generate the kindsl file from my urdf file. #4

zapplelove opened this issue Jul 28, 2020 · 1 comment

Comments

@zapplelove
Copy link

I use this tool to generate robcogen file but I get an error:

roslaunch urdf2robcogen cheetah2code.launch 
... logging to /home/zpl/.ros/log/0d0dd772-d0a7-11ea-987e-3413e89875f1/roslaunch-work-4531.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

xacro: in-order processing became default in ROS Melodic. You can drop the option.
started roslaunch server http://work:33891/

SUMMARY
========

PARAMETERS
 * /robot_description: <?xml version="1....
 * /rosdistro: melodic
 * /rosversion: 1.14.6
 * /urdf2robcogen/description_name: robot_description
 * /urdf2robcogen/output_folder: /home/zpl/local/s...
 * /urdf2robcogen/robot_name: cheetah
 * /urdf2robcogen/verbose: True

NODES
  /
    urdf2robcogen (urdf2robcogen/urdf2robcogen_node)

auto-starting new master
process[master]: started with pid [4544]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 0d0dd772-d0a7-11ea-987e-3413e89875f1
process[rosout-1]: started with pid [4555]
started core service [/rosout]
process[urdf2robcogen-2]: started with pid [4558]
[urdf2robcogen] Start generating files.
urdf2robcogen_node: /home/zpl/local/src/cheetah_catkin_ws/src/urdf2robcogen/src/Utils.cpp:63: Eigen::Matrix3d expressInertiaFromFrameAInComFrame(Eigen::Matrix3d, double, PoseInWorld, PoseInWorld): Assertion `isValidInertiaMatrix(C_I_C)' failed.
[urdf2robcogen-2] process has died [pid 4558, exit code -6, cmd /home/zpl/local/src/cheetah_catkin_ws/devel/lib/urdf2robcogen/urdf2robcogen_node __name:=urdf2robcogen __log:=/home/zpl/.ros/log/0d0dd772-d0a7-11ea-987e-3413e89875f1/urdf2robcogen-2.log].
log file: /home/zpl/.ros/log/0d0dd772-d0a7-11ea-987e-3413e89875f1/urdf2robcogen-2*.log

why this error urdf2robcogen_node: /home/zpl/local/src/cheetah_catkin_ws/src/urdf2robcogen/src/Utils.cpp:63: Eigen::Matrix3d expressInertiaFromFrameAInComFrame(Eigen::Matrix3d, double, PoseInWorld, PoseInWorld): Assertion isValidInertiaMatrix(C_I_C)' failed.` occur?
The urdf file is correct when I spawn it to gazebo.
How can I solve this?

@jcarius
Copy link
Contributor

jcarius commented Jul 29, 2020

Hi,
thanks for reporting the issue. The failing assertion checks that the inertia matrix makes sense physically, e.g., that there is a positive rotational inertia in all directions.

Quick workaround: Disable assertions by compiling in release mode. Note that wrong inertias can make your simulation unstable.

Proposed solution: Check that your URDF does not contain any bodies with invalid inertia tensors. Typically this happens when you specify zero inertia along at least one axis. You may post your URDF so I can take a look.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants