--------报警记录归档段大小的定义--------
首先,wincc的报警记录是存储在由多个分段组成的循环日志中的。用户可以在 “运行系统设置>记录” 对话框中定义段的大小,段的大小有2个限制条件,一个是时间范围和另一个是占用磁盘空间大小。根据“所有段”和“单个分段”的大小也就确定了段的数目(数目=所有段大小/单个分段大小)。
注意: 段的数量不宜过多,已链接的分段过多可能会导致在启动和关闭运行系统的过程中等待时间过长!
关于段大小的说明:
无过程值和注释的每条报警消息需要至少172字节的硬盘空间。带有最大数量过程值和注释的每条消息需要4012字节的硬盘空间。由于不同项目添加的“系统块”、“用户文本块”、“参数块”的数量不同,而且报警发生的频率并不确定,只能大致预估一个大小。
关于 “首次更改记录段的时间”的说明:
以上图为例,“首次更改记录段的时间”为“2020年2月3日4:00”。即分段首次更改的时间为2020年2月3日4:00。之后,将按照“单个分段的时间范围” 中定义的时间周期性的生成新片段,即每天的4:00生成新片段。如果“单个分段的时间范围”设置为“1天”,则将在每天的4:00生成新片段;如果“单个分段的时间范围”设置为“1月”,则将在此后每个月的3日4:00生成新片段。
注意:
1. “单个分段的最大尺寸”不应超过2GB。
2. 需要保证项目中所有片段(包括“报警记录”、“快速数据记录”、“慢速数据记录”)的总和不能超过某一个固定值。经过测试比较,SQL数据库所能连接的归档片段最大可行的数量为200个。归档片段个数不能过多的超过这个数量,否则会影响Microsoft SQL server运行性能。
运行特点:
报警记录连续写入到第一个分段中 (1)。如果达到该分段的组态大小或超出其时间跨度,则系统会切换到下一个分段 (2)。当所有段已满时,第一个段中的数据将被覆盖 (3)。为了使数据不被覆盖,可以将其先交换出来(备份)。那么问题来了,怎么才能备份呢?且继续向后阅读。
----------题外话:报警记录归档的备份---------
wincc提供了报警记录的备份功能,可以备份已完成的报警归档数据库文件。具体方法如下:
对于分段时间超过“所有段的时间段”或分段文件尺寸超过“所有段的最大字节”的数据,运行项目中将不再保存,我们也可以组态备份来存储更多的归档数据。
打开“运行系统设置>记录”对话框。
勾选“备份”,设置“路径”来保存备份数据;只有当“路径”不存在或不可用时,才会通过“备选路径”来保存超出的数据;
如果勾选“备份到两个路径”,备份数据同时写入“路径” 和 “备选路径”,直到把整个硬盘写满。
注:设置“备选路径”前需要勾选“备份到两个路径”,设置完“备选路径”以后用户可以决定是否要激活“备份到两个路径”。
如果需要进行数据验证,可以同时勾选“备份”和“启用签名”,这样 WinCC 在将每个分段换出时,会对其进行签名;在将该分段重新连接到 WinCC 时,可以检测出文件在换出之后是否被做了修改。
注:勾选“启用签名”后,“单个分段的最大尺寸”不得超过200MB。
------题外话:备份报警记录的加载方法------
备份的归档数据并不能直接在项目中加载,需要组态连接归档,具体方法如下:
方法1:使用“报警视图”控件。
在“报警视图”控件属性窗口中,依次选择“属性>工具栏>工具栏-按钮”,然后勾选“连接备份”、“断开备份连接”按钮。然后在 WinCC 运行系统中,通过点击控件工具栏上的这两个按钮,就可以连接或者断开备份的归档文件了。
方法2:通过“CommonArchiving”文件夹。
WinCC RT Professional的运行项目的路径下有一个名为“CommonArchiving”的文件夹,WinCC运行系统会自动连接该文件夹内的备份文件。用户可以把备份出来的片段直接复制粘贴到该文件夹内,或删除该文件夹内的备份文件来实现连接或断开备份的归档文件。
--------报警控件的属性--------
回归到报警记录加载慢的问题上,我发现报警控件有这么个属性:最大记录数,组态时没有注意到。我现在设置的是10000,看着挺吓人的,回头改一下这个数字,看看有没有效果。
领取专属 10元无门槛券
私享最新 技术干货