博途--使用线段动态生成凸轮曲线

2022-03-29 19:38:00 浏览数 (1)

1 通过线段动态生成凸轮曲线

1.1 凸轮工艺对象中线段数据的结构

线段数据结构如下图所示:

图1-1线段数据结构

1.2 各个参数的含义

这个数据结构比较复杂,由12个变量组成。这些变量代表什么意思呢?

我们先使用MATLAB来生成一条曲线:

图1-2 使用MATLAB生成曲线

其中代码的含义是,x从0增加到200,每次增加0.01;,然后生成x、y对应的曲线,如下图所示:

图1-3 MATLAB生成的曲线

同样也把类似的数据写入凸轮线段参数,如下图所示:

图1-4 设置凸轮线段参数

别忘了设置线段有效性:

图1-5 设置线段的有效性

曲线经过插补后的图形如下所示:

图1-6生成的凸轮曲线

可以看出MATLAB生成的曲线与凸轮曲线是一样的,对于凸轮曲线,以上设置可以表示成:。我们依据凸轮曲线参数的命名可以推断出a3~a6也是曲线各阶次的系数。但曲线参数中还有sineAmplitude,sinePeriod以及SinePhase三个正弦参数,它们代表什么含义呢?

再编写一段MATLAB代码:

图1-7使用MATLAB代码生成曲线

其中代码的含义是,x从0增加到200,每次增加0.01;

,然后生成x、y对应的曲线:

图1-8 MATLAB生成的曲线

同样,也把相同的数据写入凸轮曲线线段参数:

图1-9设置凸轮线段参数

凸轮曲线经过插补后,显示如下:

图1-10生成的凸轮曲线

对比MATLAB生成的曲线,可以看出两条曲线一样。由此可知凸轮曲线可以表示成:

我们再把阶次参数与正弦参数混合起来,看看能生成什么样的凸轮曲线。参数设置如下:

图1-11设置阶次与正弦混合参数

曲线插补后显示如下:

图1-12混合参数生成的曲线

从图中可以看出,最终生成的曲线是图1-6和图1-10中两种曲线的叠加。因此我们可以推论出凸轮工艺对象中线段数据完整参数的含义:

1.3 两条曲线如何衔接

前面我们知道了凸轮工艺对象中线段参数如何使用。但是在实际应用中凸轮曲线可以由多条线段组成,那么线段之间如何衔接呢?

先设置两条直线段:

图1-13第一条直线段

图1-14第二条直线段

另外不要忘记设置两条线段的有效性:

图1-15设置两条线段的有效性

经过插补后曲线显示如下:

图1-16两条曲线的组合

第一条直线段从0到100,第二条直线段从150到250,两条线段中间从100到150这段由系统插补了一条衔接曲线。类似于(100,50)(150,100)两个点形成的插补曲线(参考《Prime_系列_动态生成曲轮曲线(1)》)。

所以就算两条曲线段首位并不相接也不要紧,插补后系统会补充衔接曲线。

0 人点赞