>点击慧通工控关注我,设为★星标★不错过每一篇深度好文 前段时间在公众号里写过一篇《如何将触摸屏的时间同步到S7-200SMART PLC》的文章,有兴趣的朋友可以点击查看。本期我们介绍一下如何把WinCC的时钟同步给S7-1500的PLC。 要将WinCC的时钟同步到S7-1500 PLC,方法其实有很多。其中主要一种是配置时间服务器和S7-1500PLC,并激活PLC的时间同步功能,根据项目需求设置刷新时间间隔。这种方法设置起来比较麻烦。 另外一种方法就是采用VBS脚本获取WinCC的日期和时间,并同步写入到PLC时钟的方法。该方法运行稳定、简单易行,并适合所有的PLC。今天给朋友们介绍此种方法的实现过程。 1、新建一个全局变量数据块,在数据块中定义两个变量,WinCC_DT和SYN_DT。这两个变量分别用于WinCC日期型变量的连接和存储转换后的日期型变量。因为WinCC_DT变量不能直接写入到PLC。2、定义一个时钟同步位SYN_Start,数据类型为Bool型。用于开始同步动作。3、定义时区变量。设置好当前时区(+8区)与标准时间的时差(+480分钟)。如下图所示。4、在程序中新建启动组织块OB100,使PLC初次运行时自动运行一次设置时区指令,把PLC时区设置与我们的时区一致。否则可能出现设置的时间与要显示的时间不一致。
5、编写PLC时钟写入程序。当SYN_Start置1时,将WinCC的时钟转换后写入到SYN_DT变量中,然后把该时钟写入给PLC完成时钟设置。1、WinCC变量连接。把PLC变量通过变量管理的“从AS中读取”同步到WinCC变量表中。同步过来的变量如下图所示:2、定义系统信息变量@Date和@Time,用于获取WinCC的系统日期和时间信息。 3、在全局脚本中(VBS-Editor)定义一个DT_SYN动作函数,并编写VBS脚本实现时钟同步功能。 4、设置该动作函数的执行周期为每天的0时0分0秒执行一次。5、如此设置以后,该脚本会每天定时执行一次,可确保PLC时间与电脑时间基本一致。 6、当然也可以在画面上做一个按钮,把示例脚本复制进去。WinCC运行过程中需要手动同步时间的时候便可以点击一下完成时钟同步。用该方法可以设置所有与WinCC通讯的PLC。Function action Dim DT,Date,Time Date=HMIRuntime.Tags("@Date").Read Time=HMIRuntime.Tags("@Time").Read DT=Date&" "&Time HMIRuntime.Tags("Global_Var_WinCC_DT").Write DT HMIRuntime.Tags("Global_Var_DT_Start").Write 1 ‘Msgbox("时钟同步已完成")
您的赞助、在看、转发、分享我都喜欢! 请关注我们,不要错过更多分享。如何把WinCC的参数保存到TXT文件中? | 如何自制S7-200 Smart PLC专用的MicroSD存储卡[精] | WinCC动态生成历史趋势的方法 | 西门子PLC常用的功能块与算法收藏大合集(附下载地址) | | 西门子S7-200 SMART仿真软件介绍二(附软件下载链接) | 西门子S7-200 SMART 实现流水灯程序的两种方法简介(附例程下载) | 西门子S7-1200对模拟量输入和输出模块的读写操作(附例程下载) | S7-PLCSIM Advanced V5.0模拟器的使用详解 | V90伺服驱动器通过FB284功能块与S7-1200的连接(建议收藏) | 西门子WinCC画面中选项组的使用简介 | 西门子WinCC中使用Industrial Gadgets Pro控件实现流水和电机动画效果
|
|