CN101802729B - 无线控制和传感器网络中的诊断与故障排除方法 - Google Patents
无线控制和传感器网络中的诊断与故障排除方法 Download PDFInfo
- Publication number
- CN101802729B CN101802729B CN2008800145605A CN200880014560A CN101802729B CN 101802729 B CN101802729 B CN 101802729B CN 2008800145605 A CN2008800145605 A CN 2008800145605A CN 200880014560 A CN200880014560 A CN 200880014560A CN 101802729 B CN101802729 B CN 101802729B
- Authority
- CN
- China
- Prior art keywords
- diagnostic
- built
- variable
- data
- variables
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000013024 troubleshooting Methods 0.000 title description 3
- 238000004458 analytical method Methods 0.000 claims abstract description 13
- 238000004891 communication Methods 0.000 claims description 29
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000006870 function Effects 0.000 description 85
- 230000009471 action Effects 0.000 description 30
- 238000013480 data collection Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000012552 review Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 241000238876 Acari Species 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012774 diagnostic algorithm Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000010921 in-depth analysis Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24055—Trace, store a working, operation history
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24067—Processor stores variables, events and date in eeprom, for external monitor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24084—Remote and local monitoring, local result to remote, remote takes action
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
公开了一种对第一分级设备执行诊断的方法,该第一分级设备可操作的位于楼宇自动化系统中。该方法包括编译被配置为控制第一分级设备的应用代码使得该应用代码包含多个内部变量;提供被配置为监视多个内部变量的诊断模块;收集与被监视的多个内部变量相关的内部变量诊断数据;将被收集的内部变量诊断数据上传至一第二分级设备;在第二第一分级设备中对内部变量诊断数据执行分层的诊断分析;以及基于该被分析的内部变量诊断数据识别第一分级设备的问题。
Description
对相关申请的交叉引用
本专利根据35U.S.C§119(e)要求2007年5月3日提交的序列号为No.60/915,710(2007P09009US)以及2007年5月10日提交的序列号为No.61/035,109(2008P004472US)的美国临时专利申请的优先权,在此为所有目的将上述申请的内容通过引用合并于此。
本专利与2006年10月31日提交的序列号为No.11/590,157(2006P18573US)以及2004年8月8日提交的序列号为No.10/915,034(2004P13093US)的美国共同未决专利申请相关,在此为所有目的将上述专利申请的内容通过引用合并于此。
背景技术
典型的嵌入式系统,包括那些联网在一起的嵌入式系统,以及特别是那些无线地联网在一起的嵌入式系统,它们错综复杂并且在发生问题时难于排除故障。检测出和/或看见的问题典型地需要系统操作者或提供者快速解决。
经验表明如果不内嵌诊断,几乎很难确定无线控制和传感器网络(WCSN)中问题的根本原因,举例来说,甚至在“简单”的无线设备中,问题可能发生在多处可能位置的一个位置上,这些可能位置例如是:(1)无线电硬件,(2)无线电固件,(3)应用处理器,(4)无线堆栈固件,(5)无线应用固件,以及(6)无线电处理器和应用处理器之间的通信信道。另外,因为无线设备和/或楼宇自动化部件可能被部署在无法接近的位置上(如在天花板通风系统内,或在锁闭的办公室或设备间内),所以利用无线设备的无线通信信道可以使故障排除更容易、更有效率以及更可行。
众所周知,为现代嵌入式产品提供内嵌诊断,可以在不需呼叫外界服务的情况下允许用户对日常问题进行诊断。外部服务人员通常有附加的或扩展的诊断能力或工具以诊断诸如通信的系统层问题。在许多情况下,服务人员可以获得通过因特网进行“远程”诊断的第三层,以提供对无线设备操作和/或系统操作的深入分析。
发明内容
在此,公开了用于在无线控制和传感器网络(WCSN)中进行无线诊断和故障排除的方法与设备。所公开的诊断功能基于对与WCSN中的设备相关联的内部变量的分析而识别和解决WCSN中的问题或错误。所公开的方法和设备可以节省用户的时间和金钱,提供快速的问题解决,并增强用户经验。
在一个实施例中,公开了一种对楼宇自动化系统中可操作的第一分级设备执行诊断的方法。该方法包括编译被配置为控制第一分级设备的应用代码以使得该应用代码包含多个内部变量,提供被配置为监视该多个内部变量的诊断模块,收集与被监视的多个内部变量相关的内部变量诊断数据,将被收集的内部变量诊断数据上传至第二分级设备,在第二分级设备中对该内部变量诊断数据执行分层的诊断分析,以及基于该被分析的内部变量诊断数据识别第一分级设备的问题。在另一实施例中,公开了一种在楼宇自动化系统中可操作的分级设备。该设备包括无线通信部件,与该无线通信部件进行通信的处理器,以及与该处理器通信的存储器。该存储器被配置为存储可通过处理器执行的应用代码使得该应用代码包括诊断模块,该诊断模块被配置为监视与该应用代码相关联的多个内部变量,收集与被监视的多个内部变量相关的内部变量诊断数据,并传送收集到的内部变量诊断数据。
还公开了其它的实施例,每一实施例都能被单独或组合使用。所公开的实施例的附加的特征和优点在下面的详细描述和附图中说明,并且将从该详细描述和附图中变得明显。
附图说明
图1示出表示在有线或无线设备中可操作的应用代码的结构图,所述设备可以被部署在楼宇自动化系统中;
图2示出可用图1所示的应用代码操作的示例的诊断模块;
图3示出示例的诊断模块与应用代码的集成;
图4示出示例的诊断数据层;
图5示出示例的网络配置;
图6示出诊断模块中间节点的例子;
图7示出程序员诊断工具代码模块的例子;以及
图8示出示例的自动化部件或设备,其能够实施在此公开的应用代码和诊断工具代码。
具体实施方式
本公开的焦点在于可以由设备程序员提供和/或实施的第四层诊断。该第四层或内部变量诊断提供了一种观察嵌入式设备或自动化部件以及嵌入式设备或自动化部件的软件/固件内部变量以在应用代码层精确地确定错误或作业故障的根本原因的手段。
诊断的应用代码层很少包括在和/或被限定在他们所报告的情况中是有很多原因的。特别是,因为典型的嵌入式系统具有成百上千的内部变量,设备和/或系统既没有足够的网络带宽也没有充足的内部存储资源用来跟踪与监视所有的内部变量。内部变量典型地比传送诊断消息所需的通信时间更快和/或更加频繁地改变。这种相对于内部变量改变的速度而言的通信滞后可能会导致不是每一次改变都被报告或记录。作为嵌入式控制器内的重要部件,存储器可以用来在执行诊断程序时进行辅助存储;然而,这种使用可能会影响/减少计划的应用存储器以及产品的整体性能。在许多嵌入式设备或系统中,诊断的设计和实施与实际应用代码的开发相比,可能开发更为费力。
诊断问题的普通方法是:(i)估计出潜在问题或错误的宽的范围以及与每个错误或问题关联的变量;(ii)回顾每一相关联的变量以确定其中的哪些变量正运行于它们的设计极限值之外-如果有的话;(iii)将极限值外的变量与特定于地点的问题相关联;(iv)确定与运行于极限值外的变量关联的差异来源;(v)确定解决或定位差异和/或特定于地点的问题的动作或策略。
通常在故障发生时,不止一个变量位于极限值之外,很有可能作为内部“连锁反映”或一系列事件。在这些情况下,可能有必要集中于极限值外变量的一个或多个子集,弄清该子集的行为,然后分析其它子集。该诊断算法可以被称为变量的优先级分析。
变量的优先级分析对可见变量是有效果的,但是软件内部变量并不是外部可见的,因此不能以同样的方式跟踪到。在公开的文档中暴露和记载软件内部变量可能会导致商业秘密被公开,可能为竞争者提供商业和/或发展利益。
本公开定义了第四层诊断方案,用于跟踪和/或监视内部变量。该第四层诊断方案提供了一种分级数据收集方法或方案:(1)当诊断模块被集成在应用代码中时,跟踪通过程序员确定优先级的大量变量,(2)根据每一变量的优先级平衡存储器资源,(3)允许从被收集的数据的内部进行内部恢复操作,(4)利用匿名报告方法,允许被收集的数据在未泄露设计信息的情况下被报告,以及(5)用户接口,允许改变收集方法以关注特殊变量集。本公开被分为三个主要部分:(I)在设备上收集诊断数据;(II)在整个网络中进行通信与数据传送;以及(III)用于分析诊断数据和/或在源设备上改变数据收集的程序员诊断工具。I.诊断数据的收集
图1示出包含若干代码模块的软件方块图的实施例,所述代码模块可以根据在此呈现的公开内容实施。
方块101a到101f描绘了可被用于例如将各种硬件输入/输出(I/O)功能与操作系统102接口和/或通信的驱动器。操作系统102在该实施例中可负责任务调度、任务执行、任务之间的通信、将代码模块I/O请求与相关联的I/O驱动器接口,以及负责其它操作系统功能。
方块103a到103f表示被配置或编程为在设备和/或自动化部件中执行任务的软件模块或计算机可读代码块。例如,方块103a可以是与较低层系统传感器和/或输出活动设备通信的协议堆栈。方块103b可以是与分级系统内的较高层控制器通信的协议堆栈。在ZigBee模拟中,简化功能器件(RFD)可以与全功能器件(FFD)通信,或FFD可以与另一FFD或PAN协调器通信。方块103c可以是实施针对内部数据和变量的数据库管理器的代码模块。方块103d可以是解决方案代码,如描述客户需求的可由软件、代码和/或计算机实施的指令。位于其它软件模型中的解决方案代码被称为“应用代码”。解决方案代码可以被用于将方块或模块103d与在此被称为应用代码100的整个软件包区分开。方块103e可以是用户接口模块,其允许用户在本地通过直接硬件连接访问设备或自动化部件,或允许用户远程地经由网络而通过一个或两个协议堆栈103a,103b访问设备或自动化部件。方块103f可以是诊断模块或如果包含诊断代码则是代码,其在设备或自动化部件内被激活和/或提供。
每一软件块由代码对象和/或代码群的行组成,它们被典型的组织为主循环,其中0给许多遵循该循环的函数。函数调用(从源点)能够将变量传递给被调用的函数或子程序,该函数或子程序可以利用被传递的变量。一个或多个被调用的函数可以选择性地通信并返回值给进行调用的函数。函数可以调用其它的函数,从而允许代码:(1)被分为越来越小而复杂程度越来越低的区块,以便更容易进行测试和验证;以及(2)更大和更复杂的函数可以通过按需要的顺序调用“更简单”的函数的方式来构造。
包含数据的变量可以被传递给其他的函数或子程序,或从其他的函数或子程序返回。在函数和主循环内部,其它的变量控制函数或主循环的流程和顺序(flow and sequence)。函数和/或主循环内的大部分变量传递内部数据,并且除了在开发过程中使用的诊断工具内之外是不可见的。这些变量可被称为内部变量。每一内部变量在依赖于其使用的极限值的测试范围或集合内运算。当变量用位于该范围之外的值运行时,它们的运行是未经测试的并且有时是不稳定的,这是因为例如位于实验室所作的测试范围之外的特定于工作地点的问题。与哪些变量发生了错误以及它们如何发生错误相关通常导致在工作地点找到问题解决方案。
图1示出了软件代码如何被观察和/或如何被实施的示例。例如,可以有更多的代码块,或者可以有更少的代码块,驱动器可以像所展示的那样是分离的,也可以集成为一个或多个驱动器块,驱动器的数量可以改变,操作系统可以是分离的软件结构或软件块,也可以不是分离的软件结构或软件块。图1试图给出结构化代码的背景,其函数调用用于在一代码模块内的函数间实现通信,或者在一不同模块内的函数间实现通信,而变量用于将数据传递给这些函数,或是从这些函数传递数据。此外,图1试图解释内部变量的概念。
图2示出诊断模块103f的内部方块图的示例,该诊断模块103f被安排为示出并突出诊断功能。
INTIALIZE(初始化)函数201可以从应用代码100被调用,以初始化诊断模块103f和其相关联的存储器。该调用能够/将要把关键的初始化变量传递给诊断模块103f。在初始化函数210执行后,控制可以被返回到应用代码100的调用点。
TICK(计时)函数202可以在一段已知时间过去后由应用代码100调用。该时间间隔可以通过硬件定时器、硬件时间信号或任何其他的近似恒定时间间隔发生源来控制。该计时函数202对该时间间隔进行计数,直到诊断“计时”时间或阶段过去。作为参考点,在一个示例中该诊断“计时”时间可以是5分钟的间隔。在每一诊断“计时”间隔的结尾,该计时函数202可以执行专门的时间相关函数。
MEMORY MANAGEMENT(存储器管理)函数203可以分配和重新分配给予诊断模块103f的诊断存储器的片段。该存储器管理函数203可以跟踪当前使用的存储器数量以及可利用的存储器数量。每当其他的诊断模块103f函数需要一块存储器或是利用完一块存储器时,其他的诊断模块103f函数就可以调用存储器管理函数203。
CHECK(检查)函数204可被设置于应用代码100中变量需要被检查的每一个点上。应用代码100内的这些点或位置可以被称为检查点。每个检查点可以被分配一个唯一的检查点号码,用来精确定位检查点在应用代码中的位置。检查函数204还可以连同检查点号码一起传递需检查的变量的值。附加的变量虽然可以在该调用中被传递,但是不以任何方式被检查。这些额外的变量被认为是在对应检查点上的有用信息。检查点变量值被根据该变量在应用代码100中的该特定检查点处的上下极限值而评估。如果检查点变量位于极限值内,函数将控制返回到应用代码中的调用点。如果该变量位于极限值外,即高于或低于极限值,则可以调用TRACK(跟踪)函数205。
在一个实施例中,该跟踪函数205接收检查点号码、变量值、以及变量是否位于上极限值或下极限值之外。该跟踪函数205更新针对该检查点的所有已存在的诊断数据。该诊断数据的细节将结合图5更加详细的说明。当跟踪函数205完成任务后,控制被传递给ACTION(动作)函数206。
该动作函数206可以看到专门针对该检查点号码的“何时采取动作”,并且可以(1)请求扩展或缩减对该变量执行的跟踪的数量;(2)标记并指示需要被上传或提供给系统体系中更高层控制器的诊断数据;和/或(3)采取校正动作来定位或校正该变量的位于极限值外的情形。更多关于“采取动作”的函数的细节将结合图3说明。如果未采取任何动作或是从该动作返回后,控制返回到应用代码100中的调用点。如果程序员选择了硬复位、软复位、或其他类似“不返回”的动作则可能发生返回到应用代码100的例外。
当应用代码100将要发送消息到更高层控制器时,UPLOAD(上传)函数207可以被应用代码100调用。该上传函数207确定是否有任何待决数据需要被上传,如果确实有,将诊断数据添加到要以被发送的消息的最大长度发送的应用数据中。在无线节点或网络中,该方法允许诊断数据连同普通数据一起被发送到更高层控制器,并延长了电池寿命,因为更长的消息比在网络中搜索另一消息间隔花费更少的能量。来自更高层控制器的响应消息确认诊断数据的数据传送。控制返回到应用100中的调用点。在更高层控制器中需要一些存储器来永久地存储诊断数据,或是将诊断数据一直存储到该数据被发送到最终目的地。
当从程序员诊断工具506(见图5)通过该节点的下一更高层控制器接收到消息时,可以调用MODIFY(修改)函数208,该下一更高层控制器告知诊断模块103f修改一个或多个诊断检查点变量的极限值、动作、报告或告知存储器是如何被分配给诊断变量的。该修改函数208允许程序员诊断工具506改变收集什么数据以及如何收集数据,以意欲更多的了解问题。
图3展示了诊断模块103f是怎样被集成到应用代码100中的。方块301表示单独的代码模块、若干代码模块的连续视图或所有的代码模块。位于代码301中央下面的短线展示了程序员决定插入检查函数204调用的地方或位置,用于在每一位置检查单个变量的极限值。每一检查点用相关联的检查点号码展示(例如,检查点#3和#11被列于代码301的顶部或起始处)。这些号码对每个应用应当仅仅使用一次,并且将代码位置与极限值表302中的检查点项关联。该检查点号码可以定义该检查点相对于所有其它检查点的相对重要性。较高优先级的检查点与较低优先级的检查点相比可以被分配更多的诊断跟踪存储器来使用,因此能够提供或完成更好的数据收集信息。在图的左手边是另一被标记为AXX(这里XX为标识号码)的线段的集合,这些线段表示程序员认为有用于从需要校正动作的检查点变量恢复的函数调用。
极限值表302展示了程序员必须为每一检查点提供的信息的概要。该信息可以包括:(1)变量的上极限值;(2)变量的下极限值;(3)扩展和/或缩减诊断数据收集层的条件;(4)什么时候检查点数据应该被上传至更高层控制器;(5)什么时候校正动作应该被采取,以及哪些校正动作应该被采取。上述3、4、5项是基于依据程序员强加的诊断数据极限值而在诊断数据中收集的值的条件语句。要采取的动作是数字交叉参考代码,其在动作表303中被关联以得到该函数调用在应用代码100中的地址。
在稍后的图4中可以看到,诊断数据的收集发生在诊断字段。在各种计算中组合这些字段使得可以确定统计值。对诊断字段以及计算结果进行编号可以允许该信息被用作动作函数206的一部分。例如,如果(特定检查点变量上或下极限值的)标准偏差大于例如五(5),那么调用动作#3。如果为真,则动作表303中在位置三(3)的地址可以被取出,并使该校正动作被执行。
该动作表303能够列出程序控制可被送达的地址。它们以前述段落中定义的数字交叉参考为关键字。当需要一动作时,在动作表303中查找该数字交叉参考,所述地址被找到,控制转移到该函数。在大部分情况下,控制在函数完成后返回到这里,并且在当前检查点函数调用之后,控制从这里返回到应用代码100的下一行。
应用参考数据304对于程序员来说是可选项,其包括关于检查点的电子数据,如名称、位置、用途以及每次处于极限值外的可能原因。所述信息可以被装载到程序员诊断工具506中以便于更好地说明所收集的数据源检查点。该信息在分配时很有可能受到很大的限制。另一种可选方式是,该信息可以被结构化为多层。客户层可以具有替代所选择的检查点号码的名称,以阻止与设计相关的信息的散布,例如,检查点17变为定时器3。第二层(现场服务)可以将名称与代码模块关联起来,例如,ZigBee堆栈-定时器3。另外,一个可行的解决方案可以被建议,例如“将附加的路由节点添加在该故障设备附近的区域中”。第三层(客户服务)可以略微给出更多的信息,例如“ZigBee堆栈定时器3捕获了设备等待网络访问的等待时间。如果等待时间太长,则在网状网络的该部分中可能出现不足的路由,所以添加路由节点可以解决该问题”。第四层,即开发者/程序员层,可以包含:(1)代码模块名称;(2)代码模块行号码;(3)变量名称;(4)被监视的变量名称;(5)每一变量的含义;(6)所测试的极限值;(7)隐含的原因,等等。虽然在此展示四个层以便与本公开一致,但是层的数量是用来说明概念,并不意欲局限于一种方式。
应用参考文档305是由程序员创建的可选的文档,用于对服务或客户支持在诊断数据收集期间所用到的检查点、变量以及参考数据给予深入的描述。“纸”或“硬拷贝”文档意欲是说明应用模块内部行为的真实文档。
图4介绍了分级数据模型400的概念。该模型400可以被用于上极限值违例,又可以用于下极限值违例。在任何时刻用于检查点变量的实际层数依赖于:(1)该检查点在高于极限值方向或低于极限值方向超出极限值的次数;(2)超出极限值外的较高优先级检查点的数量,它们超出极限值的次数,还有它们中的每一个是如何被定义以扩展它们的诊断数据结构的;以及(3)被程序员分配来用于诊断数据跟踪的总存储空间。经常出故障的较高优先级检查点相比于偶尔出故障的较低优先级检查点来说通常具有更多的跟踪层和使用更多的存储器,较低优先级检查点可以实施少量的跟踪层,但是很低优先级的检查点可能受限于其能够拥有的存储器。另一方面,如果没有更高优先级检查点发生故障,很低优先级的检查点能够得到大量存储器用于诊断跟踪。
现在将要描述示例的模型层,以示出根据本公开的教导数据可以何种方式被建模。
将针对位于下极限值一侧的极限值之外的变量来描述该示例的模型400。如果有必要的话,对于上极限值的极限值外跟踪也可以获得该结构。该下极限值结构仅仅在检查点变量低于下极限值时被创建和使用。类似地,上极限值结构仅仅在检查点变量大于上极限值时被创建和使用。
对应于参考号码401的层1跟踪一个、也只有一个统计量。“自从设备最近上电以来,该检查点变量曾经位于下极限值一侧的极限值之外吗?”可以在每当变量位于下极限值一侧的极限值之外时对一位置位。该字段期望能够与来自其它检查点的下极限值字段位于一个位串之中。访问是通过检查点号码实现的。可选的合成位可以被包括进来,在每次低于下极限值时该合成位被置位。用户可以通过分析该位串来了解:(1)是否有任何检查点变量曾位于极限值之外;以及(2)哪个或哪些检查点变量基于哪一位或哪几位被置位。如果非易失性诊断存储器可用,则该信息可以被扩展为“自从设备安装”,而不再是“自从上一次上电”。
对应于参考号码402的层2可以是对被不同控制的层1结构的精确复制。当诊断模块计时定时器对于层2字段位置中置位的每一位超时时,“总共的计时数”计数器在层4记录(如果记录存在)中被递增。在所有位被检查后,该字段被清零,并且计时函数返回。在描述层4(见参考号码404)时,对“总共的计时数”字段将有更详细的说明。
对应于参考号码403的层3是包含(a)起始时间,(b)最终时间,(c)最终值,以及(d)系统开销字段的多字段记录。所述计时定时器可以被配置为跟踪和计算上电以来每天的时间以及天数。当第一次发生超出极限值时,该值被存储在起始时间字段。同样的值被存储在最终时间字段。处于极限值之外状态的变量的当前值被置于最终值字段。系统开销字段不能被使用,并且被保留以用于实施细节。在针对该变量的所有后续超出极限值之外时,只有最终时间字段和最终值字段会被写入。从这个记录中,可以看出故障什么时候开始、最后一个故障什么时候发生(时间间隔)、以及最终故障值。
对应于参考号码404的层4也包括4个字段。这些字段分别是发生数量、总共的计时数、标量偏差以及另一系统开销字段。每次超出极限值发生以及存在层4记录时,发生数量字段被递增。每次层2(计时)掩码402中的位被置位时,如果计时定时器超时则总共的计时数字段被递增。标量偏差表示第一故障值的捕获,并被用于补偿所有后续的超出极限值读数。在字段溢出发生(数据丢失)之前,该偏差典型地将允许更多的数据读数在层5和6中被编译。层4中的所述两个计数器字段被配置为其中一个对每个故障计数,另外一个对有故障的计时数量进行计数。如果两个数字相等,那么这些故障以大于计时间隔的间隔发生。如发生数量远大于总共的计时数的值,则在一个计时时间内发生多个故障。通过这些计数值,可以大概得知故障多久发生一次(在一个计时内故障的展开对爆发)。当层3起始和最终次数也被包括在内时,故障间的平均时间的估计就能被近似出来。
对应于参考号码405的层5包括四个字段:样本数;和X;和X**2;以及另一系统开销字段。该第一字段是记录创建以来故障发生的数量。该第二字段是在被标量偏差值(见层4字段号3)补偿后变量值之和。该第三字段是该偏差变量值的平方之和。从上述三个字段中可以计算出故障值的平均值和标准偏差。
对应于参考号码406的层6包含两个被标记为“和X**3”和“和X**4”的字段。这些字段连同层5的字段都可以被用于计算输入故障数据的倾斜度和数据贝尔曲线的高度。需要谨记的是,根据定义,贝尔曲线下面的区域被精确到1.000,所以曲线越高,读数就越高,曲线越低,读数就越宽。这不同于标准偏差,因为倾斜度的计算是为了使用高度值。
对应于参考号码407的层7可以被配置为记录所收集的数据,以便于以后的回顾。所记录的字段可以是数据和时间的更精确的时间戳(如果可得到的话)、检查点变量的值(未缩放)、以及另一系统开销字段。有了这些大量的记录,可以确定历史记录。
对应于参考号码408的层8在日志上记录与层7字段同样的数据,但是从初始检查函数调用中添加了额外的“查看”字段。以该详细程度,回顾者现在可以恰好在该检查点出现的时刻看到变量值和预定的其它“查看”变量值。该时刻是标记在该记录的第一字段中的时间。
模型400在其八(8)个不同层中的三个不同层上使用了设备存储器。层1和层2(分别是401、402)可以具有为这些字段保留的专门数量的存储器。层3、4、5和6(分别是403、404、405和406)为累加记录。也就是说,它们从创建开始就累加数据,直到一个或多个字段溢出。被累加的数据可以被回顾,并获得统计学的解释。最后,层7和8(分别是407和408)的记录耗费了大量的存储器来存储一(1)个非常详细的信息。这种结构可以使设备在最小化实际使用的存储器数量的同时最大化可获得的信息。II.通信和数据传送
图5示出了ZigBee网络的多种配置中的一种,并用于描述本公开的通信部分。虽然在此使用的是ZigBee网络,但是该通信模型可以与几乎任何目前已知的或未来将要开发的具有一个或多个层次的分级的网络或标准一起工作。任何目前已知的或未来将要开发的网络和传输算法都可以被用于设备之间的通信。通信、传输与路由算法被提供在适当的设备上。任何数据包大小或数据格式均可被使用。
图5所示的ZigBee网络500,示出了一种简单的分级网络,具有简化功能器件(RFD)节点501a到501i,这些节点典型地唤醒(变成激活),执行输入检测和/或输出活动,如果有必要的话,可选择地报告给各个全功能器件(FFD)502a到502d,然后返回休眠状态(变成非激活)。如果确实发生了通信,该通信典型地在FFD502a到502d中的一个上进行路由和高速缓存,然后该FFD将该通信路由到其它更远的目的地,例如:其它FFD502a到502d、PAN协调器503、大容量存储设备504、本地程序员诊断工具506、或通过因特网接口路由到更远的目的地,如远程大容量存储设备(未示出)或远程程序员诊断工具506。
全功能器件(FFD)502a到502d,根据ZigBee网络标准一直处于唤醒和激活状态,并且可以作为路由节点运行。FFD502a到502d能够通过PAN协调器503、大容量存储设备504或程序员诊断工具506彼此路由和分享信息。FFD也可以保持从它们的RFD最后报告的信息,也可以保持要传送给其RFD的信息。
诊断代码模块200也可以包括在或被添加到结合图2、3和4描述的RFD、FFD、PAN协调器503或大容量存储设备504中任何一个所执行的应用代码100中。
在大部分情况下,不同的应用代码100可以被用于每个不同设备类型501、502等。这意味着每个不同的设备类型具有不同的检查点位置以及不同的被跟踪变量。由于诊断数据被传递给其它节点,所以设备类型和网络节点位置需要伴随着节点的诊断数据。
恰当运行的设备不会有超出极限值的检查点变量,因此不会有数据被上传。对于具有有限数量的几个变量超出极限值发生的节点而言,将会有有限的诊断数据被上传。只有当变量被跟踪到详细的“实例”层(层7和8)时,才有可能具有向上线传送的重要数据。
就像之前陈述的那样,许多节点是RFD类型,并且大部分时间是休眠状态,即非激活。该RFD节点唤醒,检测输入和/或驱动输出,向上线报告等等,之后返回休眠状态,即变为非激活。为了使诊断数据能够对诊断工具如程序员诊断工具506可用,诊断数据(即使数量有限)必须被从RFD上传到相关联的FFD。该FFD要么将被上传的数据存储在本地,要么将该数据传递给其它具有更多可用存储器的设备,例如其它FFD502a至502d、PAN协调器503、大容量存储设备504或者一些远程大容量存储设备(图5中并未示出)、或远程程序员诊断工具506。该上传的数据要么是累加字段,要么是“最终值”字段,可以被从第一设备传递给更高层的第二设备。该第二设备又能够将来自第一设备的上传数据和之前上传的同一字段的第一设备数据累加起来。可选地,第二层设备能够在有规则的或计划的基础上存储被累加的数据,并对数据字段复位以接收进一步的上传。所述程序员诊断工具506可以利用该被存储的累加数据来历史地分析或回顾故障状态、内部变量状态、故障时间和/或频率。
被上传的诊断数据被保持在该网络体系的各个层中,以用于程序员诊断工具506的访问和回顾。
图6示出设备需要的软件模型600,该设备正在从较低层设备接收数据,并将数据保持在或传递到网络500内的其它设备。该模型600是基于结合图2所公开的全部要素,但是不包括检查函数204和跟踪函数205。此外,动作函数606、上传函数607以及修改函数608可以包括附加功能以允许接收来自较低层设备的上传消息,从而确定数据是被存储还是被发送,于是有能力将数据向上线发送。而且,动作函数606和修改函数608必须能够从上线得到命令,将它们排队,并在较低层节点被唤醒时传递这些命令。III.程序员诊断工具
程序员诊断工具506可以是一种被载入到客户服务工具、服务人员服务工具、客户的计算机的软件包,或仅仅被开发人员(程序员)使用,这依赖于设备的提供者想要公开多少内部设计。
当诊断模块103f被添加到应用代码100中时程序员可能已经创建的可选的“电子的”和“纸的”文档,现在可以被用于解释正在解释什么上传数据。
依据谁在使用该工具,也可以通过使用程序员诊断工具506来分割载入的信息量。这种情况下,客户将很可能获得非常有限的信息,而服务和客户服务可以被给予更多的信息以用于解释所报告的数据的含义,所报告的数据例如是结合应用参考数据304讨论的信息。
图7示出了程序员诊断工具506的模型700。要注意它看上去也非常类似于放置在应用代码100中的诊断代码模块103f(图2),但是就像图6中所表示的模型600,其省略了一些原始函数(检查函数204和跟踪函数205),并且可以包括两(2)个新的函数,ANALYZE(分析)函数704和图形用户界面(GUI)函数705。
初始化、计时与存储器管理函数具有与结合图2和图6讨论过的相同或类似的功能。
如图2所示的检查函数204,在模型700的实施例中已被分析函数704所取代。该分析函数704从一个或多个节点接收上传数据,然后使用扩展算法,试图将计数器以及在该节点中收集的以及可能在网络中其他地方被累加(来自上传)的其它值转换为有意义的信息,该信息可被用于帮助诊断源节点中的问题。被分析的数据将它的信息通过使用模块GUI函数705显示在该工具的屏幕上。
该GUI函数705从各种来源接收数据,并将该数据显示在设备的屏幕上。它也允许用户向该工具内的模块回输各种类型的命令,以修改这些模块的运行方式或显示什么信息以及如何显示信息。
动作函数706允许用户命令在该节点上采取动作。这些动作被限制为可用节点协议命令,以及所有包括在动作表303中的动作。
上传函数707可以是数据上传函数的接收部分。该上传函数接收并存储来自节点的上传数据,以便分析函数704处理。
修改函数708允许用户对极限值表304作暂时或永久性的改变,以改变数据如何被收集、诊断层什么时候被扩展或缩减、上传什么时候被执行以及如何采取动作,或允许源节点中的诊断模块搜集所有的位于极限值内和外的数据,以可视化成该检查点处变量的全部操作。
因为被添加到所有应用代码的所有诊断模块103f均使用相同的数据搜集模型,所以附加的资源可以被应用于分析函数704以便允许提取尽可能多的推论和信息。
根据由GUI函数705所显示或提供的信息,连同对设备代码的理解,、所公开的算法、方法和设备解决方案允许回顾和理解内部变量的动作而又不泄露设计概念,并允许实现比现有试验和故障方法更快的工作地点解决方案。
图8示出自动化部件800的实例的详细视图,该自动化部件800可以执行应用代码100和/或诊断模块103f。该自动化部件800可以是FFD502、RFD501、PAN协调器503或任何其它的有线或无线设备。虽然自动化部件800在这里被示出和讨论,但是其配置、布局和组成部分可以与部署在如图5示出和讨论的网络500内的任何设备和/或自动化部件结合使用。位于该示例实施例中的自动化部件800可以包括可以与存储器804或存储介质通信的处理器802,如PENTIUM、ATHLONTM、或者其它的8、12、16、24、32或64位处理器类。存储器804或存储介质可以包括任何随机存取存储器(RAM)806、可刷新或不可刷新的只读存储器(ROM)808和/或硬盘驱动器(未示出),或是任何其它已知的或预期的存储设备或机构。该自动化部件800可以进一步包括通信部件810。该通信部件810可以例如包括和网络500进行有线通信所需的端口、硬件和软件。该通信部件810可替换地或额外地包括无线发射器812和接收器814(或是集成收发器),它们与天线816或其它广播硬件可通信地耦合。
示例的自动化部件800中的子部件802、804和810可以耦合和配置为经由通信总线818彼此共享信息。这样,计算机可读指令或代码,例如软件、固件、应用代码100和/或诊断模块103f,就可以存储在存储器804上。处理器802可以经由通信总线818来读取并执行该计算机可读指令或代码。所得到的命令、请求和查询可以被提供给通信部件810,以便经由发射器812和天线816发送给其他的在网络500中运行的自动化部件。子部件802至818可以是单独的部件,也可以集成为一(1)个或多个集成电路、多芯片模块和/或混合物。
示例的自动化部件800可以是例如RFD501,如部署或放置于结构内的WRTS。运行中,该WRTS可以监视或检测该结构的一区域或范围内的温度。表示所检测的温度的温度信号或指示可以由WRTS进一步地产生。在另一实施例中,该自动化部件800可以是例如耦合到传感器或其它自动化部件的执行器。运行过程中,该执行器可以从网络500内的另一自动化部件接收信号或指示,并根据所接收的信号调节机械部件的位置。该信号或指示可以被存储或保存在存储器804内,以便于后续处理或与网络500内的另一部件通信。
应当理解的是对在此描述的优选实施例进行的各种改变和修改对本领域技术人员而言是显而易见的。上述改变和修改可以被实施而不脱离本发明的精神和范围和不缩小本发明的预期利益。因此,这样的改变和修改意欲被附带的权利要求所覆盖。
Claims (16)
1.一种对第一分级设备执行诊断的方法,该第一分级设备能在楼宇自动化系统中操作,该方法包括:
编译被配置为控制所述第一分级设备的应用代码,其中该应用代码包括多个内部变量;
提供被配置为监视所述多个内部变量的诊断模块;
收集与被监视的多个内部变量相关的内部变量诊断数据;
将收集的内部变量诊断数据上传给第二分级设备;
在该第二分级设备中对该内部变量诊断数据执行分层的诊断分析;以及
基于被分析的内部变量诊断数据,识别第一分级设备的问题,
其中所述第一分级设备包括含有诊断存储器的存储器,该诊断存储器被预留以存储被监视的多个内部变量,以及
所述诊断存储器是根据检查点的优先级来分配的。
2.如权利要求1所述的方法,其特征在于,收集内部变量诊断数据进一步包括建立检查点以监视所述应用代码中的所述多个内部变量中的一个。
3.如权利要求1所述的方法,其特征在于,所述诊断存储器是根据与分级数据记录模式相关联的多个层中的每一个层进行分配的。
4.如权利要求1所述的方法,其特征在于,具有较低优先级的第一检查点比具有较高优先级的第二检查点分配到更少的诊断存储器。
5.如权利要求1所述的方法,其特征在于,上传所收集的内部变量诊断数据包括将收集的内部变量诊断数据添加到未决的网络通信中。
6.如权利要求1所述的方法,其特征在于,收集与被监视的多个内部变量相关的内部变量诊断数据包括收集隐藏的内部变量诊断数据。
7.如权利要求1所述的方法,其特征在于,执行分层的诊断分析包括利用程序员诊断工具。
8.一种能操作于楼宇自动化系统中的分级设备,该设备包括:
无线通信部件;
与所述无线通信部件进行通信的处理器;
与所述处理器进行通信的存储器,该存储器被配置为存储能被该处理器执行的应用代码,其中该应用代码包括诊断模块,该诊断模块被配置为:
监视与该应用代码相关联的多个内部变量;
收集与被监视的多个内部变量相关的内部变量诊断数据;以及
传送被收集的内部变量诊断数据,
其中所述存储器包括被预留以存储被监视的多个内部变量的诊断存储器,以及
所述诊断存储器是根据检查点的优先级来分配的。
9.如权利要求8所述的设备,进一步包括:
第二分级设备,被配置为在无线网络内运行并被配置为对所述内部变量诊断数据执行分层的诊断分析。
10.如权利要求9所述的设备,其特征在于,所述第二分级设备被进一步配置为基于被分析的内部变量诊断数据来识别问题。
11.如权利要求8所述的设备,其特征在于,所述内部变量诊断数据包括检查点,用于监视该应用代码内的多个内部变量中的一个。
12.如权利要求8所述的设备,其特征在于,所述诊断存储器是根据与分级数据记录模式相关联的多个层中的每一层进行分配的。
13.如权利要求8所述的设备,其特征在于,所述诊断存储器是基于与检查点相关联的优先级来分配的。
14.如权利要求13所述的设备,其特征在于,具有较低优先级的第一检查点比具有较高优先级的第二检查点分配到更少的诊断存储器。
15.如权利要求8所述的设备,其特征在于,所述诊断模块被进一步配置为:
将被收集的内部变量诊断数据添加到未决的网络通信中。
16.如权利要求8所述的设备,其特征在于,被收集的内部变量诊断数据包括被收集的隐藏的内部变量诊断数据。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US91571007P | 2007-05-03 | 2007-05-03 | |
US60/915,710 | 2007-05-03 | ||
US3510908P | 2008-03-10 | 2008-03-10 | |
US61/035,109 | 2008-03-10 | ||
US12/114,766 | 2008-05-03 | ||
US12/114,766 US8332819B2 (en) | 2007-05-03 | 2008-05-03 | Diagnostic and trouble-shooting methods in a wireless control and sensor network |
PCT/US2008/005761 WO2008137127A1 (en) | 2007-05-03 | 2008-05-05 | Diagnostic and trouble-shooting methods in a wireless control and sensor network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101802729A CN101802729A (zh) | 2010-08-11 |
CN101802729B true CN101802729B (zh) | 2012-12-12 |
Family
ID=39940427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800145605A Active CN101802729B (zh) | 2007-05-03 | 2008-05-05 | 无线控制和传感器网络中的诊断与故障排除方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8332819B2 (zh) |
EP (1) | EP2145239B1 (zh) |
KR (1) | KR101085621B1 (zh) |
CN (1) | CN101802729B (zh) |
BR (1) | BRPI0810732B1 (zh) |
CA (1) | CA2685901C (zh) |
WO (1) | WO2008137127A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1460546A1 (fr) * | 2003-03-18 | 2004-09-22 | SCHLUMBERGER Systèmes | Procédé de sécurisation de l'exécution d'un programme dans un ensemble électronique contre les attaques par introduction d'erreurs |
JP5182361B2 (ja) * | 2008-03-17 | 2013-04-17 | 富士通株式会社 | 情報取得支援装置 |
US8219776B2 (en) * | 2009-09-23 | 2012-07-10 | Lsi Corporation | Logical-to-physical address translation for solid state disks |
US9092332B2 (en) * | 2013-05-02 | 2015-07-28 | Microsoft Technology Licensing, Llc | Activity based sampling of diagnostics data |
CN103581952A (zh) * | 2013-11-25 | 2014-02-12 | 广州视声电子实业有限公司 | 一种智能家居设备及执行诊断的方法 |
US9906413B1 (en) * | 2014-12-18 | 2018-02-27 | Jpmorgan Chase Bank, N.A. | System and method for implementing a dynamic hierarchy for devices |
US9886707B1 (en) * | 2014-12-18 | 2018-02-06 | Jpmorgan Chase Bank, N.A. | System and method for building dynamic hierarchy for products |
EP3285348B1 (en) | 2015-01-13 | 2020-06-03 | Trane International Inc. | Sleep current failure detection |
CN104717689B (zh) * | 2015-03-12 | 2018-05-11 | 清华大学 | 一种无线传感器网络的故障诊断方法 |
US10592821B2 (en) | 2015-06-19 | 2020-03-17 | Trane International Inc. | Self-learning fault detection for HVAC systems |
US10191024B2 (en) | 2015-07-13 | 2019-01-29 | Trane International Inc. | Energy management for sensors |
US10255127B2 (en) * | 2015-09-30 | 2019-04-09 | International Business Machines Corporation | Optimized diagnostic data collection driven by a ticketing system |
US11274843B2 (en) * | 2018-12-31 | 2022-03-15 | Johnson Controls Tyco IP Holdings LLP | Systems and methods for providing multi-dimensional load data on a dashboard |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1248168A2 (de) * | 2001-04-06 | 2002-10-09 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur Gewinnung von Diagnoseinformationen |
CN1529837A (zh) * | 2001-07-13 | 2004-09-15 | 西门子公司 | 用于通过网络为自动化系统提供服务的系统结构和方法 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4841434A (en) * | 1984-05-11 | 1989-06-20 | Raytheon Company | Control sequencer with dual microprogram counters for microdiagnostics |
US5202985A (en) * | 1988-04-14 | 1993-04-13 | Racal-Datacom, Inc. | Apparatus and method for displaying data communication network configuration after searching the network |
US4989132A (en) * | 1988-10-24 | 1991-01-29 | Eastman Kodak Company | Object-oriented, logic, and database programming tool with garbage collection |
JPH02272645A (ja) * | 1989-04-14 | 1990-11-07 | Hitachi Ltd | プログラム・デバツグ支援方法 |
US5584009A (en) * | 1993-10-18 | 1996-12-10 | Cyrix Corporation | System and method of retiring store data from a write buffer |
US5634098A (en) * | 1995-02-01 | 1997-05-27 | Sun Microsystems, Inc. | Method and apparatus for environment-variable driven software testing |
US6272672B1 (en) * | 1995-09-06 | 2001-08-07 | Melvin E. Conway | Dataflow processing with events |
US5784553A (en) * | 1996-01-16 | 1998-07-21 | Parasoft Corporation | Method and system for generating a computer program test suite using dynamic symbolic execution of JAVA programs |
US6314558B1 (en) * | 1996-08-27 | 2001-11-06 | Compuware Corporation | Byte code instrumentation |
US6721941B1 (en) * | 1996-08-27 | 2004-04-13 | Compuware Corporation | Collection of timing and coverage data through a debugging interface |
US5915083A (en) * | 1997-02-28 | 1999-06-22 | Vlsi Technology, Inc. | Smart debug interface circuit for efficiently for debugging a software application for a programmable digital processor device |
US6182279B1 (en) * | 1997-08-12 | 2001-01-30 | International Business Machines Corporation | Method and apparatus for storing templates in a component system |
US5991543A (en) * | 1997-08-29 | 1999-11-23 | Dell Usa, L.P. | Software installation and testing for a build-to-order computer system |
US6401220B1 (en) * | 1998-08-21 | 2002-06-04 | National Instruments Corporation | Test executive system and method including step types for improved configurability |
GB9825102D0 (en) * | 1998-11-16 | 1999-01-13 | Insignia Solutions Plc | Computer system |
US6553565B2 (en) * | 1999-04-23 | 2003-04-22 | Sun Microsystems, Inc | Method and apparatus for debugging optimized code |
IT1309106B1 (it) | 1999-10-13 | 2002-01-16 | Merloni Elettrodomestici Spa | Utenza elettrica domestica a controllo elettronico e relativo sistemadi controllo e programmazione. |
US8032409B1 (en) * | 1999-11-22 | 2011-10-04 | Accenture Global Services Limited | Enhanced visibility during installation management in a network-based supply chain environment |
US20020087949A1 (en) * | 2000-03-03 | 2002-07-04 | Valery Golender | System and method for software diagnostics using a combination of visual and dynamic tracing |
AU2001292691B2 (en) * | 2000-09-15 | 2007-05-24 | Schneider Electric Software, Llc | A method and system for remote configuration of process data access servers |
US6901586B1 (en) * | 2000-11-06 | 2005-05-31 | Sun Microsystems, Inc. | Safe language static variables initialization in a multitasking system |
US7292900B2 (en) * | 2001-07-13 | 2007-11-06 | Siemens Aktiengesellschaft | Power distribution expert system |
JP2003173246A (ja) * | 2001-12-05 | 2003-06-20 | Ricoh Co Ltd | デバイス情報収集方法、プログラム、サーバ装置及び記憶媒体 |
US7206964B2 (en) * | 2002-08-30 | 2007-04-17 | Availigent, Inc. | Consistent asynchronous checkpointing of multithreaded application programs based on semi-active or passive replication |
US20040160464A1 (en) * | 2003-02-14 | 2004-08-19 | David Reyna | System and method for providing a graphical user interface and alternate mappings of management information base objects |
US7367023B2 (en) * | 2003-07-10 | 2008-04-29 | International Business Machines Corporation | Method and apparatus for generating computer programming code selectively optimized for execution performance and not optimized for serviceability |
US20050182655A1 (en) * | 2003-09-02 | 2005-08-18 | Qcmetrix, Inc. | System and methods to collect, store, analyze, report, and present data |
US7921412B1 (en) * | 2003-11-26 | 2011-04-05 | Sprint Communications Company L.P. | Application monitor system and method |
US7464373B1 (en) * | 2003-12-10 | 2008-12-09 | The Mathworks, Inc. | System and method for using a graphical debugging tool in a modeling and execution environment |
US7774172B1 (en) * | 2003-12-10 | 2010-08-10 | The Mathworks, Inc. | Method for using a graphical debugging tool |
DE10358732A1 (de) | 2003-12-15 | 2005-07-14 | BSH Bosch und Siemens Hausgeräte GmbH | Haushaltsgerät und Verfahren zum Ermitteln einer Störungsursache an einem solchen Gerät |
US7529897B1 (en) * | 2003-12-31 | 2009-05-05 | Vmware, Inc. | Generating and using checkpoints in a virtual computer system |
US7421562B2 (en) * | 2004-03-01 | 2008-09-02 | Sybase, Inc. | Database system providing methodology for extended memory support |
US7712081B2 (en) * | 2005-01-19 | 2010-05-04 | International Business Machines Corporation | Using code motion and write and read delays to increase the probability of bug detection in concurrent systems |
US8055358B2 (en) * | 2005-12-05 | 2011-11-08 | Fisher-Rosemount Systems, Inc. | Multi-objective predictive process optimization with concurrent process simulation |
US7669081B2 (en) * | 2006-09-27 | 2010-02-23 | Raytheon Company | Systems and methods for scheduling, processing, and monitoring tasks |
US8706914B2 (en) * | 2007-04-23 | 2014-04-22 | David D. Duchesneau | Computing infrastructure |
US20110138319A1 (en) * | 2007-11-08 | 2011-06-09 | David Sidman | Apparatuses, Methods and Systems for Hierarchical Multidimensional Information Interfaces |
-
2008
- 2008-05-03 US US12/114,766 patent/US8332819B2/en active Active
- 2008-05-05 CA CA2685901A patent/CA2685901C/en active Active
- 2008-05-05 BR BRPI0810732-7A patent/BRPI0810732B1/pt not_active IP Right Cessation
- 2008-05-05 EP EP08767562A patent/EP2145239B1/en active Active
- 2008-05-05 KR KR1020097025159A patent/KR101085621B1/ko not_active Expired - Fee Related
- 2008-05-05 WO PCT/US2008/005761 patent/WO2008137127A1/en active Application Filing
- 2008-05-05 CN CN2008800145605A patent/CN101802729B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1248168A2 (de) * | 2001-04-06 | 2002-10-09 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur Gewinnung von Diagnoseinformationen |
CN1529837A (zh) * | 2001-07-13 | 2004-09-15 | 西门子公司 | 用于通过网络为自动化系统提供服务的系统结构和方法 |
Also Published As
Publication number | Publication date |
---|---|
BRPI0810732B1 (pt) | 2019-04-30 |
KR20100019473A (ko) | 2010-02-18 |
KR101085621B1 (ko) | 2011-11-22 |
US8332819B2 (en) | 2012-12-11 |
BRPI0810732A2 (pt) | 2014-10-21 |
CA2685901C (en) | 2015-06-30 |
CA2685901A1 (en) | 2008-11-13 |
WO2008137127A1 (en) | 2008-11-13 |
CN101802729A (zh) | 2010-08-11 |
EP2145239A1 (en) | 2010-01-20 |
US20080276127A1 (en) | 2008-11-06 |
EP2145239B1 (en) | 2012-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101802729B (zh) | 无线控制和传感器网络中的诊断与故障排除方法 | |
US7080142B2 (en) | Extensible computer management rule engine | |
US7788205B2 (en) | Using stochastic models to diagnose and predict complex system problems | |
US10516981B1 (en) | Systems and methods for sensing, recording, analyzing and reporting environmental conditions in data centers and similar facilities | |
US9037920B2 (en) | Method for performing condition based data acquisition in a hierarchically distributed condition based maintenance system | |
CN116647819B (zh) | 基于传感器网络的仪器能耗监测方法及系统 | |
US20100223446A1 (en) | Contextual tracing | |
CN103093304A (zh) | 用于分布式诊断推理的方法和系统 | |
JPWO2012029500A1 (ja) | 運用管理装置、運用管理方法、及びプログラム | |
Embia et al. | Edge Computing‐Based Conditional Monitoring | |
Raj et al. | Cloud infrastructure fault monitoring and prediction system using LSTM based predictive maintenance | |
Paek et al. | A programmable wireless sensing system for structural monitoring | |
CN106899655A (zh) | 使用对应于文件传输事件的反馈文件来跟踪文件传输的状态 | |
US8140614B2 (en) | Distributed computing environment with remote data collection management | |
EP3525057A1 (en) | Diagnosis of a redundant control system | |
JP2008102669A (ja) | 機器情報管理システム | |
Kim et al. | HDF: Hybrid debugging framework for distributed network environments | |
JP4816169B2 (ja) | グローバルプロセス生成方法、装置、システム、およびプログラム | |
Kravets et al. | Software for predictive maintenance and repair of the enterprise office equipment | |
Brennan et al. | Open framework middleware for intelligent WSN topology adaption in smart buildings | |
de Oliveira Filho et al. | Model-based design of self-adapting networked signal processing systems | |
US20150012505A1 (en) | Configurable data masks supporting optimal data extraction and data compaction | |
CN103581952A (zh) | 一种智能家居设备及执行诊断的方法 | |
JP7442895B1 (ja) | 情報処理方法及び情報処理装置 | |
Cardell-Oliver et al. | A space and time requirements logic for sensor networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |