S7-200 SMART的硬件实时时钟可以提供年、月、日、时、分、秒的日期/时间数据。
CPU CR40 AC/DC/Relay 没有内置的实时时钟,CPU SR20、CPU SR40、CPU ST40、CPU SR60、CPU ST60支持内置的实时时钟,CPU断电状态下可保持7天。
S7-200 SMART CPU SR20的时钟精度是± 120 秒 / 月,CPU SR40、CPU ST40、CPU SR60、CPU ST60的时钟精度是 120 秒 / 月。
S7-200 SMART CPU 靠内置超级电容为实时时钟提供电源缓冲,保持时间为典型值7天,最小值6天。缓冲电源放电完毕后,再次上电后时钟将停止在缺省值,并不开始走动。
注意:因为 CPU CR40 无内置超级电容,所以实时时钟无电源缓冲,尽管用户可以使用READ_RTC 和 SET_RTC 指令设置日期/时间数据,但是当 CPU CR40 断电并再次上电时,这些日期/时间数据会丢失,上电后日期时间数据会被初始化为2000年1月1日。
为了提高运算效率,应当避免每个程序周期都读取实时时钟。实际上可读取的最小时间单位是1秒,可每秒读取一次(使用SM0.5上升沿触发读取指令)。
使用程序读取的实时时钟数据为BCD格式,可在状态表中使用十六进制格式查看。
要设置日期、时间值,使之开始走动,可以:
用编程软件(Micro/WIN SMART)的菜单命令PLC > SET Clock,通过与CPU的在线连接设置,完成后时钟开始走动
编用户程序使用Set_RTC(设置时钟)指令设置
Micro/WIN SMART 可以通过任何编程连接实现实时时钟的设置。
用 Micro/WIN SMART 设置时钟
通过编程软件 Micro/WIN SMART 设置 CPU 的时钟,必须先建立编程通信连接。
在 Micro/WIN SMART 菜单中选择“PLC “- >”设置实时时钟”,打开“PLC 时钟操作”对话框:
图 1. PLC 实时时钟设置界面
图中:
设置日期:选择需要修改的数据字段,直接输入数字,或者使用输入框右侧的上下按钮调整
设置时间:选择需要修改的数据字段,直接输入数字,或者使用输入框右侧的上下按钮调整
读取 PC 时钟:按此按钮可以读取安装 Micro/WIN SMART的 PC 机的本机时间
读取 PLC 时钟:按此按钮读取 PLC 内部的实时时钟数据
根据需要选择夏时制调整选项
按“设置”按钮,将上面的时钟日期数据写入 PLC
时钟读写指令缓冲区格式
Read_RTC(读时钟)和Set_RTC(设置时钟)指令靠数据缓冲区在用户程序与硬件芯片间交换数据,它们的缓冲区格式相同。
表1. 时钟缓冲区
地址偏移
T
T+1
T+2
T+3
T+4
T+5
T+6
T+7
数据内容
年 月 日 小时 分钟 秒 0 星期
数值范围
BCD
(16进制)
00-99 01-12 01-31 00-23 00-59 00-59 0 0-7*
* 1 = 星期日,7 = 星期六,0 = 表示禁止计星期
T 就是缓冲区的起始字节地址,可以由用户自由设置(在CPU允许的V存储区范围内)。如果设置T为VB100,那么读取时钟后,“年”的信息就会保存在VB100中,“月”保存在VB101中。