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.2.tar.gz (60.9 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.2-py3-none-any.whl (60.9 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: synriard-1.2.2.tar.gz
  • Upload date:
  • Size: 60.9 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.2.tar.gz
Algorithm Hash digest
SHA256 d1781e80a6020be8bd956bfdfe06f65e5ca6f432f8319a2333ee8136dc7154b5
MD5 be744cf19df18499f9c7a3ff32ae4ac5
BLAKE2b-256 9a0ea40199521235abaa0e9349a914877e0660e2042de0fe6e14a3b28f3d980d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: synriard-1.2.2-py3-none-any.whl
  • Upload date:
  • Size: 60.9 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cf01019131556f4b7bac43ff09c2c4c44c1cfae74c9ae4073bf4eeefda406a02
MD5 e8e53cd54aeadcde6147b8810fa4ce40
BLAKE2b-256 eaf21cdb70b2cb6a75a04ecbd9e62e3ce1d7720758dabc81e823a90da4688542

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