
01
简 介
约束作为多体动力学的基本要素,应用在每个模型中。本文对软件界面的约束及其对应的代数方程进行整理说明,以期更好的应用软件。
约束可以分为定常约束(与时间无关的)和非定常约束(与时间相关的)。又可以分为完整约束(对位移进行约束)和非完整约束(对速度进行约束)。不同的分类应用在不同的分析场景,本文只对空间定常约束,即大家熟悉的固定副、球副、圆柱副、移动副、旋转副、万向副、平行副、垂直副进行说明。
02
约束的代数方程
固定副
全局坐标系下,部件i与部件j的这两个点位置始终重合,从而使部件j不能与部件i有相对运动,即限制了部件j的三个移动自由度。
圆柱副
在圆柱副的基础上再加第三项,额外限制旋转,ni与nj分别是在部件i与部件j上的两个向量,相互垂直,且都垂直于约束轴线。(若是部件j转动,那么两个向量将不满足垂直关系)
旋转副
球副的基础上再额外限制旋转。(道理同移动副的第三项)
向下滑动查看
从上表也可以看出,旋转副也可以用一个球副叠加限制两个旋转自由度的平行副:
图2 万向副验证模型
在Adams中创建部件i(红色圆柱),部件j(绿色圆柱),部件i与大地旋转副约束,并施加60deg/s的恒定角速度驱动;部件j与大地平行副约束,部件j与部件i万向副约束。
在Matlab中,采用相同的约束。
图3 Adams结果VS Matlab结果
两者结果完全一样,验证了上述旋转副、万向副及平行副的代数方程。
04
参考文献
[1] computational Dynamics (3rd). Ahmed A. Shabana.