1、第5章 iFIX报警、调度和图表 5.1 iFIX报警5.2 iFIX调度5.3 iFIX实时数据趋势5.4 iFIX图表5.5 iFIX报表随着现场的运转,过程条件是不断变化的。操作员需要监控这些条件来确保现场安全运转,并且避免浪费原料或损坏设备。通过启用 iFIX报警系统,能够安全高效地管理现场。一旦允许报警,iFIX将发送报警来报告需要做出应答的潜在有害过程条件。这通常会在过程值超出其预定义的界限时发生。例如储罐的液位过高,就是一个操作员必须作出回应的报警条件。iFIX 还发送消息以报告不需要响应的非严重信息。例如,当罐的输入阀打开或关闭时,iFIX 会发送消息通知操作员阀门的状态已更改
2、。iFIX 在以下情况发送消息通知操作人员:操作员输入一个值;发生过程数据库事件;发生系统级事件,比如iFIX完成其启动序列。使用报警和消息,能够创建一个可靠的、灵活的、容易使用的、能够报告潜在问题和系统活动的系统。当操作员对报警做出响应,它们将确保过程在安全、高效的方式下运行。例如,通过对储罐液位过低的报警做出响应,操作员就能节省因不调整液位而损坏的必须更换设备的开支。本章主要介绍iFIX组态软件与报警、调度以及报表相关的内容,通过这部分的介绍,将学会使用iFIX报警以及掌握如何使用调度。5.1 iFIX报警 5.1.1报警和消息 报警指的是块的状态,表示块值已超过预先设定的报警限值或范围,
3、其报警状态需要用户确认后方可消除。消息指的是iFIX提示信息,其类型主要有系统消息、应用程序消息和事件消息。(1)系统消息包括启动消息、系统错误消息、I/O驱动消息、运行消息。(2)应用程序消息包括操作员消息、配方消息、程序块消息、脚本消息。(3)事件消息即数据块消息,与报警相似,但无需用户确认。可用于下列块:数字量输入块(DI)、数字量输出块(DO)、模拟量输入块(AI)、模拟量输出块(AO)、开关量寄存器块(DR)、模拟量寄存器块(AR)、文本块(TX)。back 5.1.2报警条件和限值(1)模拟量报警条件和限值。为了iFIX能够确定一个模拟量过程值是否处于报警状态,必须输入预定义的数值
4、,这些设定值是不希望数据块超出的,称为报警限值。如果数据块超出了其中的一个限值,iFIX 就会生成一个报警,如图5-1所示。图图5-1模拟量报警条件和限值模拟量报警条件和限值 2)数字量报警条件和限值。对于数字量块来说,可以指定一个报警条件,而不是报警限值。一个报警条件表示希望一个数字量块何时生成一个报警。例如,如果创建了一个块来监控处于“ON”状态的马达,可以配置这个块在当马达状态改变或切换为“OFF”时生成一个报警。5.1.3配置报警 配置报警时首先要做的任务之一,就是通过给报警区域命名来创建报警区域。iFIX提供了16个默认的报警区域,名称从 A 到 P;然而,也可以给默认区域重新命名或
5、通过单击 SCU 工具箱上“配置”下的“报警区域数据库”按钮来创建一个新的报警区域。如图5-2所示。每一个输入的报警区名称必须是唯一的,并且不超过30个字符。为了输入或编辑报警区名称,iFIX必须处于运行状态。此外,仅能够编辑来自 SCADA 服务器的报警区数据库。注意:报警区名称不能含有“*”、“?”或“”等字符。图图5-2 报警区域数据库报警区域数据库 一旦创建了报警区,就可以通过为模拟量块输入报警限或为数字量块输入报警条件来配置过程数据库。(1)理解模拟量块的报警限。表5-1总结了模拟量块可利用的报警限。表5-1常见模拟块的报警限制报警限制报警限制含义含义高高过程值。块值必须超出此值才生
6、成报警。高高极高过程值。块值必须超出此值才生成报警。低 低过程值。块值必须低于此值才生成报警。低低极低过程值。块值必须低于此值才生成报警。变化率变化过快的过程值。如果过程值的波动高于在单一扫描周期内的变化率的限值,则块生成报警。死区来自优化值变化的过程值。死区报警要求定义一个目标值和范围。如果过程值超出此范围,将生成一个死区报警。例如,如果优化值是100并且范围(死区)是+/-5,则过程值能够在从95到105的范围内变化而不生成报警。2)数字量块的报警条件。因为数字量块只有两个可能的值(0或1),所以数字量块有不同的报警设置。表5-2总结了数字量块可利用的报警限。表5-2数字量块的公共报警条件
7、报警条件报警条件当当.时生成报警时生成报警从常开改变数字量块的值从1变为0。从常关改变数字量块的值从0变为1。状态改变数字量块的值按照任一方向改变。下面通过一个例子来详细的说明报警的配置和运行。(1)在工作台开发的主界面上单击“应用程序”下面的SCU,即可打开SCU对话框。再单击“配置”菜单中的“报警区域数据库”,即可显示“编辑报警区域数据库”对话框,如图5-3所示。在此可以配置新的报警区域,比如添加一个liu的报警区域,点击“增加”,新的报警区域liu被加入到列表中。点击“确定”,关闭报警区域数据库,返回到SCU。选择SCU“文件”菜单中的“保存”和“退出”。图5-3 配置报警区域(2)在数
8、据库中建立如图5-4所示的模拟量输入标签变量并进行相应的报警设置,如图5-5所示。图图5-4 模拟量输入标签模拟量输入标签 图5-5 模拟量标签报警设置(3)在iFIX工作台画面中放置一个数据连接戳,连接到刚才在数据库中建立的S变量,如图5-6所示。图图5-6 数据连接设置数据连接设置(4)在iFIX开发界面的“插入”菜单中选中“对象/链接”下面选中“报警一览”,将其放到画面中合适的位置。如图5-7所示。图图5-7 报警一览对象报警一览对象 5)双击画面中放置的报警一览对象,打开属性表单,进行相应的设置。如图5-8、5-9所示。单击“保存”和“确定”即可设置好报警。图图5-8 报警一览过滤属性
9、设置报警一览过滤属性设置 图5-9 报警一览显示属性设置 注意:选中“显示当前报警状态”,不然报警栏目只显示运行时锁存的报警状态,默认就是显示锁存报警状态。(6)所有设置完成后单击保存,其运行效果如图5-10所示。图图5-10 运行效果运行效果 5.1.4报警运行 为操作员提供视觉信号是开发一个好的操作员显示的关键。一种提供视觉信号的方法是建立基于报警的动态对象。另一个有效的方法是为画面添加一个报警一览对象。该对象让操作员选择、确认和删除多个报警,排序和过滤报警,以及允许、禁止和静音报警声音。也可以使用报警一览对象来为报警的状态和优先级进行颜色编码,为操作员提供视觉信号。在默认情况下,报警一览
10、对象显示未确认和已确认的块报警。当一个块的值回到正常并且这个报警已经被确认,那么报警一览服务会自动删除这个报警。确认列总是固定在最左边的列。这使得操作员即使用滚动条移到最右边的列时,也总是能看到确认状态。表5-3给出了报警状态描述含义。表5-3报警状态描述报警状态报警状态描述描述COMM 通讯错误(值为“BAD”)OCD开路检测报警IOFI/OFLT浮点数出错报警OVER超范围报警UNDER低范围报警ERROR统计数据块报警COS状态改变报警(数字量块)CFN从正常到报警(数字量块HIHI高高报警LOLO低低报警RATE变化率报警HI高报警LO低报警DEV死区报警OK块的正常状态 在工作台主界
11、面的“插入”菜单中选择“报警一览”,即可在画面中放置报警一览,如图5-11所示。注意:在画面中添加一个报警一览对象之前,请校验在SCU中是否允许了报警一览服务。图图5-11 报警一览报警一览 放置好报警一览对象之后就可以对其进行相应的属性设置了。双击图5-11对象,打开属性窗口,如图5-12所示。图图5-12 报警一览对象属性设置报警一览对象属性设置 要使报警一览对象过滤报警,必须创建一个过滤条件。此条件定义要显示的报警。在创建条件之后,报警一览对象将显示与选择标准相匹配的报警。通过从对象的电子表格中选择希望依据其过滤的列、数值和关系或比较运算符,能够创建一个过滤条件。操作符类型取决于被选择的
12、列。表5-4列出了可以选择的关系和比较运算符。表5-4关系和比较运算符关系运算符关系运算符比较运算符比较运算符等于包含不等于不包含大于仅包含小于在内大于等于不在内小于等于In,=注意:报警汇总对象支持最多九条过滤条件。报警一览对象的另一个强大特性是对对象中出现的报警进行排序。可以根据表5-5所示的特性以增序或降序进行报警排序。属性属性含义含义开始时间报警首次发生的时间。块类型块类型。例如:AI、AO、DI、DO。标签块的名称。优先级报警优先级,如在过程数据库中为每个块定义的优先级(低、中、高)。节点最初发出报警的节点名。通过节点排序是基于在SCU中的网络列表中节点出现的顺序。确认/时间确认并按
13、照起始时间。当报警以降序排列,未确认报警出现在确认报警之前。确认/优先级确认并按照优先级。当报警以降序排列,未确认报警出现在确认报警之前。表5-5 排序属性含义表(2)报警确认。在运行时,报警将在画面中产生视觉信号。这些信号将在报警一览对象或数据连接中以颜色或闪烁的文本样式出现,或者由报警触发动画对象。可以配置基于报警的视觉信号保留在屏幕上,直到操作员对报警做出确认并且块的值返回正常为止。添加报警计数器的方法如下。在图5-10的运行结果中添加一个对象,显示本节点所有未确认的报警。首先从工具箱中点击“数据连接戳”按钮,出现“数据连接”对话框,点击“浏览”按钮,打开“表达式编辑器”,如图5-13所
14、示。点击“报警计数器”即可选择相应的连接。图5-13 数据连接对话框 5.2 iFIX调度 调度在iFIX中常用来触发动作,这些动作都是VBA脚本,可以触发的操作有基于特定的时间(基于时间)和基于数值或表达式(基于事件)两种方式。iFIX调度执行模式可以分为前台执行和后台执行。通常在开发阶段或初次投入运行时建议采用前台执行模式,因为排错比较方便。当执行一段时间确定程序稳定后,建议改为后台执行模式,因为可以避免调度造成Workspace.exe进程负担增加,切换画面也会更加顺畅,而且因为程序进程分开,就不会因为调度错误导致Workspace出错。通常基于事件的调度消耗较大,最好不要写太多。bac
15、k 5.2.1基于时间调度 基于时间调度可以在启动时执行一个操作,或者一次性执行或循环执行。其触发类型有以下几种:(1)一次。在用户定义的时间,执行一次。(2)连续。在用户定义的间隔内,重复执行。(3)每日。在每天的开始时间执行。选择“启用结束时间/间隔”,进行连续触发。(4)每月。在每月的某几天的开始时间执行,包含月结束选项,选择“启用结束时间/间隔”,进行连续触发。下面通过一个例子来说明基于时间调度的使用。基于时间调度来实现画面上的指示灯以1S的频率闪烁。其操作步骤如下:(1)首先在数据库管理器建立一个要与指示灯关联的数字标签,如图5-14所示。同时一定要在其“高级”选项卡中将“启用输出”
16、选项画勾,不然不能往这个数字量标签里面写入修改数值。图5-14 建立数字量标签(2)新建一画面,在其布局中放置一个数据连接戳以便显示当前值,并进行相应的数据关联,如图5-15所示。图图5-15 数据连接戳设置数据连接戳设置(3)在工作台左侧“图符集”的“大号指示灯”中选择一指示灯放置到画面中的合适位置,并进行相应的数据连接设置,如图5-16所示。图图5-16 指示灯数据连接指示灯数据连接(4)在工作区窗口单击左上角的图标,如图5-17所示,在其“新建”下面的菜单中单击“调度”,或者单击“首页”下面的快捷图标,或者右击工作区域左侧管理树中的调度,这三种方法都可在其工作区左边的调度下面新建一调度,
17、如图5-18所示。新建的调度默认是基于时间的,根据“开始时间”来执行操作,可以是一次性执行或者连续执行。图5-17 新建调度菜单 图5-18 新建调度 对于图5-17中所示建立的调度,右击选择“关闭”之后,如图5-18所示,回到画面编辑的状态下,才可以继续右击进行相应的打开、更名、删除等操作,同时还可以在文件属性中对其相应的属性进行一些设置。(5)在图5-18中,双击名称下面的任一空白处,即可弹出如图5-19所示的对话框。在图5-19中,触发类型“一次”表示在用户定义的时间只执行一次;“连续”表示在用户定义的间隔内重复执行;“每日”表示在每天的开始时间执行,选中“启用结束时间/间隔”将进行连续
18、触发;“每月”表示在每月的某几天的开始时间执行一次,包含月结束选项,选择“启用结束时间/间隔”将进行连续触发。图5-19 调度设置对话框(6)在图5-19中设置“触发信息”为连续,间隔时间设置为1S,可以通过间隔右边的小黑箭头来调整时间更为方便。同时单击下面“操作”的“运行专家”选项,在“选择要附加的动作”中选中“切换数字量标签”,单击“确定”即可。图5-19 调度动作设置 图5-19中,动作信息可以从列表中选中操作,也可以单击“运行专家”按钮,或者通过“VB编辑器”按钮进入到VB中编辑用户程序。(7)在弹出的“切换数字量点专家”中将数据库中的“DENG”标签的当前值进行相关联即可,如图5-2
19、0所示。设置好的调度如图5-21所示。分别进行相应的命名保存。图图5-20 调度动作设置调度动作设置图图5-21 设置好的调度设置好的调度(8)设置保存完成后,返回到开发画面中,按下Ctrl+W即可进入到运行状态,可以看到如图5-22所示的指示灯一亮一灭交替闪烁。图图5-22 运行结果运行结果 5.2.2基于事件调度 基于事件调度在表达式满足条件时,执行操作。可以基于以下动作,但并不限于此:数据的变化;表达式的值(真/假);操作员的动作(击键)。下面通过一个例子来说明基于事件调度的使用。基于事件调度来实现当从键盘上输入的模拟值不为零时画面上的指示灯以1S的频率闪烁。步骤如下:(1)打开数据库管
20、理器,在其中新建标签为AI001的接收键盘输入存放数值,并在其“高级”选项卡中将“允许输出”选项画勾,不然不能往这个模拟量标签里面写入数值。如图5-23所示,设置完成后要保存。图5-23 模拟量输入标签(2)在数据库管理器建立一个要与指示灯关联的数字标签DI001,如图5-24所示。同时一定要在其“高级”选项卡中将“启用输出”选项画勾,不然不能往这个数字量标签里面写入修改数值,设置完成后进行保存。图图5-24 数字量输入标签数字量输入标签(3)在工作台左侧“图符集”的“大号指示灯”中选择一指示灯放置到画面中的合适位置,并进行相应的数据连接设置,如图5-25所示。图图5-25 设计画面并进行数据
21、连接设计画面并进行数据连接(4)在画面中单击工具箱中数据连接戳图标,并进行相应的设置,如图5-26所示,在画面中合适的地方放置,同时选中放置的数据连接戳,再单击工具箱中的数据输入专家按钮进行相应的设置,如图5-27所示。此目的是为了可以通过键盘输入相关的数据存放到AI001中。图图5-26 数据连接戳设置数据连接戳设置 图5-27 数据输入专家设置(5)右击工作区左侧“调度”图标,在弹出的菜单中选择“新建”并命名为“事件调度”,单击“基于事件项”选项卡,并双击下面的单元格,弹出如图5-28所示的窗口,在其中进行相应的设置。图5-28 基于事件调度设置(6)单击图中的“运行专家”按钮,按图5-2
22、9所示进行相应的设置,选择要附加的动作为“切换数字量标签”,在出现的选择框中选择DI001标签即可。图5-29基于事件调度设置(7)设置完成后,返回到画面中,在画面中添加如图所示相应的文字,布局合理后按下Ctrl+W进入到运行状态,单击模拟量输入不同的数值,当输入的数值不为零时,画面上的指示灯闪烁。如图5-30所示。图图5-30 运行结果运行结果 5.2.3调度配置 调度可以运行于前台或者后台方式,设置调度后台执行方式的目的是:让调度运行也后台,单独执行。其设置步骤如下:(1)在调度编辑窗口的左侧管理树中选中右击,如图5-31所示,单击弹出的“调度程序属性”,弹出如图5-32所示的“调度程序属
23、性”对话框。在此窗口单选“后台运行”选项,并单击“确定”按钮进行保存,并在随后弹出的窗口中单击“是”按钮。图5-31调度程序属性打开菜单图图5-32 调度程序属性选择对话框调度程序属性选择对话框(2)从工作主菜单“首页”“设置”“用户首选项”对话框中选择“后台启动”,如图5-33所示,在启动窗口中添加调度。图图5-33 后台启动对话框后台启动对话框(3)启动iFIX 后台服务(FIXBackgroundSever.exe)。启动SCU配置窗口,在“配置”菜单下单击“任务”,弹出任务配置对话框,在弹出的窗口中选择后台启动文件并选中“后台方式”进行启动,同时选择“添加”即可。如图5-34所示。单击
24、保存并退出。(4)关闭iFIX重启后会发现,iFIX Background Server后台运行,即使在iFIX工作台中关闭调度画面,调度也仍然有效。如图5-35所示,其调度的状态为激活。图图5-35 调度后台运行调度后台运行 5.3 iFIX实时数据趋势 iFIX图表显示3种类型的数据:(1)实时数据:数据块当前值。(2)历史数据:在历史数据采集中采集的历史数据。(3)T_Data:趋势块中记录的缓冲区数据。在许多应用项目中,只观察标签的当前值(比如数据链接)是不够的。往往把当前值与之前几秒、几分钟甚至几小时的值一起观察是非常重要的。可以通过扩展趋势块和图标对象来实现。扩展趋势(ETR)块最
25、多可从上游块采集600个值,用图表对象显示。通过使用该块,在一个块中即可显示长达10分钟的数据趋势(假设扫描时间为1秒),无需链接多个趋势块。此外,还可通过将不同的扫描速度与“平均压缩”一栏配合使用以存储数小时甚至数天的实时数据。back 请注意过程数据库也提供一个趋势块。该块最多可显示80个值的趋势。如果需要显示超过80个值的趋势,请使用扩展趋势块。扩展趋势块是二级块,按先入先出(FIFO)原则最多存储来自上游块的600个值,计算数据组的平均值(可选)并存储用于显示趋势的平均值。在Proficy iFIX工作台中通过一个图表显示值,可以使用T_DATA字段,与简单数据库访问程序一起使用数据。
26、通过使用扩展趋势块,可以在一段时间内对值进行趋势化。例如,假设要使用图5-36所示的配置跟踪烘箱温度的一小时趋势。图5-36 扩展趋势块数据流程 通过创建从烘箱温度接收值的模拟量输入块和跟踪此数据趋势的扩展趋势块,可以实现此目的。务必通过把扩展趋势块的名称输入模拟量输入块的下一个字段来连接这两个块。这确保扩展趋势块从上游的模拟量输入块接收数据。下面通过一个简单的例子来说明扩展趋势块的详细使用。(1)在iFIX的数据库管理器中建立一个模拟量输入标签,如图5-37所示,并在其下一块的连接中输入kuozhan作为扩展趋势块的名 称。在弹出的选择数据块类型中选择“扩展趋势块”,弹出“扩展趋 势块”对话
27、框。如图5-38所示。图5-38中的“启动时清除缓存区”含义如下:(1)如果启用,则链从停止扫描返回扫描状态后,将清除存储的数值。(2)如果禁止,当停止扫描后将保持数值。图5-38中的“输入标签”含义如下:(1)使ETR 能够存储PDB 中任意标签的数据。(2)一般情况下,该字段为空白,该字段为空白时,ETR 使用前一个块的数据。图5-38中的“平均压缩”如下:(1)计算数据平均之前采集的数据数量。(2)平均数值将存储在缓存中。图5-37 模拟量输入标签设置 图5-38“扩展趋势块”对话框 图5-39 建立好的数据库(2)在iFIX画面编辑区放置一数据连接戳并进行相应的设置,如图5-40所示。
28、图5-40 数据连接戳设置(3)从工具箱中拖放一标准图表到iFIX画面编辑区,双击之后进行相应的数据连接,如图5-41所示。图5-41 图表数据连接 (4)所有设计完成后,保存运行,其结果如图5-42所示,可以显示当前值的一个变化曲线。图5-42 运行结果 5.4 iFIX图表 图表用来显示实时和历史数据,从“插入”菜单中选择“标准图”,则在画面中添加一个图表对象,如图5-43所示。双击图表可以定义图表的相关属性。back图图5-43 图表对象图表对象 5.4.1图表实时数据显示 实时数据的趋势可以借助于图表来显示,要显示实时数据,使用标准的iFIX 数据源可在属性对话框的笔列表显示,如图5-
29、44所示。其可以使用的数据源格式:FIX32.NODE.TAG.FIELD。点击“浏览”按钮,显示“表达式编辑器”,可以进行相应的选择。一旦定义了数据源,该数据源自动指定一个实时数据模式。任何数字型数值都可作为数据源,当使用扩展趋势块时(ETR)时:F_CV为当前值,T_DATA才显示缓冲区中的趋势数据。图表配置对话框可以指定许多属性,包括:笔类型、时间范围、X和Y轴以及网格类型和图例。笔类型:定义线型、线颜色和标注类型。时间范围:为所有笔指定一个全局时间周期,或者为每一个笔分别选择一个时间周期。X和Y轴设置:在图表中指定用户的X和Y轴。网格类型:控制水平和垂直方向的网格。图5-44 图表属性
30、设置 图表的“常规”选项如图5-45所示。图表名可在 VBA脚本中使用。滚动方向:左右滚动,可以跟随历史数据或理想曲线得到实时数据。缩放:水平、垂直、水平和垂直。刷新速率:重新绘制图表数据的速度。图5-45 图表“常规”选项卡 5.4.2图表历史数据显示 实时数据库的实时数据都是保存在内存中,实时数据库只能显示当前数据,一旦关闭数据就丢失。而实际需求中有时需要能显示过去指定范围时间内的数据,并且需要数据能长久保存。历史数据趋势可以由数据库拷贝并保存以供查阅,实现历史数据趋势显示功能有三个步骤:历史数据定义选择数据(HTA),用历史数据采集启动(或者停止)数据采集(HTC),用图表对象查阅数据。
31、但是从iFIX5.5版本开始,历史库应用(HTC.EXE和HTA.EXE)不会默认进行安装,根据不同的操作系统历史库的安装与配置也有所不同。对于该教材介绍的iFIX5.5版本和32位的操作系统,其安装历史库的配置不足如下:(1)首先完成iFIX5.5版本软件的安装。(2)浏览安装光盘,找到Proficy文件夹下的Legacy文件夹。(3)安装iFIX55_Pulse_FD_NLS.exe补丁(这步操作将历史库安装到32位操作系统中,安装前必须关掉正在运行的iFIX5.5软件)。(4)在iFIX5.5安装路径下找到LOCAL文件夹FixUserPreferences.ini文件并用记事本打开,如
32、图5-46所示。图5-46 打开FixUserPreferences.ini文件路径(5)在如图5-47所示的FixUserPreferences.ini文件中,找到“HistorianCurrentHistorian=iHistorian”,将其修改为“CurrentHistorian=Classic”;修改完毕后单击保存退出即可 图5-47 FixUserPreferences.ini文件(6)安装修改完毕后重新启动iFIX5.5,可以看到历史库定义将可以使用。启动后的工作台如图5-48所示。图5-48 配置好历史库的工作台 5.4.3历史文件存储 采集的历史数据存储在SCU 预先设定的历
33、史数据目录内,在此目录下,为每个在“历史数据定义”中定义的节点创建一个子目录。“历史数据定义”在历史数据的路径下为每个采集组创建一个文件,系统默认路径格式的一个例子比如C:DYNAMICSHTRHTRGRP01.DAT。历史数据采集文件位于历史数据路径下,使用系统默认路径格式的一个例子比如:C:DYNAMICSHTRDATANodenameYYMMDDHH.H04。5.4.4历史数据定义 在系统树左侧双击“历史库定义”,弹出如图5-49所示的历史定义对话框。其主要用以定义数据归档策略。在图5-49中,应定义下列内容:(1)需要采集的标签名和域。(2)定义指定标签的采集速率。(3)为触发事件驱动
34、采集定义一个数字量标签。(4)历史数据文件的采集时间大小(以小时为单位)。(5)历史数据文件在硬盘上保存的天数。其最多可以定义256个采集组,在每个组中可以有多至80个标签在图5-49中,数据文件的采集时间说明如下:(1)用户可以定义保存4、8 或24 小时的历史趋势数据文件。(2)数据文件在午夜以及午夜后的递增时间段开始记录数据。8小时文件:在午夜、上午8点和下午4点开始。4小时文件:在午夜、上午4点、上午8点、正午、下午4点和下午8点开始。在图5-49中,自动删除说明如下:(1)如果用户愿意,可以选择自动删除数据文件的选项。(2)如果选择了这个选项,则需输入文件的保存天数,可在2 天至20
35、0天范围内选择。图5-49 历史定义对话框 在图5-49中,双击任一空白处,弹出如图5-50所示的“组1配置”对话框。或者单击“历史组”下面的菜单也能实现。图5-50“组1配置”对话框 在图5-50中,各个选项说明如下:节点:SCADA 节点名,采集组中的所有标签都来自该节点。周期:本组中标签的采集周期。相位:采集数据的时间偏差。限定标签:某个数字量的标签名,该标签定义什么时候为本组采集数据。当此标签值为1 时,开始进行数据采集,此项是可选项。标签:输入用户欲采集的标签,格式为:Tag:Field,只能采集浮点数(F_*)。限值:可修改的死区限值。仅当此采集数值比前次记录数值的变化值超过这个限
36、值(工程单位形式)时,系统才将此数值记录到趋势数据文件内,这样做可以节省硬盘空间。5.4.5历史数据采集 历史数据采集用于采集在“历史数据定义”中指定的数据,为了采集数据,此程序必须运行。(1)开始采集。可在“任务控制”(Mission Control)窗口中控制;也可在SCU 中将“历史数据采集”加入到“任务列表”中,即在“任务列表”中加入HTC.EXE,一般设置该任务为后台任务;历史数据采集状态窗口将显示下列内容:数据采集超时的次数。如图5-51所示。在图5-51中当单击“启动”时会弹出HTC可选命令行对话框,将提示用户输入可选的命令行参数,这些参数可以用于监视HTC 应用,有三个可用的参
37、数(当然也可以不输入保持这个字段为空):(1)/T 当使用该参数时,HTC 出错时向指定标签发送“1”。在图5-51中,标签htc_t是一个数字量输出标签。(2)/A 当使用该参数时,HTC 运行时每隔60 秒向指定标签名发送“1”。可用/D 参数修改默认的60 秒间隔。(3)/D 该参数必须与/A 参数同时使用,如图5-52所示。/D参数后的数值表示向/A 标签发送数值后的延时时间(秒)。最小为15 秒,任何小于15 都被忽略并假定为15。图20-8 中,标签HTC_A 将每隔20秒获得一个新值 注意不能同时使用/A 和/T 参数,如果同时使用,/T 将覆盖/A 参数。图5-52 HTC命令
38、举例(2)停止采集。在“任务控制”的“历史数据采集”表单中按“停止”按钮,所有组的采集都将停止;或者关闭iFIX,历史数据采集也将会自动停止。5.5 iFIX报表 报表是显示过程数据的很重要的工具,iFIX可以使用任何支持ODBC(Open Database Connectivity)查询功能的第三方软件来制作报表,例如Microsoft Excel、Microsoft Access和Seagate Crystal Reports。利用这些工具,便可以制作基于iFIX实时数据和历史数据的报表。利用iFIX实时数据生成的报表来自于iFIX数据库的当前值,而利用历史数据创建报表时,生成的报表则来自
39、于某个时期采集的数据。一旦生成报表,可利用报表工具显示、打印报表,也可将报表显示在IFIX工作台中。back 5.5.2使用Excel创建报表 用Excel创建报表包括两步:在单元格中引用iFIX数据和在Excel中配置数据。(1)单元格中引用iFIX数据步骤如下:Excel把iFIX数据当作“外部数据”。在Excel中,选定“数据”菜单,选择“导入外部数据新建数据库查询”,利用该工具,Excel从ODBC数据源获取数据,如图5-53、图5-54所示。图5-53 新建数据库查询操作菜单 选择 iFIX Real Time data(实时数据)或iFIX Historical Data(历史数据
40、),Excel 将查询数据源并显示相应的数据项,如图5-55所示。图图5-55 选择实时数据查询选择实时数据查询 选择需要显示的数据域,如图5-56所示;并选择过滤选项和排序选项,Excel 以电子表的形式显示查询结果,如图5-57所示。图图5-56 选择数据域选择数据域 图5-57 显示实时数据 5.5.3使用Access创建报表(1)获取静态数据 从iFIX的ODBC数据源手动导入iFIX数据,导入方法与在Excel 中导入数据的方法类似。第一步,在Microsoft Access 2003中,选择“文件”菜单下面的“新建”,并选择“空数据库”,在弹出的对话框中选择工具栏上的“新建”,再选
41、择“导入表”,如图5-59所示。插入文件类型选择“ODBC 数据库”,Access 自动列出的可供使用的ODBC 数据源,如图5-60、5-61所示。图图5-60 文件类型选择文件类型选择 图5-61 Access 中选择ODBC 数据源 在图5-61的“机器数据源”选项中,选择“iFIX Real Time data”(实时数据)或“iFIX Historical Data”(历史数据),Access将查询数据源并显示应用数据项,弹出如图5-62所示对话框,选中该“FIX”,点击确定,然后在表的菜单中显示FIX名称,双击即可创建一张新表显示PDB中的当前数据,如图5-63所示的实时数据列表。
42、图图5-62选择实时数据查询选择实时数据查询 图5-63 实时数据显示(2)实时链接 iFIX 数据Access提供了链接表到某个数据源的功能,使用“查询”显示数据要优于直接显示整张表,在图5-59所示的对话框选择“链接表”。点击确定,弹出如图5-60所示的对话框,选择“ODBC 数据库”,Access自动列出的可供使用的ODBC数据源,选择iFIX Real Time data(实时数据)或iFIX Historical Data(历史数据),Access将创建一张新的链接表来显示PDB中的数据。(3)实时链接 iFIX 数据 在Access中,可以用iFIX数据建立查询,使用查询来浏览、修
43、改和分析数据。包括:计算求和、计数、其他统计和利用交叉表进行分类。从左侧“查询”菜单中选择“使用向导创建查询”,如图5-64所示。图图5-64 Access查询向导查询向导(4)从 Access 查询中建立报表 从Access查询中建立报表,使用“报表向导”快速编辑并生成报表。从左侧“报表”菜单中选择“使用向导创建报表”,如图5-65所示。选择分组、过滤和排序功能后Access创建的报表如图5-66所示。图5-66 Access报表显示5.5.4使用Crystal Reports创建报表 Crystal Reports(水晶报表)是一款商务智能(BI)软件,主要用于设计及产生报表。水晶报表(C
44、rystal Report)是业内最专业、功能最强的报表系统,它除了强大的报表功能外,最大的优势是实现了与绝大多数流行开发工具的集成和接口。功能强大的水晶报表2008,为开发报表人员提供了方便之门。想使用Crystal Reports,首先进行软件的安装,安装过程如图5-57所示。图5-57 Crystal Reports 2008安装过程 使用Crystal Reports创建报表步骤如下:(1)选择数据源。数据源可以是数据文件、查询、SQL/ODBC、Oracle、NT Event Log 等,如图5-58所示。(2)选择数据库域,如图5-59所示。图图5-59 选择数据库域选择数据库域(3)设计好水晶报表的显示界面如图5-60所示。图5-60 水晶报表的显示界面 在图5-60显示的水晶报表中,还可以通过设计栏对其显示格式进行相应的一系列设置,如图5-61所示。图5-61 水晶报表的设计界面 注意:以上报表需要连接iFIX的数据源,所以前提是要保证iFIX软件处于启动状态。