本文摘要(由AI生成):
本文介绍了一个使用Rocky仿真软件模拟装瓶线上可乐瓶运动的案例。案例中,作者创建了一个物理模型,包括几何、运动、材料交互等设置,并使用Python脚本自动创建了12个Motion Frame并将其分配给各自的传送带。最后,作者进行了计算并展示了模拟结果。
本案例演示利用Rocky仿真装瓶线上可乐瓶的运动。
案例计算完毕后如图所示。
File → New Project
或快捷键Ctrl+N
创建一个新项目Physics
,进入Momentum
选项卡Numerical Softening Factor
为 0.1Modules
,激活 Inter Particle Collision StatisticsInter Particle Collision Statistics
,激活选项 Normal Impact VelocityGeometries
,点击弹出菜单项 Import Wall案例几何由以下部分组成:
这14个部件将作为.stl文件导入。
为了实现安全运输瓶子和将它们整合成一条线的目标,13个输送带必须增加速度,同时轨道对齐瓶子。案例为每个输送带创建一个Motion Frame。
Motion Frames
,点击弹出菜单项 Create Motion Frame 创建新节点Frame<01>
Geometries > Belt_01
,指定其Motion Frame
为 Belt Velocity<01>可以使用下表中的值手动创建这些额外的Motion Frame,并手动将它们分配给各自的输送带。
若嫌手动添加麻烦的话,也可以编制python脚本,实现自动添加。以下是脚本使用过程。
velocities = [0.1676,0.1676,0.1676,0.1676 ,0.3352, 0.4623 ,0.4724 ,0.64 ,0.7671, 0.7772, 0.9448, 0719,1.1430]
study=app.GetStudy()
motion_frame_source = study.GetMotionFrameSource()
motion_frames=[]
for i in range(0,12):
number_str=""
if(i+1<9):
number_str="0"
motion_frames.append(motion_frame_source.NewFrame())
motion_frames[i].SetName(f'Belt Velocity <{number_str}{str(i+2)}>')
motion_frames[i].SetKeepInPlace(True)
motions = motion_frames[i].GetMotions()
motions_new_list_item = motions.New()
translation_motion=motions_new_list_item.SetType("Translation")
translation_motion.SetVelocity((velocities[i+1],0,0),"m/s")
belt=study.GetGeometry(f'Belt_{number_str}{str(i+2)}')
motion_frames[i].ApplyTo(belt)
belt.SetMaterial('Default Belt')
如下图所示。
运行完毕后,自动创建12个Motion Frame并将其分配给各自的传送带。
Materials Interactions
Default Particles - Default Belt
)Default Particles - Default Boundary
Default Particle - Default Particles
Particles
,点击弹出菜单项 Create Particle 创建新节点 Particle<01>
Particles
面板中进行设置设置Name
为 bottle2. 指定Shape
为 Custom Polyhedron ,弹出的文件选择对话框中选择几何文件Bottle.stl
,以mm
为单位导入模型3. 在弹出的Convert to Convex? 对话框中选择1 - Keep the shape as is.,然后点击OK。注:本案例希望Rocky将颗粒视为凹形,以保留其形状。否则,它会将几何体转换为凸形,从而会丢失一些瓶子的细节。
”
为了正确地表示Filled Bottle的行为,必须改变颗粒的Center of Mass 和Moments of Inertia。
Movement
选项卡,如下图所示设置参数Size
选项,指定Size为 0.0679753 m注:这里设置该尺寸的目的是确保体积与瓶子的实际体积(353毫升)匹配,可以通过使用Info标签页上的值来查看。
”
这里由于需要放入的瓶子较多,因此采用csv文件指定入射位置。
Inlets and Outlets
,点击弹出菜单项 Create Particle Custom Inlet 创建新节点Particle Custom Inlet<01>
Particle
为 Bottle,点击按钮Load File
导入文件 custom_bottle_injection.csv在File Info下,可以看到加载的**.csv** 中定义的各种Properties的Number of Particles和Min 和 Max值。
注意:y属性的min(0.063)和max(0.063)值表示所有的颗粒将被注入到输送带上方的0.063米处。这大约是前面提到的几何中心和瓶子底部之间的距离。
”
案例中,瓶子比轨道更高,如果使用几何体限制作为边界,一部分颗粒将会在计算区域外。因此需要手动设置边界限制。
Domain Settings
,如下图所示指定参数指定的计算区域如图所示。
Solver
,如下图所示设置参数,点击Start
按钮进行计算Simulation Summary屏幕出现(如图所示),然后开始处理。
计算中可以更新图形显示,如图所示。
(完)