如何同步操作西门子面板与西门子PLC S7-200/300/400 控制器的日期和时间
摘 要: 西门子PLC 到面板的时钟同步。西门子触摸屏操作面板可分为硬件时钟面板(TP/OP/MP270,MP370, MP277,MP377等 ) 和软件时钟面板(XP170X, XP177X,TP/OP277,KTP178Mrico等)。对于软件时钟面板触摸屏, 断电后, 面板的内部时钟就会丢失, 回到出厂时的状态;对于无备份电池的硬件时钟面板触摸屏,断电一段时间后,也会因为维持硬时钟电容的电量耗尽而造成面板内部时钟的丢失。但面板可以通过设置,来定时读取西门子PLC的硬件时钟信息,以保持和PLC时钟一致,这就是西门子PLC到触摸屏面板的时钟同步。
面板到PLC的时钟同步。与上述相反,即用面板的时钟来校准PLC的系统时钟。PLC实际上是得到面板的时钟信息后,调用相应设置时钟的函数,更改自己的系统时钟,以保持和面板时钟一致。在本文所提供的例程中,实现的是用西门子PLC的时间同步西门子触摸屏面板系统时钟,同时可以在面板上修改PLC的时钟,从而间接的修改了面板的系统时钟。
关键词 时钟同步,设置时钟,Smart触摸屏时间
Key Words clock synchronization, clock setting
1. 西门子触摸屏操作面板同西门子S7-200 CPU间的时钟操作
1.1使用西门子PLC S7-200 CPU时钟对操作面板的时钟同步
步骤如下:
(1) 在西门子S7-200PLC编程软件Micro/Win中,周期调用READ_RTC函数,以定时读取S7-200 CPU的系统时钟,将时钟信息存放在V区,比如VB100。
(2) 在触摸屏编程软件WinCC Flexible组态:请先设置好通讯参数;然后在“区域指针”页内,建立“日期/时间PLC”, 指向S7-200 中存放时间信息的区域VW100即可。见下图:
1. 2通过面板修改S7-200 PLC时钟
1. 2通过面板修改S7-200 PLC时钟
大致设置如下:
(1) 在操作面板项目中创建: 1个标志变量(比如:地址为 V20.0)和年、月、日、时、分、
秒 6 个 BYTE变量,分别连接到PLC的连续V区中,比如:VB70 – VB75。
(2) 在 MicroWin中,用标志变量触发来调用SET_RTC,将VB70 – VB75作为时间参数传递
给该函数,来实现通过面板修改S7 PLC时间。
(3) 注意:给S7-200设定系统时间时,不要给时间信息中的“星期”字节赋“0”值,请给
出确切的“星期几”否则会导致时钟同步失败。或将此字节置为常数 1。
2.西门子触摸屏操作面板同S7-300/400 PLC CPU间的时钟操作
2.1 使用西门子S7-300/400 CPU时钟对操作面板的时钟同步
步骤如下:
(1) 在Step7中:新建DB块DB1,在DB1中按顺序定义两个变量:
MyTimeDate 类型为 DATE_AND_TIME
temp 类型为 DWORD
周期调用SFC1(READ_CLK)函数(可以在OB35中调用),以定时读取S7-300 CPU的系
统时钟,将时钟信息存放在变量DB1. MyTimeDate中。
(2) 如果是用WinCC Flexible 组态:请先设置好通讯参数;然后在“区域指针”页内,建
立“日期/时间PLC”, 指向S7-300 中存放时间信息的区域DB1.DBW0
(DB1.MyTimeDate)即可。
2.2 通过面板修改S7-300/400 PLC时钟
大致设置如下:
(1) 在面板上新建: 1个标志变量和年、月、日、时、分、秒 6 个BYTE变量,分别连接
到PLC的DB块中DATE_AND_TIME类型的6个字节(其余字节不用),例如:
DB2.SetDateTime (类型为DATE_AND_TIME)。
(2) 在 Step7,用标志变量触发来调用SFC0(SET_CLK),将DB2.SetDateTime作为时间参
数传递给该函数,来实现通过面板修改S7 PLC时间。
|