Cam基础

定义一个SoftMotion cam 凸轮表

一个凸轮表定义了一个主轴与从轴的函数关系。利用凸轮列表可以得到一个主轴与从轴的连续映射关系。更深入的说,经过主轴的图表形式的细分,每个映射的曲线图可以被表示为简单的直线或者复杂的五次曲。

示例

图表的水平方向表示主轴的值,凸轮表中的竖直轴表示从属轴的位置。

 插图 11: 电子凸轮表

主轴的范围从0到360.这个范围被分为三部分:

  • 左边的为第一部分: [0, 140]
  • 中间的为第二部分: [140, 280]
  • 右边的是第三部分: [280, 360]

在第一部分和第二部分显示的是一个线性关系因此呈现的是一条直线。他的一阶导数是一个常数,更高的导数为0。

第二个区间的映射曲线是一个五阶多项式。因此,他的一阶导数是一个四阶多项式,他的二阶导数是一个三阶多项式,三阶导数是一个两阶多项式(以此类推……)。

如果你能理解从轴的位置关系与主轴的位置是一个映射关系,那么他的一阶导数就是从轴的速度,他的二阶导数就是从轴的加速度。

如果要保持物理连接上的连续性,图示中的映射关系必须是连续的,这样图表中才不会有跳跃产生。尤其的,这必须包含所有点的信息, 尤其是两个交叉点。此外,对一阶导数和二阶导数也要求是要连续的。(事实上,这三个连续性的要求五阶函数从起始点到结束点都保持一个连续性。)

此外,如果凸轮表定义为周期性的转化,从轴一阶导数和二阶导数在结束点的位置映射必须和它在起始点的位置映射相吻合(在结束点的映射值也可以是起始点映射值的倍数关系)。

更多的,挺杆,也就是一个二进制开关,可以被添加到一个凸轮的任何位置。尤其是,可以产生一个只含有挺杆的电子凸轮表,通过将主轮的整个范围值设定为0实现。

创建 'Cam 表'

一个 “电子凸轮表”是一个可以被添加到SoftMotion 中的一个设备。 因此,可以通过选择位于“设备”树中的工程应用中的 “添加电子凸轮表” 对话框,具体打开路径是通过上下文菜单选择 添加对象 ➔  电子凸轮表... 或者通过 “工程” 菜单。

除此之外,如果希望以CODESYS 函数库的形式存储文件,例如 "<工程名>.library" 的形式,需要将电子凸轮表放到POU中。因此需要在“POUs”树中选择函数库的名称,并且利用 添加对象 ➔  电子凸轮表... 产生对话框。

 插图 12: 对话框‘ '添加电子凸轮表'

在弹出的对话框中输入一个名字 ("Cam_1" 默认名字) 并通过“打开”进行确认。电子凸轮表就会插入到设备树当中(或者POU程序中)并且电子凸轮编辑器会以默认的参数形式打开一个新的凸轮表。

编辑一个凸轮表

一个电子编辑器包含以下几部分:

电子凸轮对象的属性

对于当前设备树中选择的电子凸轮的基本设定,可以通过一个电子凸轮对象的“属性”对话框进行。

通过上下文菜单打开“属性...”的条目或者通过“视图”窗口中的 “属性”命令打开属性条目。详细信息请参阅Properties....

编译电子凸轮

在电子凸轮进行编译的过程中会产生 “MC_CAM_REF”格式的结构体变量。他包含每个电子凸轮的映射,这种类型的数据结构被用作 “MC_CamIn”的输入模块。这个结构体属于函数库 “SM3_Basic”