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日 下午3:34
下一篇 2018年12月3日 下午3:34

相关推荐

  • 能不能带人机

    6ES7-212-1BB23-OXB8能不能带人机介面 最佳答案 可以的,它支持串行通讯和DODBUS主站/从站。和西门子的系列的人机界面都可以通讯的。 提问者对于答案的评价:因为…

    SIMATIC S7-200 2020年11月1日
  • 子程序中的时间继电器

    请问各位高手,我要用西门子200的系统做一个控制多台电机的程序,每台电机的程序是一样的其中都要用到时间继电器,西门子200的子程序中如何实现像300的子程序一样的时间调用呢? 问题…

    SIMATIC S7-200 2021年7月5日
  • 步进电机编程疑惑

    我现在用步进电机控制小车前进,通过脉冲数来确定小车前进的距离。用PTO,编写的程序如下:LD     SM0.0= &n…

    SIMATIC S7-200 2020年11月1日
  • 求PC acess v1.0基础版软件安装包

    不是sp5,sp6等的补丁包,哪位大神有,麻烦发我下呗 问题补充:谢谢大家,问题已解决 钻石用户推荐最佳答案 7天有效  链接:https://pan.baid…

    2021年7月5日
  • 两台200PLC做PPI通信

    两台200PLC做PPI通信,从站不能写程序,怎样将从站的模拟量通道AIW0AQW0的数据传送到主站,谢谢各位大神 问题补充:可以使用指针吗,触摸屏是连接在主站上,PPI通信是成功…

    SIMATIC S7-200 2021年7月5日
  • S7-200 CPU222CN 三个灯全亮(SF,RUN,STOP)

    最近购买20台222cn,在正常开机过程中,突然出现通讯中断,所有输出关闭,面板上三个指示灯全亮。通过电脑无法与PLC通讯,将开关拨至“Stop”,仍然无法通讯。断电上电后故障解除…

    SIMATIC S7-200 2021年7月5日
  • TD200显示不了汉字?

    我用TD200作报警显示,一条消息里面包括字母和汉字,但在TD200上显示出来只有字母没有汉字,请师父给出答案。 问题补充:我用的是V2.1版本,在别的项目中可以显示汉字,应该是向…

    SIMATIC S7-200 2020年11月1日
  • PLC控制电磁阀

    问题:需要用S7-200控制中间继电器、交流接触器、电磁阀、电磁铁等感性负载。请问: 1.继电器的线圈电流为0.2A左右,加了抑流模块,能否使用晶体管输出的PLC(0.7…

    SIMATIC S7-200 2021年7月5日
  • 高速计数器和EM231模块

    请问,1,我用S7-200 高速计数器接收正弦波脉冲信号时,其频率正好是真实频率的2陪,我想问问这是巧合吗?? ,2, 还有就是我用示波器看正弦波信号…

    SIMATIC S7-200 2020年10月31日
  • 200PLC,仪表怎么和WINCC通讯

    现在新接的项目,通讯方式以前没做过。现场PLC通过232/484转换器,用modbus和WINCC通讯现场仪表通过232/485转换器,用modbus和WINCC通讯,仪表不进PL…

    SIMATIC S7-200 2017年11月12日