codesys电子凸轮挺杆点的设置与使用
作者:互联网
1、序言
之前的文章中,我们已经介绍了Codesys电子凸轮的功能设计与使用,参考文章:
https://blog.csdn.net/qq_19979629/article/details/122373387
不过我们忽略了电子凸轮的重要功能,挺杆。对于挺杆的作用,作者查询了相关资料,并没有完全找到其准确的用途,只找到在机械凸轮上有挺杆或者连杆的使用。个人理解与电子凸轮的挺杆还是有区别的。其具体作用和应用在接下来的内容中讲解。
2、挺杆点的设置与编程
2.1、电子凸轮CAM表中的挺杆设置
创建CAM表这里不做介绍,挺杆的设置跟CAM表类似,可以通过点表设置,如图所示
挺杆表的内容包括:
a、跟踪ID:即挺杆点的标识,1个点对应一个ID,若设置3个挺杆点,就有3个ID,这个ID编号会在程序模块中用到;
b、X:即X轴的坐标位置,也就是凸轮主轴的位置,表示当前ID的挺杆在该位置进行对应的动作;
c、正向通过/反向通过,以设置的X=60为例,从0开始逐渐增大,超过60为正向通过,从360开始逐渐减小,小于60为反向通过,正反向设置是为适应不同的主轴状态,对应主轴正转或反转,在实际应用中,一般只会用到一种方向。
d、挺杆动作:挺杆动作有3种状态可设置,打开,关闭,反转。通过状态我们可以知道,挺杆点对应的必须是开关量。即可以通过挺杆点状态的变化来控制继电器,以达到操控电机启停,气缸动作,指示灯开关等。对应状态的设置可以通过字面意思理解,打开就是设置为ON,关闭设置为OFF,反转就是取反,若当前状态为OFF,则设为ON,若状态为ON,则设置为OFF,熟悉梯形图编程的朋友应该很容易理解,挺杆动作其实就是通过一个上升沿或者下降沿对挺杆点执行set,或者rst,或者alt(not)指令。
e、点位增减:挺杆点表左侧的红色+可以增加对应ID的挺杆点,表最底下的红色+没有对应的ID,点击此符号则增加新的挺杆ID,黑色删除图标则可以删除对应的挺杆点,当挺杆ID下方所有的挺杆点都被删除时,该ID自动消失。
点表设置好后,可以在挺杆点作用的位置,如图所示:
2.2、程序编写
挺杆点程序应用相对简单,在程序中有对应的功能块,SMC_GetTappetValue,功能块如图所示:
功能块说明如下:
a、 Tappets:输入点,类型SMC_TappetData,挺杆表来源,一般通过CamIn功能块输出;
b、iID:输入点,类型INT,挺杆点ID号,即挺杆表种的ID;
c、bInitValue:输入点,类型BOOL,挺杆点初始状态;
d、bSetInitValueAtReset:输入点,类型BOOL,重启时挺杆点是否设置为初始状态;
e、bTappet:输出点,类型BOOL,iID的挺杆点对应的实际状态。
使用多个挺杆点就需要对应数量的功能块,注意功能块序号不能相同,以防冲突,程序如图所示:
变量的定义这里不再详细描述
2.3、可视化界面
可视化界面使用对应的功能块和指示灯,并将其变量连接起来即可,如图所示:
挺杆点1和2的指示灯分别对应两个SMC_GetTappetValue功能块的输出即可。
3、仿真运行
本例中挺杆点设置了两个,状态分别为:ID1,正向通过60,打开,正向通过120,关闭,正向通过240,反转,正向通过300,再反转。ID2,正向通过180,反转,正向通过0,反转。通过仿真运行,可以验证挺杆的动作是否一致,如视频所示
<iframe allowfullscreen="true" data-mediaembed="bilibili" id="BafxudZl-1644247120224" src="https://player.bilibili.com/player.html?aid=851367622"></iframe>codesys电子凸轮挺杆点的设置与使用
注意:挺杆点的动作与凸轮曲线无关,只跟主轴运行的位置有关,即修改凸轮曲线或凸轮表不会改变挺杆点的动作变换。
4、综述
通过挺杆点的设置与仿真,我们可以发现挺杆点可以控制开关量的动作,那么在实际应用中,就可以来控制指示灯显示,气缸或者油缸动作,电机的启动或者停止等开关量可以控制的动作。那么在电子凸轮设计过程中,引入挺杆点就可以辅助的气缸或其他机构来配合,达到更理想的凸轮控制效果。
本文使用的程序软件版本依旧为V3.5.14.10,源代码可以在以下地址下载:
标签:挺杆点,凸轮,杆点,挺杆,codesys,设置,ID 来源: https://blog.csdn.net/qq_19979629/article/details/122804973