5 仿真分析
5.1 仿真流程图
基于ADAMS的建模功能并不强大,只能建一些简单的模型。所以本文先采用专业的CAD软件Pro/E 建立机械手的机构模型, 然后通过Mechanism/Pro口模块导入ADAMS中进行运动学仿真。整个仿真流程如图1所示:
图1 仿真计算流程
5.2 模型建立
5.2.1利用Pro/E建立机构模型
图2即为在CAD软件Pro/E中所建立的机械手机构模型。假设各杆件质量分布匀,且为刚体,图中可以清楚地看到该机械手由机座、腰部、大臂、小臂、手腕以及夹持器几部分构成,其中腰部与机座之间、大臂与腰部之间、小臂与大臂之间分别通过旋转关节连接。此三个关节的作用是使与其连接的杆件构成相对转动,即机械手的三个自由度,它们决定了机械手末端在空间中的位置,机械手的腕部有两个旋转关节连接,包含滚转和俯仰共两个自由度,他们决定了机械手在空间中的姿态。机械手的技术参数如表1所示。
图2 机械手模型
表1 机械手的技术参数
关节数
|
关节类型
|
关节变量范围
|
1
|
R(腰部回转)
|
-130°~130°
|
2
|
R(大臂俯仰)
|
-45°~135°
|
3
|
R(小臂俯仰)
|
-180°~0°
|
4
|
R(腕部回转)
|
-180°~180°
|
5
|
R(腕部俯仰)
|
-225°~45°
|
该机械手可看作一个开式运动链,由连杆通过转动关节串联而成。开链的一端固定在地面基座上,另一端是自由的,安装着工具(或称为末端执行器),用来完成各种作业。整个机械手的运动是由分别安装在每个旋转关节上的步进电机驱动,经谐波减速器减速后带动连杆转动,只要给定各个关节的角度值,机械手就可以以一定姿态运动到指定位置。如果给定机械手初态和末态位置坐标,也可以测出机械手各关节角度值及其随时间的变化规律曲线。在创建3D模型之前,最好定义各种材料的零件的模板。在建模过程中,严格按照零件材料选用模板,可以减少输入密度的工作。对于各种电机,传感器等多种材料的不见,需要计算出密度并输入相应的模型中。下面给出机械手的装配图。如图3所示:
图3 机械手装配图
在装配过程中,对有运动关系的零件之间,在Pro/Engineer中使用关节装配方式,可以省去部分在ADAMS中工作。
在添加约束的过程中,需要详细的定义各种运动副,本文中主要是转动副和旋转副。
5.2.2 ADAMS仿真模型等效转换
我们利用Pro/E 与ADAMS 软件的接口Mechanism/Pro,将机构模型转入ADAMS中。由于Pro/E和ADAMS来自两个不同的公司,两者间属“有缝连接”,两者间不同的图形格式在转换时一些图形元素可能会丢失,此时需要返回并做相应的修改,进一步完善模型,确保无误后添加约束及驱动。对于本论文中的机械手主要包括固定副,关节的旋转副及驱动,各部件的约束关系尽可能与实际系统相一致,最终形成系统的虚拟样机。此时的样机包含两部分,一部分为大地(固定件)模型,另一部分为运动件模,各关节的连接关系可以在ADAMS的信息窗口中看到。接下来就可以进行仿真分析了。
5.3 ADAMS仿真
5.3.1仿真设置
本次仿真主要观察在给定机械手五个关节角的值后,让机械手的末端达到一定位姿,要求机械手的前三个关节先动,之后腕部关节再旋转调整姿态。首先ADAMS定义的运动可以是与时间有关的位移、速度和加速度,默认状态下运动的速度定义为常数。我们可以通过三种方法自定义运动值:
(1)输入移动或旋转的速度。在默认情况下,输入的转速单位为度/单位时间,输入的移动单位为长度/单位时间。
(2)使用函数表达式。
(3)输入自编函数子程序的传递参数。还可以编一个子程序定义非常复杂的运动,此时,在参数栏输入的是传递给子程序的参数,本次仿真使用的是第二种方法,输入函数。ADAMS提供了很多函数,这里使用五个STEP函数来定义五个旋转副的运动。具体如下:
Motion1_jizuo_yao:step(time,0,0,1,90d)
Motion2_dabi_yao:step(time,0,0,1,45d)
Motion3_xiaobi_dabi:step(time,0,0,1,-90d)
Motion4_wanl_xiaobi:(time,1,0,2,-90d)
Motion5_wan2_wan1:(time,2,0,3,-135d)
设定仿真时间为3 S,仿真步数为200。