Skip to main content

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)
  • ext: File extension (.urdf or .xml)

Examples

  • Alicia_D_v5_6_gripper_50mm.urdf - Alicia_D v5.6 version with 50mm gripper
  • Alicia_D_v5_6_gripper_100mm.urdf - Alicia_D v5.6 version with 100mm gripper
  • Alicia_M_v1_1_gripper_100mm.urdf - Alicia_M v1.1 version with 100mm gripper
  • Bessica_D_v1_0_covered.urdf - Bessica_D v1.0 version, covered variant
  • Bessica_D_v1_1_skeleton.urdf - Bessica_D v1.1 version, skeleton variant
  • Bessica_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 configuration
    • gripper_100mm - 100mm gripper configuration
    • leader - 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

Covered Version (v1.0 only)

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

synriard-1.2.3.tar.gz (53.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

synriard-1.2.3-py3-none-any.whl (53.0 MB view details)

Uploaded Python 3

File details

Details for the file synriard-1.2.3.tar.gz.

File metadata

  • Download URL: synriard-1.2.3.tar.gz
  • Upload date:
  • Size: 53.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for synriard-1.2.3.tar.gz
Algorithm Hash digest
SHA256 6da995dea4fe0f80b8c4e83a8a79942dd2accb8afb6fe2cb6f1942a55cc02f7b
MD5 20127aaa8bca242771acf818639f1b87
BLAKE2b-256 00a4e21c5c8e600800c5976a0052cb4d0ee0640e626208756c95425a6052ab8a

See more details on using hashes here.

File details

Details for the file synriard-1.2.3-py3-none-any.whl.

File metadata

  • Download URL: synriard-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 53.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for synriard-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d0f0c37d433fcf3202e912186542288b94c2bc8313b817fa993c6c8b530564bf
MD5 ce336b56258717dab7ba53737b2bceae
BLAKE2b-256 52d9eb212995cf2cf8bec0464894100b2a4ca37be5649d05875ee6250b192012

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page