(参阅相关同名工程 PLCopenMulti.project)
以下工程描述了通过一个线性设备如何实现一个周期性的 cam。并且展示了凸轮中的挺杆功能。
1. 在设备树中创建一个周期性的cam (在示例工程中的 "实例" 程序)作为一个从范围 0 到10 秒的主轴,并且至少包含一个 挺杆名为 ID1;如下图所示:
2. 在设备树中定义两个旋转设备 名为 "Drive" (360周期) 以及 "Virtual“ (周期为10):
3. 通过FBD语言创建程序 MOTION_PRG,包含以下模块:
PROGRAM MOTION_PRG
VAR
power1, power2: MC_Power;
TableSelect: MC_CamTableSelect;
CamIn: MC_CamIn;
Tappet: SMC_GetTappetValue;
MoveVirtual: MC_MoveVelocity;
END_VAR
经过Power 模块之后 (power1, power2) 首先调用的是从轴的MoveVelocity模块,是虚轴移动。TableSelect将选择描述的表格,并且读到CamIn中;Tappet模块检查挺杆的位置,因为挺杆的配置它会没 10 秒钟执行一次 ‘反转’。
现在可以编译程序并在控制器中启动 。
为了分别进行当前位置以及目标位置的控制,创建一个可视化界面,这有助于检查当前模块以及轴的位置。
请注意,cam的主轴不仅可以是一个虚拟的时间轴,也可以是AXIS_REF 数据结构描述的任何形式的轴。对于控制器当前激活的数值将作为目标位置,对驱动器来说当前不可控的位置为当前值。