UG爱好者

标题: ug12.0连杆驱动功能bug分析 [打印本页]

作者: muoubear*    时间: 2021-9-7 06:59
标题: ug12.0连杆驱动功能bug分析

连杆驱动是ug12.0推出的新功能,使用该功能可以对连杆的6自由度进行控制,使连杆的原点到达空间的任意位置(使用连杆驱动的3个平移设置项),使连杆在空间拥有任意姿态(使用连杆驱动提供的3个旋转设置项),这样就可以通过一个连杆驱动完成对连杆6自由度的控制。


在连杆驱动这个功能出现之前,要实现同样的功能需要使用3个柱面副去合成,公众号之前有一篇文章,用3个柱面副合成一个连杆副,文章中的案例就是使用连杆驱动的3个平移设置项,控制连杆原点,在绘图区绘制多段曲线轨迹。


实际使用时,连杆驱动存在一些bug,并不能完全自由的控制连杆的6个自由度,本案例将使用连杆驱动和3个合成柱面副分别去控制两个连杆的6个自由度,通过运动仿真,分析两者的差异,给出连杆驱动的bug所在。


仿真思路和步骤安排如下:


在ZC平面草绘图1所示的两个连杆模型,左侧为一个点,右侧为点的6自由度简图。对草图投影,按自由度图示表示的方法,编辑部分曲线的线型和颜色,如图2所示。


(, 下载次数: 62)


图1 草绘两个连杆模型




(, 下载次数: 64)


图2 两个连杆模型的投影曲线



为了仿真时便于观察连杆的运动情况,在上述模型的基础上,再绘制一个正方形草图,并投影,如图3所示。


(, 下载次数: 61)


图3 添加仿真时便于观察的辅助曲线



根据上述步骤2的动作安排,在Excel中规划各个动作的时间,步数和step函数,如图3所示。


(, 下载次数: 58)


图4 Excel表格中规划仿真所需的数据和step函数



创建连杆,左侧模型的点+正方形为1个连杆;右侧模型的x轴两曲线(1个连杆),y轴两曲线(1个连杆),z轴的点、圆和方+正方形(1个连杆),为3个连杆,共计创建4个连杆。


创建运动副,右侧模型的x向连杆与大地组成x向柱面副(x向连杆为主动连杆),y向连杆与x向连杆组成y向柱面副(y向连杆为主动连杆),z向连杆与y向连杆组成z向柱面副(z向连杆为主动连杆)。


添加驱动,对左侧点连杆使用连杆驱动,右侧点连杆则使用运动副驱动,对两侧的连杆创建并使用同一组驱动函数。


将Excel表格中给出的step函数,粘贴至对应的所创建的函数编辑器中。


给出解算方案,时间为12s,步数为288,重力方向为-ZC。


求解时,解算进度会在88%处终止,并弹出Simcenter Motion求解器锁定的警告弹窗,关掉弹窗和进度信息窗口,查看动画。


可以发现,两个点连杆沿x,y和z轴的移动没有问题,绕x和z轴的旋转也没有问题,但在绕y轴旋转时,只能转到90°,即解算器在进行到88%处终止。


将连杆驱动停用,重新求解,解算器完全通过,查看动画可以发现右侧连杆能完全按规划动作进行仿真运动。


图5所示为两点连杆使用同一组驱动函数的仿真对比图,图示左侧点连杆为连杆驱动,右侧自由度图示表示的点连杆为3个柱面副控制。


PS:图5的动图是分为两次截图制作而成。


(, 下载次数: 68)


图5 连杆驱动与3柱面副驱动对比图



总结:


连杆驱动如果只是沿x,y和z的平移驱动,求解器正常通过,包含绕y轴旋转驱动时,旋转角度大于90°就会报错,从而无法完成解算。


在1942的版本上我也试过连杆驱动,同样存在相同的问题,个人觉得应该是连杆驱动存在的bug,如果仅使用平移选项卡,用连杆驱动没问题,若控制连杆的6个自由度,则考虑用3个柱面副替代的方案,避免在解算出错时,造成不必要的困惑。


(, 下载次数: 14)



作者: 清源妙道真君    时间: 2021-9-10 18:06
牛啊,什么工厂啊拧螺丝都要这么厉害的理论
作者: 如云得龙    时间: 2022-6-4 11:01
这个问题,知道nx2007也没有解决,哪怕是单独驱动Y轴也不能超过90度




欢迎光临 UG爱好者 (https://www.ugsnx.com/) Powered by Discuz! X3.5