API

睿尔曼超轻量仿人机械臂--睿尔曼机械臂与深度相机进行手眼标定

Forrest 2023-11-23

       本教程主要介绍RM机械臂与Realsense D435相机用Python实现眼在手外标定的使用教程,本文中Python实现的代码已上传百度网盘,仅供参考。

       链接:https://pan.baidu.com/s/1ITyItVkbbcJDOsxeEIaWaw?pwd=pno9 提取码:pno9 
       料中包含眼在手外及眼在手上两种视觉传感器的安装方式,可自行下载使用;

1. 开始前准备

1.1 软件

  • python 3.8及以上
  • numpy 1.24.2
  • scipy 1.10.1
  • pyrealsense2 2.53.1.4623

1.2 硬件准备

  • 一个标定板 棋格盘
  • 机械臂
  • D435相机

1.3 相机/机械臂连接

      将标定板通过支架与机械臂末端组合起来,如下图所示:

2. 采集数据

        步骤一:运行采集脚本
       进入data_collection_d435_win文件夹,修改main.py文件里cam0_path变量为想要保存标定板图片的文件夹路径。

       步骤二:挪动机械臂末端

       保持相机和机械臂基座不动,挪动机械臂末端,使标定板出现在屏幕上,选择清晰完整的图片点击键盘 "s"获取当前界面里的标定板图片和当前机械臂末端的位姿。采集十几组图片以及数据,图片保存到之前设置的标定板图片保存路径,位姿保存在相同路径下的poses.txt文件中。

3. 计算相机坐标系到机械臂基座坐标系的齐次变换矩阵(旋转矩阵和平移向量)

    • 进入到文件夹out_of_hand_homogeneous_matrix中
    • 将python文件 main.py的数据源设置为上面采集数据时设置的路径
    • 将python文件 main.py的 角点个数和棋盘格间距设置为实际使用的标定板

        如当前标定板的格式为12*9,每个间隔距离为0.03米,则修改main.py 的XX、YY和L变量为11、8、0.03

    • 运行python文件计算相机坐标系到机械臂末端坐标系的齐次变换矩阵
    • 输出旋转矩阵和平移向量

 至此,Python实现机械臂的眼在手外标定结束,最终得到旋转矩阵和平移向量。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

附件下载

0 条评论

关于作者

Forrest

让机械臂成为智能、易用、可靠、通用的作业工具,走入千行百业、千家万户。

选择发帖板块
选择发帖板块