一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

电源控制系统(PCS)定序器的制作方法

2022-05-08 09:48:23 来源:中国专利 TAG:

电源控制系统(pcs)定序器
技术领域
1.本公开总体上涉及用于调试(commission)开关设备的系统和方法,尤其涉及用于在开关设备调试期间自动验证电源控制序列的系统和方法。


背景技术:

2.电气开关设备(switchgear)通常是指用于控制、保护和隔离电气设备的电路开关设备的集合,诸如断路器、保险丝、开关、继电器等。电路开关设备通常一起封装在通常称为开关设备的金属外壳中。然后,一个或多个开关设备可以组合成电源控制系统。此类开关设备通常安装在配电站和变电站,以及中大型商业建筑和工业设施中。
3.现代开关设备具有高度复杂的设计,其具有许多一起工作的内部和外部组件以及连接。因此,在大多数情况下,开关设备需要经历调试过程才能上线,甚至需要经历调试过程才能离开工厂。调试过程彻底检查并确认开关设备及其中的各种组件在规定容差(tolerance)范围内工作。
4.调试过程的一部分涉及执行一个或多个电源控制序列,其中开关设备电路开关设备以特定顺序或序列被打开及关闭或关闭及打开、开关、断开、切换、复位等。电源控制序列还可以在序列期间故意使开关设备(诸如断路器)失效(例如,通过切换到不同电源或退出当前序列),以验证开关设备正确地响应。正常情况下,当电源控制序列运行时,调试人员需要观察开关设备,并逐步手动记录该开关设备是否已按照指定的顺序和时序(timing)完成了指定的电源控制任务。然而,许多此类任务甚至整个序列都可能非常快地通过,因此调试人员必须多次运行序列,才能确保开关设备成功完成了该序列。


技术实现要素:

5.本公开的实施例涉及用于自动验证开关设备中电源控制序列的正确完成的系统和方法。该方法和系统提供包括序列验证工具的调试代理。验证工具可以启动开关设备中的序列的执行,并立即将实际执行的序列与存储在一个或多个序列表中的拟执行序列进行比较。如果两个序列在顺序和时序上不匹配,则验证工具将报告不匹配并标识出错误。在一些实施例中,调试代理还包括日志查看器,其捕获开关设备中实际执行的序列并显示结果以供查看。这种布置提供了一种更快、更可靠的方法,可在初始工程设计期间以及工厂和/或现场改造后,对开关设备的系统完整性进行双重检查。
6.一般而言,在一个方面,本公开的实施例涉及一种开关设备控制模块。该开关设备控制模块包括人机界面(hmi)和耦合到hmi的开关设备控制器等。开关设备控制器具有驻留在其中的调试代理,其可操作以选择要在开关设备中执行的电源控制序列,该电源控制序列由多个序列步骤组成,这些序列步骤在至少一个序列表中被定义。调试代理还可操作以指示开关设备控制器在开关设备中执行多个序列步骤,该开关设备控制器在事件日志中记录从多个序列步骤得到的事件。调试代理还可操作以确定事件日志(其中记录了从多个序列步骤得到的事件)中的开始位置和结束位置。调试代理还可操作以对照至少一个序列表
中对应于该多个序列步骤的事件,对事件日志中的开始位置和结束位置之间记录的事件进行验证,并在hmi上可视地突出显示通过验证而标识的任何事件不匹配。
7.一般而言,在另一方面,本公开的实施例涉及一种验证开关设备中电源控制序列的执行的方法。除其他外,该方法包括选择要在开关设备中执行的电源控制序列,该电源控制序列由多个序列步骤组成,这些序列步骤在至少一个序列表中被定义。该方法还包括指示开关设备控制器在开关设备中执行多个序列步骤,该开关设备控制器在事件日志中记录从多个序列步骤得到的事件。该方法还包括访问开关设备控制器中的事件日志,该事件日志驻留在开关设备控制器中的指定位置处。该方法还包括确定事件日志(其中记录了从多个序列步骤得到的事件)中的开始位置和结束位置,以及对照至少一个序列表中对应于该多个序列步骤的事件,对事件日志中的开始位置和结束位置之间记录的事件执行验证。通过验证而标识的任何事件不匹配都在显示设备上可视地突出显示。
8.一般而言,在又一方面,本公开的实施例涉及一种开关设备。除其他外,开关设备包括至少一个电路开关设备和耦合到至少一个电路开关设备的开关设备控制模块。开关设备控制模块中具有开关设备控制器,该开关设备控制器被编程为选择要在开关设备中执行的电源控制序列,该电源控制序列由多个序列步骤组成,这些序列步骤在至少一个序列表中被定义。开关设备控制器还被编程为在开关设备中执行多个序列步骤,并将从多个序列步骤得到的事件记录在事件日志中,该事件日志驻留开关设备控制器中的指定位置处。开关设备控制器还被编程以确定事件日志(其中记录了从多个序列步骤得到的事件)中的开始位置和结束位置,以及对照至少一个序列表中对应于该多个序列步骤的事件,对事件日志中的开始位置和结束位置之间记录的事件执行验证。通过验证而标识的任何事件不匹配都在hmi上可视地突出显示。
9.根据前述实施例中的任何一个或多个,在开关设备控制器完成电源控制序列的多个序列步骤的执行之后执行验证;和/或当开关设备控制器完成多个序列步骤中的每个序列步骤时,在逐个步骤的基础上执行验证。
10.根据上述任何一个或多个实施例,在hmi上显示导致了通过验证而标识的事件不匹配的实际事件和预期事件;和/或在hmi上显示事件日志中因通过验证而标识的事件不匹配而发生的事件不匹配的位置。
11.根据上述实施例中的任何一个或多个,至少一个序列表指定了至少一个序列步骤的时序延迟,并且执行以下验证:对于该至少一个序列步骤,由该至少一个序列表指定的时序延迟被开关设备控制器执行了。
12.根据上述实施例中的任何一个或多个,开关设备控制器被自动指示执行开关设备中的至少一个附加电源控制序列的多个序列步骤。
附图说明
13.可以通过参考各种实施例来获得上文简要概述的本公开的更详细描述,其中一些实施例在附图中示出。虽然附图示出了本公开的选择实施例,但这些附图不应被视为限制其范围,因为本公开可以允许其他同样有效的实施例。
14.图1示出了根据本公开实施例的具有调试工具的示例性开关设备的示意图;
15.图2示出了根据本公开实施例的具有调试工具的示例性开关设备定序器的框图;
16.图3示出了根据本公开实施例的示例性序列表;
17.图4a-图4c示出了根据本公开实施例的示例性验证工具用户界面和示例性事件日志查看器;
18.图5a-图5b示出了图4a-图4c中的示例性验证工具用户界面和事件日志,其中序列验证因不正确事件id而失败;
19.图6a-图6b示出了图4a-图4c中的示例性验证工具用户界面和事件日志,其中序列验证由于不正确的时序延迟而失败;
20.图7示出了根据本公开实施例的要忽略的事件的示例性序列表;
21.图8a-图8b示出了图4a-图4c中的示例性验证工具用户界面和事件日志,其中序列验证由于忽略事件id而通过;
22.图9示出了根据本公开实施例的具有事件注释的替代序列表;
23.图10a-图10b示出了根据本公开实施例的替代事件日志和验证工具用户界面;
24.图11a-图11b示出了替代事件日志和验证工具用户界面,其中序列验证由于错误事件id而失败;以及
25.图12是示出根据本公开实施例的验证电源控制序列的方法的流程图。
26.在可能的情况下,已使用相同的参考编号来指定附图共有的相同元件。然而,在一个实施例中公开的元件可以有益地用于其他实施例,而无需具体叙述。
具体实施方式
27.本说明书和附图说明了本公开的示例性实施例,不应将其视为限制,权利要求限定了本公开的范围,包括等效内容。在不脱离本说明书和权利要求书(包括等效物)的范围的情况下,可以进行各种机械、组成、结构、电气和操作变更。在一些实例中,未详细示出或描述公知结构和技术以避免模糊本公开。此外,参考一个实施例详细描述的元件及其相关方面可以在任何实际情况下被包含在未对其具体示出或描述的其他实施例中。例如,如果参考一个实施例对元件进行了详细描述,而没有参考第二实施例对该元件进行描述,则该元件仍然可以被认为包括在第二实施例中。
28.现在参考图1,示出了根据本公开实施例的具有自动电源控制序列验证能力的示例性开关设备100。开关设备100可以是本领域技术人员已知的任何开关设备,其用于控制、保护和隔离配电站以及中大型商业建筑和工业设施中的电气设备(未明确示出)。在一些实施例中,开关设备100可以是中压或低压开关设备,诸如施耐德电气美国公司提供的任何中压或低压系列开关设备。一个或多个此类开关设备,包括专用于发电、控制和配电的开关设备,可以被组合以形成电源控制系统(pcs)。
29.公用(utility)电源102连接到开关设备100以向开关设备100提供主电源。在一些实施例中,公用电源102以约60hz的频率提供中压,诸如约13.5千伏或12.8千伏。一个或多个备用电源104(此处标记为电源1、电源2、电源3)也连接到开关设备100,以在公用电源102丢失时提供备用电源。这些备用电源104可以包括,例如,一个或多个备用发电机、太阳能发电机、风力发电机、不间断电源(ups)、备用公用电源等。发电机104和公用电源102向连接到开关设备100的各种负载106(诸如计算设备、处理设备、照明设备、环境控制设备等,此处标记为负载a、负载b、负载c)提供电力。开关设备100还连接到一个或多个自动转换开关(ats)
108,此处标记为ats x、ats y、ats z,当公用电源102丢失时,这些自动转换开关用于将各种负载106连接到备用电源104。
30.开关设备控制模块110安装在开关设备100上,例如,安装在其前面板上。开关设备控制模块110操作用以控制、保护和隔离各种负载106。除其他事项外,当主电源丢失时,开关设备控制模块110自动将一个或多个负载106从公用电源102切换到备用发电机104。用户还可以在开关设备控制模块110中输入命令,以手动操作开关设备100。例如,用户可以指示开关设备控制模块110启动一个或多个电源控制序列,作为调试开关设备100的一部分。为此,开关设备控制模块110配备有调试代理(agent),其可运行以自动验证开关设备100中电源控制序列的正确完成。
31.图2示出了根据本公开实施例的开关设备100的更详细视图。可以看出,开关设备100容纳多个电路开关设备,诸如一个或多个断路器200、开关202、保险丝204、继电器206等。这些电路开关设备连接到开关设备控制模块110并由其控制,以保护和隔离连接到开关设备100的任何电气设备。具体而言,开关设备控制模块110中的开关设备控制器208具有开断或闭合、打开或关闭和/或连接或断开一个或多个电路开关设备的编程。例如,当开关设备控制模块将电源从一个电源切换到另一个电源、由于电源容量过剩而向电源添加负载、或者由于电源过载而从电源移除负载时,可以进行上述操作。人机界面(hmi)210可以是触摸屏或其他类型的显示器,其耦合到开关设备控制器208,以便于用户控制开关设备控制器208并与之交互。通信接口212可以是有线和/或无线通信接口,其耦合到开关设备控制器208以促进与外部系统(例如,远程hmi、控制室、scada系统等)的通信。
32.开关设备控制器208还被编程或以其他方式存储控制开关设备100的各个方面的编程。任何合适的开关设备控制器均可用作开关设备控制器208,诸如可从施耐德电气美国公司获得的任何开关设备控制器,只要其具有足够的计算能力用于本文目的。在开关设备控制器208中的编程中具有若干操作组件,包括定序器(sequencer)214、一个或多个序列表216和事件记录器(logger)218。这些组件在开关设备控制器208中以已知方式一起操作以提供电源控制序列功能,该功能可被用于执行开关设备100的调试。
33.除了上述操作组件214、216、218之外,开关设备控制器208还被编程或以其他方式存储用于调试代理220的编程。调试代理220被设计为利用开关设备控制器208中的已有电源控制序列功能,来自动启动开关设备100中的电源控制序列并立即验证该序列是否正确地执行。为了实现该特征,调试代理220使用多个子组件,包括事件日志查看器222、序列验证逻辑224和序列验证工具226以及其他组件。
34.在开关设备控制器208的命令下,定序器214运行一个或多个指定的电源控制序列,这些电源控制序列旨在用于测试开关设备100是否按设计操作。要运行的一个或多个电源控制序列可以通过驻留在开关设备控制器208中的编程来被指定,或者可以由用户手动输入(经由hmi 210)。在典型实施方式中,定序器214从一个或多个序列表216查找或获得这些一个或多个电源控制序列。每个序列表216具有遵循给定数据结构的步骤217的列表或序列,并且取决于特定的表,该序列表216具有事件id列表或事件时序延迟列表,其定义了电源控制序列。定序器214访问一个或多个序列表216,查找指定序列,并执行该序列中阐述的步骤217。事件记录器218通常记录开关设备100中发生的每个事件(包括由定序器214运行的任何电源控制序列的步骤217),并将这些事件存储在事件日志中。
35.电源控制序列的简化示例可以包括按顺序的以下步骤:1)闭合连接备用发电机的断路器,2)开断连接ups的开关,3)断开连接负载的继电器。这些序列通常在从工厂装运前对开关设备100的调试期间执行,并在现场初始安装期间再次执行。如果需要,可在初始安装后再次运行序列,例如,在初始安装和测试后对开关设备进行了修改时。
36.出于本文的目的,事件记录器218记录的“事件”指的是开关设备100中的电路开关设备(例如,断路器200、开关202、保险丝204、继电器206等)或其他设备之一的任何转换(transition)。因此,例如,每个设备从关断(off)到开启(on)、或从开启到关断、或从开断(open)到闭合(close)、或从闭合到开断等的转换,就构成由事件记录器218记录在事件日志中的“事件”。这些事件还可以包括电源(诸如发电机和公用设施)经由电路开关设备(例如断路器)而打开或关闭。
37.根据本公开的实施例,调试代理220被配置为启动(或被用于启动)开关设备控制器208中的电源控制序列。调试代理220通过以已知方式向定序器214发出(或导致发出)适当的命令或指令来实现这一点。然后,调试代理220读取事件记录器218所记录的该序列的事件日志,并对照存储在序列表216中的对应序列的步骤217来检查该事件日志中的步骤。更具体地,调试代理220的事件日志查看器222访问事件记录器218存储该事件日志的指定存储器或存储位置,并提取或复制该位置处所记录的步骤。然后,事件日志查看器222可以显示所提取的序列步骤以供用户查看(例如,在hmi 210、scada系统等上),并将这些步骤提供给调试代理220中的其他组件。随后,验证逻辑224将所提取的序列步骤与序列表216中对应序列的步骤217进行比较,以确定它们是否匹配。如果存在任何不匹配,则验证逻辑224标识该不匹配并将其报告给验证工具226。验证工具226然后显示所标识的不匹配以供用户查看,并且还可以显示可能可用的任何关联注释。作为调试过程的一部分,用户还可以使用验证工具226从序列表216中选择并手动运行特定序列。
38.在一些实施例中,开关设备控制器208是一种类型的控制器,其采用事件记录器的序列来执行事件记录器218的功能。事件记录器的序列通常具有记录电路开关设备从关断到开启或从开启到关断、从开断到闭合或从闭合到开断的每个转换的输入。每个转换被分派单独的事件id,并被记录在用作控制器208的事件日志的内部事件表(例如,“eventlog”)的单独行中。该转换的时序也被记录在内部时序表(例如,“eventlog_time”)的同一行中,通常采用hh:mm:ss:mm格式,其中“h”表示小时、“m”表示分钟、“s”表示秒并且“m”表示毫秒。该转换的日期同样被记录在内部日期表(例如,“eventlog_data”)的同一行中,通常采用mm:dd:yyyy格式,其中“m”表示月,“d”表示日,“y”表示年。内部行指针(例如,“eventlog_ptr”)指向内部事件表中要对其写入新的事件id的当前行。当到达内部事件表中的最后一行时,该指针返回到该表的第一行。
39.图3示出了通常在开关设备控制器(如开关设备控制器208)中实现的、用以定义电源控制序列的一个或多个序列表216(和步骤217)的示例。序列表216通常存储在或可下载到开关设备控制器208中的指定存储位置或存储器块中。如上所述,开关设备控制器208是这样一种类型的控制器,其使用至少两个序列表216(序列事件表300和序列时序表310)来存储每个电源控制序列。在该示例中,每个表300、310中的第一行指定该表是序列表(例如,“sequence_x”)还是时序表(例如“sequence_x_time”),而第二行指定序列号(例如,“0”),其中开关设备控制器208可将其用于标识由表300、310所定义的特定电源控制序列。
40.序列事件表300具有两个列表:指定电源控制序列中的步骤的数量和顺序的序列列表302;以及指定要在每个步骤执行的事件的事件id列表304。在图3示例中,序列列表302中有10个步骤,因此有10个事件id,其中第0个步骤(步骤0)指定电源控制序列中的步骤总数(10个步骤)。这里的事件id使用以下的约定(convention),其中每个电路切换设备由不同的数字(例如,1、2、3、4、5)进行表示,并且该设备的每个转换由该数字偏移1000进行表示。因此,在步骤1中,事件id“1001”(第一行)指示设备1从关断到开启的转换,而步骤10(第十行)中的事件id“1”指示设备1的反向转换,依此类推。如在该示例中可以看到的,序列事件表300定义了一个序列(序列号“0”),其中设备以1到5的顺序被打开,但以相反的顺序被关闭。
41.序列时序表310也具有两个列表:指定该序列中的与序列列表302相同的步骤数量和顺序的序列列表312;以及指定每个步骤之间的延迟时间(例如,以秒为单位)的时序延迟列表314。在当前示例中,没有指定延迟时间,因此时序延迟列表314默认为空或填充为零。
42.现在参考图4a,示出了示例性验证工具用户界面400,其表示调试代理220(图2)的验证工具226的一种实现。用户可使用该用户界面400启动开关设备控制器208中的电源控制序列,并立即验证序列步骤是否正确完成了。示例性用户界面400包括开始按钮402、停止按钮404、复位按钮406和验证按钮408。序列号字段410允许用户通过输入电源控制特定序列的序列号,来选择要启动的该特定电源控制序列。这样做会自动使用所选序列中指定的步骤数量来填充定义的序列数量字段412。
43.按下开始按钮402,就会(经由事件记录器222)捕获内部事件表(“eventlog”)中当前正被内部行指针(“eventlog_ptr”)指向的行号。捕获的行号被提供给用户界面400(经由事件记录器222),该用户界面400在开始位置字段416中填充该行号。启动按钮402还(经由定序器214)发动了所选电源控制序列,该序列自动运行,直到该序列中的所有步骤完成。该序列中第一步骤的事件id被记录在当前行中,下一步骤的事件id被记录在下一行中,依此类推,直到所选序列中的步骤总数已完成。
44.序列步骤完成,就会(经由事件记录器222)自动捕获内部事件表中记录了该序列中最后步骤的行号(例如,eventlog_ptr

1)。当然,事件记录器222也可以通过简单地对开始位置字段416中的行号加上该序列(如序列事件表300中定义的)中的步骤总数,来确定记录了(或将要记录)最后步骤的行号。在任一情况下,用户界面400随后用最后步骤行号,来填充停止位置字段418。序列数量字段420显示开始位置行号和停止位置行号之间的差值。如果需要,还可以通过手动按下停止按钮404,来手动停止电源控制序列(例如,仅执行序列的一部分)。
45.在图4a示例中,内部事件表中记录了电源控制序列的开始行号为151,并且结束行号为160,反映了总共处理了10个步骤,如序列数量字段420所指示的。该字段420应与定义的序列数量字段412中的数量匹配。这两个字段之间的不匹配可能指示序列步骤未能正确完成。当检测到该失败(failure)时,导致了该失败的步骤中的事件id的行号就会填充失败位置字段422,不正确事件id就会填充检测到的失败事件字段424,并且预期或正确的事件id就会填充预期事件字段426。在一些实施例中,测试状态指示器428可包括在用户界面400中,以提供事件测试状态的可视指示。以类似方式,如果在任何序列步骤中存在时序延迟错误,则导致了时序失败的步骤中的事件id的行号就会填充时序失败位置字段430,不正确的
时序延迟就会填充自上次事件起算的实际时间字段432,并且预期时序延迟填充自上次事件起算的预期时间字段434。在该序列包括时序延迟的情况下,用户可以在时序容差字段436中指定所选序列的时序容差(例如,以秒为单位)。在一些实施例中,可包括第二测试状态指示器438以提供时序延迟测试状态的可视指示。
46.图4b示出了示例性事件日志450,其是由事件日志查看器222(图2)从上述内部事件表中提取的。该示例中的事件日志450包括两个列表:包含了针对所选序列的每个步骤所记录的事件id的事件id列表452;以及包含了在内部事件表中记录了这些事件id的行号的行号列表454。在一些实施例中,事件日志查看器222可以等待直到所有序列步骤完成,然后在一次读取或一次提取(从内部事件表)中获得所选序列的整个事件id列表452和行号列表454。在其他实施例中,事件日志查看器222可以随着每个步骤的完成而在逐个步骤的基础上实时获得事件id列表452和行号列表454。在任何一种情况下,如果开关设备按预期运行,则事件日志450中的事件id应与所选序列的序列事件表300(图3)中的事件id相匹配。
47.图4c示出了按下验证按钮408后的验证工具用户界面400。按下该按钮408,就会使验证逻辑224开始比较序列事件表300中的事件id和从内部事件表提取的事件日志450中的事件id。取决于实施方式,验证逻辑224可以对所有事件id执行一次验证,或者随着每个步骤的完成在逐个步骤的基础上实时地执行验证。无论如何,如果序列事件表300与事件日志450中的事件id之间存在任何不匹配,则用户界面400相应地填充失败事件id字段422、424、426。在本示例中没有不匹配,因此这些字段被默认填充为零,并且事件测试状态指示器428呈绿色亮起或以其他方式可视地突出显示(hightlight),以反映序列步骤的成功完成。
48.图5a-图5b示出了图4a-图4b中相同的验证工具用户界面400和事件日志450,但出于说明目的,通过为所选序列插入错误事件id,来使此处的验证失败或未通过。如事件日志450所示,该序列以与设备1至5被打开的顺序相同的顺序来关闭设备1至5,而不是如序列事件表300中所指定以相反的顺序来关闭设备1至5。此顺序反转导致从第六行或行号166开始的不匹配,从该行开始,序列步骤开始被记录在内部事件表中。用户界面400相应地用图5a中的数字“6”填充失败位置字段420。导致了该失败的事件id为“1”,因此用户界面400用数字“1”填充检测到的失败事件字段424。预期的事件id为“5”,因此用户界面400用数字“5”填充预期事件字段426。在一些实施例中,事件测试状态指示器428呈红色亮起或以其他方式突出显示,以指示序列步骤未成功完成。
49.图6a再次示出了来自图3的序列时序表310,但是出于说明目的,在第二步骤中指定了5秒的时间延迟。图6b再次示出了来自图4a的验证工具用户界面400,但是由于第二步骤处的不正确时序延迟,导致验证失败或未通过。可以看出,在第二行出现时序延迟差异(discrepancy),从该行起,序列步骤开始被记录在内部事件表中。用户界面400相应地用数字“2”填充失败位置字段430。该第二步骤处的事件仅在前一事件发生后3秒(而不是5秒)被执行,因此用户界面400用数字“3”填充实际时间字段432。该事件预期在前一事件之后5秒发生,因此用户界面400用数字“5”填充预期时间字段434。在一些实施例中,延迟测试状态指示器436呈红色亮起或以其他方式突出显示,以指示序列步骤未成功完成。
50.图7示出了示例性忽略事件表700,可将其用于通知调试代理220在电源控制序列中可忽略某些事件。忽略事件表700具有两个列表:简单地枚举序列中要忽略的事件的索引列表702;以及指定了如果发现的话可以忽略或跳过的事件id的要忽略的事件列表704。这
些事件可以是正在工作的开关设备中可能某种程度随机发生的并且不一定是失败的事件,而是可以在开关设备中以任何顺序发生的事件。例如,无法始终准确预测特定发电机启动或上线的时序。这样的事件仍然被记录(经由开关设备控制器208的事件序列记录器),但它可能被错序地记录。忽略事件表700允许调试代理220忽略任何这样的“随机”事件(如果它们被事件序列记录器记录的话)。在所示的示例中,有两个事件可以忽略(如果找到任一个),即事件id“6”和事件id“1006”。
51.图8a-图8b示出了图4a-图4b中相同的验证工具用户界面400和事件日志450,但这次电源控制序列的定义除了图3中的序列事件表300外,还包括图7中的忽略事件表700。如在事件日志450中所示,事件id“6”和事件id“1006”在序列运行期间意外发生。这些事件id分别记录在内部事件表的第三行和第五行(经由事件序列记录器),这导致事件日志450总共有12个事件id,而不是(按照序列事件表300)预期的10个。事件id的数量(“12”)被填充在用户界面400中捕获的序列数量字段420中,并且通常会导致不匹配(经由验证逻辑224)。然而,由于忽略事件表700中包括了事件id“6”和事件id“1006”,因此跳过这些事件,并且仅对剩余的事件id执行验证。用户界面400可以相应地指示序列步骤的成功完成。
52.图9示出了序列表900的示例,其中为表中列出的事件id提供了注释。序列表900与来自图3的序列事件表300类似,因为存在指定序列中的步骤的数量和顺序的序列列表902和指定要在每个步骤执行的事件的事件id列表904。此外,针对事件id包括注释列表904,该注释为用户提供了事件的速记描述或上下文。因此,例如,第一行中的事件id“1001”指示设备1从关断到开启的转换。第一行的注释解释了事件id“1001”旨在在主电源断电时从开关设备上移除公用电源(“公用电源1”)。类似地,第二行中的事件id“1002”指示设备2从关断到开启的转换。第二行的注释解释了事件id“1002”旨在在主电源断电情况下使备用发电机(“52u1”)上线,以此类推。
53.图10a-图10b是用于调试代理220的替代事件日志1000和替代验证工具用户界面1050,其使用来自图9中序列表900的注释。事件日志1000类似于来自图4b的事件日志450,因为存在:包含(由事件序列记录器)所记录的事件id的事件id列表1002;以及包含(内部事件表中的)记录了事件id的行号的行号列表1004。另外,注释列表1006向用户提供简要解释事件id列表1002中的事件id的注释。在当前示例中,注释列表1006中的注释是从图9的序列表900中获得或以其他方式提取的。在一些实施例中,用户还可以根据需要手动输入注释列表1006中的注释。事件日志1000的其他特征可以包括:包含执行了事件id的日期戳的日期列1008;以及包含事件id发生的时间戳的时间列1010。在一些情况下,可以添加最新行字段1012,以指示哪一行是日志中的最新行,从而让用户知道日志是按正向顺序还是反向顺序。
54.验证工具用户界面1050也类似于来自图4a的验证工具用户界面400,只是在用户界面1050中使用了注释。用户界面1050中还包括让用户自动一个接一个地自动运行多个序列的选项。可以看出,有启动按钮1052和停止按钮1054,其捕获每个序列的开始和停止位置(如内部事件表中记录的)。到目前为止捕获的步骤按钮1056显示针对每个序列捕获的当前步骤数量。序列号字段1058允许用户通过输入序列的序列号,来选择要运行的特定序列。按下开始序列测试按钮1060,就会使用户界面1050自动运行所选序列。选择继续下一选项1062,就会使用户界面1050在当前序列已完成后自动运行下一个序列以及开关设备控制器中可用的任何附加序列。
55.在一些实施例中,对于给定的序列,可以在该序列中的每个步骤被执行时,实时地(经由验证逻辑224)在逐个步骤的基础上,将实际执行的步骤对照对应序列表中的预期步骤进行比较。在这些实施例中,在该序列中的每个步骤被执行时,测试结果字段1064显示与该步骤相关联的任何注释(来自序列表900)。序列步骤时钟1066示出自上一步骤以来当前步骤所经过的时间(以秒为单位),并且当前序列中的步骤数量字段1068显示当前序列中的步骤总数。测试之间的延迟字段1070允许用户设置连续序列之间的时间延迟(以秒为单位)。
56.上述多pcs实时验证实施例也经由图10a的事件日志1000来实现。这里,日志不是一次显示一个序列的步骤,而是维护一滚动窗口,例如,该滚动窗口是可以跨越两个或多个序列的10到15个步骤的滚动窗口。当调试代理启动一个新序列时,事件日志1000呈绿色亮起或以其他方式一次一个地突出显示该序列的每个步骤,以指示该步骤的执行。当一个序列完成时,事件日志1000从该序列的步骤中移除该突出显示,并开始呈绿色亮起下一个序列的每个步骤,以此类推。这可以在图10a中看到,其中第10、11和12行上的呈绿色亮起或突出显示指示在这些行处(成功地)执行了新序列的前三个步骤,同时从前面的行中移除了突出显示。
57.再次参考图10b,当在序列的步骤中检测到错误事件id时,用户界面1050在失败位置测试序列步骤字段1072中报告该错误的位置。在检测到的失败事件字段1074中报告失败事件id,并且在相关联的注释字段1076中显示与该事件id相关联的任何注释。在预期事件字段1078中报告预期事件id,并且在相关联的注释字段1080中显示与该事件id相关联的任何注释。显示错误消息1082,其为用户总结事件id失败。
58.类似地,当在序列的步骤中检测到错误的延迟时间时,用户界面1050在失败位置字段1084中报告该失败的位置。在自上次事件起算的实际时间字段1086中报告实际延迟时间,并且在自上次事件起算的预期时间字段1088中报告预期延迟时间。用户可在容差字段1090中设置时序容差(例如,以秒为单位),并显示错误消息1092,其总结时序延迟失败。
59.图11a-图11b示出了相同的替代事件日志1000和验证工具用户界面1050,但出于说明目的,假设了事件id失败。在此示例中,在第18行,当前序列的第三步骤中检测到错误事件id。事件日志1000相应地呈红色亮起或以其他方式标记错误事件id,并继续执行下一步骤。用户界面1050类似地在失败位置测试序列步骤字段1072中报告事件id失败(即,步骤3)的位置。在检测到的失败事件字段1074中报告检测到的事件id,并且在相关联的注释字段1076中显示任何相关联的注释。在预期事件字段1078中报告预期事件id,并且在相关联的注释字段1080中显示任何相关联的注释。用户界面1050还在1082处显示总结性错误消息。
60.到此,已经描述了本公开的具体实施例。下面是可与本公开的实施例一起使用的一般方法。
61.参考图12,示出了示例性方法1200的流程图,该方法1200可与本文公开的调试代理的各种实施例一起使用。该方法通常从1202开始,其中选择要在开关设备中执行的电源控制序列。电源控制序列的选择可以通过驻留在开关设备控制器中的编程自动进行,也可以通过用户使用调试代理输入该序列的序列号手动进行。在1204,调试代理指示开关设备控制器执行所选序列中的序列步骤。例如,可通过调试代理向开关设备控制器发出或促使
发出适当的命令来完成。然后,开关设备控制器在一个或多个序列表中查找所选序列(这些序列表通常存储在开关设备控制器中的指定存储位置或存储器块中),并获得要针对所选序列执行的步骤。
62.在1206,调试代理读取或以其他方式访问开关设备控制器中的事件日志,其中记录有执行所选序列的步骤的结果。该事件日志可以是驻留在开关设备控制器中的指定存储位置或存储器块的内部事件表的形式。在1208,调试代理确定事件日志中与所选序列中的步骤相对应的事件的开始和结束位置。这可以通过在内部事件表中捕获由所选序列中的步骤产生或与之对应的事件的开始行号和结束行号来实现,或者通过捕获开始行号并根据序列表中列出的该序列中的步骤总数而计算结束行号来实现。
63.在1210,调试代理将事件日志中开始和结束行号之间的事件id与序列表中指定的事件id进行比较。如前所述,这可以在执行每个序列步骤时在逐个步骤的基础上实时进行,或者可以在序列完成后对所有事件id一起进行。在1212,调试代理输出或以其他方式将比较结果呈现给hmi或其他类型的显示器。这可以涉及例如在本文描述的示例性用户界面和/或事件日志中呈现部分或全部序列信息。在1214,调试代理可视地突出显示从1212中的比较得到的任何不匹配。例如,可以通过呈红色亮起适当的状态指示器来实现。
64.在1216,调试代理例如通过检查用户选择的自动保持运行序列的选项,来确定其是否应运行另一序列。如果确定为是,则调试代理在1218自动选择下一个电源控制序列,并返回1204以开始执行下一个序列。如果确定为否,则调试代理返回1202并等待选择下一个电源控制序列,然后重复上述方法。
65.在上文中,参考了各种实施例。然而,本公开的范围不限于具体描述的实施例。相反,所描述的特征和元件的任何组合,无论是否与不同的实施例相关,都被预期用于实现和实践预期的实施例。此外,尽管实施例可以实现优于其他可能的解决方案或现有技术的优点,但特定优点是否由给定实施例实现并不限制本公开的范围。因此,前述方面、特征、实施例和优点仅为说明性的,并且不被视为所附权利要求的要素或限制,除非在权利要求中明确叙述。
66.本文公开的各种实施例可以实现为系统、方法或计算机程序产品。因此,方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微代码等)或结合软件和硬件方面的实施例的形式,这些方面在本文中通常都可以称为“电路”、“模块”或“系统”。此外,各方面可以采取在一个或多个计算机可读介质中体现的计算机程序产品的形式,所述一个或多个计算机可读介质上体现有计算机可读程序代码。
67.可以利用一个或多个计算机可读介质的任何组合。计算机可读介质可以是非暂时性计算机可读介质。非暂时性计算机可读介质可以是,例如,但不限于,电子、磁、光学、电磁、红外或半导体系统、装置或设备,或上述的任何适当组合。非暂时性计算机可读介质的更具体示例(非详尽列表)可包括以下内容:具有一条或多条导线的电气连接、便携式计算机软盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd-rom)、光存储设备、磁存储设备或上述任何合适的组合。体现在计算机可读介质上的程序代码可以使用任何适当的介质来传输,包括但不限于无线、有线、光纤电缆、rf等,或者前述的任何适当组合。
68.用于执行本公开各方面的操作的计算机程序代码可以用一种或多种编程语言的
任意组合来编写。此外,这样的计算机程序代码可以使用单个计算机系统或通过相互通信的多个计算机系统(例如,使用局域网(lan)、广域网(wan)、因特网等)来执行。尽管参考流程图和/或框图描述了前述中的各种特征,但本领域普通技术人员将理解流程图和/或框图的每个方框以及流程图和/或框图中的方框组合,可通过计算机逻辑(例如,计算机程序指令、硬件逻辑、两者的组合等)实现。通常,可以向通用计算机、专用计算机或其他可编程数据处理设备的处理器提供计算机程序指令。此外,使用处理器执行此类计算机程序指令产生能够执行流程图和/或框图中指定的功能或动作的机器。
69.附图中的流程图和框图示出了本公开的各种实施例的可能实现的架构、功能和/或操作。在这方面,流程图或框图中的每个框可以表示代码的模块、段或部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。还应注意的是,在一些替代实施方式中,在框中记录的功能可以不按在图中记录的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者有时可以根据所涉及的功能以相反顺序执行这些框。还将注意到,框图和/或流程图的每个框以及框图和/或流程图中的框的组合可以由执行指定功能或动作的基于专用硬件的系统或者专用硬件和计算机指令的组合来实现。
70.应当理解,上述描述旨在是说明性的,而非限制性的。在阅读和理解上述描述后,许多其他实现示例是显而易见的。尽管本公开描述了具体示例,但应认识到,本公开的系统和方法不限于本文描述的示例,而是可以在所附权利要求的范围内通过修改实施。因此,说明书和附图将被视为说明性意义而不是限制性意义。因此,应当参考所附权利要求书以及这些权利要求书有权获得的等价物的全部范围来确定本公开的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献