3、 两个以上零件的运动模拟
接下来我们讨论两个以上零件互不相同的运动,为了方便起见,在这里采用在上一个例子基础上再增加一个滚轮沿三维路径作反向运动,如图16所示。
A. 在这里得再装入一个滚轮和两个参考零件,其中一个参考零件只添加角度对准约束作为主驱动变量,起到时间轴的作用,为两个滚轮运动提供一个共同的位置基准,以此为基准再向两个滚轮分别添加不同的运动函数表达式,从而使两个滚轮分别按不同的轨迹或规律运动;另一个参考零件用于与第二个滚轮配合,实现反向运动。
图16
B. 按图17所示示要求给参考零件2和滚轮2添加装配约束,方法与给参考零件1和滚轮1的添加装配约束相同,最终将滚轮2约束到起点位置,使其能随参考零件2移动或转动,同时加上能使滚轮2绕自身轴线滚动的装配约束。
图17
C. 按滚轮2运动的规律,同样用sign(expr)函数设8对用户参数RP1A、RP1B;…… RP8A、RP8B作为轨迹上的断点,如图18所示,打开所链接的Excel表格,在该表格文件中添加。
D. 再分别设参数X2、Z2和turn_angle_2将滚轮2的X向运动、Z向运动和转动角度按其运动轨迹定义函数表达式。
图18
X2的函数表达式:
(L-L8)*RP1B*RP2A+L7*RP2B+RP2B*(L-L8-L7)*800mm/L6*RP3A+RP3B*800mm+RP3B*(L-L8-L7-L6)*RP4A+RP4B*L5-RP5B*RP6A*(L-L8-L7-L6-L5-L4)-RP6B*L3-RP7B*RP8A*(L-L8-L7-L6-L5-L4-L3-L2)-RP8B*L1
Z2的函数表达式:
RP2B*(L-L8-L7)*500mm/L6*RP3A+500mm*RP3B-RP6B*RP7A*(L-L8-L7-L6-L5-L4-L3)-RP7B*L2
转动角度turn_angle_2的函数表达式:
RP1A*(180deg-( L8-L)*360deg/(2ul*3.1415926ul*500mm))+180deg*RP2B-RP4B*RP5A*( L8+L7+L6+L5-L)*360deg/(2ul*3.1415926ul*500mm)+180deg*RP5B
添加完X2、Z2和turn_angle_2参数后的Excel表格如图19所示。
图19
E. 添加完毕参数的Excel表格保存后,Inventor就会自动更新所链接的参数,如图20所示。接下来在参数对话框中用X2、Z2、turn_angle_2参数替代相应模型参数的值,这里还需要将主驱动参数名改为“drive”,并用“drive”替代滚轮1和滚轮2中用于滚动的驱动变量参数值,这样滚轮1和滚轮2才能滚动,滚动方向可用“+、-”号来控制。更改完成后的模型参数如图21所示。
图20
图21
F. 如图22所示,将所有参考零件设为不可见,然后在浏览器中选中主驱动变量,驱动其约束,两个滚轮就会按预定路径轨迹,相反方向滚动,如图23所示。
图22
图23
G. 利用主驱动变量提供的时间轴,可以连接驱动更多零部件的运动,设置零部件的先后、不同节拍的运动模式。用Inventor提供的其它内部函数,还能模拟更复杂的运动模式。
通过以上几个列子,简单地探讨了在Inventor中用函数来实现运动模拟的方法,可以说在通用机械领域中,用Inventor提供的基于装配约束的运动模拟和函数的方法,均能方便地模拟各种复杂的机械机构运动,这方面的实列还很多,在此只是起了个头。欢迎各位读者就此问题作进一步的探讨和交流。