# URDFly **Repository Path**: CongzzW/URDFly ## Basic Information - **Project Name**: URDFly - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-08-19 - **Last Updated**: 2025-10-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # URDFly ![GX7 Robot Arm](assets/gx7.png) ![alt text](assets/schunk.png) ![Poppy Robot](assets/poppy.png) ## Overview URDFly is a Python-based toolkit for working with URDF (Unified Robot Description Format) files, specifically designed for robotic arm modeling, simulation, and control. The project provides tools for parsing, visualizing, and analyzing robotic systems defined in URDF format, with a focus on axes visulazation, urdf editing, MDH parameter conversion, kinematics calculation, and dynamics regressor codegen. ## Features - URDF file parsing and manipulation - 3D visualization of robot models - Dynamic regressor generation using symbolic computation - Modified Denavit-Hartenberg (MDH) parameter conversion ## Highlight ### URDF Visualization - Support `stl` and `obj` mesh file format - Support transparent mesh and multiple axes visualization - Support highligt link by clicking the Links list. - Support original link axes visualization and M-DH axes visualization - Support virtual link visualization by a read sphere. ### MDH Parameter Conversion The project includes a tool for converting URDF to Modified DH (MDH) parameters. Multi chain robot is supported. ![alt text](assets/gx7-mdh.png) The MDH can be used to calculate the forward kinematics of the robot and generate dynamics regressor for dynamics identification. ![alt text](assets/gx7-mdh-fk.png) ## Installation ### Prerequisites - Python 3.8+ - Required Python packages (install via pip): ``` pip install numpy sympy pyqt5 vtk anytree transformations ``` ## Usage ``` python main.py ``` ## Project Structure - `main.py`: Main entry point for the application - `urdf_parser.py`: URDF file parsing utilities - `urdf_vtk_model.py`: VTK-based visualization for URDF models - `mdh_dialog.py`: Tools for Modified Denavit-Hartenberg parameter conversion - `xml_editor.py`: Utilities for editing URDF XML files - `codegen/`: Code generation for kinematics and dynamics - `forward_kinematics.py`: Forward kinematics calculation - `dynamic_base_regressor.py`: Dynamic parameter regression - `sympybotics/`: Symbolic robotics computation library - `descriptions/`: Robot model descriptions - `gx7/`: GX7 7-axis robot arm model - `poppy/`: Poppy humanoid robot model - `docs/`: Documentation files - `third_parties/`: Third-party utilities and helpers ## Documentation For more detailed information, please refer to the documentation in the `docs/` directory: - [MDH Parameters Tutorial](docs/MDH_Parameters_Tutorial.md) ## Contributing Contributions are welcome! Please feel free to submit a Pull Request. ## License This project is licensed under the MIT License - see the LICENSE file for details. ## Acknowledgments - Thanks to all contributors who have helped with the development of URDFly - Special thanks to the creators of the robot models used in this project