首页 理论教育 「技巧大揭秘」:实时时钟处理指令优化

「技巧大揭秘」:实时时钟处理指令优化

时间:2023-06-27 理论教育 版权反馈
【摘要】:实时时钟处理类指令主要是对时钟数据进行运算、比较,还可以执行可编程序控制器内置实时时钟的时间校准和时间数据格式转换。图5-93 读实时时钟数据指令TRD表5-24 实时时钟特殊寄存器4.写实时时钟指令TWR将设定的时钟数据写入可编程序控制器内作为实时时钟。图5-94 写实时时钟指令表5-25 写实时时钟寄存器表注:D8018(年)可以切换为4位模式。因此,请提前数分钟向源数据传送时钟数据,当到达正确时间时,立即执行指令。

「技巧大揭秘」:实时时钟处理指令优化

实时时钟处理(FNC160~FNC169)类指令主要是对时钟数据进行运算、比较,还可以执行可编程序控制器内置实时时钟的时间校准和时间数据格式转换。下面主要介绍时钟比较和时钟读写指令。

1.时钟数据比较指令TCMP(FNC160)

时钟数据比较指令是将基准时间和时间数据进行大小比较,根据比较的结果控制位元件的ON/OFF。

TCMP指令表现形式如图5-91所示,当X000为ON时,源数据[S1•]、[S2•]和[S3•]指定的时间(本例中为11时40分20秒)与[S•]起始的3点时间数据(时、分、秒)相比较,比较结果决定[D•]起始的3点位软元件(本例中的M10、M11、M12)的ON/OFF状态。

978-7-111-59091-0-Chapter05-125.jpg

图5-91 TCMP指令示例

指令执行结果不受输入条件(X000)的变化而变化。或者说由于执行条件X000的断开,M10~M12保持在X000为OFF之前的状态。

使用可编程序控制器的实时时钟数据时,可将[S1•]、[S2•]、[S3•]分别指定D8015(时)、D8014(分)、D8013(秒)。

2.时钟数据区间比较指令TZCP(FNC161)

将上下2点比较基准时间(时、分、秒)与以[S•]开头的3点时间数据(时、分、秒)进行比较,根据比较结果使[D•]开始的3点位软元件ON/OFF。指令示例如图5-92所示。

978-7-111-59091-0-Chapter05-126.jpg

图5-92 TZCP指令示例

3.读实时时钟数据指令TRD(FNC166)

读实时时钟数据是指将可编程序控制器内时钟数据读出的指令,如图5-93所示。

图5-92中当指令执行时,按照表5-24中的格式将可编程序控制器内保存实时时钟数据的特殊寄存器(D8013~D8019)中的内容读到D10~D16中,表中的顺序是固定不变的。其中D8018(年)为公历年的后两位,如果读取的数据为17,则为1917年,如果要改为2017年,则必须要向D8018中写入2000,写入方法参见TWR指令。

978-7-111-59091-0-Chapter05-127.jpg

图5-93 读实时时钟数据指令TRD(www.xing528.com)

5-24 实时时钟特殊寄存器

978-7-111-59091-0-Chapter05-128.jpg

4.写实时时钟指令TWR(FNC167)

将设定的时钟数据写入可编程序控制器内作为实时时钟。如图5-94所示,为了写入时钟数据,必须预先用FNC12(MOV)指令向[S•]指定的起始的7个字元件写入数据,见表5-25,表中的PLC内的特殊寄存器的顺序是不能改变的。

978-7-111-59091-0-Chapter05-129.jpg

图5-94 写实时时钟指令

5-25 写实时时钟寄存器表

978-7-111-59091-0-Chapter05-130.jpg

注:D8018(年)可以切换为4位模式。

执行FNC167(TWR)指令后,会立即变更实时时钟的时钟数据,变为新时间。因此,请提前数分钟向源数据传送时钟数据,当到达正确时间时,立即执行指令。另外,利用本指令校准时间时,无须控制特殊辅助继电器M8015(时钟停止和时间校准)。

如设置2012年1月23日(星期一)20时00分18秒的程序,可以采用两种方法,方法一如图5-95所示,采用TWR写入程序。方法二如图5-96所示,直接向各特殊寄存器中写入时钟数据。

978-7-111-59091-0-Chapter05-131.jpg

图5-95 实时时钟设置实例程序一

978-7-111-59091-0-Chapter05-132.jpg

图5-96 实时时钟设置实例程序二

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈