ADMAS的理论基础ADAMS利用带拉格朗日乘子的第一类拉格朗日方程导出――最大数量坐标的微分-代数方程(DAE)。它选取系统内每个刚体质心在惯性参考系中的三个直角坐标和确定刚体方位的三个欧拉角作为笛卡尔广义坐标,用带乘子的拉格朗日第一类方程处理具有多余坐标的完整约束系统或非完整约束系统,导出以笛卡尔广义坐标为变量的动力学方程。全部动力学问题归结为求解一个动力学普遍方程。是最高度的概括。动力学普遍方程存在着致命的弊病:在求多自由度时会遇到极大困难,几乎难以下手。原因:方程中n3个笛卡尔坐标不是独立的。对于完整系统只有snN3个是独立的。拉格朗日开创的分析力学,就是为克服动力学普遍方程的弱点,解决多自由度、非自由系统的动力学问题而发展完善的。第一类拉格朗日方程:我们引入符号kzfjyfixfrfikikikk对约束方程两边变分),...3,2,1(0),...,,(21sktrrrfnk),...2,1(01skrrfiikni实际这也是虚位移应当满足的约束。引入拉格朗日乘子),...,2,1(skk将上式两端乘k并对k求和01111iikkskniiiknikskrrfrrf将上式与动力学普遍方程相减,可得011iikkskiiinirrfrmF独立坐标有sn3个,对于不独立坐标,我们可选取适当的k使上式等于零,从而有01..ikkskiiirfrmF),...2,1(ni这就是拉格朗日方程乘子的动力学方程,即第一拉格朗日方程。共有sn3个未知量,可与个s约束方程联立求解。固定标架可以用来定义构件的形状、质心位置、作用力和反作用力的作用点、构件之间的连接位置等。浮动标记相对于构件运动,在机械系统的运动分析过程中,有些力和约束需要使用浮动标架来定位。动力学方程的求解速度很大程度上取决于广义坐标的选择。研究刚体在惯性空间中的一般运动时,可以用它的质心标架坐标系确定位置,用质心标架坐标相对地面坐标系的方向余弦矩阵确定方位。为了解析地描述方位,必须规定一组转动广义坐标表示方向余弦矩阵。第一种方法是用方向余弦矩阵本身的元素作为转动广义坐标,但是变量太多,同时还要附加六个约束方程;第二种方法是用欧拉角或卡尔登角作为转动坐标,它的算法规范,缺点是在逆问题中存在奇点,在奇点位置附近数值计算容易出现困难;第三种方法是用欧拉参数作为转动广义坐标,它的变量不太多,由方向余弦计算欧拉角时不存在奇点。ADAMS软件用刚体iB的质心笛卡尔坐标和反映刚体方位的欧拉角作为广义坐标,即TTnTTTiqqqqzyxq],...,,[,],,,,,[21。由于采用了不独立的广义坐标,系统动力学方程虽然是最大数量,但却是高度稀疏耦合的微分代数方程,适用于稀疏矩阵的方法高效求解。利用ADAMS建立机械系统仿真模型时,系统中构件与地面或构件与构件之间存在运动副的联接,这些运动副可以用系统广义坐标表示为代数方程,这里仅考虑完整约束。设表示运动副的约束方程数为nh,则用系统广义坐标矢量表示的运动学约束方程组为:0)](),...,(),([)(21TKnhKKKqqqq(1)考虑运动学分析,为使系统具有确定运动,要使系统实际自由度为零,为系统施加等于自由度)(nhnc的驱动约束:0),(tqD(2)在一般情况下,驱动约束是系统广义坐标和时间的函数。驱动约束在其集合内部及其与运动学约束合集中必须是独立和相容的,在这种条件下,驱动系统运动学上是确定的,将作确定运动。由式(1)表示的系统运动学约束和式(2)表示的驱动约束组合成系统所受的全部约束:0),(),(),(tqtqtqDK(3)式(3)为nc个广义坐标的nc个非线性方程组,其构成了系统位置方程。对式(3)求导,得到速度约束方程:0),(),(),,(tqqtqtqqtq(4)若令),(tqt,则速度方程为:0),(),,(qtqtqqq(5)对式(4)求导,可得加速度方程:0),(),(2)),((),(),,,(tqqtqqqtqqtqtqqqttqtqqq(6)若令ttqtqqqqq2)(,则加速度方程为:0),,(),(),,,(tqqqtqtqqqq(7)矩阵q,为雅可比矩阵,如果的维数为m,q维数为n,那么q维数为nm矩阵,其定义为jijiqq/)(),(。在这里q为ncnc(nh个运动学约束,nhnc个驱动约束,nc个广义坐标)的方阵。ADAMS运动学方程的求解算法在ADAMS仿真软件中,运动学分析研究零自由度系统的位置、速度、加速度和约束反力,因此只需求解系统的约束方程:0),(ntq(8)运动过程中任意时刻nt位置的确定,可有约束方程的Newton-Raphson迭代法求得:0),(njjqjtqq(9)其中,jjjqqq1,表示第j次迭代。nt时刻速度、加速度可以利用线性代数方程的数值方法求解,ADAMS中提供了两种线性代数方程求解方法:CALAHAN方法(由Michigan大学DonaldCalahan教授提出)与HARWELL方法(由HARWELL的IanDuff教授提出),CALAHAN方法不能处理冗余约束问题,HARWELL方法可以处理冗余约束问题,CALAHAN方法速度较快。tqq1(10)]2)[(1ttqtqqqqqqq(11)ADAMS动力学方程ADAMS中用刚体B的质心笛卡尔坐标和反应刚体方位的欧拉角作为广义坐标。即Tzyxq],,,,,[,令],[,],,[,],,[TTTTRqzyxR。构件质心参考坐标系与地面坐标系间的坐标变换矩阵为:conφθAgisinsinsinsinsincoscoscoscossinsinsincoscoscossinsinsincoscossinsincossincossincoscos(12)定义一个欧拉转轴坐标系,该坐标系的三个单位矢量分别为上面三个欧拉转动的轴,因而三个轴并不相互垂直。该坐标系到构件质心坐标系的坐标变换矩阵为:01cossin0cossincos0sinsinB(13)构件的角速度可以表达为:B(14)ADAMS中引入变量e为角速度在欧拉转轴坐标系分量:e(15)考虑约束方程,ADAMS利用带拉格朗日乘子的拉格朗日第一类方程的能量形式得到如下方程:jniijjjqQqTqTdtd1)((16)T为系统广义坐标表达的动能,jq为广义坐标,jQ为在广义坐标jq方向的广义力,最后一项涉及约束方程和拉格朗日乘子表达了在在广义坐标jq方向的约束反力。ADAMS中进一步引入广义动量:jjqTp(17)简化表达约束反力为:jniijqC1(18)这样方程(16)可以简化为:jjjjCQqTP(19)动能可以进一步表达为:JBBMRRTTT2121(20)其中M为构件的质量阵,J为构件在质心坐标系下的惯量阵。将(19)分别表达为移动方向和转动方向有:RRRRCQqTP(21)CQqTP(22)其中MVMRdtdqTdtdPRR)()(,0RqT。式可简化为:RRCQMV(23)JBBqTPT)(,由于B中包含欧拉角,为了简化推导,ADAMS中并没有进一步推导P,而是将其作为一个变量求解。这样ADAMS中每个构件具有如下15个变量(而非12个)和15个方程(而非12个)。变量:TTTTTzyxPPPPzyxRVVVV],,[],,[],,[],,[],,[(24)方程:eeTRRJBBPCQqTPRVCQMV(25)集成约束方程ADAMS可自动建立系统的动力学方程――微分-代数方程:),,(0),(0tqufFtqquqTPFHqTPTTq(26)其中,P为系统的广义动量;H为外力的坐标转换矩阵。初始条件分析在进行动力学、静力学分析之前,ADAMS会自动进行初始条件分析,以便在初始系统模型中各物体的坐标与各种运动学约束之间达成协调,这样可以保证系统满足所有的约束条件。初始条件分析通过求解相应的位置、速度、加速度的目标函数的最小值得到。(1)对初始位置分析,需满足约束最小化问题:Minimize:)()(2100qqWqqCTSubjectto:0)(qq为构件广义坐标,W为权重矩阵,0q为用户输入的值,如果用户输入的值为精确值,则相应权重较大,并在迭代中变化较小。可以利用拉格朗日乘子上述约束最小化问题变为如下极值问题:TTqqqWqqL)()()(2100(27)L取最小值,则由0,0LqL得:0)(0)(0qqqqWT(28)因约束函数中存在广义坐标,该方程为非线性方程须用Newton-Raphson迭代求解,迭代方程如下:)()(00qqqqWqqqWTT(29)对初始速度分析,需满足约束最小化问题Minimize:)()(2100qqWqqCTSubjectto:0tqq其中,0q为用户设定的准确的或近似的初始速度值,或者为程序设定的缺省速度值;W为0q对应的权重系数矩阵。同样可以利用拉格朗日乘子将上述约束最小化问题变为如下极值问题:TTtqqqqWqqL)()(2100(30)L取最小值,得:00)(0tqqqqqWT(31)q为已知,该方程为线性方程组可求解如下方程:tWqqqqWT00(32)对初始加速度、初始拉氏乘子的分析,可直接由系统动力学方程和系统约束方程的两阶导数确定。ADAMS动力学方程的求解对于式(26)微分-代数方程的求解,ADAMS采用两种方式求解,第一种为对DAE方程的直接求解,第二种为DAE方程利用约束方程将广义坐标分解为独立坐标和非独立坐标然后化简为ODE方程求解。DAE方程的直接求解将二阶微分方程降阶为一阶微分方程来求解,通过引入,将所有拉格朗日方程均写成一阶微分形式,该方程为Index3微分代数方程。I3积分格式:),,(0),(0tqufFtqquqTPFHqTPTTq(33)运用一阶向后差分公式,上述方程组对),,(qu求导,可得其Jacobi矩阵,然后利用Newton-Rapson求解。可以看出,当积分步长h减小并趋近于0时,上述Jacobi矩阵呈现病态。为了有效地监测速度积分的误差,可采用降阶积分方法(Indexreductionmethods)。通常来说,微分方程的阶数越少,其数值求解稳定性就越好。ADAMS还采用两种方法来降阶求解,即SI2(Stabilized-IndexTwo)和SI1(Stabilized-IndexOne)方法。SI2积分格式: