刚体转动的稳定性
若定点运动的刚体所受外力对固定点O的主矩,则这种情况称为刚体定点运动的欧拉情况,相应的刚体常称为欧拉陀螺。刚体自由转动时外力矩为零,因此角动量守恒,角动量平方也守恒,即:
同时它的能量也守恒:
刚体转动的稳定性是讨论什么条件下刚体的角速度不随时间变化。显然,只有外力矩为零时才有可能,即只有欧拉陀螺才谈得上转动的稳定性。假设刚体惯性矩各不相同,即,如果刚体在没有外力矩作用下绕其惯性主轴自由转动,在发生微小扰动的情况下转动稳定性是怎样的呢?设刚体初始时刻绕X轴旋转,则角速度可以表达为,是X轴基向量。在刚体上施加一点微小的扰动,其角速度变为
和都是很小的量,将角速度带入欧拉方程可得到:
是二阶小的量,因此在方程中可以忽略。因此从上面第一个方程中可以得到X轴角加速度为零,即近似是恒定值。其他两个方程可以写为:
对上面第一个等式两边对时间求导后带入第二个等式中,消除可得到一个关于的二阶常系数齐次线性微分方程:
显然也满足上面的微分方程。根据之前惯性矩大小的设定,方程中方括号的那一项为正值,因此根据二阶常系数齐次线性方程判别式的符号()可知其通解为:
其中,和是常数,且有:
从微分方程的解可以看出,刚体会以角频率绕其初始状态做正弦振荡。即刚体绕其X轴旋转时,转动在微小扰动的作用下是稳定的,因为扰动角速度的幅值不随着时间增长而放大发散。
如果刚体初始时刻绕着Z轴旋转,并施加了一个微小的扰动。这时情形与绕X轴旋转类似,我们可以写出振荡的角频率:
因此,刚体绕Z轴旋转时对微小扰动也是稳定的。
假设刚体绕Y轴旋转,即绕中间惯量轴旋转,受到微小扰动:,容易证明满足下面的微分方程:
该微分方程的通解为:
其中A,B为常数,且有:
这种情况下扰动角速度的幅值随着时间指数增长,转动稳定性被破坏。因此刚体绕Y轴旋转时对微小扰动不稳定。
结论:如果欧拉情况下刚体惯性主轴的三个转动惯量不相同,则绕最大和最小转动惯量对应的轴的旋转是稳定的,绕中间轴的旋转是不稳定的。如果其中有两个转动惯量相同,则可以证明刚体只有绕不同的那个轴旋转是稳定的。比如,则只有绕Z轴的转动是稳定的。
在SIMPACK动力学仿真软件中设置立方体的惯性张量为,删除约束和重力并添加初始条件(Initial Conditions),让刚体主要绕Z轴旋转,角速度为1rad/s,X轴和Y轴扰动角速度设为0.1rad/s
在求解器设置中将积分时间改为60s,开始在线/离线仿真:
从结果的角速度曲线图可以看出在有微小扰动时刚体绕转动惯量最大的轴旋转是稳定的:
将初始角速度设为1,0.1,0.1,即主要绕X轴旋转,积分时间设为200s,仿真结果如下。可以看出在有微小扰动时刚体绕转动惯量最小的轴旋转是稳定的:
将初始角速度设为0.1,1,0.1,即主要绕Y轴旋转,积分时间设为200s,仿真结果如下。可以看出绕Y轴的转动不稳定:
参考:
YouTube Gyroscopic forces in ODE
Game Physics-Numerical Integration
Free rotation of a rigid body animation
Integration Basics-How to integrate the equations of motion
Accurate and Efficient Simulation of Rigid Body Rotations
Stabilizing Gyroscopic Forces in Rigid Multibody Simulations
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律