手眼标定之机器人位姿设置

1. 机器人位姿定义:

image.png 

1.1 如果机器人是abg位姿类型, 通过create_pose算子将数据转换为位姿,旋转矩阵链如下:

image.png[x,y,z,RX,RY,RZ]



1.2 如果机器人是gba位姿类型, 通过create_pose算子将数据转换为位姿,旋转矩阵链如下:

image.png 


1.3 如果机器人是zyz位姿类型,则不能使用create_pose,必须创建相应的齐次变换矩阵,并使用hom_mat3d_to_pose将其转换为位姿。

image.png 

1.4位姿的由来


H即齐次变换矩阵,它表示一个坐标系转为另一个坐标系要经过哪些旋转与平移。

t表示平移向量。

image.png 

当位姿里面的旋转链顺序是gba时:

image.png 

这里可以看到,3D位姿的可读性要比上面的齐次变换矩阵可读性要更好,

虽然两者表达的意思是一致的。


当位姿里面的旋转链顺序是abg时:

image.png 

 

2. 每个校准图像,必须指定机器人相应位姿。

位姿的准确性对于获得准确的手眼校准至关重要;

 

3. 有两种方法向halcon程序输入位姿

一种是直接向halcon程序手动输入机器人的位姿,另一种是从机械手控制单元里读取位姿到halcon程序;




示例:机械手位姿创建

dev_update_off ()
* directory for pose files: adapt to your needs
DataNameStart := './robot_pose_'
i := 0
dev_close_window ()
* let user specify pose type
input_pose_type (PoseType)
* create poses interactively
CreateNextPose := 'true'
while (CreateNextPose == 'true')
    input_pose (PoseType, Pose)
    write_pose (Pose, DataNameStart + i$'03d' + '.dat')
    i := i + 1
    ask_yes_no ('Create another pose?', 'YES', 'NO', CreateNextPose)
endwhile


本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2024年3月    »
123
45678910
11121314151617
18192021222324
25262728293031
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864