四自由度机器人手臂工作空间分析

  • 格式:doc
  • 大小:325.50 KB
  • 文档页数:36

四自由度机器人手臂设计---工作空间分析050696135 张东红指导老师:刘铁军讲师第1章绪论1.1 机器人的概念我们一直试图为自己的研究对象下一个明确的定义----就象其他所有的技术领域一样----始终未能如愿。

关于机器人的概念,真有点像盲人摸象,仁者见仁,智者见智。

在此,摘录一下有代表性的关于机器人的定义:牛津字典:Automation with human appearance or functioning like human科幻作家阿西莫夫(Asimov)提出的机器人三原则:第一,机器人不能伤害人类,也不能眼见人类受到伤害而袖手旁观;第二,机器人必须绝对服从人类,除非人类的命令与第一条相违背;第三,机器人必须保护自身不受伤害,除非这与上述两条违背;日本著名学者加藤一郎提出的机器人三要件:1.具有脑、手、脚等要素的个体;2.具有非接触传感器(眼、耳等)和接触传感器;3.具有用于平衡和定位的传感器;世界标准化组织(ISO)机器人是一种能够通过编程和自动控制来执行诸如作业或移动等任务的机器。

细细分析以上定义,可以看出,针对同一对象+所做的定义,其内涵有很大的区别,有的注重其功能,有的则偏重与结构。

这也就难怪对同一国家关于机器人数量的统计,不同资料的数据会很大差别。

虽然现在还没有一个严格而准确的普遍被接受的机器人定义,但我们还是希望能对机器人做某些本质性的把握。

首先,机器人是机器而不是人,它是人类制造的替代人类从事某种作业的工具,它只能是人的某些功能的延伸。

在某些方面,机器人可具有超越人类的能力,但从本质上说机器人永远不可能全面超越人类。

其次,机器人在结构上具有一定的仿生性。

很多工业机器人模仿人的手臂或躯体结构,以求动作灵活。

海洋机器人则在一定程度上模仿了鱼类结构,以期待得到最小的水流阻力。

第三,现代机器人是一种机电一体化的自动装臵,其典型特征之一是机器人受微机控制,具有(重复)编程的功能。

1.2 机器人的基本组成和分类机器人由机械部分、传感部分、控制部分三大部分组成。

这三大部分可分成驱动系统、机械结构系统、感受系统、机器人—环境交互系统、人机交互系统、控制系统六个子系统。

1.驱动系统要使机器人运行起来,需给各个关节即每个运动自由度安臵传动装臵,这就是驱动系统。

2.机械机构系统机器人的机械结构系统有机身﹑手臂﹑末端操作器三大件组成。

每一大件都有若干个自由度,构成一个多自由度的机械系统。

3.感受系统它由内部传感器模块和外部传感器模块组成,获取内部和外部环境状态中有意义的信息。

智能传感器的使用提高了机器人的机动性﹑适应性和智能化的水准。

人类的感受系统对感知外部世界信息是极其灵巧的,然而,对于一些特殊的信息,传感器比人类的感受系统更有效。

4.机器人-环境交互系统机器人-环境交互系统是实现机器人与外部环境中的设备相互联系和协调系统。

机器人与外部设备集成为一个功能单元。

如加工制造单元﹑焊接单元﹑装配单元等。

当然,也可以是多台机器人﹑多台机床或设备,多个零件存储装臵等集成为一个去执行复杂任务的功能单元。

5.人--机交互系统人—机交互系统是人与机器人进行联系和参与机器人控制的装臵。

6.控制系统的任务是根据机器人的作业指令程序以及从传感器反馈回来的信号,支配机器人的执行机构去完成规定的运动和功能。

如果机器人不具备信息反馈特征,则为开环控制系统;具备信息反馈特征,则为闭环控制系统。

根据控制原理可分为程序控制系统,适应性控制系统和人工智能控制系统。

根据控制运动的形式可分为点位控制和连续轨迹控制。

按不同的分类方式,机器人可以分为不同的类型。

下面给出几种常用的分类方法:1.按技术特征来划分,机器人可以分为第一代机器人、第二代机器人和第三代机器人。

2.按控制类型来划分,可分为以下几种:(1)伺服控制机器人(2)非伺服控制机器人(3)PTP控制机器人(4)CP控制机器人3.按机械结构来划分,可以分为直角坐标型机器人、极坐标型机器人、关节型机器人、SCARA型机器人以及移动机器人。

4.按用途来划分,可分为工业机器人、工业机器人、医疗机器人、海洋机器人、军用机器人、太空机器人、管道机器人、娱乐机器人等等。

1.3 机器人技术的应用研究机器人的最初目的是为了帮助人们摆脱繁重劳动和简单的重复劳动,以及替代人到有辐射等危险环境中进行作业。

因此机器人最早在汽车制造业和核工业领域得以应用机器人技术的不断发展,工业领域的焊接、喷漆、搬运、装配等场合,已经开始大量使用机器人。

第2章工作空间的分析2.1 引言机器人的工作空间就是机器人末端构件上的参考点所能达到的点的集合。

机器人工作空间的大小代表了机器人的活动范围,它是衡量机器人工作能力的一个重要运动学指标。

在机器人的设计、控制及应用过程中,工作空间都是一个需要考虑的重要问题。

例如根据工作空间的要求来确定机器人的结构尺寸,冗余度机器人回避障碍物的动作规划等等,都要考虑机器人的可达空间。

此外也可用工作空间来衡量一个设计中的机器人机构的合理性。

求解机器人的工作空间可以使用解析法,图解法或者数值法,解析法是通过多次包络来确定工作空间边界,虽然可以把工作空间的边界用方程表示出来,但从工程角度上来说,其直观性不强,十分烦琐,一般只适用于关节数少与3的。

图解法也可以用来求解机器人的工作空间边界,得到的往往是工作空间的各类剖截面或剖解线。

这种方法直观性强,但是也受到自由度数目的限制,当关节数较多时必须进行分组处理。

机器人工作空间计算的数值方法是以极值理论和优化方法为基础的首先计算机器人工作空间边界曲面上的特征点,用这些点构成的线表示机器人的边界曲线,用这些边界曲线构成的面表示机器人的边界曲面。

随着计算机的广泛应用,对机械手工作空间的分析越来越倾向与数值方法。

这是因为数值方法可以利用计算机的高速数值运算能力和图形显示功能,方便快捷的得到机器人工作空间的形状。

本文采用数值法,通过对运动学方程来求解机器人工作空间。

2.2 工作空间的参数方程机器人的运动学方程为:00111201x x x x y y y y n n n z z z z n o a p no a p T T T T n o a p -⎡⎤⎢⎥⎢⎥=⋅⋅⋅⋅=⎢⎥⎢⎥⎣⎦(1) 由它的运动学方程可以得到工作空间的参数方程。

式中前三列是末端坐标轴相对基坐标的方向余弦,第四列表示末端坐标系的原点相对于基坐标系的位臵向量。

当给定了机器人的结构参数,工作空间就由广义坐标i q 确定。

由于实际结构和驱动装臵的限制,广义坐标不能任意取值,有一定的范围,即: min max i i i q q q ≤≤(2)如果选末端点P 为参考点,设他在末端坐标系中的齐次坐标为p r ,则:0p n pn r T r =⋅(3)将它展开,即:()()()1p i p i p p i x q y q r z q ⎧⎫⎪⎪⎪⎪=⎨⎬⎪⎪⎪⎪⎩⎭(4)可以把P 点的集合定义为机器人的工作空间,即:min max ()()()p i p p i i i i p i x q r y q q q q z q ⎧⎫⎪⎪=≤≤⎨⎬⎪⎪⎩⎭(5)2.3 利用运动学方程求解利用运动学方程求解其末端参考点相对于基坐标的坐标系,下面为一个典型的运动学方程求解——圆柱坐标臂。

圆柱坐标臂的结构如图2.1,该机械臂有移动—转动—移动三个连杆,它的工作范围是一个空心圆柱建立D —H 坐标系,如图2—1所示,关节变量为123,,d d θ,连杆的坐标变换矩阵为:101110000100(,)0010001T Trans z d d ⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦(6) 222222*********00(,)(,)(,)010020001c s a c s c a s T Rot z Trans x a Rot x πθ-⎡⎤⎢⎥⎢⎥=-=⎢⎥-⎢⎥⎣⎦ (7) 2323310000100(,)0010001T Trans z d d ⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎣⎦(8)222222220012121000100001c s a c s c a s T T T d -⎡⎤⎢⎥⎢⎥==⎢⎥-⎢⎥⎣⎦(9) 2232222232221123230001000001c s d s a c s c d c a s T T T --+⎡⎤⎢⎥+⎢⎥==⎢⎥-⎢⎥⎣⎦(10) 运动学方程为:223222223222001231231000100001c s d s a c s c d c a s T T T T d --+⎡⎤⎢⎥+⎢⎥==⎢⎥-⎢⎥⎣⎦(11)图2.1 圆柱坐标系结构示意图本文设计的是四自由度的机器人手臂,根据以上简单的实例可以求出运动学方程:图2.2 四自由度机器人手臂钳中心到关节4坐标原点的长度,值为600mm。

0T4= A1 A2 A3 A4=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡++++---++++1000s a s a d c -c -s s -c s a c s c s a d s s s s c c s c s sc c c s a c c a c cd s c s c c s s c c -s s c c c 22233423234234232222313423123141423141423122132314231231414231414231 0T 4=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡++++---++++10042s 402s 600c -c -s s -c s c 42s c 402s s 600s s s c c s c s s c c c s c 42c c 402c s 600c s c c s s c c -s s c c c 2322323423423222223123141423141423121231231231414231414231 得工作空间运动学方程:12312312123222223223600402426004024260040242x y z p c s c c c c p s s s c s c p c s s =++=++=-++第3章 编程软件介绍3.1 程序语言介绍Visual C++6.0是Microsoft Visual Studio 6.0家族成员之一,是一个功能极为强大的可视化软件开发工具。

与其他的可视化编程环境(如Visual Basic )一样,Visual C++6.0集程序的代码编辑、编译、连接、调试等功能于一体,给编程人员提供了一个完整、全面而又方便的开发环境,并提供了许多有效的辅助开发工具。

Visual C++基于C\C++,所以它拥有两种编程方式,一种是传统的基于Windows API 的C 编程方式,虽然其代码效率较高,但开发难度与开发工作量也随着正增高,目前使用这种编程方式的用户已经很少;另一种是基于MFC 的C++编程方式,虽然其代码运行效率相对很低,但开发难度小、开发工作量小、源代码效率高,已经成为Visual C++开发Windows 应用程序的主流。