电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 梯形图实例 >> 正文

西门子200Smart PLC实时时钟功能  时钟指令SET_RTC和READ_RTC实例梯形图详解

作者:佚名    文章来源:本站原创    点击数:    更新时间:2023/6/10

读取和设置实时时钟

LAD/FBD

STL


说明


TODRX

T

读取扩展实时时钟指令从 PLC 中读取当前时间、日期和夏令时组态,








并将其装载到从 T 所分配地址开始的 19 字节缓冲区中。





 

TODWX

T

设置实时时钟指令使用字节地址 T 分配的 19 字节时间缓冲区数据将新的时间、日期和夏令时组态写入到 PLC 中。














ENO = 0 时的非致命错误

受影响的 SM 位

·

0006H 间接地址

·

0007H T 数据错误





输入

数据类型

操作数





T


BYTE

IB、QB、VB、MB、SMB、SB、LB、*VD、*LD、*AC

 

 说明

READ_RTC、SET_RTC 编程提示

不接受无效日期。 例如,如果您输入 2 月 30 日,则将发生非致命日时钟错误 

(0007H)。不要在主程序和中断例程中使用 READ_RTC/SET_RTC 指令。 执行另一个

READ_RTCX/SET_RTCX 指令时,无法执行中断例程中的 READ_RTCX/SET_RTCX 指

 

令。在这种情况下,系统标志位 SM4.3 会置位,指示尝试同时对日时钟执行二重访问,导致 T 数据错误(非致命错误 0007H)。

CPU 中的日时钟仅使用年份的最后两位数,因此 2000 年表示为 00。但使用年份值的用户程序必须考虑两位数的表示法。

 

2099 年之前的闰年均可正确处理。

8 字节时间缓冲区的格式,从字节地址 T 开始

 所有日期和时间值必须采用 BCD 格式分配(例如,16#12 代表 2012 年)。 00 至 

 99 的 BCD 值范围可分配范围为 2000 至 2099 的年份。

T 字节

说明

数据值

0

00

至 99(BCD 值)20xx 年: 其中,xx 是 T 字节 0 中的两位数 BCD 值




1

01

至 12(BCD 值)

2

01

至 31(BCD 值)

3

小时

00

至 23(BCD 值)

4

00

至 59(BCD 值)

5

00

至 59(BCD 值)

6

保留

始终设置为 00

7

星期几

使用 SET_RTC/TODW 指令写入时会忽略值。



通过 READ_RTC/TODR 指令进行读取时,值会根据当前年/



月/日值报告正确的星期几。



1 至 7,1 = 星期日,7 = 星期六(BCD 值)

 

超出断电时长对 CPU 时钟的影响

超出断电时长后,CPU 将初始化为下表所示的时间值。

 

日期

时间

星期几




2000 年 1 月 1 日

00:00:00

星期六

 

 

 说明

 紧凑型 S7-200 SMART CPU 型号 CR40 和 CR60 不含 RTC(实时时钟)或超级电容

 

可借助 READ_RTC 和 SET_RTC 指令设置 CPU 型号 




CR40 和 CR60 的年份、日期和时

 


间值,但这些值会在下一次 CPU 断电再重新上电时丢失。 上电时,日期和时间将初始化为 2000 年 1 月 1 日。


 

 

 

1、SET_RTC(设置时钟)指令
定义连续8个字节的数据区,每个字节分别是 年、月、日、时、分、秒、保留、星期,每个字节都是BCD码,组合起来的时钟必须时合法的时钟。
写时钟指令需要严格按照8个字节的时钟缓冲区格式,设置相应的数据单元,任何不合格的数据都可能造成不能写入的现象。注意数据的格式必须是BCD格式,可以说是将10进制数换成16进制表示,如16#59(59H)就是59(秒/分等)。
 执行写时钟指令要保证缓冲区所有字节都包含合法数据;仅修改某些数据时,其他字节不能包含非法数值,否则会发生错误。
写时钟指令必须使用一次性的脉冲(沿)触发条件,不能持续激活写时钟指令。
2、用库指令SET_RTC_I ,它也是8个字节,只是用单节是十进制整数格式存储,不用 BCD 码,指令会将其换成BCD码,同样要用沿调用。

3、READ_RTC(设置时钟)指令
定义连续8个字节的数据区,每个字节分别是 年、月、日、时、分、秒、保留、星期,每个字节都是BCD码,组合起来的时钟必须时合法的时钟。

时钟指令SET_RTC和READ_RTC实例梯形图详解 


READ_RTC读取及运算实例梯形图详解 

 

Tags:时钟指令,200SMART,SET_RTC,READ_RTC,实时时钟  
责任编辑:admin
  • 上一篇文章:
  • 下一篇文章: 没有了
  • 请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
    1分 2分 3分 4分 5分

    还可以输入 200 个字
    [ 查看全部 ] 网友评论
    推荐文章
    最新推荐
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
    返回顶部
    刷新页面
    下到页底
    晶体管查询