在屏上设置8个时间段,比如时间段1为00:00-07:30,时间段2为07:30-10:45. ,时间段3为10:45-12:00.
读S7-1200的系统时间然后判断当前时间在哪个时间段内。哪位老师能给个编程的思路呀?谢谢
问题补充:
我试了一下,只比较“分钟”就可以实现。
1、将设定时间段的的“小时”和“分钟”分别放入两个数组。2、用FIELDREAD将这两个数组中的数读出,然后“小时”×60+“分钟”存入第三个数组。将这一步循环8次即可将8个时间段都换算成分钟且存入第三个数组。
3、将当前时间也换算成“小时×60+分钟”的形式,与第三个数组进行比较,即可得出当前时间段。
最佳答案
本人多次在实际应用中遇到这种情况,对与这个问题PLC编程较为繁杂。本人多次采用的方案是采用时钟控制器,这种产品市场上有许多,价格很便宜。可上网搜,即有很多。
1、例如:路灯时钟控制器。将时钟控制器设置为你所需的时钟段,这种时钟控制器在设定的时钟段内输出一个高电平,反之,不在设定的时钟段内输出一个低电平。
2、将该高电平作为PLC一个输入点的信号,PLC根据该输入信号进行相应的处理。
3、如上述减少了PLC的程序量且计时精确。并可配置多个时钟控制器,十分简便。
4、尤其对于这种小型的PLC系统,设计PLC控制系统不要一股脑将所有控制任务全加到PLC来实现,采用”软、硬兼施“才是正路,合理均衡PLC的CPU处理负担才算会应用PLC。
提问者对于答案的评价:
谢谢各位老师的回答。
专家置评
可以参考工程师: LHLHLHLH和 WWCWWC的建议!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc202886.html