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

Uploaded Python 3

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

Hashes for synriard-1.2.1.tar.gz
Algorithm Hash digest
SHA256 6ee1b20d2e70d92586e72683bc873ba159211a71f3dba777cd86fd171560cfbb
MD5 fbea3a7ca90453c8ac89fbdb69866436
BLAKE2b-256 b4f63963e23f0d1431c2aa2633abfa15613ab0313221490e4b3cf146e2dadc22

See more details on using hashes here.

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

Hashes for synriard-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c3246019738670e3bfc81ed173231cdbf65e07f4bb4418f53945a5aaae2aaa55
MD5 23253c14f09cef05523ada15b03086ef
BLAKE2b-256 76472f40c4922ed157efb4c4be2343ce8977c7f802f90e4880a51c5d51143057

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