近日复习robotik(机器人技术/机器人学),以应对考试。 刚才心血来潮,试图整理了一下复习的内容。
首先第一章,导论
Was ist Robotik? Die Robotik befasst sich mit der Entwicklung und Steuerung von Robotern und umfasst Teilgebiete der Informatik (insbesondere der Künstlichen Intelligenz), der Elektrotechnik und des Maschinenbaus. Ziel der Robotik ist es, durch Programmierung ein gesteuertes Zusammenarbeiten der Roboter-Elektronik und Roboter-Mechanik herzustellen. (aus Wikipedia) 什么是机器人学? 机器人学致力于机器人的发展和控制,并包括信息学(尤其是人工智能),电气工程学和机械工程的子领域。机器人学的目标是,通过编程建立机器人电子设备和机械设备的可控合作。
那么,到底什么是机器人呢? 目前比较统一的说法是,机器人是可重复编程的,多功能的可操纵器。(reprogrammable multifunctional manipulator)
工业机器人的主要任务: 连接 (包括焊接,粘连等) 加工 (包括打磨,抛光,等) 涂层 (包括上漆等) 组装
第二章 工业机器人的构造(Aufbau von Industrierobotern) 从第一章工业机器人的主要任务可以看出,机器人主要是通过对作业部/Endeffektor(如机器手)的运动控制来完成任务的。也就是说,核心的内容就是如何实现对作业部运动的良好控制。 现在就说说工业机器人的主要构件。 Roboterarm 机器手 Anbieten/Motoren 动力机构 通常也叫执行部(Aktoren) Sensoren 传感器 Endeffektor 终端作业部 Steuerung 控制 Bedienpanel 控制面板 Anwendungsrechner mit Software 带软件的应用计算机
要想机器人运动起来,就必须要有动力。下面介绍Aktoren (Anbiete/ Motoren)部分。常用的动力包括: 1,气动 Pneumatischer Antrieb 优点:反应时间快 schnelle Reaktionszeit;便宜 kostenguenstig;组装简单 einfacher Aufbau 缺点:因为空气的可压缩,定位不准;太吵;没法控制运动速度。 适合:快速工作循环和力量小的小机器人 kleinere Roboter mit schnellen Arbeitszyklen und wenig Kraft 2,液压 Hydraulisch Antrieb 优点:力量极大;中等的速度。 缺点:额外的空间给液压设备;吵闹;污染风险;定位能力和反应时间受到油的粘性的限制。 3,电动 多用于伺服马达(servomotoren) 优点:紧凑 kompakt;旋转角度和扭力矩的易控性;很高的定位能力。 缺点:非常小的力量 relativ wenig Kraft; 速度不快 适合:各种小机器人 4,压电 非常紧凑,非常高定位能力,但是很小的移动范围。适合微型控制件。
而要将动力机构的动力传递到作业部,就需要传动装置。接下来介绍机器手的传动装置,关节(gelenk)。 最重要的四种关节: 1,Rotationsgelenk 旋转关节 类似肘部 2,Lineargelenk 线状关节 只能沿关节方向伸缩,不能旋转 3,Torsionsgelenk 扭转关节 4,Revolvergelenk 左轮关节
在前文有提到,机器人学的一个核心的内容就是如何实现对作业部运动的良好控制。而每个关节都是可以运动的,每个关节都有自己的传动自由度(Getriebefreiheitsgrade),用g来表示。而一个物体(机器手)相对于一个固定的坐标系,其运动的自由度,用f来表示。在3D空间内,一个物体的状态包括:位置(Position, 3 unabhaengige Werte)和方向(Orientierung, 3 unabhaenigige Werte)。对于一个可以完全自由运动的物体而言,f=6。也就是说,用6个独立的值就可以完整表述一个物体在空间中的状态。即一个物体在空间的状态对应于一个六元组。有了完整精确的对状态进行描述的数学表示后,所有的运动控制都将建立在这个数学表示基础上。
第三章 运动学基础(Grundlagen der Kinematik) 上一章提到了用6个独立的值就可以完整表述一个物体在三维空间内的状态。在这一章则介绍到底如何得到这些值,以及如何用这些值反应物体在空间的运动。 首先要建立三维空间的坐标系。坐标系可以分为2种:BKS和OKS。BKS又叫Weltkoordinanten/Rastsystem,以一个固定的点为原点,XYZ三个坐标轴也是固定的。描述的是物体在三维空间中的绝对位置。而OKS,则是以某个物体(坐标物体)为坐标原点,以该物体的方向为坐标轴。描述的是物体在三维空间中相对坐标物体的相对位置。
按右手法则约定坐标轴和角度方向:拇指为X,食指为Y,中指为Z,右手手握方向为正。
由此可以得到某个物体在三维空间的状态为(x,y,z,alfa1,alfa2,alfa3)
Roll-Pitch-Yaw 任何旋转运动都可以分解成为绕三个坐标轴的旋转运动。也就是分解成为Roll-Pitch-Yaw。这三个旋转可以分别用一个3X3的矩阵来表示。而旋转的合成可以用3个矩阵的乘法来计算。不过需要注意的是,对于BKS而言,矩阵乘法是从右向左,就是说最后完成的旋转在最左边。而OKS正好相反,是从左向右。这就是“绝对”和“相对”的区别。
而一个物体的状态同样的可以用一个4X4的矩阵来表示。其中左上角的3X3表示方向,最后一列的头三个数字表示的是空间位置(即,(a14,a24,a34)为(x,y,z))。很明显,六元组的表示方法,描述简单,但是不方便计算物体的运动,如方向的旋转。而4X4矩阵的表示方法,信息有冗余,但是非常方便计算物体的运动。
下面考虑一个新的问题,如何一个物体绕给定轴旋转旋转给定角度后的状态。例如绕(0,0,2)这个向量旋转60°。 对于这个问题,用4X4矩阵就非常方便计算。
再进一步,如果一个复杂的有多个旋转组成的操作又该如何计算呢? 这里又引入了一个和复数概念接近的四元数(quaternion)。利用四元数可以非常方便的计算刚体在三维空间的复杂运动。以绕V(1,0,0)旋转θ为例,Q = (Cosθ/2, Sinθ/2(1,0,0)) = (Cosθ/2, Sinθ/2, 0, 0)。
今天先写到这里,这个礼拜会陆续整理完成整个讲座内容。 顺便补充一下,日本在之前定下机器人发展战略之后,国家投入大量的资源在机器人领域,将其作为战略性的行业。在整个机器人研究领域,尤其是类人服务型机器人领域日本真的是非常的强大。无论是本田还是丰田又或是索尼都开发出世界领先的机器人。回头看看我们,哎,年轻人宝贵的精力和创造力都只是为了换取一堆堆的钢筋水泥。就算是国家投入资金发展高科技,换来的不是实在的技术,而是一堆创造性高度极低的“废纸”。到头来,估计还是得花钱向人买技术。悲哀!真是悲哀啊!
上一次复习到第三章
这一次将复习第四到第六章,这三章是robotik的重点。
第四章 直接运动学(Direkte Kinematik)
一个物体在BKS里的状态(Stellung)能够被清楚的描述。
旋转轴是已知的。
各肢体(Armglieder)可以利用转换矩阵相互描述。
本章将介绍如何根据各关节的变量值确定终端作业部(Endeffektor)在BKS中的位置。
(Direkte Kinematik/ Vorw?0?1rtsrechnung liefert zu Gelenkwinkel die Endeffektorstellung.)
(我的思考:在机器人基座相对BKS位置和各关节变量已知的情况下如何计算终端作业部相对于BKS的位置?尤其是对于既有线性关节又有旋转关节的机器手来说,如果从基座开始,一个一个关节的位置按照六元组的模式计算的话会特别的麻烦。原因主要有对于不同的关节需要不同的计算公式等。而如果全部关节采用相对BKS的矩阵表示的话,又因为不知道各关节相对BKS的位置,而没办法由各关节变量直接得到。)
基本思路:
1,每个肢体都有各自的OKS。
2,对于每2个由关节相连接的肢体存在将各自所属的坐标系进行转换的转换矩阵。
3,对于机器人基座(Roboterbasis)来说,存在一个相对于BKS的转换矩阵。
4,对于终端作业部存在一个相对于最后一个肢体的转换矩阵。
5,将经由所有肢体的转换矩阵链接起来就可以计算出终端作业部在BKS中的位置。
Denavit-Hartenberg-Regeln DH规则
根据ai, αi, di 和 θi四个变量得到变换矩阵。具体规则就不细说了。总之前推算法(Vorw?0?1rtsrechnung)提供了一个唯一的描述终端作业部相对于BKS的状态的变换矩阵。DH规则使得用四变量描述变换矩阵成为可能。
第五章 逆向运动学(inverse Kinematik/ Rückw?0?1rtsrechnung)
前一章是根据各关节的已知变量值求的终端作业部的状态。而在机器人学的实际应用中,通常需要根据终端作业部的状态来计算各个关节的变量值。例如,某个焊接机器手,要将终端作业部从当前作业点移动到下一作业点,就需要计算到达目标作业点时,各个关节的变量值是多少。
Vorw?0?1rtsrechnung : Bestimmen der Lage des Endeffektor für gegebene Gelenkparameter.
Rückw?0?1rtsrechnung: Bestimmen der Gelenkparameter für gegebene Endeffektorstellung (Position und Orientierung).
很明显,对于传动自由度(Getriebsfreiheitgrad) 大于6的机器人来说,在工作区域内,只要不处于边界就都有多个逆推算法的解。
第六章 逐步逆向运动学
已知:想要的状态变化(beabsichtigte ?0?2nderung der Stellung)
求: 关节变量值的变化(erforderliche ?0?2nderung der Gelenkparameter)
|