机械臂+rl论文复现的问题
这篇内容纪念我这几个月来复现surrol论文遇到的困难在六自由度主从控制系统中,主手(Master Device)用于采集操作者的运动数据,并将其映射到从手(Slave Device)以实现精确控制。在强化学习(Reinforcement Learning, RL)框架下,主手可以作为数据采集器,记录位置、姿态、角度等信息,用于训练智能体(Agent)完成特定的控制任务。其语言代码是c++代码我们
surrol
前言
这篇内容纪念我这几个月来复现surrol论文遇到的困难
一、surrol是什么?
surrol是一款基于模仿学习,强化学习的一款手术具身智能虚拟平台,使用ddpg,克隆学习等算法,实现了在现实中机器人自主学习自主判断的功能。
二、实验室及设备介绍
1.sdk主手

在六自由度主从控制系统中,主手(Master Device)用于采集操作者的运动数据,并将其映射到从手(Slave Device)以实现精确控制。在强化学习(Reinforcement Learning, RL)框架下,主手可以作为数据采集器,记录位置、姿态、角度等信息,用于训练智能体(Agent)完成特定的控制任务。
其语言代码是c++代码我们使用swig将其代码变成可调用的python代码其中遇到以下几个问题
1,c++代码转换python代码报错
我们使用swig修改代码时报错,程序错误认定动态库从而报错。我们发现需要正确放置程序库的位置才能不报错。下面是一些命令行代码
(surrol) (base) yao@yao-405:~/桌面/SurRoL1$ swig -python -c++ sigma7.i
(surrol) (base) yao@yao-405:~/桌面/SurRoL1$ g++ -fPIC -c sigma7.cpp sigma7_wrap.cxx -I/home/yao/桌面/SurRoL/text2/include -I/home/yao/anaconda3/envs/surrol/include/python3.7m -I/home/yao/anaconda3/envs/surrol/lib/python3.7/site-packages/numpy/core/include^Cg++ -shared sigma7.o sigma7_wrap.o -o _sigma7.so -ldhd -ldrd -lncurses -lusb-1.0
(surrol) (base) yao@yao-405:~/桌面/SurRoL1$ g++ -shared sigma7.o sigma7_wrap.o -o _sigma7.so -L/home/yao/桌面/SurRoL1/tests/text2/lin-x86_64-gcc -ldhd -ldrd -lncurses -lusb-1.0
这个 g++ 编译命令用于将 sigma7.o 和 sigma7_wrap.o 两个目标文件链接生成名为 _sigma7.so 的动态链接库。其中,-shared 选项指定生成 Linux 平台的共享库文件(.so 格式),-o 参数指定输出文件名(遵循 Python C/C++ 扩展模块以下划线开头的命名惯例)。该命令还链接了四个关键依赖库:libdhd.so(力反馈设备控制库,常用于 Force Dimension 等力反馈设备)、libdrd.so(机器人运动控制库,可能用于去抖或精密控制)、libncurses.so(终端图形界面库)以及 libusb-1.0.so(USB 底层通信库)
下面这个 g++ 编译命令用于构建 Python 的 C++ 扩展模块,它通过 -fPIC 选项生成位置无关代码(这是创建共享库的必要条件),并使用 -c 参数将 sigma7.cpp(主程序代码)和 sigma7_wrap.cxx(SWIG 生成的包装代码)编译成目标文件(.o 文件)。命令中特别指定了两个关键的头文件路径:Python 3.7 的头文件目录(包含 Python.h)和 NumPy 的核心头文件目录(包含数组操作相关的接口),这两个路径分别指向 Anaconda 环境中的相应位置。这种编译方式常见于需要将 C++ 功能封装给 Python 调用的场景,特别是在科学计算、机器人控制等需要高性能运算的领域。完成编译后,通常会再通过链接步骤将这些目标文件打包成最终的 .so 共享库文件,以供 Python 直接导入和使用。
2,机械sdk无法连接电脑
因为权限没有打开我需要更改一下权限才能连接我的电脑
3,安装本地unbuntu失败
因为没有安装最新版所以报错了
2.机械臂

这个机械臂用于主从控制,这方面还没有进行到实验阶段
3,算法部分
原本是使用的是ddpg老师说需要新的算法,我想使用一下vit,我再看一下论文吧。系统的内存也不够了头有点藤
实验室
天津智能协作实验室
火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)