得到准确ms级的代码执行周期,做自己的多功能定时器块

时间:2023-03-09来源:佚名
//************************
//****得到代码执行周期*******
//************************
1、OB1的临时变量区提供了OB1_PREV_CYCLE INT 上一次扫描的运行时间(ms),,长时间的累积会有不少的误差。为什么呢,因为系统提供给你的数值可能是有舍弃小数后值。而且提供的是用户程序运行时间,是否包含接口扫描、通讯、映射等时间不得而知。你可以通过累积OB1_PREV_CYCLE 和sfc64的后台时间比较就知道,两个的差别。
我的方法是通过读取系统时钟,这样无累积误差,(SFC64提供正向增长的双字运行时间)
//****获得系统时钟和程序执行周期***
CALL SFC 64 (
RET_VAL := LD 96);
L LD 96;
L #sysT;
-D ;
JPZ posA; //计数满了,就少计一个周期,影响可以忽略
L #cycT;
posA: T #cycT;
L LD 96;
T #sysT;
//-------------------
消除了系统提供时钟的累积误差。误差最大一个执行周期(3~10ms);
//***************************
//*******多功能定时器********
//***************************
嵌入程序的定时器,是实现功能块封装的重要部分,实现方便的移植
系统提供的IEC定时器,复位比较麻烦,必须再次执行;
自制FB功能块可同时方便实现以下几个功能
1、开关量滤波功能;延时接通延时断开,也可处理有干扰波动值阀值比较;
2、Ton定时器;(TofSet=0)
3、Tof定时器;(TonSet=0)
定时精度最小1ms,实际精度是一个周期;
定时范围2,147,483,647ms(596小时);
//--以下是写的FB块,测试用了好长时间,也还能精简,抛砖引玉;欢迎指教;
//----
//符号注释:开关量滤波,单位ms;
//计数到后, tonAct(DINT)/tofAct(DINT)不再递增。设定值小于等于0,输出同步输入。
//设定时间=set*ration,单位ms。电平使能,复位结束后,使能还在则重新计时;


VAR_INPUT
TonSet : INT ; //设定延时启动值,默认为0无延时;DIW0
TofSet : INT ; //设定延时断开值,默认为0无延时;DIW2
Ratio : INT := 100; //设定值倍率1=1ms(默认100ms)DIW4
CycT : INT ; //OB1上次扫描周期,单位ms,DIW6
Rst : BOOL ; //复位计时器内部保存值和输出,DIX8.0
En : BOOL ; //需要滤波的DI,DIX8.1
END_VAR
VAR_OUTPUT
OK : BOOL ; //滤波输出,DIX10.0
END_VAR
VAR
tonAct : DINT ; //DID12
tofAct : DINT ; //DID16
END_VAR
//*************************************
BEGIN SET ;
L l#0;
A #Rst;
JCN ton;
R #OK;
T #tonAct;
T #tofAct;
BE ;
ton: A #En;
JCN tof;
T #tofAct;
A #OK;
BEc ;
L #Ratio;
L #TonSet;
*I ; //不要用*D,如果设定错误成负数,会错误被解释成正的大值;
L #tonAct;
<=D ;
S #OK;
BEC ;
L #CycT;
D ;
T #tonAct;
BE ;
tof: T #tonAct;
AN #OK;
BEc ;
L #Ratio;
L #TofSet;
*i ; //不要用*D,如果设定错误成负数,会错误被解释成正的大值;
L #tofAct;
<=D ;
R #OK;
BEC ;
L #CycT;
D ;
T #tofAct;
BE ;
END_FUNCTION_BLOCK

相关阅读

电容麦噪音很大的原因和解决方案

本文主要是关于电容麦的相关介绍,并着重对电容麦噪音很大的原因和解决方案进行了详尽的阐述。 电容麦噪音很大的原因和解决方案。 我想要声音更好听点!所以买了个好的电容麦...
2023-03-31
电容麦噪音很大的原因和解决方案

一文看懂三相异步电动机接触器联锁的正反转控制原理

本文介绍了三相异步电动机接触器联锁的正反转控制的方法,三相异步电动机的正反转控制方式、三相异步电动机正反转控制的安全措施、接触器联锁的正反转控制线路的工作原理等知...
2023-06-26
一文看懂三相异步电动机接触器联锁的正反转控制原理

典型主接线分析(火力发电厂、水电站、变电所),收藏学习

一. 火力发电厂电气主接线 火力发电厂可分为两大类: 地方性火电厂 区域性火电厂 火力发电厂 (1) 地方性火力发电厂 建设在城市或工业负荷中心,且多为热电厂,在为工业和民用提供...
2023-07-05
典型主接线分析(火力发电厂、水电站、变电所),收藏学习

电工新手必备干货——电路设计和家庭电路控制系统大全

电路设计 与电路工程明确用电需求,出设计图纸。 所有线路应遵循平竖直,最短原则,减少弯线避免后期维修困难。 空调,厨房,卫生间,客厅,卧室,电脑及大功率电器等用专有的...
2023-06-11

电机烧了,不问缘由先罚电工500:最伤人心的管理,叫“不讲道理”

工厂车间,机器轰鸣。 一台电机突然停转,冒出焦糊味,烧坏了。 这本是生产中再普通不过的设备故障。 正常的逻辑是:停机、排查、找原因、定责任、修设备、防再发。 可有些领导的逻...
2026-04-14

热销商品

四氟包覆/FEP/PTFE包覆胶O型圈全氟醛FFKMO型圈耐化学腐蚀氟胶

四氟包覆(FEP/PTFE)O型圈及全氟醚(FFKM)O型圈是高性能密封解决方案,专为极端化学环境设计。FEP或PTFE包覆氟橡胶(FKM)芯材的O型圈兼具外层优异的耐化学腐蚀性、抗溶胀性...
5

100%桑蚕丝香云纱饰品发圈发夹口罩眼罩发带腰封直播专拍单拍无效

100%桑蚕丝香云纱饰品系列,精选天然桑蚕丝与非遗香云纱工艺匠心打造,质感柔滑亲肤,光泽雅致,尽显东方韵味。包含发圈、发夹、口罩、眼罩、发带、腰封等多款实用配饰,适...
0.85

日本田岛美工刀工业用重型全钢加厚壁纸刀切割工具刀进口美工刀架

日本田岛美工刀是一款专为工业用途设计的高品质切割工具,采用重型全钢加厚结构,具备卓越的耐用性与稳定性。其刀架由进口优质钢材精工打造,防锈耐磨,可长时间保持锋利...
15.3

氟胶星型密封圈X型圈线径1.78/2.62/3.53/5.33氟橡胶星形圈X-ring

氟胶星型密封圈(X型圈)采用高性能氟橡胶(FKM)材料制成,具有优异的耐高温、耐油、耐化学腐蚀及耐老化性能,广泛应用于汽车、航空航天、液压系统及高端机械设备中。其独特...
2

大量现货 NBR耐油 密封圈 O型圈 橡胶密封圈

大量现货供应NBR耐油密封圈、O型圈及橡胶密封圈,采用优质丁腈橡胶(NBR)材质,具有优异的耐油性、耐磨性和抗压缩永久变形性能,适用于-30℃至+120℃的工作环境。产品广泛...
1

网站栏目