定时功能

我需要程序运行2个月就不能运行需要怎么用定时器和计数器

最佳答案

1 例如当时间达到09年6月3日20点31分20秒的时候,CPU转到停止,前提是CPU有硬件时钟,并且正确设置了时间。
LD     SM0.5
EU
TODR   VB0      //读取时间

LDB>=  VB0, 16#09        //读取的时间是BCD码,这样用省去格式转换
AB>=   VB1, 16#06
AB>=   VB2, 16#03
AB>=   VB3, 16#20
AB>=   VB4, 16#31
AB>=   VB5, 16#20
STOP

2 如果定时开启关闭外部设备,那PLC可以轻松完成。
例如每天早上6点到晚上8点开机
LD     SM0.5
EU
TODR   VB0

LDB>=  VB3, 16#06
AB<=   VB3, 16#20
=      Q0.0 

3 PLC运行一段时间停止
LD     SM0.4
EU
INCD   MD0   //每分钟累加一次,

LDD=   MD0, 4320  //3天后CPU停止,4320=3天*24小时*60分钟
STOP                 //在系统块里将MD0设置为断电保持,那么计时不受停电影响,停电自动保存计时时间。

关键是如何读系统时钟:
S7-200的硬件实时时钟可以提供年、月、时、分、秒的日期/时间数据。
CPU221、CPU222没有内置的实时时钟,需要外插“时钟/电池卡”才能获得此功能。CPU224、CPU226和CPU226 XM都有内置的实时时钟。


 为了提高运算效率,应当避免每个程序周期都读取实时时钟。实际上可读取的最小时间单位是1秒,可每秒读取一次(使用SM0.5上升沿触发读取指令)。

 使用程序读取的实时时钟数据为BCD格式,可在状态图中使用十六进制格式查看。

CPU靠内置超级电容(+外插电池卡)在失去供电后为实时时钟提供电源缓冲;缓冲电源放电完毕后,再次上电后时钟将停止在缺省值,并不开始走动。

要设置日期、时间值,使之开始走动,可以:

用编程软件(Micro/WIN)的菜单命令PLC > Time of Day Clock...,通过与CPU的在线连接设置,完成后时钟开始走动 
编用户程序使用Set_RTC(设置时钟)指令设置 
 Micro/WIN可以通过任何编程连接实现实时时钟的设置。

使用 S7-200 的 READ_RTC(读取实时时钟)和 SET_RTC(设置实时时钟)指令时, 读取和设置的数据格式都是 BCD 码的。如果觉得不便计算、处理,可使用 Clock Integer 指令库。 


要使用 Clock_Integer 指令库,须遵循下列步骤:


请见《《西门子 S7-200·LOGO!·SITOP 参考》V0.92版(更新版)(2008.02.15)   》,其中有关如何读系统时钟及如何添加库指令的说明,下载:  
http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=A0136
参考资料:http://www.ad.siemens.com.cn/service/answer/solution.aspx?Q_id=97758&cid=1028

提问者对于答案的评价:
谢谢

专家置评

已阅,最佳答案正确。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc223177.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年3月6日
下一篇 2018年3月6日

相关推荐

  • USS协议占用地址的问题

    我把协议库添加后,使用此协议。打开符号表,发现里面的地址为空。我想问1、此协议库占用的地址默认是多多少?怎么看?能否修改地址区间?2、符号表里的地址空着就可以? 问题补充:找到答案…

    2021年7月5日
  • S7200PLC问题

    S7200 PLC和原程序进行比较,程序和系统块都通过,数据块比较提示:数据块格式/或保护状态不同。想问下是怎么回事。客户用着有时好有时死机。我把PLC程序上载上来进行比…

    SIMATIC S7-200 2020年11月1日
  • S7-200PLC密码问题

    公司有两台同样的设备用的是S7-200的PLC,现在因为设备进水其中一个PLC因为电池没电导致程序丢失,在好的PLC上传程序时发现需要密码才能上传程序,厂家的工程师已经离职,现在无…

    SIMATIC S7-200 2021年7月5日
  • 200写入和强制:写入vb0为2时,vb0扫描周期变化

    写入和强制:写入vb0为2(写入时赋值一次),但是在下一个周期vb0会不会被自动恢复为0吗?我知道强制不会恢复(它是循环赋值) 最佳答案 不会,强制相对于位的。对输入与输出都有效。…

    SIMATIC S7-200 2020年10月31日
  • 关于S7-200 224CPU和组态王的通讯问题

    公司几台挤出机,用的224CN和KP700精智面板通过DP接头的3和8脚通讯。现在想和组态王通讯,哪位大神能指点下:224CN只有一个串口,PLC、精智面板、组态王如何连接?采用什…

    SIMATIC S7-200 2017年11月26日
  • 串口调试

    哪位前辈提供一个串口调试软件的下载地址,感激! 最佳答案 捷通串口调试软件 4.0 http://www.onlinedown.net/soft/35817.h…

    SIMATIC S7-200 2021年7月5日
  • 关于地址的问题

    CPU224,VB1000,VB1001放I0.0-I1.5,14个点,后2位设置为空位,意思是不是IB0,成块移动字节(BMB)8位到VB1000,IB8-IB15移动到VB10…

    SIMATIC S7-200 2021年7月5日
  • s7-200的MODBUS RTU协议问题

    各位老师,您好,我是个新手,现在在做一个项目,就是用西门子s7-200的与一个modbus协议,我弄了将近一个月了,还是弄不好啊!请大家帮帮忙啊! 我用的是s7-200中…

    SIMATIC S7-200 2020年11月1日
  • 系统时间问题

    向各位请教了:怎么矫正系统时间呢我用的是S7200的CPU224,用时钟命令设怎么保证准确呢,就是我设的现在时间它输进去应该总有时差的吧,我想将采集数据的时间一起发到上位机,应该如…

    SIMATIC S7-200 2021年7月5日
  • 两台S7200PLC进行PPI通讯,主站从站数据访问

    请问: 在S7200硬件组态时,如果从站地址为I2.0,主PIC就可以直接在程序中利用他吗? 还需要什么转换吗?是不是必须影射到V存储区,一直很困惑?有人知道说…

    SIMATIC S7-200 2021年7月5日