设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
西门子SCL编程实例——定时采样程序
返回列表
发新帖
[西门子]
西门子SCL编程实例——定时采样程序
[复制链接]
61854
|
0
|
2024-4-28 20:34:39
|
显示全部楼层
|
阅读模式
在实际项目中会遇到需要定时采样的情况,比如:对心跳计数器的定时采样,以判断通信是否中断;对液体流过体积的定时采样,以判断液体处于流动状态还是静止状态;这些功能,都需要定时采样程序来完成。今天这篇文章,给大家介绍下我用西门子SCL语言实现的一个定时采样程序。
该定时采样程序可以固定的时间间隔对一个整数进行采样,采样的结果会存放到两个整数变量:data1和data2中。data1是奇数次采样的结果,data2是偶数次采样的结果。
程序实现的思路如下:
采样过程分为三种状态:
奇数次采样:状态激活后采样存放到data1中,并修改状态值为【采样空闲】;
偶数次采样:状态激活后采样存放到data2中,并修改状态值为【采样空闲】;
采样空闲期:状态激活后进行空闲计时,当计时时间到了之后,判断之前的采样状态,并切换到另一种状态;
函数块实现:
输入参数三个:
active:激活或取消采样功能,1=激活;
timeInterval:采样间隔时间,默认5s;
sourceData:数据源;
输出参数两个:
data1:奇数次采样的数据;
data2:偶数次采样的数据;
输入/输出参数如下图所示:
函数块使用的静态变量如下图所示:
函数块的代码如下图所示:
这个函数块我在实际项目中测试过,感兴趣的小伙伴可以自己测试下。如果发现有任何问题欢迎留言反馈。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
工控老炮儿
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』