Minimal script to convert MuJoCo MJCF robot model files to URDF files usable in ROS
Project description
mjcf_urdf_simple_converter
A minimal and simple script to convert limited elements of MJCF (MuJoCo modeling format) robot model files to URDF. Developed from a need to visualize MJCF robots in ROS environments like Rviz, it only converts a limited subset of the robot model elements to URDF.
The model file is loaded in the Python mujoco
package, and its model elements are parsed using the library and then output according to the URDF XML format.
I do not intend to expand this into a full-fledged transclation script from MJCF to URDF.
installation
pip install mjcf-urdf-simple-converter
usage
from mjcf_urdf_simple_converter import convert
convert("model.xml", "model.urdf")
# or, if you are using it in your ROS package and would like for the mesh directories to be resolved correctly, set meshfile_prefix, for example:
convert("model.xml", "model.urdf", asset_file_prefix="package://your_package_name/model/")
This converts the model.xml
(and any associated MJCF files loaded from within model.xml
) to model.urdf
. Mesh geoms are also converted to STL files, and saved to converted_*.stl
files within the same directory. The converted files can be checked in Rviz, or online tools like https://gkjohnson.github.io/urdf-loaders/javascript/example/bundle/index.html .
what are converted
- links
- mesh geoms
- inertial information
- joints
- joint position, axis and limits (arbitrary values are set for effort and velocity limits)
- only hinge (revolute) joints are supported
- only up to one joint per link is supported
what are NOT converted
- actuators
- sensors
- tendons
- etc.
comments
- A similar tool exists to convert from MJCF to URDF (mjcf2urdf), but the pybullet import that it uses did not work for our case so this tool was created.
- for converting from URDF to MJCF, the
./compile
program bundled with standard MuJoCo installations can be used.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file mjcf_urdf_simple_converter-0.4.tar.gz
.
File metadata
- Download URL: mjcf_urdf_simple_converter-0.4.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 102d2e3d437d319a6beef049705b2ef619e5a9e4c9ff80bcac9d8f0b3e49ba52 |
|
MD5 | 3c564a1b8638a0753ee73c4d68f92387 |
|
BLAKE2b-256 | 1d91e59713e8b8c6c71e3b44f3002edc1a561a1cf9a8bdf00e8510a539e24b63 |
File details
Details for the file mjcf_urdf_simple_converter-0.4-py3-none-any.whl
.
File metadata
- Download URL: mjcf_urdf_simple_converter-0.4-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d04a4c2416c06ea60676c4e2f752b30d0c1d02e8aa7b3738be4050b7aa7c99eb |
|
MD5 | 329b155730c8387786f0ca041de3d0df |
|
BLAKE2b-256 | f7794bd92e8f6c3aaa424783655381d2795cf2003ea1ea5400308c12aee59e99 |