柔性线缆的装配仿真方法及装置
技术领域
本发明涉及机械工程领域,尤其涉及一种虚拟环境下柔性线缆的装配仿真方法及装置。
背景技术
线缆是机电或电气产品中连接电气元器件、电气设备或控制装置的柔性电线或电缆的总称。作为信号和能量传输的介质和桥梁,线缆大量广泛应用于航空、航天、船舶、车辆等复杂产品中。
装配是产品制造生命周期中最关键的环节之一,也是产品获得整体性能的最后环节,一旦发生问题,导致的时间和成本损失相对于其它早期环节要大的多。柔性线缆是复杂产品装配中的必要部分,也是工艺制定和装配实施的难点,同时,线缆的装配质量还直接影响到产品整机的性能和可靠性。
在传统的线缆装配中,依靠制作物理样机进行实物试装,靠实际实验来制定装配工艺和验证装配的可靠性和稳定性,成本高,周期长,可靠性差。随着计算机软硬件和虚拟现实技术的发展,数字化样机开始取代物理样机被广泛的应用于装配相关的设计和制造过程中。利用虚拟环境下的柔性线缆装配仿真技术可进行装配工艺规划,装配性验证等工作,从而降低成本,缩短周期,提高可靠性。
线缆在装配仿真中的柔性变形仿真是一个核心问题。在柔性物体建模理论的研究过程中,Terzopoulos所提出的基于物理属性的弹性变形模型建立了此研究领域的里程碑。该模型从连续介质力学的角度考虑物体的变形,认为变形体的变化遵循牛顿力学和经典弹性力学原理,将问题归结为一个微分方程,求解方程得到物体上各点的空间几何位置,其后的研究都秉承了这种动力学思想,提出了许多模拟技术。
现有技术中还有一种利用人机交互方法进行电缆路径规划,得到一个基于NURBS曲线的电缆几何模型,然后利用“蛇形机器人”方法建立电缆的物理模型,基于逆运动学原理计算其弯曲角度。
现有技术中还有一种方法针对定长线缆,提出了虚拟线缆(Virtual Cable)的概念,其线缆模型由一系列等长的圆柱段组成,圆柱间由球形结点联结,结点上设置卷簧表征线缆弯曲时的弹性性能,以模型能量(包括各段的势能和卷簧的弹性变形能)最低为判据确定线缆形变。
线缆装配仿真中的模型需要满足实时交互性,同时又能基本反映线缆的真实形态(例如线缆的定长特性,在伸出电连接器的地方要保持一定的方向性,线缆的弯曲曲率不能超过一定值等等)。然而,上述模型大都在实时性和真实性上有缺陷。总的来说,目前国内外在虚拟环境下的线缆运动仿真和装配仿真方面的研究尚处于初期阶段,还有很多技术难题没有解决。
发明内容
本发明要解决的技术问题是提供一种线缆的装配仿真方法及装置,能够更加真实准确地表达线缆在装配仿真中的变形和形态特征(定长,接头端伸出的方向,弯曲曲率的约束等),并能实现实时的线缆装配运动仿真。
为解决上述技术问题,本发明的实施例提供一种柔性线缆的装配仿真方法,包括:建立柔性线缆装配物理特性模型,所述柔性线缆装配物理特性模型中,所述柔性线缆用所述柔性线缆上的离散控制点之间的线段来描述;
获取所述柔性线缆的第一端点的第一位置信息和第二端点的第二位置信息,以及所述第一端点处的第一切线方向信息和所述第二端点处的第二切线方向信息;
根据所述第一位置信息和所述第二位置信息及所述第一切线方向信息和所述第二切线方向信息,求解所述柔性线缆装配物理特性模型,得到所述柔性线缆上的离散控制点的位置信息;
根据所述离散控制点的位置信息拟合所述柔性线缆,并显示所述柔性线缆的位置姿态。
其中,所述离散控制点为六点二次B样条曲线的控制点。
其中,所述六点二次B样条曲线为:
其中,Pi(t)为B样条曲线,Vi、Vi+1、Vi+2为B样条曲线的控制点或者B样条曲线的特征多边形的顶点,t为参数,t∈[0,1],f1(t)、f2(t)、f3(t)为B样条基函数。
其中,根据所述第一位置信息和所述第二位置信息及所述第一切线方向信息和所述第二切线方向信息,求解所述柔性线缆装配物理特性模型,得到所述柔性线缆上的离散控制点的位置信息的步骤包括:
在所述第一切线方向和所述第二切线方向上,分别设置一切线作用距离为L;
根据所述第一位置信息和所述切线作用距离L,得到与所述第一端点相邻的第一控制点的位置信息;
根据所述第二位置信息和所述切线作用距离L,得到与所述第二端点相邻的第二控制点的位置信息;
根据第一控制点的位置信息以及所述第二控制点的位置信息,得到与所述第一控制点相邻的第三控制点的位置信息,以及与所述第二控制点相邻的第四控制点的位置信息。
其中,所述根据所述第一位置信息和所述切线作用距离L,得到与所述第一端点相邻的第一控制点的位置信息的步骤具体为:
根据公式: 得到与所述第一端点相邻的第一控制点的位置信息;其中,所述第一位置信息是所述第一端点的坐标(x1,y1,z1),所述第一控制点的位置信息为(x2,y2,z2),切线方向矢量为(x,y,z),L为切线作用距离;
所述根据所述第二位置信息和所述切线作用距离L,得到与所述第二端点相邻的第二控制点的位置信息的步骤具体为:
根据公式: 得到与所述第二端点相邻的第二控制点的位置信息;其中,所述第二位置信息是所述第二端点的坐标(x3,y3,z3),所述第二控制点的位置信息为(x4,y4,z4),切线方向矢量为(x,y,z),L为切线作用距离。
其中,所述第一控制点、所述第二控制点用直接连接,采用B样条曲线拟合所述包括所述第一端点、所述第二端点、所述第一控制点和所述第二控制点的线缆,得到拟合后极限状态下的柔性线缆,所述极限状态下的柔性线缆不超过第一预设长度。
其中,所述根据第一控制点的位置信息以及所述第二控制点的位置信息,得到与所述第一控制点相邻的第三控制点的位置信息,以及与所述第二控制点相邻的第四控制点的位置信息的步骤包括:
获得包含所述第一控制点、所述第二控制点、所述第三控制点以及所述第四控制点的B样条曲线的第一段线缆的能量E1以及第二段线缆的能量E2;
根据所述第一控制点的位置信息和所述第一段线缆的能量E1,以及所述第二控制点的位置信息和所述第二段线缆的能量E2,得到所述第三控制点的位置信息和所述第四控制点的位置信息。
其中,获得包含所述第一控制点、所述第二控制点、所述第三控制点以及所述第四控制点的B样条曲线的第一段线缆的能量E1以及第二段线缆的能量E2的步骤包括:
根据所述六点二次B样条曲线得到:
w1=0.5×(1-t)2×P2+0.5×(1+2×t-2×t2)×P3+0.5×t2×P4
w1t=(t-1)×P2+(1-2×t)×P3+t×P4
w1tt=P2-2×P3+P4
w2=0.5×(1-t)2×P3+0.5×(1+2×t-2×t2)×P4+0.5×t2×P5
w2t=(t-1)×P3+(1-2×t)×P4+t×P5
w2tt=P3-2×P4+P5
其中,P2为第一控制点的位置信息,P3为第三控制点的位置信息,P4为第四控制点位置信息,P5为第二控制点的位置信息;
根据所述w
1,w
1t,w
1tt和对于B样条曲线的线缆能量
得到所述第一段线缆的能量
根据所述w
2,w
2t,w
2tt和对于B样条曲线的线缆能量
得到所述第二段线缆的能量
其中,α、β指的是材料特性参数,α为线缆的拉伸系数,β为线缆的弯曲系数,f为变形体所受的外载荷,wt,wtt分别为曲线沿参数方向的一阶和二阶导数。
其中,所述根据所述第一控制点的位置信息和所述第一段线缆的能量E1,以及所述第二控制点的位置信息和所述第二段线缆的能量E2,得到所述第三控制点的位置信息和所述第四控制点的位置信息具体为:
根据公式: 得到所述第三控制点的位置信息和所述第四控制点的位置信息;
其中,所述第三控制点的位置信息用P3表达,所述P3=P2×(α2+13×α×β+12×β2)+P5×(α2+7×α×β-6×β2)+f×(5×α+45×β)
所述第四控制点的位置信息用用P4表达,所述P4=P2×(α2+5×α×β-12×β2)+P5×(α2+11×α×β+6×β2)+f×(5×α+45×β)。
其中,根据所述离散控制点的位置信息拟合所述柔性线缆的步骤包括:
所述柔性线缆采用包括所述第一端点、所述第二端点、所述第一控制点、所述第二控制点、所述第三控制点和所述第四控制点的六点二次B样条曲线拟合,得到拟合后的柔性线缆;
所述拟合后的柔性线缆的极限长度符合长度不变搜索条件;所述长度不变搜索条件包括:根据上述所述第一段线缆的能量E1和所述第二段线缆的能量E2,得到能量最小状态下的所述第三控制点和所述第四控制点的位置信息;在得到线缆能量最小时的控制点的位置信息时,按照搜索方向移动所述第三控制点和所述第四控制点,直到线缆长度符合第二预设长度;所述搜索方向是指以所述第一控制点与所述第二控制点的连线的中点为起点,以所述能量最小状态下的所述第三控制点或者所述第四控制点为终点得到的矢量方向。
其中,所述拟合后的柔性线缆的曲率符合线缆插值点局部搜索条件;
所述线缆插值点局部搜索条件包括:所述第一控制点、所述第二控制点、所述第三控制点和所述第四控制点中,每两个控制点之间进行插值,得到多个插值点,获得所述线缆在所述多个插值点中的一个第一插值点处的曲率,若所述曲率大于预设曲率值,则将与所述第一插值点相连的其它插值点,向所述其它插值点与所述第一插值点连线的反方向移动,使所述曲率小于或者等于所述预设曲率值。
其中,通过公式:
获得所述线缆在第一
插值点处的曲率;
其中,K为线缆的曲率,曲线r(t)为矢函数,t为自变量取值为[0,1],将曲线r(t)展开得到x、y、z三个方向关于自变量t的函数x(t)、y(t)、z(t),x’(t)、x”(t)分别是分量x(t)关于自变量t的一阶和二阶导数,对于分量y’(t)、y”(t)分别是分量y(t)关于自变量t的一阶和二阶导数,z’(t)、z”(t)分别是分量z(t)关于自变量t的一阶和二阶导数。
本发明的实施例还提供一种柔性线缆的装配仿真装置,包括:
模型建立模块,用于建立柔性线缆装配物理特性模型,所述柔性线缆装配物理特性模型中,所述柔性线缆用所述柔性线缆上的离散控制点之间的线段来描述;
获取模块,用于获取所述柔性线缆的第一端点的第一位置信息和第二端点的第二位置信息,以及所述第一端点处的第一切线方向信息和所述第二端点处的第二切线方向信息;
模型求解模块,用于根据所述第一位置信息和所述第二位置信息及所述第一切线方向信息和所述第二切线方向信息,求解所述柔性线缆装配物理特性模型,得到所述柔性线缆上的离散控制点的位置信息;
运动仿真模块,用于根据所述离散控制点的位置信息拟合所述柔性线缆,并显示所述柔性线缆的位置姿态。
本发明的上述技术方案的有益效果如下:
上述方案中,通过建立柔性线缆装配物理特性模型,求解所述物理特性模型并根据该求解结果进行柔性线缆的装配运动仿真,从而实现了实时的柔性线缆装配运动仿真过程,仿真过程中的线缆具有更加真实准确的变形和形态特征。
附图说明
图1为本发明的柔性线缆的装配仿真方法的流程示意图;
图2为本发明实例中线缆端点处受到切线作用影响示意图;
图3为本发明实例中用三个平面处理并展示三维立体线缆的示意图;
图4为本发明实例中以六点二次B样条曲线为例拟合线缆中心线;
图5为本发明实例中利用B样条曲线插值的示意图;
图6为本发明实例中进行线缆曲率限制进行插值点微调的示意图;
图7为图1所示方法的一具体实现流程示意图;
图8为本发明的实施例柔性线缆的装配仿真装置的结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
如图1所示,本发明的实施例柔性线缆装配的仿真方法,包括:
步骤11,建立柔性线缆装配物理特性模型,所述柔性线缆装配物理特性模型中,所述柔性线缆用所述柔性线缆上的离散控制点之间的线段来描述;
步骤12,获取所述柔性线缆的第一端点的第一位置信息和第二端点的第二位置信息,以及所述第一端点处的第一切线方向信息和所述第二端点处的第二切线方向信息;
步骤13,根据所述第一位置信息和所述第二位置信息及所述第一切线方向信息和所述第二切线方向信息,求解所述柔性线缆装配物理特性模型,得到所述柔性线缆上的离散控制点的位置信息;
步骤14,根据所述离散控制点的位置信息拟合所述柔性线缆,并显示所述柔性线缆的位置姿态。
上述实施例通过建立柔性线缆装配物理特性模型,求解所述物理特性模型并根据该求解结果进行柔性线缆的装配运动仿真,从而实现了柔性线缆的装配运动仿真过程,通过仿真过程能够更加精确地表达线缆装配的准确性。
其中,在上述实施例的步骤11中,所述离散控制点为六点二次B样条曲线的控制点;为了表示线缆的三维立体特性,将整条线缆分为三个平面来处理(如图3所示),线缆首末两个端点处的切线方向分别所在的铅垂面(平面31,33),余下线缆所在的铅垂面(平面32);
采用B样条曲线拟合、光顺线缆中心线,二次带有切线限制的六点二次B样条曲线表达式为:
其中,Pi(t)为B样条曲线,Vi、Vi+1、Vi+2为B样条曲线的控制点或者B样条曲线的特征多边形的顶点,t为参数,t∈[0,1],f1(t)、f2(t)、f3(t)为B样条基函数。
将获得的线缆的两个端点(第一端点和第二端点)的位置信息和端点切线方向信息加入到此处中结合B样条曲线表达式可得线缆中和端点位置相邻的控制点的位置信息,上述步骤12具体实现过程包括:
步骤121,如图2所示,在所述第一切线方向23和所述第二切线方向24上,分别设置一切线作用距离为L,该切线作用距离L是在线缆22伸出电连接器21的端点处设置的一定长度的切线作用距离,使端点处线缆保持一定的切线方向;
步骤122,根据所述第一位置信息和所述切线作用距离L,得到与所述第一端点相邻的第一控制点的位置信息;
步骤123,根据所述第二位置信息和所述切线作用距离L,得到与所述第二端点相邻的第二控制点的位置信息;
步骤124,根据第一控制点的位置信息以及所述第二控制点的位置信息,得到与所述第一控制点相邻的第三控制点的位置信息,以及与所述第二控制点相邻的第四控制点的位置信息。
其中,步骤122具体可通过以下过程实现:
根据公式: 得到与所述第一端点相邻的第一控制点的位置信息;其中,所述第一位置信息是所述第一端点的坐标(x1,y1,z1),所述第一控制点的位置信息为(x2,y2,z2),切线方向矢量为(x,y,z),L为切线作用距离;
步骤123具体通过以下过程实现:
根据公式: 得到与所述第二端点相邻的第二控制点的位置信息;其中,所述第二位置信息是所述第二端点的坐标(x3,y3,z3),所述第二控制点的位置信息为(x4,y4,z4),切线方向矢量为(x,y,z),L为切线作用距离。
具体如图4所示,以六点二次B样条曲线为例,从线缆一端点至另一端点分别标记P1,P2,......P6,线缆端点P1,P6的位置信息和P1到P2跟P6到P5的切线方向信息已经在上一步骤中求出,同时设置一个切线作用距离L,设端点坐标P1为(x1,y1,z1),邻近端点的控制点坐标P2为(x2,y2,z2),切线方向矢量为(x,y,z),就可以根据上述公式计算出邻近端点P2控制点(上述第一控制点)的位置坐标,同理可以计算P5(上述第二控制点)的位置坐标。
此时,可进行线缆超长检测,所述第一控制点、所述第二控制点用直接连接,采用B样条曲线拟合所述包括所述第一端点、所述第二端点、所述第一控制点和所述第二控制点的线缆,得到拟合后极限状态下的柔性线缆,所述极限状态下的柔性线缆不超过第一预设长度,不超过第一预设长度的线缆是符合现实的,否则是不符合现实的。
上述步骤124的具体实现过程包括:
步骤1241,获得包含所述第一控制点、所述第二控制点、所述第三控制点以及所述第四控制点的B样条曲线的第一段线缆的能量E1以及第二段线缆的能量E2;
步骤1242,根据所述第一控制点的位置信息和所述第一段线缆的能量E1,以及所述第二控制点的位置信息和所述第二段线缆的能量E2,得到所述第三控制点的位置信息和所述第四控制点的位置信息。
其中,步骤1241包括:根据所述六点二次B样条曲线表达式得到:
w1=0.5×(1-t)2×P2+0.5×(1+2×t-2×t2)×P3+0.5×t2×P4
w1t=(t-1)×P2+(1-2×t)×P3+t×P4
w1tt=P2-2×P3+P4
w2=0.5×(1-t)2×P3+0.5×(1+2×t-2×t2)×P4+0.5×t2×P5
w2t=(t-1)×P3+(1-2×t)×P4+t×P5
w2tt=P3-2×P4+P5
其中,P2为第一控制点的位置信息,P3为第三控制点的位置信息,P4为第四控制点位置信息,P5为第二控制点的位置信息;
根据所述w
1,w
1t,w
1tt和对于B样条曲线的线缆能量
得到所述第一段线缆的能量
根据所述w
2,w
2t,w
2tt和对于B样条曲线的线缆能量
得到所述第二段线缆的能量
其中,α、β指的是材料特性参数,α为线缆的拉伸系数,β为线缆的弯曲系数,f为变形体所受的外载荷,wt,wtt分别为曲线沿参数方向的一阶和二阶导数。
其中,步骤1242中:上述E1和E2中,积分后可以将变量t消掉,同时P2,P5在上述步骤122和123中已经求出,能量表达式E1和E2中只有P3,P4两个未知变量,同时有两个能量方程,采用拉格朗日乘子法:
根据公式: 得到所述第三控制点的位置信息和所述第四控制点的位置信息;
其中,所述第三控制点的位置信息用P3表达,所述P3=P2×(α2+13×α×β+12×β2)+P5×(α2+7×α×β-6×β2)+f×(5×α+45×β)
所述第四控制点的位置信息用P4表达,所述P4=P2×(α2+5×α×β-12×β2)+P5×(α2+11×α×β+6×β2)+f×(5×α+45×β)。
在经过拉格朗日乘子法计算得到的线缆最优位置后,还须进行长度不变约束,设P25为P2和P5连线的中点,调整P3的位置时,按照P25和P3连线的方向进行调整,同理,调整P4的位置时,按照P25和P4连线的方向进行调整。按照这种方向进行调整,同时不断计算检测整条线缆的长度是否符合第二预设长度限制。在找到符合长度不变限制的P3,P4控制点位置时,进行到下一步骤。
上述步骤14具体可以包括:
步骤141,所述柔性线缆采用包括所述第一端点、所述第二端点、所述第一控制点、所述第二控制点、所述第三控制点和所述第四控制点的六点二次B样条曲线拟合,得到拟合后的柔性线缆;
步骤142,所述拟合后的柔性线缆的极限长度符合长度不变搜索条件;所述长度不变搜索条件包括:根据上述所述第一段线缆的能量E1和所述第二段线缆的能量E2,得到能量最小状态下的所述第三控制点和所述第四控制点的位置信息;在得到线缆能量最小时的控制点的位置信息时,按照搜索方向移动所述第三控制点和所述第四控制点,直到线缆长度符合第二预设长度,其中,该第二预设长度与上述第一预设长度可是是相同的,也可以是不同的;所述搜索方向是指以所述第一控制点与所述第二控制点的连线的中点为起点,以所述能量最小状态下的所述第三控制点或者所述第四控制点为终点得到的矢量方向。
步骤143,所述拟合后的柔性线缆的曲率符合线缆插值点局部搜索条件;
所述线缆插值点局部搜索条件包括:所述第一控制点、所述第二控制点、所述第三控制点和所述第四控制点中,每两个控制点之间进行插值,得到多个插值点(如图5中的黑实点51以及图6中的c1,c2,c3),获得所述线缆在所述多个插值点中的一个插值点(称为第一插值点)处的曲率,若所述曲率大于预设曲率值,则将与所述第一插值点相连的其它插值点,向所述其它插值点与所述第一插值点连线的反方向移动,使所述曲率小于或者等于所述预设曲率值。
其中,通过公式:
获得所述线缆在第一插值点处的曲率;
其中,K为线缆的曲率,曲线r(t)为矢函数,t为自变量取值为[0,1],将曲线r(t)展开得到x、y、z三个方向关于自变量t的函数x(t)、y(t)、z(t),x’(t)、x”(t)分别是分量x(t)关于自变量t的一阶和二阶导数,对于分量y’(t)、y”(t)分别是分量y(t)关于自变量t的一阶和二阶导数,z’(t)、z”(t)分别是分量z(t)关于自变量t的一阶和二阶导数。
也就是说,在得到线缆在第一插值点处(如该第一插值点c2)的曲率后,与给定线缆曲率上限进行对比,如果超出限制,则进行微调,微调的方向如图6所示,连接c1、c3,分别将c1、c3向远离c2的方向进行微小的移动,以减小线缆局部曲率,保证不超过线缆的最大曲率约束。
在对柔性线缆的装配仿真时,动态捕捉鼠标拖动线缆一端的端点位置信息变化,实时代入物理模型中求解,得到的控制点位置信息返回给显示端,通过B样条曲线拟合显示在输出设备上,同时删除上一段线缆的姿态,完成线缆实时装配仿真。
如图7所示,为上述方法的一具体实现流程图,包括:
在柔性线缆的物理特性模型中,用B样条曲线拟合线缆;
获取线缆的两个端点的位置信息以及两个端点处的切线方向信息;
根据B样长曲线计算极限状态下线缆的长度是否符合超长检测条件,若是,计算出邻近端点的控制点的位置信息;
用拉格朗日能量优化算法求解,得到求解结果;
检测线缆是否符合长度搜索算法,若符合,进一步判断是否满足弯曲曲率限制,若是,则结束,否则再进行长度搜索算法测试。
如图8所示,本发明的实施例还提供一种与上述方法实施例相应的柔性线缆装配的仿真装置,包括:
模型建立模块81,用于建立柔性线缆装配物理特性模型,所述柔性线缆装配物理特性模型中,所述柔性线缆用所述柔性线缆上的离散控制点之间的线段来描述;
获取模块82,用于获取所述柔性线缆的第一端点的第一位置信息和第二端点的第二位置信息,以及所述第一端点处的第一切线方向信息和所述第二端点处的第二切线方向信息;
模型求解模块83,用于根据所述第一位置信息和所述第二位置信息及所述第一切线方向信息和所述第二切线方向信息,求解所述柔性线缆装配物理特性模型,得到所述柔性线缆上的离散控制点的位置信息;
运动仿真模块84,用于根据所述离散控制点的位置信息拟合所述柔性线缆,并显示所述柔性线缆的位置姿态。
上述方法中的所有实现方式均适用于本装置的实施例中,也能达到相同的技术效果,本发明的该装置实施例通过建立柔性线缆的物理特性模型;其中,采用带有重端点及切矢、定长、最大曲率限制的基于能量最小状态的六点二次B样条曲线拟合线缆中心线;在线缆伸出电连接器的端点处设置一定长度的切线作用距离,使端点处线缆保持一定的切线方向;采用三个铅垂面将线缆在邻近端点的控制点处分成三段,以达到体现端点切线作用的立体线缆;求解柔性线缆的物理特性模型;其中,采用拉格朗日能量优化算法求解用B样条曲线表达线缆的方程组;采用长度搜索算法保证线缆模型能量最小同时满足线缆长度不变的约束;采用局部搜索算法对插值点进行位置微调,以保证线缆曲率不超过给定线缆弯曲上限;根据求得的解对线缆进行运动仿真;其中,将求解得到的结果通过显示设备输出,刷新线缆的新位置以仿真线缆装配。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。