200PLC读取系统时间,按时间完成任务

我现在想用200PLC,用read_rtc读取系统时间,然后与设定的时间比较,例如每天的5点开始工作,这样可行吗?没有用过,需要注意什么,望高人指点!

最佳答案

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

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

专家置评

已阅,最佳答案正确。

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

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

相关推荐

  • Td400c和S7-200(224)链接?

    把td400c和EM277的通讯口接上后能正常使用。当把td400C和224PLC接上后不能链接?是什么原因,望各位高人指点。 最佳答案 这个是需要在向导里面做的,所以S7-200…

    SIMATIC S7-200 2017年6月27日
  • 为什么我的PC ACCESS不支持BOOL数据类型?

    如题,PC ACCESS的版本已是最新(V1.0 SP6)附了两张图,一张我的软件支持的数据类型,一张是网上看见别人的配置——谢谢! 图片说明:  &…

    2021年7月5日
  • V60伺服与200PLC控制

    设备明细:V602KW伺服3台。步进电机1台。选择西门子PLC200PLC进行控制。选择一个CPU外加I/O模块可以吗?选择哪个系列的CUP比较合适。谢谢。本人第一次接这种伺服项目…

    SIMATIC S7-200 2020年11月1日
  • s7200smart数据读取

    如何在smart编程软件中,读取到某个双字VD200(浮点数)的一个瞬间数据?由于数据变化很快,想测量到准确的数据,而不是经过数据状态监控表读取。各位大神,有什么好办法吗? 钻石用…

    SIMATIC S7-200 2021年7月5日
  • 顺序控制指令S断电再上电后为什么不保持?

    怎样做才可以保持?举例说明,谢谢大侠... 最佳答案 在控制要求中,要求在执行过程中,如遇断电则在上电后要有断电恢复功能,即恢复到断电前的加工状态。考虑系统对步进控制位S不提供断电…

    SIMATIC S7-200 2020年11月1日
  • S7-200定时器能准确定时吗?

    S7-200定时器能准确定时吗?在程序中用了100ms的定时器定时,但测试定时时间并不准确。 最佳答案 定时器时间和扫描周期关系很大 100毫秒分辨率 100毫…

    SIMATIC S7-200 2021年7月5日
  • s7-200仿真器怎么的使用

    s7-200仿真器怎么不能使用啊?有哪位高手可以详细讲解啊?感谢啊! 最佳答案 这个软件对于刚学的人来讲,真的挺好的,我受益非浅,我估计你那个仿真软件可能是没有4.0的吧,编程软件…

    SIMATIC S7-200 2021年7月5日
  • S7200SMART报错

    安装好V2.4后,打开就是这个 钻石用户推荐最佳答案 V2.4可以安装到WIN7\WIN10系统上,但是个别版本可能存在安装兼容性问题,可以先查看V2.4支持的系统列表,然后按照到…

    SIMATIC S7-200 2021年7月5日
  • 为什么不能实现一键启停?

    LD     I0.0EULPSA      M0.1R &…

    SIMATIC S7-200 2020年10月31日
  • 有关EM253的控制

    以下这段取自帮助:配置/轮廓表的轮廓块最多可包含25个移动轮廓。欲建立25个以上移动轮廓,您可以通过更改存储在配置/轮廓表指示字中的数值交换配置/轮廓表。上面这段话,是不是可以解释…

    SIMATIC S7-200 2021年7月5日