简述
模拟的核心在于如何只传递局部坐标系下需要的自由度,按照常规思路,我们可以做出以下猜想:
①能不能释放不需要传递的自由度?
②能不能不耦合不需要传递的自由度?
③是否存在仅具备对应自由度的单元?
④是否能削弱不需要传递的自由度?
于是我们快速检索了下自己的知识库,发现以下单元可能能够满足预期:
rbe2单元可以控制从节点的耦合自由度
rbe3单元既可以控制从节点的耦合自由度,也可以控制主节点的传递自由度
beam单元可以控制端部节点自由度的释放
cbush单元可以控制局部坐标系下的各向刚度
joint类拥有各种不同类型自由度传递的单元
下面分别就上述的几种实现方法进行说明,并指出一些不合适的使用场景。
模型说明
为了验证各种方法的可行性,需要准备一个标准验证案例:
典型的转轴类连接结构,上下座通过转轴连接,现在需要使用该模型对各种自由度传递方法进行验证。
验证方法:约束模态分析
结果现象:1阶阵型为相对自转 2阶阵型为正常弯扭,并且两阶模态频率相差较大
方法验证
刚性单元属于耦合类单元,因此可以通过控制耦合的自由度来达到只传递部分需要自由度的目的,具体实现如下:
如图,我们不对中间连接单元从节点的转动自由度进行耦合,这样就能实现以下效果:
可以看到,1阶阵型为销轴自转,2阶阵型为结构本身变形,两阶模态频率相差较大,实现了我们预期的转动释放效果。
使用rbe2虽然能够达到预期效果,但是有两个缺点:一是刚性单元的使用会加剧局部刚度,二是全部使用刚性单元会使得建模没有可调空间,因此我们自然会想到使用rbe3单元:
如图所示,使用rbe3单元进行耦合,梁单元作为轴,将一侧rbe3单元的转动自由度释放掉,这样在保留一定刚度可调空间下能达到如下效果:
由于使用了rbe3以及beam单元组合,因此相对于单纯的rbe2单元刚性小了很多,这一点从右上角固有频率可以看出。
上面通过释放rbe3单元主节点的转动自由度实现了自由转动,实际还可以通过梁单元的pina和pinb来释放梁端点的转动自由度:
实现的效果和上述基本一致:
当然我们也可以把这里面的rbe3单元换成rbe2单元来配合beam使用。
通过上面耦合以及自由度释放的演示大家也感觉到了,不同连接方式对结构刚度是有影响的,对于有确定连接部位刚度值的结构,就比较适合使用cbush单元模拟:
使用cbush连接轴心点,设置cbush单元的转动刚度较低,其余方向按照真实值或者rigid,这样可以得到如下模拟效果:
可以看到,由于cbush可以指定六个方向的刚度,因此2阶阵型明显和前面的几种不太一样,可以通过调整刚度贴近实际情况。
可能大家对于转轴模拟一开始想到的就是运动副单元,下面我们来试一下:
我们直接使用joint中的转动副revolute连接轴心点,计算得到结果如下:
可以看到,虽然转动是释放了,但是继续看后面的阵型结果就会发现,运动副单元得到了一些非常奇怪的结果。虽然不知道原因,但是建议对于在opti线性静力分析中避免使用运动副单元。
不合理使用
上面分别列举了合理使用rbe2,rbe3,beam以及cbush得到转轴效果的方法,这部分列举一些典型的不合理方法:
①释放rbe2主节点自由度
错误原因:rbe2的主节点自由度不能释放,只能释放从节点自由度,这样释放达不到效果。
②使用rod单元
错误原因:①opti求解器中的rod单元属于拉压扭单元 ②弯曲刚度同时会被释放。
③自由度释放过度
错误原因:如果两侧梁单元自由度均释放,则梁拥有自转自由度,约束不足。