ADAMS自由度以及冗余约束的分析1引言虚拟样机分析软件ADAMS(AutomaticDynamicAnalysisofMechanicalSystems),是对机械系统的运动学与动力学进行仿真计算的商用软件,目前己经被全世界各行各业的数百家主要制造商采用。一个系统通常是由多个构建组成的,各个构件之间的这种约束通常存在某些约束关系,即一个构件限制另一个构件的运动,两个构件之间的这种约束关系,通常称为运动副或者铰链,ADAMS中运动副分为低副、高副和基本副[1][2],这些运动副对构件的自由度进行约束,ADAMS为每个约束列出一个或多个代数约束方程,在实际中,存在着大量的机构由于人为的带入虚约束而导致过约束的情况[3],有时需要通过引入虚约束来增加系统的刚度[4],在定义运动副过程中,往往会出现过约束及冗余约束的情况,文献[5]分析了过约束问题,文献[6]对凸轮机构的冗余情况进行了分析,用一个点线副和一个平行副的组合来代替滑移副来解决冗余约束,但是没有分析具体方法。并联机构具有高精度、高刚度、承载能力大和运动反解简单等特点,成为机器人学者的研究热点[7],自由度小于6的少自由度并联机构,因其驱动部件少、结构简单、控制成本低等特点,一直是国际学术界关注的热点和研究的前沿[8-14],交叉型平面二自由度并联机构属于少自由并联机构家族中的一种。本文对运用基本运动副代替低副约束刚体的自由度,同时不出现冗余约束,进行了详细的分析,总结了避免出现冗余约束的技巧,昀后以交叉型平面二自由度并联机械手为对象,运用上述方法和技巧,详细介绍了在ADAMS中建立其运动学和动力学仿真模型的具体方法和步骤,为样机开发和实时控制系统的研究提供重要的参考。2运用基本运动副约束物体自由度2.1运动副的约束关系一个构件在空间中具有6个自由度,即3个转动自由度和3个移动自由度。不同运动副,限制构件自由度的个数不同,转动副限制构件的5个自由度,只有1个绕转轴转动的自由度,表1给出不同运动副对构件自由度的约束关系表1运动副对自由度约系束关X轴移动Y轴移动Z轴移动X轴转动Y轴转动Z轴转动自由度数目固定副××××××0旋转副×××××√1移动副××√×××1圆柱副××√××√2球铰副×××√√√3胡克铰×××√√×2平面副√√×××√3点-线副××√√√√4线-线副××√√√√4方向副√√√×××3点线副××√√√√4平行副√√√××√4点面副√√×√√√5垂直副√√√√√×52.2基本运动副构建圆柱副对于如图1的长方体,MARKER_1为固结于大地,位置和姿态与原点一致的点,MARKER_2为控制长方体位置和方向的点,姿态和位置与MARKER_1一致,其在空间中有6个自由度,要实现长方体具有绕X轴转动和沿X轴移动两个自由度,即圆柱副,使其绕Y轴转动、沿Y轴移动、绕Z轴转动以及沿Z轴移动将被限制,主要有以下几个步骤:1)添加垂直副约束,限制长方体绕轴转动,在垂直轴选项中选择2Bodies-2Location,实体分别选取长方体和大地,位置分别选取长方体上的Marker_2和大地上的Marker_1,方向选取Marker_1的X轴和Y轴,生成的Marker_3和Marker_4的Z轴与Marker_1的X轴和Y轴一致,如图2,要保证Marker_3与Marker_4的Z轴垂直,长方体绕Marker_1的Z轴的转动将被限制,其只有五个自由度,即绕Marker_1的X、Y轴的转动,和沿Marker_1的X、Y、Z轴的移动.2)添加点线副来限制长方体沿Y和Z轴两个移动自由度,在点线副选项中选择2Bodies-1Location,实体分别选取长方体和和大地,位置选取长方体上的Marker_1,方向选择X轴,生成的Marker_5和Marker_6的Z轴与Marker_1X轴一致,如图3,考虑到1)中垂直轴副约束,长方体只有沿Marker_1的X轴的移动,和绕Marker_1的X、Y轴的转动三个自由度.3)添加垂直轴副来限制长方体绕Marker_1Y轴的转动,选择2Bodies-2Location,实体分别选取长方体和大地,位置分别选取长方体上的Marker_2和大地上的Marker_1,方向选取Marker_1的X轴和Z轴,生成Marker_7和Marker_8的Z轴与Marker_1的X轴和Z轴一致,如图4,要保证Marker_7与Marker_8的Z轴垂直,长方体绕Marker_1Y轴的转动将被限制,考虑到步骤1)、2),长方体剩下两个自由度,即沿Marker_1X轴的移动和绕Marker_1X轴的转动,通过在ADAMS中定义GeneralMotion,选择2Bodies-1Location,实体分别选取长方体和大地,位置选取大地上Marker_1,方向选取Marker_1的Z轴,如图5,通过仿真测得绕X轴转动角度和沿X轴移动位移的曲线如图6、7,表明自由度的个数和方向是正确的.2.3基本副创建移动副和转动副1)移动副添加垂直副限制其绕X轴转动,长方体只能沿Marker_1的X轴移动,选择2Bodies-2Location,实体分别选取长方体和大地,位置分别选取长方体上的Marker_2和大地上的Marker_1,方向选取Marker_1的Y和Z轴,生成的Marker_9和Marker_10的Z轴与Marker_1的Y轴和Z轴一致,如图8,要保证Marker_9与Marker_10的Z轴垂直,长方体绕Marker_1X轴的转动将被限制,长方体只一个自由度,即沿Marker_1X轴的移动,通过在ADAMS中定义GeneralMotion仿真验证可知,自由度的个数和方向是正确的.2)转动副添加点面副来限制其沿X轴移动,使长方体只能绕Marker_1X轴转动,选择2Bodies-1Location,实体分别选取长方体和大地,选取大地上的Marker_1,方向选取Marker_1的X轴,生成的Marker_9和Marker_10的Z轴与Marker_1的X轴一致,如图9,长方体绕Marker_1的X轴的移动将被限制,其只剩下了一个自由度,即绕Marker_1X轴的转动,通过在ADAMS中定义GeneralMotion仿真验证可知,自由度的个数和方向是正确的.3冗余约束分析及处理方法1)2.3中步骤1)采用创建平行副来限制长方体绕Marker_1X轴的转动,使其沿Marker_1X轴移动,选择2Bodies-1Location,实体分别选取长方体和大地,位置选取大地上的Marker_1,方向选取Marker_1Z轴,,长方体绕Marker_1X、Y轴的转动被限制,此时验证模型提示只有一个自由度,同时出现冗余约束,如图10,分析表明,当创建平行副来限制其绕Marker_1X、Y轴的转动,使长方体沿Marker_1X轴的移动,考虑到1.2中步骤3)的垂直副已经约束长方体绕Marker_1Y轴的转动,其绕Marker_1Y轴的转动约束两次,出现过约束即冗余约束的问题,采用2.3中步骤1)创建的垂直副的方法或解除2.2中步骤3)的垂直关系采用本节的方法可以避免冗余约束.2)2.3中步骤2)采用添加点线副来限制长方体沿Marker_1的X轴移动,使其只能绕Marker_1X轴转动,选择2_Bodies1_Location,实体分别选取长方体和大地,位置选取大地上的Marker_1,方向选取Marker_1的Z轴,此时验证模型提示只有一个自由度,但出现冗余约束,如图11,分析表明,当创建点线副来限制长方体沿Marker_1X、Y轴的移动,考虑到2.2步骤中2)创建的点线副已经约束长方体沿Marker_1Y轴的移动,其沿Marker_1Y的移动被约束两次,出现过约束即冗余约束问题,采用2.3中步骤2)创建点面副的方法可以避免冗余约束.3)根据以上分析可知,用基本运动副来约束构件,同时避免出现冗余的基本技巧和方法:依据表1中基本副对自由度的约束关系,用基本副的组合创建低副或高副时,要保证已经约束过的自由度,不再被约束(即自由状态);添加基本副时,在未被约束的自由度中约束不需要的自由度.4交叉型平面二自由度并联机械手仿真模型建立以及冗余约束的处理方法4.1交叉型平面二自由度并联机械手如图12所示,机构的定平台通过支链1、2与动平台相连,两条支链呈“交叉”形分布,其中支链1采用平行四边形结构,支链1中连杆1、连杆2通过转动副与滑块和动平台相连,其转动副的中心分别为A11、B11和A22、B22;支链2中连杆3_1、连杆3_0通过转动副与滑块2和动平台相连,其转动副的中心分别为A3、B3和A4、B4;通过改变各分支中滑块的移动量,来来实现动平台在平面一定范围内不同位置的变化。为了在ADMAS中分析的方便,机构模型简图和建立的局部参考系如图13,局部参考系均位于关节的几何中心,方向和大地坐标系一致,其中Ma_rker13是关节B4作用于动平台的参考点,Marker14是关节B4作用于连杆3_0的参考点,Marker15是关节A4作用于连杆3_0的参考点,Marker16是关节A4作用于滑块2的参考点;Marker17是固结于机架,用于创建滑块1与机架移动副的参考点;Marker18是固结于机架,用于创建滑块2与机架移动副的参考点,ADAMS环境中的机构的模型如图14.4.2仿真系统的建立建立转动副Joint1,选择2Body-1Loc,分别选择连杆2和滑块1,方向选择Marker2的Z轴;建立转动副Joint2,选择2Body-1Loc,分别选择连杆2和动平台,方向选择Marker6的Z轴;建立转动副Joint3,选择2Body-1Loc,分别选择连杆1和滑块1,方向选择Marker4的Z轴;建立转动副Joint4,选择2Body-1Loc,分别选择连杆1和动平台,方向选择Marker5的Z轴;建立转动副Joint5,选择2Body-1Loc,分别选择连杆3_1和滑块2,方向选择Marker10的Z轴;建立转动副Joint6,选择2Body-1Loc,分别选择连杆3_1和动平台,方向选择Marker11的Z轴;建立转动副Joint7,选择2Body-1Loc,分别选择连杆3_0和滑块2,方向选择Marker15的Z轴;建立转动副Joint8,选择2Body-1Loc,分别选择连杆3_0和动平台,方向选择Marker14的Z轴;建立移动副Joint9,选择2Body-1Loc,分别选择滑块1和机架,方向选择Marker17的X轴建立;建立移动副Joint10,选择2Body-1Loc,分别选择滑块2和机架,方向选择Marker18的X轴;建立固定副Joint11,选择2Body-1Loc,分别选择Ground和机架,通过模型验证,得到系统提示有两者自由度,且出现10个冗余自由度信息,如图15。4.3处理冗余约束的步骤1)Joint3转动副修改成点线副,模型验证,提示如图16所示7个冗余自由度信息。2)Joint2转动副修改成点线副,模型验证,提示如图17所示4个冗余自由度信息。3)Joint5转动副修改成点线副,模型验证,提示如图18所示,Joint7出现冗余约束,即连杆3_0与滑块2绕Marker15X轴的转动多约束一次。4)将Joint7转动副修改成点线副,提示如图19所示系统有4个自由度信息,因为连杆_3_0与滑块2绕Marker15X轴的转动已经被约束,同时连杆3_0与滑块_2具有绕Marker15Z轴的转动自由度,而点线副约束连杆3_0与滑块2沿Z、Y轴的移动两个自由度,所以还有沿Marker15X轴移动和绕Y轴转动两个自由度未被约束,加上滑块沿机架两个移动自由度,因此系统具有四个自由度。5)创建垂直副,选择2Bodies-2Location,选择连杆3_0与滑块2,方向选择Marker31X轴和Marker32Z轴,模型验证出现如图20所示3个自由度信息。6)创建点面副,选择2Bodies-1Location,选择连杆3_0与滑块2,方向选择Marker31Z轴,模型验证出现如图21所