【《某辅助康复机械手的轨迹规划与仿真分析案例》5200字】_第1页
【《某辅助康复机械手的轨迹规划与仿真分析案例》5200字】_第2页
【《某辅助康复机械手的轨迹规划与仿真分析案例》5200字】_第3页
【《某辅助康复机械手的轨迹规划与仿真分析案例》5200字】_第4页
【《某辅助康复机械手的轨迹规划与仿真分析案例》5200字】_第5页
已阅读5页,还剩10页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第页某辅助康复机械手的轨迹规划与仿真分析案例目录TOC\o"1-3"\h\u11988某辅助康复机械手的轨迹规划与仿真分析案例 153831.1轨迹规划方法 1262031.2多项式插值法 2258651.2.1三次多项式插值法 2219391.2.2五次多项式插值法 4121681.3轨迹仿真 622341.3.1ADAMS软件介绍 6190731.3.2SolidWorks与ADAMS联合仿真 7227301.3.3adams和simulink联合仿真 10轨迹规划是确定机器人的操作臂或关节点在运动过程中的路径以及在运动过程中各点的速度和加速度的一项任务。对于本文中拟研发的康复机械手,需要该机械手完成抓握,抓取等简单日常生活动作,用以辅助中风或手部残疾病人的日常生活,本章选取抓握动作,对进行抓握动作的手指轨迹进行规划与仿真,检测建立的模型是否能够较好的实现抓握功能。1.1轨迹规划方法根据规划空间的不同,机械臂的轨迹规划方法可以划分为关节空间轨迹规划与笛卡尔空间轨迹规划两种。这两种轨迹规划方法都可以实现机械臂的轨迹规划,它们各有自己的适用情形:(1)关节空间规划:关节空间规划方法是以关节划分,研究每个关节的角度轨迹变化,从而实现轨迹规划的方法。用机械臂各关节转角关于时间的函数来规划机械臂轨迹得出机械臂的运动曲线函数。在关节空间规划方法下,关节空间与直角坐标空间并不存在连续的对应关系,因此机器人操作臂奇异性现象并不会发生,所以关节空间规划方法在机械臂的实时控制方面具有不可代替的优点。在其他控制方法中,也会经常出现关节空间规划的身影。关节空间规划也有其缺点,由于它针对的是各关节转角相对于时间的变化,所以并不能非常直观的体现操作臂或者是关节的具体运动,而能直观地获得空间位置。同时采用该方法,机器人操作臂所含有的关节数越多,后续就越难对机器人进行轨迹规划。(2)笛卡尔空间轨迹规划:笛卡尔空间轨迹的路径规划方法的原理是通过笛卡尔位置和姿态关于时间的函数来描述运动轨迹。笛卡尔空间轨迹规划可以确定各个路径点之间的空间运动路径形状,因此相较于前一种方法,笛卡尔空间轨迹规划能以一种更加直接形象的方式将机械臂的末端位置体现出来,因此能够更加清晰的推导控制过程。当然这种方法也有其不足之处。如果在笛卡尔空间中进行轨迹规划,要实时地对关节量进行逆解从而来实现对机械臂速度和加速度的控制,最终求解出路径上的点对应的各个关节的角度,针对那些自由度较多的系统,运动学求逆解需要极为庞大的工作量,因此如果是在需要实时的对轨迹进行跟踪控制的场合,笛卡尔空间轨迹规划可能不是最佳选择。因此对于本文中的模型,采用关节空间轨迹规划的方法。1.2多项式插值法机械臂的运动从实质上来看是由若干个连杆的运动组成的,而连杆的运动又由驱动关节来驱动,各个驱动关节的转动结合起来最终实现了机械臂的整体运动。在关节空间轨迹规划方法中,某一关节轨迹的起点和终点分别定为该关节在运动起始前的角度和运动后的角度,在这段轨迹的起点与终点之间,如果不要求中间轨迹,只对起点和终点有要求,那么只要采用线性插值法就可以满足规划要求。但当关节轨迹需要经过多个角度,我们可以用多项式插值的方法对这段轨迹进行插值计算,通过多项式插值算法保证关节的运动速度和加速度曲线平滑,从而实现对机械臂的精准操作。其中如果仅仅需要得到比较平滑的关节运动的路径和速度曲线,我们可以选择三次多项式规划路径。如果在路径和速度曲线平滑的基础上,系统还要求保证加速度曲线的平滑,则需要采用五次多项式。另外我们可以采用更高阶次的多项式对机械臂轨迹进行规划来满足系统更多的要求。需要注意的是,轨迹规划所采用的多项式阶次越高,轨迹规划虽然会更精确,但工作量也随之剧增。下面我们针对单独某一关节进行三项式与五项式轨迹规划的研究。1.2.1三次多项式插值法三次多项式插值法的待定系数为a0,a1,a2θ在该算法中,用θ0来表示某一段关节轨迹的运动起点,用θf来表示这段关节轨迹的运动终点。用v0&θ将上式代入式(),可以得到三次多项式插值算法各个待定系数的值。其中为了计算的简便性,此处取t0将待定系数代回式(),得到轨迹规划如下:接下来举例验证三次多项式插值算法轨迹规划的正确性。取机械手大拇指的关节一,该关节在机械手进行抓握动作时,令其关节弯曲角度从运动初始的0度到最后结束时的45度。将这两个角度作为关节运动轨迹的起始点与终点,并在预订轨迹中间取三个中间点角度与速度,运动时间暂定为2秒。得到:起止位置:[0,10,20,30,45]起止时间:[0,0.5,1,1.5,2]起止速度:[0,2.2,1.5,7,9.5]通过三次多项式插值算法代码,在MATLAB中运行后得到结果如下:分析得到的关节运动位置、速度、加速度曲线不难得到,三次多项式插值算法的确能够保证连续的位置和速度,生成平滑的,不存在跳变的位置曲线,速度曲线较为平滑,但能保证连续。但是并不能保证加速度曲线的平滑性。关节加速度的跳变会导致机械臂的驱动系统受损,给系统带来机械损伤。为提高系统安全性,机械臂系统不希望角加速度曲线发生跳变。1.2.2五次多项式插值法相对于三次多项式插值算法,五次多项式插值算法能够得到更加平滑的加速度曲线。五次多项式插值法有六个待定系数,能够同时约束关节运动起点和目标终点的角度和角速度,设关节角满足以下式子:θ在该算法中,用θ0来表示某一段关节轨迹的运动起点,用θf来表示这段关节轨迹的运动终点。用v0&θ将上述约束条件代入式(),可以求得六个未知数的值。其中为了计算的简便性,此处取t0&由上式得到轨迹规划。下面我们依然采用举例的方法验证算法的正确性。仍然取机械手大拇指的关节一,该关节在机械手进行抓握动作时,关节弯曲角度从运动初始的0度到最后结束时的45度。将这两个角度作为关节运动轨迹的起始点与终点,并在预订轨迹中间取三个中间点角度与速度,运动时间暂定为2秒。得到:起止位置:[0,10,20,30,45]起止时间:[0,0.5,1,1.5,2]起止速度:[0,2.2,1.5,7,9.5]起止加速度:[0,22.5,22.5,22.5,0]通过五次多项式插值算法代码,在MATLAB中运行后得到结果如下从得到的关节运动位置、速度、加速度曲线可以看出,在两种方法的比较中,使用五次多项式插值算法进行轨迹规划可以获得更优的加速度曲线。虽然从计算量上来看,三次多项式插值法的计算量更小,但是由于进行的并不是实时规划,这些计算量的差别几乎可以忽略不计。因此本文轨迹规划采取五次多项式插值法,之后再分别规划其余手指关节的轨迹,过程不再一一给出。1.3轨迹仿真1.3.1ADAMS软件介绍ADAMS是一款具有虚拟样机功能的分析软件。ADAMS凭借着其优秀的仿真性能,受到了众多用户的青睐,由此迅速在CAE领域中得到普及。作为一款机械系统动力学仿真工具,ADAMS在重工业、航空航天、船舶海洋等多个行业被广泛应用。通过使用ADAMS,用户可以通过进行仿真,对系统进行动力学性能的评估。其出众的“虚拟样机”功能可以在3D环境中展现不同条件下系统的运动。ADAMS同时还提供三维动画来反映系统的运动,方便工程师评估系统或零件的结构、驱动性能等是否符合要求,从而优化系统结构,得到更加满意的产品。下面简单介绍ADAMS系列产品中的核心模块:用户界面模块。ADAMS/Views采用了交互式图形环境。该模块集成了多种功能,如曲线图处理、图形建模、仿真计算、结果分析等。在实体建模方面,ADAMS/Views拥有的Parasolid内核为用户提供了庞大的零件库、约束库和图形库等,方便用户建立不同的模型并为其添加不同的约束和函数。值得一提的是,ADAMS/Views还拥有自己的高级编程语言,支持C++指令并且具有丰富的宏命令库。通过编程语言用户能够更加方便快捷的对整个建模仿真过程进行操控。ADAMS/Views还更新了动画/曲线图窗口,可以将模型的曲线图和动画在同一界面中显示。同时通过几何定位功能,用户能够精确定位模型的位置。接下来对于康复机械手的运动轨迹仿真就使用ADAMS/Views来进行。1.3.2SolidWorks与ADAMS联合仿真将在SolidWorks中建模完成的机械手模型导入ADAMS,实现联合仿真的具体步骤为:下载安装适配系统的相同版本的ADAMS、SolidWorks,或者ADAMS的版本高于SolidWorks。将建好的模型用英文命名并保存在英文路径下。这样做的原因是ADAMS软件不支持中文文件名和中文路径。将模型保存为Parasolid格式,后缀为x_t。打开ADAMS,在ADAMS中导入之前保存的x_t文件。选取对应模型后将文件保存在ADAMS的工作路径下。由以上步骤,可以将本文第二章中建立的机械手模型导入ADAMS,如图所示接下来为五个手指添加运动副。当机械手进行抓握时,手指的运动关系是转动,故为手指添加转动副,并且为每一个转动副添加转动驱动。当五个手指全部添加上转动副和转动驱动后的模型如下图所示。五个手指总共拥有十五个转动副如图所示。有十五个转动驱动,如下图所示。为了监控机械手运动过程中各个关节的角度和角速度变化,为每一个关节的转动副添加测量。

其中DA代表大拇指,SHI代表食指,ZHONG代表中指,WU代表无名指,XIAO代表小拇指。1、2、3分别代表各个手指的三个关节。如图所示,为DA1添加测量单元。可以根据施加不同的驱动来判断测量环节有没有选择正确。这里对于DA1旋转关节,施加了15d*time的旋转驱动,仿真时间为2s。通过该测量单元可以得到DA1关节的测量图线,发现测量单元正确的测量出了关节的旋转角度。如图所示同理,建立起机械手所有关节的角度和角速度测量。其中角速度测量界面中选择相对角速度特性,验证方法与上文中提到的相同。按照机械手要抓握的物体直径大小,在ADAMS中调整各个驱动单元的数值大小。并对系统进行仿真,仿真时间依然选择为2s,得到仿真图像如图所示:通过分析观察仿真过程可以得到,在实现抓握的过程中,各个关节的角度和角速度变化比较平滑,观察各关节的测量单元,也能够得到比较平滑的角度和加速度变化曲线,由此可以说明系统具有较优性能,机械手可以较好的实现抓握功能。为了使机械手能够抓握不同尺寸的物体,本文采取adams与simulink的联合仿真进一步验证机械手性能,1.3.3adams和simulink联合仿真为了能从adams中导出机械手模型并且适配simulink,需要确定机械手系统的输入输出变量。其中输入变量是指给adams接收到的由Matlab传递的变量,输出变量是指机械手系统在输出过程中需要监测其变化的变量。点击adams单元中的创建状态变量,建立起机械手五个手指的角度和角速度状态变量作为系统的输出变量。其中a1-a15代表关节角,v1-v15代表关节角速度,编号1-3属于大拇指,编号4-6属于食指,编号7-9属于中指,编号10-12属于无名指,编号13-15属于小拇指。如下图所示:为了使建立的输出变量有意义,将输出变量与之前在adams中创建的测量单元一一对应建立联系,在之前定义的输出变量界面的F函数空格中填上:.模型名称.测量单元名称。如下图所示:为了能让机械手抓握不同直径的物体,还需要建立机械手系统的输入变量。通过与上文相同的方法建立输入变量t1-t15。并且与之前建立好的驱动motion1-15分别建立联系,在motion1对话框中,类型选择加速度。这里也可选择其他单位,本文中以加速度为例。在函数框中,删除原始函数,并修改为VARVAL(.BISHE.t1)。即将motion1与输入变量t1建立起联系。如下图所示:依次建立十五个输入变量的联系,有了系统的输入和输出变量,接下来就可以对adams模型进行导出。进入adams的机械系统导出界面,在输入信号一栏中选择之前设置好的变量t1-t15,在输出信号一栏中选择变量a1-a15,v1-v15。目标软件选择MATLAB,在adamssolver一栏中选择FORTRAN,FORTRAN是adams对各软件支持性最好的书写语言。之后adams的工作路径下便会生成一个matlabcode文件,可以使用matlab打开。用matlab打开adams导出的机械手模型的步骤如下:打开matlab,将adams的工作路径添加到matlab的工作路径下。在工作区输入导出模型名称,让matlab读取模型数据。(3)在工作区输入adams.sys,回车运行。当完成以上步骤后,matlab会打开simulink并在其中生成机械手系统,如图所示:左边两个红色模块在仿真中用不到,可以删除。双击黄色模块,在MSCsoftware中可以对仿真进行设置,本文中黄色模块的Animationmode选项选择interactive。其中batch选项为只在simulink内部进行计算。而interactive选项可以在simulink运行的过程中打开adams

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论