s7200 smart 如何计算两个节点之间的天数
例如 A事件发生在2020年1月1日 B事件发生在2020年2月2日,通过程序计算出 间隔32天 跪求程序
最佳答案
1、
程序如图。
是按一天一天累计的。所以引入了一个计天的中间变量。
注意看图中的初始化部分,计算部分,一天时间到了重新计时的机制;
秒、分钟、小时、经过了测试,下载后,还要观察,天计数的情况。
程序中用到了优化的定时器,关于优化的定时器请参考以下资料。
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/programming/optimizer%20timer/optimize%20timer.html
2、
另外可以用定时中断的方式写,利用 SMB34/SMB35,任意一个。
定时中断思路:
定时中断的时长假如设为100MS,每产生一次中断,在中断子程序中:
计数值加1;
计数值、天、小时、分钟、秒变量在什么时刻初始化;
计数值加1后的后续处理、怎么进位,也是经较繁索的。
关于定时中断可参考《S7-200 SMART V2.5系统手册》定时中断部分
https://support.industry.siemens.com/cs/document/109745610
图片说明:
提问者对于答案的评价:
谢谢 你的热心回答,我自己采用秒脉冲加计数的方式 3600个脉冲 计数加1 ,加到60进位 待B事件来后 读取秒 分 时 计数器数值。
最佳答案作者回复:
好,解决了就好
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc361200.html