S7-300读写时钟和时钟同步的步骤解析

描述

读写时钟和时钟同步

STEP 7中有关时间、日期的数据类型

系统时间

STEP 7中有关时间、日期的数据类型

1. 类型

TIME:IEC time

S5TIME:SIMATIC time

DATE:IEC date

TIME_OF_DAY:time

DATE_AND_TIME:DT

2. 各数据类型占用字长、格式及范围如下:

STL编程

表 1   时间数据类型

3. S5TIME (Time Duration) 的格式及访问

S5TIME是用BCD码保存的,在数据存储区占用两个连续的字节。下图给出的例子中时间值为127,时基为1秒。
STL编程

图1 S5TIME的格式

当使用S5TIME时,定义数值的范围为0~999,而且要指明使用的时基。时基指定了时间单位。

S5TIME时基及相应的时间范围如下:

时基 BCD码 时间范围
10 ms 0 10 ms - 9 s 990 ms
100 ms 1 100 ms - 1 min 39 s 990 ms
1 s 10 1 s - 16 min 39 s
10 s 11 10 s - 2 hr 46 min 30 s


表2 S5TIME 时基

4. 定义时间值的两种方式:

1.W#16#wxyz

w = 时基 (即时间间隔或精度)

xyz = BCD格式的时间值

这种方式只能用于STL编程。

2.S5T#aH_bbM_ccS_dddMS

a = 小时, bb = 分钟, cc = 秒, dd = 毫秒

这种情况下时基自动选择, 数值为该时基下取整去尾到下一个较低值。

您可以输入的最大值为9,990 秒,或2H_46M_30S。

如何S5Time和Time相互转换?

请参考热线故事:整数INT_时间S5Time及Time相互转换的困惑

系统时间

如何设置系统时间?

Manager页面下,菜单栏PLC---诊断/设置---设置时钟(需要联机状态下操作)

STL编程

图2 设置时钟1

STL编程

图3 设置时钟2

勾选"来自PG/PC",点击应用。即可将PC端的时钟同步到PLC。(PC端时钟先要设置好)

如何在程序中读取,写入系统时间?

请参看如下文档: 

1.用 SFC1 (READ_CLK) 读取日期和时间以及如何用 SFC0 (SET_CLK) 设定日期和时间

2.Step7中有关时间和定时器的使用和例程(具体3.2章节)

注意:使用SFC0和SFC1 设定和读取日期和时间,因设置和读取系统时钟都是BCD格式,有时需要进行整数和BCD之间的转换把系统时间转换成十进制显示或设置。

读取系统时钟并按照十进制显示,详细请参考上述文档1的解释。

下列程序中,DB1.DBB0~DB1.DBB8分别对应需要显示的十进制表示的:年/月/日/时/分/秒/毫秒/星期

STL编程

STL编程

按照十进制设置系统时钟

下列程序中DB2.DBB0~DB2.DBW6分别对应设置的十进制地址:年/月/日/时/分/秒/毫秒,星期不需要设置。

STL编程

STL编程





审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分