机器人基础知识二

本文介绍了机器人领域的关键概念,包括四元数旋转、万向节锁、工具坐标系(TCP)及其分类、机械臂速度控制、转弯半径的影响以及欧拉角在旋转中的应用。此外,还探讨了DH参数在描述机器人关节间关系的作用,以及不同品牌机器人如ABB、珞石的特点。文章还涉及了通信协议如Modbus、PLC和视觉库如OpenCV,最后讨论了3D视觉中的极线约束、立体匹配和视觉伺服等技术。
摘要由CSDN通过智能技术生成

1.四元数(quaternion)可以看作中学时学的复数的扩充,它有三个虚部。形式如下:q = w + xi + yj +zk; 四元数旋转可以避免万向节锁现象,只需要一个4维的四元数就可以执行绕任意过原点的向量的旋转,方便快捷,在某些实现下比旋转矩阵效率更高,可以提供平滑插值。

 

通常说来,万向节锁发生在使用Eular Angles(欧拉角)的旋转操作中,原因是Eular Angles按照一定的顺序依次独立地绕轴旋转。让我们想象一个具体的旋转场景,首先物体先绕转X轴旋转,然后再绕Y轴,最后绕Z轴选择,从而完成一个旋转操作(飘飘白云译注:实际是想绕某一个轴旋转,然而Eular Angle将这个旋转分成三个独立的步骤进行),当你绕Y轴旋转90度之后万向节锁的问题就出现了,因为X轴已经被求值了,它不再随同其他两个轴旋转,这样X轴与Z轴就指向同一个方向(它们相当于同一个轴了)。

2.为了描述一个刚体在空间的位姿,需在物体上固连一个坐标系,然后确定该坐标系位姿(原点位置和三个坐标轴姿态)。对于工业机器人,需要在末端法盘安装工具(Tool)来进行作业。为了确定该工具(Tool)的位姿,在Tool上绑定一个工具坐标系TCS (Tool Coordinate System),TCS的原点就是TCP(Tool Center Point,工具中心点)。TCP类型的有:常规TCP,固定TCP,动态TCP。

01、常规TCP:随机器人本体一起运动

02、固定TCP:将TCP定义为机器人本体以外静止的某个位置。

03、动态TCP:随着更复杂的应用,TCP可以延伸到机器人本体轴外部(外部轴),应用在TCP需要相对法兰盘做动态变化的场合。

3.通常机械臂控制系统都有若干层级的速度控制机制。例如ABB,除包括指令级的速度设定和全局编程速度级限制,还包括系统限制层级。

4.转弯半径除了设定机械臂在距离目标点什么位置时开始提前滑入下一目标方向,也设定何时开始变更其工具姿态。

5.欧拉角是用来唯一地确定定点转动刚体位置的三个一组独立角参量,由章动角θ、进动角ψ和自转角φ组成

https://bkimg.cdn.bcebos.com/pic/242dd42a2834349b00a41638cdea15ce37d3bee8?x-bce-process=image/resize,m_lfit,w_268,limit_1/format,f_auto

随物体转动而转动的参考系叫做”动系”,要右乘。固定坐标系叫做“静系”,要左乘。欧拉表示法就是把三个角的矩阵相乘,得到一个最终旋转矩阵。

6.用矩阵表示绕原点二维旋转:首先要明确旋转在二维中是绕着某一个点进行旋转,三维中是绕着某一个轴进行旋转。二维旋转中最简单的场景是绕着坐标原点进行的旋转,如下图所示:

7.如图所示点v绕原点旋转θ角,得到点v’,假设v点的坐标是(x, y) ,那么可以推导得到v’点的坐标(x’, y’)(设原点到v的距离是r,原点到v点的向量与x轴的夹角是ϕ)

x=rcosϕ          y=rsinϕ

x′=rcos(θ+ϕ)      y′=rsin(θ+ϕ)

通过三角函数展开得到

x′=rcosθcosϕrsinθsinϕ       y′=rsinθcosϕ+rcosθsinϕ  

带入x和y表达式得到

x′=xcosθysinθx=xcosθysinθ

y′=xsinθ+ycosθy′=xsinθ+ycosθ

写成矩阵的形式是:

8.矩阵表示点绕X轴的旋转

在三维场景中,当一个点P(x,y,z)绕x轴旋转θ角得到点P’(x’,y’,z’)。由于是绕x轴进行的旋转,因此x坐标保持不变,y和z组成的yoz(o是坐标原点)平面上进行的是一个二维的旋转,可以参考上图(y轴类似于二维旋转中的x轴,z轴类似于二维旋转中的y轴),于是有:

x′=x

y′=ycosθ−zsinθ

z′=ysinθ+zcosθ

9.DH参数:用四个参数来表达一对关节连杆之间,位置角度关系的数学模型和坐标确定系统。该方法通过限制原点位置和X轴的方向。人为减去了y轴的位移和旋转两个自由度,仅考虑x和z轴上得位移与旋转。

连杆长度:连杆连接前后两个关节轴线的公共法线的长度。

连接扭转:连杆前后两个关节轴线,绕其公共法线所旋转的角度。

连杆偏移:关节与前后相邻关节之间的两条公共法线,沿该关节轴方向的间距。

关节转角:某关节与前后相邻关节之间的两条公共法线,绕该关节轴构成的转角驱动关节。

10.在进行示教编程、测试及维修工作时,必须将机器人置于手动状态,并拔下模式切换钥匙。

11.基本概念介绍总结:运动方式(MoveL&MoveJ)、运行速度(速度限制)、转弯半径、位置坐标(四元数、欧拉角,6轴坐标)、机械臂DH参数和日常操作、示教器和安全规范。

机器人类型:

1.ABB是工业机器人和机器人软件、设备和完整应用解决方案的领先供应商。

2.珞石(ROKAE)致力于新一代协作机器人、医疗机器人、打磨机器人、工业集成系统及高端智能装备的技术研发与开拓创新。

3.UR10e比较小巧灵活。

4.ToF测距方法属于双向测距技术,它主要利用信号在两个异步收发机(Transceiver)(或被反射面)之间往返的飞行时间来测量节点间的距离。

5.像素:是指在由一个数字序列表示的图像中的一个最小单位,称为像素。

6.体素是体积元素(Volume Pixel)的简称,是数字数据于三维空间分割上的最小单位。

机器人通信:

  1. 汇川H2u系列PLC主模块包含两独立物理串行通信口,分别命名为COM0和COM1。COM0具有编程、监控功能,若需要也可以由用户定义为其他功能。COM1功能即完全由用户自由定义。
  2. 基恩士kv:超高速内部cpu总线,存储各个软元件,可编程。
  3. 松下通信协议 MEWTOCOL用于程序处理和交互式操作,数据传输采用 ASCII 码的形式,首先由计算机发送指令,由 PLC 对指令自动进行相应响应。
  4. PLC:可编程逻辑控制器。是种专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程。
  5. MC协议的目的是开放PLC内部寄存器给外部设备,实现外部设备和PLC的数据交互。简单说就是允许外部设备通过MC协议来读/写PLC里面的寄存器。
  6. Modbus 是一种串行通信协议 ,是Modicon公司(现在的施耐德电气 Schneider Electric)于1979年为使用可编程逻辑控制器(PLC)通信而发表。
  7. 西门子S7 protocol指的是以太网S7通信,主要用于将PLC连接到PC工作站(PG/PC-PLC通信)。
  8. 波特率表示每秒钟传送的码元符号的个数,它是对符号传输速率的一种度量,它用单位时间内载波调制状态改变的次数来表示,1波特即指每秒传输1个符号。
  9. 串口通信校验方式:1)无校验 (no parity);2)奇校验 (odd parity):如果字符数据位中"1"的数目是偶数,校验位为"1",如果"1"的数目是奇数,校验位应为"0";3)偶校验 (even parity):如果字符数据位中"1"的数目是偶数,则校验位应为"0",如果是奇数则为"1"。4)mark parity:校验位始终为1;5)space parity:校验位始终为0。

视觉工具库:

  1. OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉机器学习软件库,可以运行在LinuxWindowsAndroidMac OS操作系统上。 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成。同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。
  2. SimpleCV代表简单计算机视觉,它是一个易于使用的Python框架,将开源计算机视觉库和用于解决问题的算法捆绑在一起。 它的目标是使程序员更容易开发计算机视觉系统,从而简化和简化许多最常见的任务。 
  3. OpenVis3D:开源3D计算机视觉库。目的是提供一个高效的3D计算机视觉库,用于图像和视频处理。它包括深度立体匹配、光流(运动)估计、遮挡检测和运动平台估计。
  4. StereoView 是一个立体可视化和标定工具。
  5. Eigen是可以用来进行线性代数、矩阵、向量操作等运算的C++库,它里面包含了很多算法。
  6. OpenBLAS是一个开源的线性代数库。
  7. PETSc是科学计算可移植扩展工具包。
  8. Open3D是一个开源库,支持快速开发和处理3D数据。

3D视觉:

  1. https://i-blog.csdnimg.cn/blog_migrate/c9905b9823177d6e10a362b8170b73e3.png

OX上不同点的投影在右平面上形成一条线(I')。 我们称之为对应于点x的极线。 这意味着,要找到右侧图像上的点x,只需沿着这个极线搜索。它应该在这一条线上的某个地方(这样的话,要找到其他图像中的匹配点,不需要搜索整个图像,只需沿着极线搜索,因此提供了更好的性能和准确性)。 这被称为极线约束(Epipolar Constraint)。同样,所有的点在其他图像中都会有相应的极线。 平面XOO'被称为对极平面(Epipolar Plane)。

  1. 立体匹配也称作视差估计(disparity estimation),或者双目深度估计。 其输入是一对在同一时刻捕捉到的经过极线校正的左右图像和。而它的输出是由参考图像中每个像素对应的视差值所构成的视差图 d 。
  2. 点结构光法是简单的三角法。点结构光法的接收方向是不可变的。当实现光栅式平面扫描时,光源和探测是同步移动的。单束激光打在物体表面,由摄像机摄取其反射光点。每次只能处理一点,测量速度慢。
  3. 网格结构光DOE通常用于传感探测,其图案由一系列平行的横线和竖线组成,通常是把一个大正方形分成若干个大小相等、均匀排列的小正方形。激光波长和网格数量、角度都可以由用户指定。
  4. 点云配准(Point Cloud Registration)指的是输入两幅点云 (source) 和 (target) ,输出一个变换使得和的重合程度尽可能高。

视觉算法:

  1. 视觉伺服,一般指的是,通过光学的装置和非接触的传感器自动地接收和处理一个真实物体的图像,通过图像反馈的信息,来让机器系统对机器做进一步控制或相应的自适应调整的行为。
  2. 图像配准就是将同一个场景的不同图像转换到同样的坐标系统中的过程。这些图像可以是不同时间拍摄的(多时间配准),可以是不同传感器拍摄的(多模配准),可以是不同视角拍摄的。. 这些图像之间的空间关系可能是刚体的(平移和旋转)、仿射的(例如错切),也有可能是单应性的,或者是复杂的大型形变模型。
  3. 端到端的学习:就是不经过复杂的中间建模过程,从输入端到输出端会得到一个预测的结果,这个预测的结果与标记的真实数据之间会进行计算,得到误差结果。然后我们采用比如梯度下降的方法使得误差结果减少,模型最终达到收敛,输出最终的结果,则就是端到端的学习过程。
  4. 随着深度学习的发展,语义分割技术得到很大的进步,基于卷积神经网络的语义分割方法与传统的语义分割方法最大不同是,网络可以自动学习图像的特征,进行端到端的分类学习,大大提升语义分割的精确度。
  5. 卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。
  6. 基于3D立体靶标进行摄像机参数标定时将一个3D立体靶标放置在摄像机前面,靶标上每一个小方块的角点均可作为特征点。
  7. 交比亦称非调和比。是分式线性变换的一种不变量。
  8. 图像径向畸变是图像像素点以畸变中心为中心点,沿着径向产生的位置偏差,从而导致图像中所成的像发生形变。

31.边缘检测的目的是在保留原有图像属性的情况下,显著减少图像的数据规模。Canny 的目标是找到一个最优的边缘检测算法,最优边缘检测的含义是:

(1)最优检测:算法能够尽可能多地标识出图像中的实际边缘,漏检真实边缘的概率和误检非边缘的概率都尽可能小;

(2)最优定位准则:检测到的边缘点的位置距离实际边缘点的位置最近,或者是由于噪声影响引起检测出的边缘偏离物体的真实边缘的程度最小;

(3)检测点与边缘点一一对应:算子检测的边缘点与实际边缘点应该是一一对应。

自主移动机器人基础知识包括轮式移动运动学建模、导航规划、环境感知、里程估计和自主定位等核心技术。 1. 轮式移动运动学建模:轮式移动机器人是一种常见的移动机器人类型,它通过控制轮子的转动来实现运动。轮式移动运动学建模是描述机器人运动的数学模型,可以通过控制轮子的速度和方向来控制机器人的运动。 2. 导航规划:导航规划是指机器人在未知环境中确定路径并实现自主导航的过程。它涉及到路径规划、避障和路径跟踪等技术,通过使用传感器获取环境信息,并结合地图和定位信息,机器人可以规划出一条安全有效的路径并实现自主导航。 3. 环境感知:环境感知是指机器人通过传感器获取周围环境的信息。常用的环境感知传感器包括激光雷达、摄像头、超声波传感器等。通过感知环境,机器人可以获取障碍物的位置、形状和距离等信息,从而进行路径规划和避障。 4. 里程估计:里程估计是指通过分析机器人轮子的转动信息来估计机器人的位置和姿态。常用的里程估计方法包括编码器和惯性测量单元(IMU)等。里程估计可以用于机器人的自主定位和导航。 5. 自主定位:自主定位是指机器人在未知环境中准确确定自身位置的能力。常用的自主定位方法包括全局定位和增量式定位等。全局定位通过使用地图和传感器信息来确定机器人的位置,而增量式定位则通过分析机器人的运动信息来估计位置的变化。 通过学习这些基础知识和方法,可以为学习者开展机器人自主移动方面的应用和研究奠定基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值