“机器人 - 相机校准工具”的版本间的差异
第25行: | 第25行: | ||
#* 当夹具旋转不变时,此步骤不是必需的,但通常它会提高校准精度。当球不在夹点时,校准球的实际位置与机器人报告的位置稍有不同。知道夹持器旋转可以消除'''错位错误'''。 | #* 当夹具旋转不变时,此步骤不是必需的,但通常它会提高校准精度。当球不在夹点时,校准球的实际位置与机器人报告的位置稍有不同。知道夹持器旋转可以消除'''错位错误'''。 | ||
#* 从旋转组合框中选择正确的旋转形式。这种格式用于矩阵计算时的所有点。 | #* 从旋转组合框中选择正确的旋转形式。这种格式用于矩阵计算时的所有点。 | ||
− | # 使用<code> Capture </ code>按钮触发新的扫描并找到校准球。 | + | # 使用 <code>Capture</code> 按钮触发新的扫描并找到校准球。 |
# 重复,直到收集到足够数量的校准点。最低4点。 | # 重复,直到收集到足够数量的校准点。最低4点。 | ||
===计算=== | ===计算=== | ||
− | # 点击<code> | + | # 点击 <code>Compute</code> 按钮。 |
# 输出控制台显示计算过程。 | # 输出控制台显示计算过程。 | ||
#* 注意:如果使用旋转形式,输出还会显示计算的错位矢量,它表示实际放球位置与机器人报告的位置之间的差异。 | #* 注意:如果使用旋转形式,输出还会显示计算的错位矢量,它表示实际放球位置与机器人报告的位置之间的差异。 | ||
第40行: | 第40行: | ||
#* 翻译矢量是变换矩阵的第四列 | #* 翻译矢量是变换矩阵的第四列 | ||
# 将选项CoordinateSpace设置为CustomSpace | # 将选项CoordinateSpace设置为CustomSpace | ||
− | # 标记复选框以永久保存设置,然后单击<code> | + | # 标记复选框以永久保存设置,然后单击 <code>Set</code> 按钮 |
# 点云现在返回到机器人坐标空间 | # 点云现在返回到机器人坐标空间 | ||
==测试结果== | ==测试结果== | ||
− | 要查看在相机点上应用转换的结果,请按<code> | + | 要查看在相机点上应用转换的结果,请按 <code>Test</code> 按钮。这将触发新的扫描,定位校准球并将其位置转换为机器人坐标。输出显示在输出控制台中。此过程不会考虑抓手旋转,因为在实际情况下,错位矢量会随着每个拾取的物体而变化。 |
===验证计算后的转换精度=== | ===验证计算后的转换精度=== | ||
− | 在这种情况下,我们将校准球放入夹具内,收集校准点并运行校准矩阵计算。我们没有移动校准球。为了验证转换精度,我们将通过相同的机器人位置并将它们与 Test 按钮计算的值进行比较。 | + | 在这种情况下,我们将校准球放入夹具内,收集校准点并运行校准矩阵计算。我们没有移动校准球。为了验证转换精度,我们将通过相同的机器人位置并将它们与 <code>Test</code> 按钮计算的值进行比较。 |
# 机器人空间中的第一个测试位置是'''[0,-600,100]''',夹具的旋转表示为旋转矢量'''[3.14159,0,0]'''。 | # 机器人空间中的第一个测试位置是'''[0,-600,100]''',夹具的旋转表示为旋转矢量'''[3.14159,0,0]'''。 |
2018年4月10日 (二) 02:30的版本
机器人 - 相机校准工具用于查找相机(PhoXi 3D扫描仪)和机器人坐标空间之间的转换。计算矩阵将相机坐标系中的点转换为机器人坐标系。
您需要获得许可的USB Dongle才能运行该应用程序。
校准过程
准备
- 安装机器人和摄像机,使它们的相互位置固定。
- 获取校准球。这可能是一个乒乓球或一个轴承球。 (使用轴承球时,确保它不太亮,以便扫描仪可以高精度定位。)
- 将校准球放入抓取点的机器人抓手中。
- 启动PhoXi控制应用程序。
- 插入您的授权USB Dongle。
- 启动机器人 - 相机校准工具,选择所需的3D PhoXi扫描仪,然后按<编码>连接</ code>按钮。
- 设置应用程序中校准球的半径。该值用于在捕获的3D扫描中定位校准球。
收集校准点
- 将夹持器移动到相机前方。
- 选择一个有代表性的位置,例如当为拾取箱应用程序进行校准时,这些位置应覆盖拾取所需物体的整个区域。
- 避免许多机器人位置彼此靠得太近(比球直径的尺寸更近)。选择经常覆盖该地区的地点。
- 将机器人坐标系中校准球的位置输入到应用程序中。
- 提示:如果您使用程序定位机器人,将所有计划位置保存到文件并将其加载到校准表中非常有用。行中的值应该用空格分隔,每行放在新行中。
- 将夹具旋转输入应用程序[旋转夹具时必须]。
- 当夹具旋转不变时,此步骤不是必需的,但通常它会提高校准精度。当球不在夹点时,校准球的实际位置与机器人报告的位置稍有不同。知道夹持器旋转可以消除错位错误。
- 从旋转组合框中选择正确的旋转形式。这种格式用于矩阵计算时的所有点。
- 使用
Capture
按钮触发新的扫描并找到校准球。 - 重复,直到收集到足够数量的校准点。最低4点。
计算
- 点击
Compute
按钮。 - 输出控制台显示计算过程。
- 注意:如果使用旋转形式,输出还会显示计算的错位矢量,它表示实际放球位置与机器人报告的位置之间的差异。
- 表中显示了计算的变换矩阵。将其保存到文件供以后使用。
将转换保存到扫描仪
- 打开PhoXi Control App并连接到扫描仪。
- 在左侧的选项窗格中,填写CustomTransformation矩阵
- 旋转矩阵由前3列和3行计算变换矩阵组成
- 翻译矢量是变换矩阵的第四列
- 将选项CoordinateSpace设置为CustomSpace
- 标记复选框以永久保存设置,然后单击
Set
按钮 - 点云现在返回到机器人坐标空间
测试结果
要查看在相机点上应用转换的结果,请按 Test
按钮。这将触发新的扫描,定位校准球并将其位置转换为机器人坐标。输出显示在输出控制台中。此过程不会考虑抓手旋转,因为在实际情况下,错位矢量会随着每个拾取的物体而变化。
验证计算后的转换精度
在这种情况下,我们将校准球放入夹具内,收集校准点并运行校准矩阵计算。我们没有移动校准球。为了验证转换精度,我们将通过相同的机器人位置并将它们与 Test
按钮计算的值进行比较。
- 机器人空间中的第一个测试位置是[0,-600,100],夹具的旋转表示为旋转矢量[3.14159,0,0]。
- 我们计算的错位向量是:[-0.0422,-8.0056,4.4710](在计算转换矩阵后,此信息显示在输出控制台中)
- 我们把机器人放在第一个测试位置,然后按下
测试</ code>按钮:
- 机器人空间的计算球位置是[-0.435708,-592.207,95.3183]。
- 我们添加了错位矢量到计算位置,得到的点是['0.47791,-600.213,99.7893](错位矢量应该根据夹具旋转添加,在这个例子中,我们简单地将X ,Y,Z值)
- 转换精度因此小于0.6毫米。