# loong_sim_sdk_release **Repository Path**: jay-2deng/loong_sim_sdk_release ## Basic Information - **Project Name**: loong_sim_sdk_release - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-19 - **Last Updated**: 2025-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Copyright 2025 人形机器人(上海)有限公司, https://www.openloong.net/ # 简介 OpenLoong framework中已编译好的全链仿真sdk,附python示例。 本sdk包含jntSdk(控制全身关节)、maniSdk(控制上肢末端或关节,包含腰-颈-臂) # 特点 本sdk通用于仿真、实机。 不同于sim2real仿真,本sdk仿真可模拟实机运行流程(sim2sim-real),sdk的仿真验证、实机运行共用同一套接口,从而安全完成sim2real迁移。 # 运行 ## 脚本 所有操作均在tools文件夹内完成,运行其中脚本即可(终端建议使用terminator,可以使用分屏和广播功能,便于查看打印信息)(ps:为什么要启动这么多脚本?全链仿真模拟了实机运行全流程,与实机接口完全一致,因此比常规单线仿真复杂一些。用户亦可自己手写脚本全启动,但会难以把握全链运行状态过程)。 ``` # 1-sim窗口,仿真界面,模拟实机 ./run_sim.sh # 2-driver窗口,模拟实机驱动,打印关节信息,此时与窗口1接通 ./run_driver.sh # 3-interface窗口,命令通信交互,打印连接状态 ./run_interface.sh # 4-loco窗口(仅jntSdk时开启,maniSdk时非必须开启),运动控制器,打印当前控制状态 ./run_locomotion.sh # 5-mani窗口(仅maniSdk时开启,jntSdk时非必须开启),操作控制器,打印当前控制状态 ./run_manipulation.sh # 6-ui窗口,ui控制界面(模拟遥控器),打印按键 ./py_ui.py ``` ## 仿真界面 键盘f键用于是否需要外力辅助机器人的吊起。g键降低高度,h键升高高度。 ## 控制界面 界面分为loco(上半部分)与mani(下半部分) * loco部分(此时可选择性开启mani程序与否) | 按键名 | 功能 | | ------ | ------------------------------------------ | | en | 上使能 | | dis | 下使能,进入自由状态 | | idle | 进入空闲状态 | | damp | 进入关节阻尼保护状态,5s后自动进入自由状态 | | rc | 复位 | | rl | 进入行走状态,调用内嵌控制模型 | | jntSdk | 进入joint skd控制状态 | | start | 内部控制器开始踏步 | | stop | 内部控制器停止踏步 | ui界面所有的按键值、以及摇杆值(通过增量按键模拟),均会通过udp发送至sdk相应接口。底层对摇杆值可能有非线性映射以处理零偏抖动,以sens反馈值为准。 * mani部分(此时可选择性开启loco程序与否) | 按键名 | 功能 | | ------ | ----------------------------------------------------- | | en | 上使能 | | dis | 下使能,进入自由状态 | | idle | 进入上肢空闲状态 | | damp | 进入上肢关节阻尼保护状态,5s后自动进入自由状态 | | rc | 上肢复位 | | act | 上肢内嵌动作模式,根据151~159按键响应动作 | | mani | 上肢进入maniSdk响应状态,按键152开始响应,151停止响应 | # ·joint sdk joint sdk位于sdk目录,上传反馈sens与下发控制ctrl。具体接口、用法见之即可。rl部署建议使用onnx runtime。 ## 进入jnt sdk控制流程 启动脚本【1、2、3、4、6】,等待driver窗口所有关节驱动上线后: 1. 机器人上使能[en](loco窗口自动进入idle) 2. 复位[rc](loco窗口进入rc,结束后自动进入idle) 3. 鼠标聚焦仿真界面,按g键和h键调整机器人高度至脚接地 4. 机器人站立[rl](loco窗口进入rl,此时即可采用内部控制器控制机器人运动) 5. 鼠标聚焦仿真界面,按f键去除辅助力(再次按f重新添加辅助力) 6. 运行joint sdk脚本(需下一步loco窗口进入jntSdk状态后开始响应) 7. 点击[jntSdk]即可开始响应sdk命令(示例py_jnt/test_*.py) dis紧急停机(loco窗口进入free状态),必须须在free状态才可重新en上使能 # ·mani sdk 上肢操作sdk,提供关节、末端接口。具体接口、用法见之即可。 ## 进入mani sdk控制流程 启动脚本【1、2、3、5、6】,等待driver窗口所有关节驱动上线后: 1. 机器人上使能[en](mani窗口自动进入idle) 2. 复位[rc](mani窗口进入rc,结束后自动进入idle) 3. (可选)内嵌动作[act](mani窗口进入act,按键151~159可任意控制) 4. 外部操作[mani](mani窗口进入mani) 5. 运行maniSdk测试脚本即可操作上肢运动(按键152开始响应、151停止响应。示例py_mani/test.py) dis紧急停机(mani窗口进入free状态),必须须在free状态才可重新en上使能 # log调试 运行后会生成log文件夹,以时间排序,以后缀区分驱动层或算法层日志。自行根据标签excel、pyplot、matlab绘图调试即可