n
如何同步操作面板与 S7-200/300/400 控制器的日期和时间?
PLC到面板的时钟同步。西门子操作面板可分为硬件时钟面板(TP/OP/MP270,MP370等)和软件时钟面板(XP170X, XP177X,KTP178Mrico等)。对于软件时钟面板和无备份电池的硬件时钟面板, 当断电关机后, 面板的内部时钟就会丢失, 回到出厂时的状态,但面板可以通过设置,来定时读取PLC的硬件时钟信息,以保持和PLC时钟一致,这就是PLC到面板的时钟同步。n
面板到PLC的时钟同步。与上述相反,即用面板的时钟来校准PLC的系统时钟。PLC实际上是得到面板的时钟信息后,调用相应设置时钟的函数,更改自己的系统时钟,以保持和面板时钟一致。在本文所提供的例程中,实现的是用PLC的时间同步面板系统时钟,同时可以在面板上修改PLC的时钟,从而间接的修改了面板的系统时钟。n
实现使用S7-200 CPU时钟同步面板
可以参考下列例程:n
Attachment 1: TimeSyn_200_TP170A_KTP178.rar ( 1247 KB ) ( 1.21 MB )n
a) 用S7 时间同步面板时间
步骤如下:n
1. 在Micro/Win中,周期调用READ_RTC函数,以定时读取S7-200 CPU的系统时钟,将时钟信息存放在V区,比如VB100。n
2. 如果是用WinCC Flexible 组态:请先设置好通讯参数;然后在“区域指针”页内,建立“日期/时间PLC”, 指向S7-200 中存放时间信息的区域VW100即可。见下图:n
3. 如果是用ProTool组态:请先设置好控制器的通讯参数;然后插入“日期/时间-PLC” 区域指针, 指向S7-200 中存放时间信息的区域VW100n
b) 通过面板修改S7 PLC时间,大致设置如下:
1.在面板上新建: 1个标志变量(比如:址为 V20.0)和年、月、日、时、分、秒 6 个BYTE变量,分别连接到PLC的连续V区中,比如:VB70 – VB75。n
2.在 MicroWin中,用标志变量触发来调用SET_RTC,将VB70 – VB75作为时间参数传递给该函数,来实现通过面板修改S7 PLC时间。n
注意:给S7-200设定系统时间时,不要给时间信息中的“星期”字节赋“0”值,请给出确切的“星期几”否则会导致时钟同步失败。或将此字节置为常数 1。n
详细设置参考例程。n
如何实现KTP178 Micro 面板与S7-200的时钟同步
请参见上一问“如何实现使用S7-200 CPU时钟同步Windows-based 面板?”的例程,步骤和方法是相同的。n
如何实现面板与S7-300/400的时钟同步
a) 用S7 时间同步面板时间
步骤如下:n
1. 在Step7中:新建DB块DB1,在DB1中按顺序定义两个变量:n
MyTimeDate 类型为 DATE_AND_TIMEn
temp 类型为 DWORDn
周期调用SFC1(READ_CLK)函数(可以在OB35中调用),以定时读取S7-300 CPU的系统时钟,将时钟信息存放在变量DB1. MyTimeDate中。n
2. 如果是用WinCC Flexible 组态:请先设置好通讯参数;然后在“区域指针”页内,建立“日期/时间PLC”, 指向S7-300 中存放时间信息的区域DB1.DBW0(DB1.MyTimeDate)即可。n
3. 如果是用ProTool组态:请先设置好控制器的通讯参数;然后插入“日期/时间-PLC” 区域指针, 指向S7-300 中存放时间信息的区域DB1.DBW0(DB1.MyTimeDate)即可。n
请参考例程。n
b) 通过面板修改S7 PLC时间, 大致设置如下:
1.在面板上新建: : 1个标志变量和年、月、日、时、分、秒 6 个BYTE变量,分别连接到PLC的DB块中DATE_AND_TIME类型的6个字节(其余字节不用),比如:DB2.SetDateTime (类型为DATE_AND_TIME)。n
2.在 Step7,用标志变量触发来调用SFC0(SET_CLK),将DB2.SetDateTime作为时间参数传递给该函数,来实现通过面板修改S7 PLC时间。n
详细设置参考例程:n
Attachment 2: HMI_S7-300_TimeSyn.rar ( 1411 KB ) ( 1.37 MB )n
重要事项:
样例程序是免费软件。每个用户都可以免费使用,复制或转发该程序。程序的作者和拥有者对于该软件的功能性和兼容性不负任何责任。使用该软件的风险完全由用户自行承担。由于它是免费的,所以不提供任何质保,错误纠正和热线支持。
关键字:
时钟同步,设置时钟
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc338143.html