URDF and MJCF robot description files for Synria robotic platforms.
Project description
SynriaRD: Synria Robot Descriptions
English | 中文
This repository contains URDF (Unified Robot Description Format) and MJCF (MuJoCo Modeling Format) models for Synria robotic platforms.
Repository Structure
├── synriard
│ ├── meshes
│ │ ├── Alicia_D_v5_5
│ │ ├── Alicia_D_v5_6
│ │ ├── Alicia_M_v1_0
│ │ ├── Alicia_M_v1_1
│ │ ├── Bessica_D_v1_0
│ │ ├── Bessica_D_v1_1
│ │ └── Bessica_M_v1_0
│ ├── mjcf
│ │ ├── Alicia_D_v5_5
│ │ ├── Alicia_D_v5_6
│ │ ├── Alicia_M_v1_1
│ │ ├── Bessica_D_v1_0
│ │ ├── Bessica_D_v1_1
│ │ └── Bessica_M_v1_0
│ └── urdf
│ ├── Alicia_D_v5_5
│ ├── Alicia_D_v5_6
│ ├── Alicia_M_v1_0
│ ├── Alicia_M_v1_1
│ ├── Bessica_D_v1_0
│ ├── Bessica_D_v1_1
│ └── Bessica_M_v1_0
Naming Convention
All model files follow a unified naming format: {name}_{version}_{variant}.{ext}
- name: Robot name (e.g.,
Alicia_D,Alicia_M,Bessica_D,Bessica_M) - version: Version number (e.g.,
v5_5,v5_6,v1_0,v1_1) - variant: Variant identifier
- For robots with grippers (Alicia_D, Alicia_M):
gripper_{size}(e.g.,gripper_50mm,gripper_100mm) - For other variants (Bessica_D): Direct variant name (e.g.,
covered,skeleton,skeleton_interactive)
- For robots with grippers (Alicia_D, Alicia_M):
- ext: File extension (
.urdfor.xml)
Examples
Alicia_D_v5_6_gripper_50mm.urdf- Alicia_D v5.6 version with 50mm gripperAlicia_D_v5_6_gripper_100mm.urdf- Alicia_D v5.6 version with 100mm gripperAlicia_M_v1_1_gripper_100mm.urdf- Alicia_M v1.1 version with 100mm gripperBessica_D_v1_0_covered.urdf- Bessica_D v1.0 version, covered variantBessica_D_v1_1_skeleton.urdf- Bessica_D v1.1 version, skeleton variantBessica_D_v1_0_covered_interactive.xml- Bessica_D v1.0 version, covered interactive variant (MJCF)
Usage API
from synriard import get_model_path, list_available_models
# Get model path
urdf_path = get_model_path("Alicia_D", version="v5_6", variant="gripper_50mm")
mjcf_path = get_model_path("Alicia_D", version="v5_6", variant="gripper_50mm", model_format="mjcf")
# List all available models
print(list_available_models(model_format="urdf"))
print(list_available_models(model_format="urdf", show_path=True))
Products
Alicia-D
- Description: Agile manipulation arm
- DOF: 6
- Gripper Configurations: 50mm and 100mm
- Versions: v5.5, v5.6
- Variants:
gripper_50mm- 50mm gripper configurationgripper_100mm- 100mm gripper configurationleader- Leader arm configuration (v5.6 only)vertical_50mm- Vertical 50mm configuration (v5.6 only)
- Locations:
Alicia-M
- Description: Cloud-powered robotic arm
- DOF: 6
- Versions: v1.0, v1.1
- Gripper Configuration: 100mm
- Locations:
Bessica-D
- Description: Dual-arm humanoid robot
- DOF: 14 (Dual 7-DOF arms)
- Versions: v1.0, v1.1
- Appearance: Skeleton and covered versions
Skeleton Version
- v1.0 URDF:
Bessica_D_v1_0_skeleton.urdf - v1.0 MuJoCo XML:
Bessica_D_v1_0_skeleton.xml - v1.1 URDF:
Bessica_D_v1_1_skeleton.urdf - v1.1 MuJoCo XML:
Bessica_D_v1_1_skeleton.xml - v1.1 MuJoCo XML (Interactive):
Bessica_D_v1_1_skeleton_interactive.xml
Covered Version (v1.0 only)
- URDF:
Bessica_D_v1_0_covered.urdf - MuJoCo XML:
Bessica_D_v1_0_covered.xml - MuJoCo XML (Interactive):
Bessica_D_v1_0_covered_interactive.xml
Bessica-M
- Description: Dual-arm humanoid robot (M series)
- DOF: 14 (Dual 7-DOF arms)
- Version: v1.0
- Location:
Bessica_M_v1_0
Adding New Robot Models
After adding new robot models, run the automation script to automatically generate the required __init__.py files:
# 1. Add model files to the corresponding directory
mkdir -p synriard/mjcf/RobotName_v1_0
cp RobotName_v1_0_gripper_100mm.xml synriard/mjcf/RobotName_v1_0/
# 2. Run the automation script
python3 auto_generate_init.py
# The script will automatically:
# - Generate __init__.py for each robot directory
# - Update parent directory __init__.py to register all robots
Script options:
--format mjcf|urdf|all: Specify the format to process (default: all)--synriard-path PATH: Specify the synriard directory path (default: auto-detect)
Supported Simulation Environments
- ROS/ROS2 (via URDF)
- MuJoCo (via MJCF)
- Gazebo (via URDF)
- PyBullet (via URDF)
- Isaac Sim (via URDF/MJCF)
Project details
Release history Release notifications | RSS feed
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file synriard-1.2.1.tar.gz.
File metadata
- Download URL: synriard-1.2.1.tar.gz
- Upload date:
- Size: 38.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ee1b20d2e70d92586e72683bc873ba159211a71f3dba777cd86fd171560cfbb
|
|
| MD5 |
fbea3a7ca90453c8ac89fbdb69866436
|
|
| BLAKE2b-256 |
b4f63963e23f0d1431c2aa2633abfa15613ab0313221490e4b3cf146e2dadc22
|
File details
Details for the file synriard-1.2.1-py3-none-any.whl.
File metadata
- Download URL: synriard-1.2.1-py3-none-any.whl
- Upload date:
- Size: 38.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3246019738670e3bfc81ed173231cdbf65e07f4bb4418f53945a5aaae2aaa55
|
|
| MD5 |
23253c14f09cef05523ada15b03086ef
|
|
| BLAKE2b-256 |
76472f40c4922ed157efb4c4be2343ce8977c7f802f90e4880a51c5d51143057
|