通过编程创建凸轮
这 BasicMotion_CreateCamTableOnline.project
示例项目位于安装目录中 CODESYS 在下面 ..\CODESYS SoftMotion\Examples
。
该示例说明如何使用 IEC 代码创建和使用摄像头。这里涵盖了以下几点:
使用 IEC 代码再次创建在摄像头编辑器中创建的摄像头。
在一种情况下,凸轮盘是在总线任务中生成的。
在另一种情况下,凸轮盘是在单独的任务中生成的。
然后,所有三个凸轮都使用相同的主轴和不同的从轴运行。三个奴隶的动作是相同的。
在 IEC 代码中生成的凸轮显示在可视化中。
有关以编程方式创建凸轮的更多信息,请参阅: 通过编程创建凸轮
应用程序的结构
该应用程序由以下组件组成:
CamOffline
在摄像头编辑器中创建的摄像头,应使用 IEC 代码再次创建。
PLC_PRG
该程序由一个简单的状态机组成,逻辑上由三个部分组成。在第一和第二部分中,使用 IEC 代码创建了一个凸轮。在第三部分中,运行先前创建的摄像头和离线创建的相同摄像头。
第1部分:
在第一种状态下
STATE_CREATE_ONLINE_TABLE
,以 IEC 代码创建凸轮。 SMCB凸轮生成器 功能块来自SM3_CamBuilder
为此,我们使用库。添加了三个段:一个 Poly5 元素,后面跟着一个 Line 元素,然后是另一个 Poly5 元素。Builder 生成一个 在线摄像头 凸轮。从此时起,凸轮以 IEC 代码创建,可以像 CamOffline 在凸轮编辑器中离线创建的凸轮。第2部分:
在
STATE_INIT_ONLINE_TABLE_MULTITASK
,STATE_START_CREATE_ONLINE_TABLE_MULTITASK
,以及STATE_READ_ONLINE_TABLE_MULTITASK
状态,摄像头的创建在另一个任务中开始,然后被读取。第 3 部分:
在
STATE_POWER_DRIVES
状态,主轴和三个从轴的虚拟轴被初始化。然后使用以下命令选择凸轮MC_CamTableSelect
在STATE_SELECT_TABLE
状态并在决赛中执行STATE_MOVEMENT
州。使用以下方法移动主轴MC_MoveVelocity
并用作三个凸轮的主摄像头。
MultitaskCamBuilder
一种生成凸轮的程序,如第 1 部分所述
PLC_PRG
。这里唯一的区别是使用了摄像头的多任务/多核安全变体GVL
此处实例化了摄像头的多任务/多核安全变体。
Visualization
可视化包含
SMC_Visu_CamDisplayer
用于显示摄像头的元素。第 1 部分中生成的凸轮PLC_PRG
显示出来。CamDisplayerSettings
用于显示摄像头的其他元素
Visualization
Trace
您可以使用跟踪来跟踪虚拟轴的移动。记录主轴的当前位置,以及三个从轴的位置、速度和加速度。
调试
构建应用程序并将其下载到控制器。
启动跟踪和应用程序。
观察采样轨迹。
在可视化中显示生成的摄像头