URDF를 MuJoCo MJCF로 변환하기 (설치 없이) API + Python SDK

발행: (2026년 5월 3일 PM 08:22 GMT+9)
2 분 소요
원문: Dev.to

Source: Dev.to

문제점

  • MuJoCo는 가장 빠르게 성장하고 있는 로봇 시뮬레이터입니다.
  • URDF를 MJCF로 변환하는 과정은 고통스럽습니다: ./compile 도구는 버그가 많고, urdf2mjcf는 비대각 관성값을 무시하며, 메쉬 경로가 자주 깨집니다.
  • 여러분은 단지 변환하고 바로 RL 에이전트를 학습하고 싶을 뿐입니다.

해결책

Curl

curl -X POST https://api.example.com/api/urdf/convert-format?target=mjcf \
  -H "X-Api-Key: rk_..." \
  -F "file=@robot.urdf"

Python SDK

import roboinfra

client = roboinfra.Client("rk_...")
result = client.urdf.convert_format("robot.urdf", "mjcf")

with open("robot.xml", "w") as f:
    f.write(result.converted_xml)

실제 예시 (preview_test_arm.urdf)

  • 입력 URDF – 6개의 링크와 5개의 조인트를 가진 로봇.
  • 출력 MJCF – 액추에이터, 바닥, 조명이 포함됩니다.

이 변환을 수동으로 하면 2~3시간이 걸리지만, API는 약 200 ms 안에 완료합니다.

Gazebo SDF 로도 변환 가능

같은 API를 사용해 SDF 파일을 생성할 수 있습니다; target 파라미터만 바꾸면 됩니다:

curl -X POST https://api.example.com/api/urdf/convert-format?target=sdf \
  -H "X-Api-Key: rk_..." \
  -F "file=@robot.urdf"

반환된 SDF 출력에는 동일한 Gazebo 설명이 포함됩니다.

보너스: CI에서 검증 + 변환

푸시할 때마다 URDF를 검증하고 MJCF로 변환하는 짧은 GitHub Action을 추가하세요:

name: URDF Validation & Conversion
on: [push]

jobs:
  convert:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Convert URDF to MJCF
        run: |
          curl -X POST https://api.example.com/api/urdf/convert-format?target=mjcf \
            -H "X-Api-Key: ${{ secrets.ROBOINFRA_API_KEY }}" \
            -F "file=@path/to/robot.urdf"

무료 14일 Pro 체험

신용카드 없이도 무료로 서비스를 이용해 보세요.

https://roboinfra-dashboard.azurewebsites.net

0 조회
Back to Blog

관련 글

더 보기 »

Rendershot vs Urlbox: 2026년 스크린샷 API 선택

소개: 스크린샷 API를 선택하는 것은 통합을 시작하기 전까지는 이분법적으로 느껴질 수 있습니다. SDKs, async queues, webhooks, storage와 같은 세부 사항이 실제 차이를 만들게 됩니다.