加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

施耐德ST语句计算最近一个小时的均值

(2024-11-13 10:27:22)
标签:

施耐德

st编程

最近一小时均值

unity

分类: 施耐德PLC
这一篇学习笔记先在博客园发过,这里再次记录一下。
昨晚学习练习了ST语言做最近60秒的分钟均值,今天继续做最近一小时的均值,1秒采集一次数据。在昨晚程序上增加功能,新建一个导出的功能块类型Average_Hour,定义下面的变量:
施耐德ST语句计算最近一个小时的均值

旗下新建一个程序段Average_Hour,使用ST编程

Minute1:=BCD_TO_INT(%SW51);
Minute:=mod_int(Minute1,100);
Second1:=BCD_TO_INT(%SW50);
Second:=div(second1,100);
R_TRIG_0 (CLK := %s6,
Q => Trig);
IF Trig then
hour[Minute,Second]:=PV;
SUM:=0.0;
for i:=0 to 59 do
for j:=0 to 59 do
sum:=sum+hour[i,j];
end_for;
end_for;
Average_Hour:=sum/3600.0;
end_if;

 

前面四行是获取当前分钟和秒的数值,后面程序很好理解。

做完后就可以调用这个功能块了。


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有