用于对多个设备进行仿真的方法和系统的制作方法

文档序号:6580660阅读:239来源:国知局
专利名称:用于对多个设备进行仿真的方法和系统的制作方法
技术领域
本申请涉及计算机仿真技术。
背景技术
仿真经常用于监控、调试或在其他方面分析系统或设备。例如,被设计用来访问传
感器所输出模拟信号的组件可以使用传感器仿真器进行测试。传感器仿真器可以耦合至正
被测试的设备或组件,其中被测试的设备可以访问仿真信号电压用于对其的分析。 商业上可得的一种类型的传统传感器仿真器提供单个传感器仿真。换言之,软件
和/或硬件仅提供用于单个传感器的仿真输出,并且因此,该软件和/或硬件不可扩展。另
外,传统传感器仿真器对传感器所输出信号的信号特征进行仿真,例如,电压电平等。因此,
传统传感器仿真器不能为被设计用来以分组格式输出数字数据的传感器提供良好仿真。 尽管可以使用传统仿真器来分析具有少量设备的系统,但是传统仿真器并不适用
于对具有大量设备的系统进行分析。例如,用于对来自汽车、其他交通工具、制造传感器等
的数据进行监控或追踪的系统通常会涉及上千乃至上百万的设备。 因此,将不得不为了支持对众多设备的仿真而单独创建和配置传统的单设备仿真 器的很多实例,使得提供的解决方案昂贵且低效。另外,即使实现了这种方案,各个仿真器 所输出的大量信息也需要密集且昂贵的处理资源。而且,鉴于传统仿真器输出的仿真信号 电压会为了产生可用数据而必须转换或以其他方式进行处理,处理资源的量进一步增大, 并且已有问题被恶化。

发明内容
因此,需要这样的设备仿真系统,其能够使用户更容易且更高效地定义供仿真的 大量设备。还需要这样的设备仿真系统,其能够同时为相当大量的仿真传感器提供仿真响 应(例如,输出),使得被设计用来与仿真传感器对接的现实系统能够在不需要物理传感器 的情况下得到足够的测试。还需要这样的设备仿真系统,其能够使用户更容易且更高效地 单独或按组来对定义的设备进行配置。另外,需要这样的仿真器,其生成能被更容易且更便 宜处理的仿真设备数据。本发明的实施方式为以下描述的这些需要和其他需要提供了新的 方案。
本发明的实施方式涉及用于对多个设备进行仿真的方法和系统。更具体地,配置 用于仿真多个设备的仿真器可以输出用于多个设备的仿真设备数据,其中仿真设备数据的 输出可以基于仿真器执行命令来进行。这些命令可以响应于来自仿真器的针对与多个设备 相关联的任何命令的请求而从设备抽象层接收。 仿真设备数据可以包括数据值(例如,不是仿真电压电平)。另外,仿真设备数据 可以传达至耦合到仿真器的(例如,设备抽象层的、耦合到设备抽象层的业务应用等的)组 件,其中组件对仿真设备数据进行处理的结果可以用于对组件性能进行分析。另外,在一个 实施方式中,用于以下的其它命令可以由仿真器执行用于改变仿真设备数据被输出的频 率、用于执行在仿真器配置期间定义的另一操作等。 在一个实施方式中,一种对多个设备进行仿真的计算机实现的方法,包括访问 用于多个设备的配置数据,以及基于配置数据在计算机存储器内自动对多个设备进行实例 化,其中访问和自动实例化是由可操作地耦合至正被测试的系统的仿真器执行的。访问从 设备抽象层被传达的命令,其中这些命令与多个设备相关联。基于命令的执行来自动对多 个设备加以仿真,其中自动仿真包括将仿真设备数据从仿真器传达至正被测试的系统,用 于其性能测试。命令可以是针对与多个设备相关联的仿真设备数据的请求,并且其中对多 个设备的自动仿真可以进一步包括执行命令和生成仿真设备数据。备选地,命令之一可 以是针对改变与多个设备相关联的仿真设备数据的输出频率的请求。以及在一个实施方式 中,命令之一可以是与多个设备的至少一个设备相关联的自定义命令。 在另一个实施方式中,一种对多个设备进行仿真的方法包括配置用于对多个设 备仿真的仿真器,其中配置包括基于多个设备的至少一个用户定义属性来生成配置数据。 设备抽象层被配置用于与仿真器进行通信,其中设备抽象层的配置进一步包括将配置数 据下载至设备抽象层可访问的存储器,其中设备抽象层是正被测试的系统的组件。访问从 设备抽象层传达的命令,其中这些命令与多个设备相关联。该方法还包括基于命令的执行 对多个设备进行仿真,其中多个设备的仿真进一步包括根据配置数据对多个设备进行仿 真。该方法还可以包括,响应于命令的执行来生成仿真设备数据,将仿真设备数据传达至耦 合到仿真器的、正被测试的系统组件(例如,设备抽象层的、耦合到设备抽象层的业务应用 等的组件),以及基于组件对仿真设备数据进行处理的结果来分析组件性能。
在又一实施方式中,一种设备仿真系统,包括仿真器,用于基于与多个设备相关 联的配置数据对多个设备进行仿真,其中配置数据与多个设备的至少一个用户定义的属性 相关联。耦合至仿真器的设备抽象层,其中设备抽象层包括用于存储从仿真器下载的配置 数据的存储器,其中设备抽象层可进一步操作以实现与仿真器的通信;以及其中设备抽象 层可进一步操作以将与多个设备相关联的命令传达至仿真器。仿真器可进一步操作以基 于命令的执行对多个设备进行仿真,从而对与设备抽象层相关联的系统进行测试。该系统 还可以包括耦合至设备抽象层的至少一个业务应用,其中设备抽象层进一步操作以实现至 少一个业务应用和仿真器之间的通信。利用上述这种设备仿真系统,在无需大量物理设备 (例如,传感器)的前提下,可以对业务应用层进行足够测试。
原理 以下原理得到本申请的支持 1. —种对多个设备进行仿真的计算机实现的方法,所述方法包括
访问用于多个设备的配置数据,以及基于配置数据在计算机存储器内自动对多个 设备进行实例化,其中访问和自动实例化是由可操作地耦合至正被测试的系统的仿真器执 行的; 访问从设备抽象层传达的命令,其中命令与多个设备相关联; 基于命令的执行来自动对多个设备进行仿真,其中自动仿真包括将仿真设备数 据从仿真器传达至正被测试的系统,用于其性能测试。
2.根据原理1的方法,其中多个设备的每一个选自包括下述内容的组传感器、嵌
入式设备、便携式电子设备和用于访问来自多个设备的数据的数据中心。 3.根据原理1的方法,其中命令包括针对与多个设备相关联的仿真设备数据的请
求,并且其中自动对多个设备进行仿真进一步包括执行命令和生成仿真设备数据。
4.根据原理1的方法,其中仿真设备数据是分组化数据。 5.根据原理4的方法,其中配置数据包括选自由下述组成的组的信息仿真设备 数据的格式、仿真器输出仿真设备数据的速率、用于仿真设备数据的值的范围、供包括在仿 真设备数据中的多个设备的至少一个的操作参数,和用于多个设备的至少一个的当前设备 状态数据。 6.根据原理1的方法,其中命令之一包括针对改变与多个设备相关联的仿真设备 数据的输出频率的请求。 7.根据原理1的方法,其中命令之一包括与多个设备的至少一个设备相关联的自 定义命令。 8. —种对多个设备进行仿真的方法,方法包括 配置仿真器以对多个设备进行仿真,其中配置包括基于多个设备的至少一个用 户定义属性来生成配置数据; 配置设备抽象层以与仿真器通信,其中配置设备抽象层进一步包括将配置数据
下载至设备抽象层可访问的存储器,以及其中设备抽象层是正被测试的系统的组件; 访问从设备抽象层传达的命令,其中命令与多个设备相关联;以及 基于命令的执行对多个设备进行仿真,其中对多个设备进行仿真进一步包括根据
配置数据对多个设备进行仿真。
9.根据原理8的方法,进一步包括 响应于命令的执行来生成仿真设备数据; 将仿真设备数据传达至耦合到仿真器的正被测试的系统的组件;以及
基于组件对仿真设备数据进行处理的结果来分析组件的性能。 10.根据原理9的方法,其中组件选自包括下述内容的组设备抽象层的组件和耦 合至设备抽象层的业务应用的组件。
11.根据原理8的方法,其中多个设备的每一个选自包括下述内容的组传感器、
嵌入式设备、便携式电子设备和用于访问来自多个设备的数据的数据中心。 12.根据原理8的方法,其中命令包括针对与多个设备相关联的仿真设备数据的
请求,并且其中对多个设备进行仿真进一步包括通过输出仿真设备数据来执行命令。 13.根据原理12的方法,其中仿真数据是分组化数据。 14.根据原理12的方法,其中配置数据包括选自由下述组成的组的信息仿真设备数据的格式、仿真器输出仿真设备数据的速率、用于仿真设备数据的值的范围、供包括在 仿真设备数据中的多个设备的至少一个的操作参数,和用于多个设备的至少一个的当前设 备状态数据。 15.根据原理8的方法,其中命令包括针对改变与多个设备相关联的仿真设备数 据的输出频率的请求。 16.根据原理8的方法,其中命令包括与多个设备的至少一个设备相关联的自定 义命令。 17.根据原理8的方法,其中配置仿真器进一步包括在仿真器可访问的存储器内 基于配置数据自动对多个设备进行实例化。
18. —种设备仿真系统,包括 仿真器,用于基于与多个设备相关联的配置数据对多个设备进行仿真,其中配置 数据与多个设备的至少一个用户定义的属性相关联; 耦合至仿真器的设备抽象层,其中设备抽象层包括用于存储从仿真器下载的配置 数据的存储器,其中设备抽象层可进一步操作以实现与仿真器的通信;以及其中设备抽象 层可进一步操作以将与多个设备相关联的命令传达至仿真器;以及 其中仿真器可进一步操作以基于命令的执行对多个设备进行仿真,从而对与设备
抽象层相关联的系统进行性能测试。 19.根据原理18的系统,进一步包括 耦合至设备抽象层的至少一个业务应用;以及 其中设备抽象层可进一步操作以实现至少一个业务应用和仿真器之间的通信。
20.根据原理18的系统,其中仿真器可进一步操作以响应于命令的执行来生成仿 真设备数据,并且其中设备抽象层可进一步操作以将仿真设备数据传达至耦合到仿真器的 组件,以对其进行分析。 21.根据原理20的系统,其中组件选自包括下述内容的组设备抽象层的组件和 耦合到设备抽象层的至少一个业务应用的组件。 22.根据原理18的系统,其中多个设备的每一个选自包括下述内容的组传感器、
嵌入式设备、便携式电子设备和用于访问来自多个设备的数据的数据中心。 23.根据原理18的系统,其中命令包括针对与多个设备相关联的仿真设备数据的
请求,并且其中仿真器可进一步操作以通过输出仿真设备数据来执行命令。 24.根据原理23的系统,其中仿真设备数据是分组数据。 25.根据原理23的系统,其中配置数据包括选自包括下述内容的组的信息仿真 设备数据的格式、仿真器输出仿真设备数据的速率、用于仿真设备数据的值的范围、供包括 在仿真设备数据中的多个设备的至少一个的操作参数,和用于多个设备的至少一个的当前 设备状态数据。 26.根据原理18的系统,其中命令包括针对改变与多个设备相关联的仿真设备数 据的输出频率的请求。 27.根据原理18的系统,其中命令包括与多个设备的至少一个设备相关联的自定 义命令。 28.根据原理18的系统,其中仿真器可操作以在存储器中基于配置数据来自动对多个设备进行实例化。


通过示例而非限制方式在附图中示出了本发明,其中类似的附图标记表示类似元 件。 图1示出了根据本发明一个实施方式的、用于对来自物理设备的数据进行访问和 处理的示例性系统。 图2示出了根据本发明一个实施方式的、用于对多个设备进行仿真的示例性系 统。 图3示出了根据本发明一个实施方式的、对仿真器进行配置以及基于特定配置对 多个设备进行仿真的示例性系统。 图4A示出了根据本发明一个实施方式的、对仿真器进行配置以及基于特定配置 对多个设备进行仿真的示例性计算机实现过程的流程图的第一部分。 图4B示出了根据本发明一个实施方式的、对仿真器进行配置以及基于特定配置 对多个设备进行仿真的示例性计算机实现过程的流程图的第二部分。 图5A示出了根据本发明一个实施方式的、用于对仿真器进行配置的示例性计算 机实现过程的流程图的第一部分。 图5B示出了根据本发明一个实施方式的、用于对仿真器进行配置的示例性计算 机实现过程的流程图的第二部分
图6示出了根据本发明
计算机实现的图形用户界面。
图7示出了根据本发明
上计算机实现的图形用户界面。
图8示出了根据本发明
幕上计算机实现的图形用户界面
图9示出了根据本发明
幕上计算机实现的图形用户界面
图10示出了根据本发明一个实施方式的、显示供仿真器仿真的多个设备的示例
性屏幕上计算机实现的图形用户界面。 图11示出了根据本发明一个实施方式的、用于对创建的设备进行配置的示例性 屏幕上计算机实现的图形用户界面。 图12示出了根据本发明一个实施方式的、显示设备分组的示例性屏幕上计算机 实现的图形用户界面。 图13示出了根据本发明一个实施方式的、使用用于对仿真器进行配置的基于对 象的方法的示例性屏幕上计算机实现的图形用户界面。 图14示出了根据本发明一个实施方式的、具有包括多个设备的设备分组的示例 性屏幕上计算机实现的图形用户界面。 图15示出了根据本发明一个实施方式的、用于呈现与多个设备的仿真相关联的 数据的示例性屏幕上计算机实现的图形用户界面。
个实施方式的、用于对仿真器进行配置的示例性屏幕上 个实施方式的、用于对设备简档进行定义的示例性屏幕 个实施方式的、用于对自定义属性进行定义的示例性屏 个实施方式的、用于基于设备简档创建设备的示例性屏
图16示出了本发明的实施方式可以在其上实现的示例性计算机系统平台。
具体实施例方式
现在详细参考本发明的实施方式,其示例在附图中示出。尽管将结合下文的实施 方式讨论本发明,但是应当理解,这些实施方式并不意在仅将本发明限制于这些实施方式。 相反,本发明意在覆盖可以包括在所附权利要求所定义本发明精神和范围内的备选方案、 修改方案和等同方案。此外,在本发明的下述具体描述中,为了提供本发明的彻底理解,给 出了诸多特定细节。然而,本发明的实施方式可以在没有这些特定细节的前提下付诸实施。 在其他情况中,为了避免对本发明的方面不必要地混淆,并未描述公知方法、过程、组件和 电路。 符号和术语 以下具体描述的某些部分是在对计算机存储器内数据比特上的操作的过程、逻辑 块、处理和其他符号化表征的方面给出的。这些描述和表征是数据处理领域的技术人员为 了有效地将他们工作的本质传达给该领域的其他技术人员所使用的工具。在本申请中,步 骤、逻辑块、过程等被构思成导致期望结果的步骤或指令的前后一致序列。这些步骤是需要 对物理量进行物理操作的那些步骤。通常,尽管不是必须的,这些量采取能够在计算机内被 存储、传递、组合、比较和以其他方式操纵的电信号或磁信号的形式。 然而,应当理解,所有这些术语和类似术语将与适当的物理量相关联,并且仅仅是 适用于这些量的方便标记。除非特别指出,否则从下述讨论中显而易见的是可以理解,贯 穿本发明,利用诸如"放弃"、"接受"、"访问"、"添加"、"调整"、"分析"、"应用"、"组装"、"指 派"、"平衡"、"分块"、"计算"、"捕获"、"组合"、"比较"、"收集"、"配置"、"创建"、"调试"、"定 义"、"递送"、"描绘"、"检测"、"确定"、"显示"、"建立"、"执行"、"转发"、"翻转"、"生成"、"分 组"、"隐藏"、"标识"、"发起"、"实例化"、"交互"、"修改"、"监控"、"移动"、"输出"、"执行"、 "放置"、"呈现"、"处理"、"编程"、"查询"、"移除"、"重复"、"恢复"、"采样"、"仿真"、"排序"、 "存储"、"减去"、"暂停"、"跟踪"、"代码转换"、"变换"、"解块"、"使用"等术语的讨论涉及计 算机系统或者类似电子计算设备的动作和过程,该计算机系统或类似电子计算设备操纵作 为计算机系统寄存器和存储器内的物理(电子的)量所代表的数据,并将其变换成类似地 由计算机系统存储器或寄存器或其他此类信息储存、传输或显示设备中的物理量所表示的 其他数据。 仿真平台的概述 图l示出了根据本发明一个实施方式的、用于对来自于物理设备(例如,传感器设
备)的数据进行访问和处理的示例性系统ioo。传感器设备可以是远程的,并且大量分布。 在系统100内,设备还接收命令并对其做出响应。如图1所示,设备抽象层110支持设备 环境120和业务应用130之间的通信,其中设备环境120包括实际或物理设备125a-125d。 例如,一个或多个设备125a-125d生成的设备数据可以经由设备抽象层110传达至业务应 用130。所传达的数据或者与其相关联的信息可以由最终用户140、企业资源规划(ERP)系 统150、其他系统160或它们的某些组合(如图1所示,它们中的每一个都耦合至业务应用 130)进行访问。在其他实施方式中,备选地,数据可以在系统IOO内传达(例如,用户140、 ERP系统150或其他系统160生成的或输入的数据可以传达至一个或多个设备125a-125d
在一个实施方式中,系统100可以支持对设备125a-125d所生成的数据进行监控 或跟踪。例如,设备125a-125d可以是传感器、嵌入式设备、便携式电子设备或组件(例如, 每个位于汽车、生产线等的不同部分内的组件),其对设备环境120 (例如,生产线、汽车等) 的参数进行测量。设备(例如,125a-125d)可以基于这些测量来输出设备数据。设备数据 可以由业务应用130来访问和/或处理(例如,经由设备抽象层110来访问),以便支持用 户(例如,140)和/或另一系统(例如,ERP系统150、其他系统160等)来对设备环境(例 如,120)进行跟踪或监控。 尽管在图1中的设备环境120内仅示出了四个设备(例如,125a-125d),但是应当 理解,在其他实施方式中,设备环境120可以包括任意数量的设备。例如,系统100可以支持 与非常大量(例如,数百、数千、数百万等)的设备进行通信,其中在一个实施方式中,这些 设备可以远程分布。另外,应当理解,在其他实施方式中,不止一个设备环境可以耦合至设 备抽象层110。例如,当设备环境120表示单个汽车并且系统100能够对来自于数百万个汽 车的数据进行访问和/或处理时,在其他实施方式中,可以存在耦合至设备抽象层110的大 量(例如,数百万等)的设备环境。此外,在一个实施方式中,设备环境120可以包括物理 上彼此分离(例如,每一个置于相隔数千英里的不同汽车内)的设备(例如,125a-125d)。 又例如,传感器可以是分布在大型建筑物上的温度传感器,其中这些传感器可以与消防系 统等通信。 如图2中更全面所示,本发明的实施方式针对设备抽象层110和/或业务应用130 进行性能测试而提供了物理设备的仿真。实施方式还提供了用于生成用于仿真的设备的高 效机制。 图2示出了根据本发明一个实施方式的、用于对多个设备进行仿真的示例性系统 200。如图2所示,仿真器220可以被配置用于对设备225a-225d(例如,对应于图1的设备 125a-125d)的响应、输出、行为等加以仿真。仿真设备225a-225d可以是仿真传感器、仿真 嵌入式设备、仿真便携式电子设备、其他类型仿真设备或者它们的某些组合。在一个实施方 式中,能够接收命令并生成输出的任何设备都可以被仿真。 在对设备(例如,225a-225d)进行仿真期间,仿真器220可以输出用于设备(例 如,225a-225d)的仿真设备数据,其中在一个实施方式中,该仿真设备数据可以表示数据值 (例如,华氏温度的温度),而不是信号电压电平(例如,1.25伏特)。仿真设备数据可以以 类似于针对图l解释的设备125a-125d所输出的设备数据类似的方式被访问(例如,经由 设备抽象层110)得以访问和/或处理。 应当理解,仿真器220可以用于执行负载测试或者以其他方式分析正被测试的系 统组件(例如,设备抽象层110的组件、业务应用130的组件等)的性能。该分析可以基于 (例如,仿真器220针对设备225a-225d所输出的)仿真设备数据的组件处理结果。另外, 在一个实施方式中,可以在不部署实际硬件(例如,设备125a-125d)的情况下,有利地执行 这种分析。 图3示出了基于根据本发明一个实施方式,对仿真器进行配置并基于特定配置对 多个设备进行仿真的示例性系统200。图3将会结合图4A和图4B进行描述,其中图4A和 图4B示出了根据本发明一个实施方式的示例性计算机实现的过程400的流程图,用于对仿真器进行配置和基于特定配置对多个设备进行仿真。 步骤410涉及为了仿真多个设备而对仿真器进行配置。如图3所示,仿真器配置 图形用户界面(GUI)370耦合至仿真器220,以对其进行配置。更具体地,基于与(例如,根 据图6-图14中一个或多个实现的)GUI 370的用户交互所生成的配置数据可以由仿真引 擎322加以访问,并且被存储在数据库324中(例如,用于在对设备225a-225d的仿真期间 供仿真引擎322访问)。配置数据可以基于(例如,使用GUI 370)为设备简档定义的一个 或多个属性,和/或(例如,使用GUI 370)为基于设备简档自动生成的(例如,实例化的) 一个或多个设备定义的一个或多个属性而生成。实例化的设备可以被仿真。例如,配置数 据可以包括仿真器220所输出的仿真设备数据的格式(例如,整数、字符串、十进制、十六进 制等)、仿真器220输出仿真设备数据的速率、用于仿真设备数据的值的范围(例如,用于仿 真温度传感器的输出数据的温度范围)、仿真设备的一个或多个设备的操作参数(例如,电 池寿命)等。 在一个实施方式中,步骤410可以涉及用户以定义设备的类型或类别的预先规定 的属性来定义设备简档(例如,使用GUI 370),其中这些属性。有利地,用户也可以有利地 定义将基于设备简档(例如,使用GUI 370)自动生成的大量设备(例如,225a-225d)。这 些设备可以单独配置和/或按组配置。另外,在一个实施方式中,可以在步骤410中定义设 备的可通信耦合。另外,在步骤410中,基于与定义(例如,基于设备简档自动生成的)设 备和/或设备简档的GUI (例如,370)进行的用户交互,可以生成和/或存储设备配置数据。
过程400的步骤420涉及配置设备抽象层(例如,110),以实现与仿真器(例如, 220)的通信。例如,设备管理组件311的设备配置管理组件312可以从仿真器220下载(例 如,在步骤410中生成的)配置数据,并将其存储在设备抽象层110的数据库315中。在一 个实施方式中,组件312可以经由数据访问层314来访问数据。组件312可以基于(例如, 存储在数据库315中的)下载的配置数据来配置设备抽象层110,以支持与仿真器220通 信。例如,组件312可以确定从仿真器220输出的仿真设备数据(例如,从配置数据)的格 式、大小等,从而使得设备抽象层110能够对仿真设备数据进行访问、处理、传达等。
如图4A中所示,步骤430涉及仿真器自动实例化多个设备(例如,225a-225d),以 供仿真器进行仿真。例如,可以基于在步骤410中生成的设备配置数据,来创建和/或填充 各个存储器构造和/或数据结构,从而"实例化"设备以供仿真。为每个将被仿真的设备创 建的数据结构包括对设备进行仿真所需的信息,包括设备简档属性和/或设备状态数据。 数据结构可以包括与一个设备、一组设备、设备简档(例如,用于定义多个设备)或它们的 某些组合相关联的属性。这些属性可以包括用于输出仿真设备数据的格式、仿真器输出仿 真设备数据的速率、用于仿真设备数据的值的范围、用于包含在设备所输出仿真设备数据 中的设备操作参数、当前设备状态数据等。并且在一个实施方式中,数据结构可以是表格, 该表格组织成与不同设备类型相关联的行和与每个个体设备类型的设备相关联的列,并且 因此表格,表格的每个单元可以包括为与该单元相关联的设备定义的属性和/或为该设 备所基于的设备简档定义的属性。此外,尽管在图4中步骤420和步骤435之间示出了多 个设备的实例化,但是应当理解,多个设备的实例化可以出现在设备的用户配置之后且对 多个设备仿真之前的任何时间。 步骤435涉及发起对(例如,在步骤430中实例化的)多个实例化设备进行仿真。在一个实施方式中,该仿真可以响应于与用于配置仿真器的GUI(例如,图10的600)的按 钮或图形对象(例如,1080)的交互而发起。 步骤440涉及将针对与多个设备(例如,225a-225d)相关联的命令的请求传达至 设备抽象层。例如,仿真器220的通知客户端326可以将请求(例如,325)传达至设备抽象 层110的通知管理组件317,其中该请求是用于与仿真设备(例如,225a-225d)的任一相关 联的任何命令。 如图4A所示,步骤450涉及仿真器访问从设备抽象层(例如,IIO)传达而来的命 令。 一个或多个命令318可以响应于接收自仿真器(例如,220)的请求(例如,325)而传 达至仿真器220。这些命令可以包括针对来自于一个或多个设备(例如,225a-225d)的仿 真设备数据的请求、针对改变仿真器220输出用于设备(例如,225a-225d)的仿真设备数据 的频率的请求、供一个或多个设备执行的定制命令,或其它们的组合。另外,在一个实施方 式中,一个或多个接收的命令(例如,318)可以从通知客户端(例如,326)转发(例如,由 图3的箭头327表示)至设备应用编程接口 (API)(例如,328)以供执行。这些命令可以包 括指定该命令既定设备的标识信息。可以理解,命令也可以视情况为一类或一组设备进行 指定。 如图4B中所示,步骤460涉及基于命令的执行,自动且同时对多个实例化的设备 (例如,225a-225d)进行仿真。例如,仿真器220 (例如,仿真引擎322)可以响应于用于仿 真输出数据的命令的执行而生成和/或输出仿真设备数据,从而对来自于多个设备的设备 数据输出进行仿真。又例如,仿真器220(例如,仿真引擎322)可以响应于针对改变仿真设 备数据的输出频率的命令的执行,而调整用于一个或多个设备的仿真设备数据的输出频率 (例如,设备自动输出数据的频率),从而响应于影响设备自动输出设备数据的频率的配置 改变来对设备进行仿真。又如,仿真器220(例如,仿真引擎322)可以响应于定制命令来执 行定制操作(例如,针对一个或多个设备在预定时段内不报告仿真设备数据、报告预定范 围之外的仿真设备数据,以指示该设备已经被置于交替(alternate)操作模式等),从而对 定制命令或设备操作的性能进行仿真。 在一个实施方式中,步骤460中的仿真可以仅针对"启用"设备执行。例如,在一 个实施方式中,仅与(例如,使用图10中所示GUI 600的按钮或区域1060启用的)启用设 备相关联的命令可以在步骤460中执行。在一个实施方式中,用于(例如,使用图10中所 示GUI 600的按钮或区域1070禁用的)"禁用"设备的命令可以被忽略,并且因此,不对禁 用设备进行仿真。 步骤470涉及在对多个设备(例如,225a-225d)进行仿真期间生成仿真设备数据。 如此处所讨论的,仿真器220(例如,仿真引擎322)可以响应于来自设备抽象层110(例如, 通知管理组件317)的命令(例如,318)来生成仿真设备数据。仿真设备数据可以根据(例 如,从数据库324访问的)配置数据生成,并且因此,仿真设备数据可以具有配置数据定义 的格式、类型、大小、布置、内容等。 如图4B中所示,步骤480涉及将仿真设备数据传达至耦合到仿真器(例如,220) 的组件。如在此所述,仿真器220(例如,仿真引擎322)可以响应于来自设备抽象层110(例 如,通知管理组件317)的命令(例如,318)来输出仿真设备数据。在一个实施方式中,仿真 设备数据(例如,329)可以被传达至设备抽象层110的设备监控组件313(例如,经由数据访问层314),其中组件313可以处理接收的仿真输出数据。并且在一个实施方式中,仿真设
备数据可以被传达至业务应用130的组件和/或耦合至其的其他组件。 步骤490涉及基于组件(例如,设备抽象层110的、业务应用130的等)对仿真设
备数据进行处理的结果来分析组件的性能。以此方式,可以对访问和/或处理仿真设备数
据的组件加以负载测试,以确定或改善组件的处理效率、执行组件上的调试操作等。又如,
仿真设备的数量、仿真设备的安排、仿真设备输出的仿真设备数据的格式或其他特征等可
以改变,以便进一步测试组件。 如图4B中所示,步骤495涉及呈现(例如,在步骤430-470中的一个或多个中执 行的)仿真的结果和/或呈现(例如,在步骤490中生成的)组件的分析。数据可以使用 耦合至仿真器(例如,220)的GUI(例如,图3的GUI 380)来呈现。另外,在一个实施方式 中,用于在步骤495中呈现数据的GUI可以根据图15的GUI 1500来实现。
转到图15,图15示出了根据本发明一个实施方式的、用于呈现与多个设备的仿真 相关联的数据的示例性屏幕上计算机实现GUI1500。如图15中所示,GUI 1500包括与列 1510和1520中列出的设备相关联的列1530-1550中的数据。例如,行1560与设备(例 如,设备225a-225d之一)相关联,该设备由行1560的列1510中的设备标识符(例如,"TS 120")和行1560的列1520中设备名(例如,"设备A")所标识。在一个实施方式中,针对 每个设备在列1510中列出的信息可以使用GUI 1100的区域1130来输入,而在列1520中 列出的信息可以使用GUI 1100的区域1140来输入。 列1530包含用于列1510和1520中标识的每个设备的仿真设备数据。例如,在每 个设备是仿真温度传感器的情况下,在列1530中列出的数据可以是温度读数(例如,以华 氏温度、摄氏温度等)。列1540的每行可以包括列1530的各个数据值被捕获或生成的日 期和时刻。另外,列1550的每行可以包括(例如,在列1510和/或1520的各个行中标识 的)仿真设备的电池状态。在一个实施方式中,列1550中的电池状态可以在列1540的各 个行中标识的时刻被捕获或生成。 在一个实施方式中,列1530-1550的一个或多个中列出的数据可以用于确定设备 是否在正常工作。例如,在数据范围是针对多个设备指定(例如,使用GUI IIOO的区域 1160)的情况下,仿真器(例如220)所报告的并且列在栏1530中的数据值可以指示设备 的问题,即,报告的值在该范围之外。例如,在指定了 40-90这一范围的情况下(例如,使用 区域1160),则列1530的行1570和1580中的数据值可以指示两个设备(行1570的"设 备C"和行1580的"设备H")并未正确操作,因为它们不在40-90这一范围内。类似地,列 1540和/或1550中报告的非期望数据值也可以指示传感器的问题。以此方式,实施方式启 用对故障设备或不能工作的设备的仿真,从而改进了仿真的准确度和/或真实性。来自于 故障设备或不能工作的设备的数据也可以支持对访问此数据的组件的分析,例如,如针对 图4B的步骤490所讨论的。 在一个实施方式中,仿真设备的可靠性可以改变(例如,通过使用诸如GUI 370、 GUI 600、 GUI 700、 GUI 900、 GUI 1100、 GUI 1300等的GUI来配置一个或多个设备),以对 现实世界的设备故障进行仿真。以此方式,仿真器(例如,220)可以对一个或多个故障设备 或不能工作的设备进行仿真,并且因此,仿真器会引起一个或多个设备报告坏数据(例如, 如在此所讨论的,在预定范围之外等)。例如,如果设备被配置为具有95%可靠性因子或比率,则该设备可以在95%的时间报告好数据,而在另外5%的时间报告坏数据。
尽管图15示出了特定数据的表征,但是应当理解,GUI 1500可以包括与设备(例如,225a-225d)的仿真有关的其他数据和/或与访问仿真设备数据的组件的分析(例如,针对图4B的步骤490所讨论的)有关的其他数据。另外,应当理解,GUI 1500也可以使用户能够查看一个或多个仿真设备(例如,225a-225d)过去的数据传输(例如,过去生成的仿真
设备数据)。 配置仿真器 图5A和图5B示出了根据本发明一个实施方式的、用于对仿真器进行配置的示例性过程500的流程图。在一个实施方式中,过程500可以用来实现图4A和图4B的过程400的步骤410。另外,图5A和图5B将结合图6-图14来描述,这些附图示出了根据本发明实施方式的、用于对仿真器进行配置的示例性GUI。 如图5A中所示,步骤510涉及显示用于创建和/或配置设备简档的一个或多个计算机实现的图形用户界面(GUI)。在一个实施方式中,设备简档可以是(例如,用户使用GUI所定义的)可配置属性的模板或集合,这些属性可以用来创建多个设备(例如,225a-225d)。步骤510中显示的一个或多个GUI可以呈现在显示器设备上以与用户进行交互,从而使用户能够创建和/或配置设备简档。另外,在步骤510中显示的GUI可以根据图3的GUI 370、图6的GUI 600、图7的GUI 700、图8的GUI 800、其他GUI,或其某个组合等来实现。 图6示出了根据本发明一个实施方式的、用于对仿真器进行配置的屏幕上计算机实现的GUI 600。例如,如图6中所示,与GUI 600的区域610的交互可以发起区域620的显示。区域620可以是具有用于创建、编辑和删除设备简档的可选择菜单项的弹出菜单。在一个实施方式中,与区域620的可选择菜单项(例如,用于创建设备简档的可选择菜单项622、用于编辑已有设备简档的可选择菜单项624等)的交互可以发起图7的GUI 700的显示和/或图8的GUI 800的显示。 图7示出了根据本发明一个实施方式的、用于对设备简档进行定义的示例性屏幕上计算机实现的GUI 700。在一个实施方式中,GUI 700可以用于创建新设备简档。例如,显示区域710-730可以用于指定关于设备简档的信息;显示区域740-770可以用于为预定属性定义值,以及显示区域780可以用于定义新属性(例如,显示在区域785中)。备选地,GUI 700可以用于编辑已有设备简档。例如,输入至区域710-730的信息可以被编辑和/或用于预先确定属性的值可以使用区域740-770来重新定义。另外,用户可以通过与区域780进行交互来编辑已有设备简档,以便重新定义已有自定义属性(例如,显示在区域785中)和/或定义新的自定义属性(例如,随后可以显示在区域785中)。 如图7中所示,区域710-730可以用于输入用于设备简档的信息。例如,区域710可以用于输入设备简档的标识符(例如,"28"),其中简档标识号码可以将(例如,同一设备简档类型的)具有不同属性的设备简档彼此区分开。可以使用区域720来定义用于设备简档的简档类型(例如,"传感器")。例如,在一个实施方式中,如果使用区域720将设备简档与传感器相关联,则从设备简档创建的设备可以是仿真传感器。另外,区域730可以用于输入设备简档的名称,其中简档名称可以将(例如,同一设备简档类型的)具有不同属性的设备简档彼此区分开。
区域740-770可以用于为预先确定的属性定义值。例如,区域740可以用于定义 简档数据范围。简档数据范围可以是与仿真器(例如,220)输出的、用于多个设备(例如, 225a-225d)的仿真输出数据相关联的期望范围。另外,仿真器(例如,220)可以访问输入 至区域740中的数据范围,并生成用于一个或多个仿真设备(例如,225a-225d)的仿真设备 数据,其落入输入至区域740的范围内。 区域750可以用于定义用于为多个设备生成或输出仿真设备数据的频率。例如, 如果将值"2"输入区域750中,则仿真器(例如,220)可以每2分钟(例如,其中与区域750 相关联的频率单位是分钟)输出用于(例如,基于使用GUI 700定义的设备简档创建的) 仿真设备的仿真设备数据。 如图7中所示,可以使用区域760为设备定义电池寿命。例如,如果值"2"被输入 到区域760,则为期2天的电池寿命(其中,与区域760相关联的电池寿命的单位是天)可 以与基于使用GUI 600定义的设备简档创建的设备相关联。 区域770可以用于定义用于基于使用GUI 600定义的设备简档创建的仿真设备 (例如,220a-220d)的仿真设备数据输出的格式。在一个实施方式中,该格式可以对应于用 于多个设备(例如,基于使用GUI 700定义的设备简档创建的)的仿真设备数据如何组装。 另外,使用区域770定义的格式可以包括十进制、整数、字符串、十六进制、其他格式等。
在一个实施方式中,与按钮或区域780的交互可以发起图8中GUI 800的显示,其 中图8示出了根据本发明一个实施方式的、用于对自定义属性进行定义的示例性屏幕上计 算机实现的GUI 800。区域810可以用于定义自定义属性名称;区域820可以用于定义自 定义属性的属性类型(例如,将如何在仿真设备数据中表示自定义属性);区域830可以用 于指定自定义属性的描述;以及区域840可以用于定义用于与自定义属性相对应的仿真设 备数据的数据范围(例如,类似于使用图7中区域740定义的预先定义的属性数据范围)。 另外,与按钮或区域850的交互可以将区域810-840中定义的信息与(例如,使用GUI 700 定义的)设备简档相关联,并在GUI 700的区域785中呈现该信息。 返回图5A,步骤515涉及将一个或多个属性与(例如,使用GUI 700和/或GUI 800创建的)设备简档相关联。 一个或多个属性可以是预先确定的(例如,与区域740-770 相关联的)属性和/或(例如,使用GUI 800定义的且在区域785中呈现的)自定义属性。 另外,在一个实施方式中,一个或多个属性可以响应于与按钮或区域790的交互而与设备 简档相关联。 步骤520涉及显示用于基于(例如,使用GUI 700、 GUI 800等创建的)设备简档 创建(例如,将被仿真的)设备的GUI。步骤520中显示的一个或多个GUI可以呈现在显示 器设备上以供与用户交互,从而使用户能够创建供仿真器(例如,220)仿真的设备。另外, 在步骤520中显示的GUI可以根据图3的GUI 370、图6的GUI600、图9的GUI 900等实现。
图9示出了根据本发明一个实施方式的、基于设备简档对设备进行创建的示例性 屏幕上计算机实现的GUI 900。如图9中所示,区域910可以用于指定仿真设备将基于其而 被创建的设备简档(例如,该设备简档使用GUI 600创建)。区域920可以指示使用区域 910选择或定义的简档的类型。区域930可以用于指定将基于(例如,使用区域910所选择 的)设备简档所创建的设备数量。以此方式,本发明的实施方式使得用户能够容易地基于 所选择设备简档来创建多个设备(例如,供仿真器仿真),其中所创建的设备可以基于输入
15至GUI 900的信息进行实例化(例如,针对图4A的步骤430所讨论的)和仿真(例如,针 对图4A和图4B的步骤435-480的一个或多个所讨论的)。 区域940可以使用户能够指定用于将基于所选择设备简档被创建的一个或多个 设备的名称或根标识符。另外,一个或多个设备的描述可以在区域920中输入。
返回图5A,步骤525涉及将设备简档与设备相关联。例如,与GUI 900的按钮或 区域960的交互可以将(例如,使用区域910选择的)设备简档与一个或多个设备(例如, 区域930中指定的许多设备)相关联。 一旦创建,设备可以显示在GUI 600的区域1030中 (例如,如图10中所示)。 图10示出了根据本发明一个实施方式的、用于显示供仿真器仿真的多个设备的 示例性屏幕上计算机实现的GUI 600。如图10中所示,区域1030可以呈现(例如,使用基 于利用GUI 600定义的简档的GUI 900)所创建的设备的一个或多个。在一个实施方式中, 所创建设备可以进一步由与区域1055的交互进行配置或编辑,其中区域1055可以发起图 11的GUI 1100的显示。进一步地,在一个实施方式中,区域1050(例如,包括区域1055)可 以响应于与区域1040的交互而被显示。 转到图5B,步骤530涉及显示用于配置设备(例如,使用GUI900创建的)的GUI。 在步骤530中显示的一个或多个GUI可以呈现在显示器设备上以供与用户交互,从而使用 户能够进一步对供仿真器(例如220)仿真的设备进行配置。另外,在步骤530中显示的 GUI可以根据图3的GUI 370、图11的GUI 1100等实现。 图11示出了根据本发明一个实施方式的、用于对创建的设备进行配置的示例性 屏幕上计算机实现的GUI 1100。如图11中所示,区域1110可以用于改变或定义简档名称 (例如,类似于图9的区域910)。区域1120可以用于改变或定义简档类型(例如,类似于 图9的区域920)。区域1130可以用于改变或定义设备标识符(例如,在使用GUI 900创建 多个设备之后自动指派)。 区域1140可以用于改变或定义设备名称(例如,类似于图9的区域940)。在一个 实施方式中,区域1140中显示的设备名称可以在使用GUI 900创建了多个设备之后自动指 派。另外,区域1150可以用于改变或定义设备描述(例如,类似于图9的区域950)。在一 个实施方式中,区域1150中显示的设备描述可以在使用GUI 900创建了多个设备之后自动 指派。 如图11中所示,区域1160可以用于改变或定义设备数据范围(例如,类似于图7 的区域740)。区域1170可以用于改变或定义用于生成或输出用于多个设备的仿真设备数 据的频率(类似于图7的区域750)。另外,电池寿命可以使用区域1180来为设备定义(例 如,类似于图7的区域760)。区域1190可以用于定义用于仿真设备数据的格式(例如,类 似于区域770)。 在一个实施方式中,与按钮或区域1192的交互可以使用户能够定义自定义属性 (例如,类似于图7的按钮或区域780),其中与区域1192的交互可以发起图8的GUI 800的 显示。另外,与按钮或区域1194的交互可以应用使用GUI 1100对设备做出的改变和/或 发起GUI 600(例如,图6、图IO等的GUI 600)的显示。 如图10中所示,可以使用按钮或区域1060将设备(例如,区域1030中呈现的)启 用以包括在将被仿真的设备组中。备选地,启用的设备(例如,区域1030中呈现的)可以被禁用,以便将该设备从将被仿真的设备组中移除,其中该设备可以使用按钮或区域1070 来禁用。 返回图5B,步骤532涉及访问用于设备的配置信息。在步骤532中访问的配置信 息可以基于使用GUI 600、 GUI 700、 GUI 800或其某个组合输入的信息。在一个实施方式 中,配置信息可以包括使用GUI 900和/或GUI 1100输入的信息。 步骤534涉及访问为设备定义的分组信息。在步骤534中访问的分组信息可以包 括关于下述的信息(例如,使用GUI 900创建的那些)设备被组织进的多个分组、每个设 备分组的名称、每个组中特定设备的列表等。应当理解,仿真器可以对针对设备分组的命令 做出响应。另外,分组信息可以包括为组定义的配置信息(例如,应用至组中所有设备的数 据范围等)。关于设备的可通信耦合的信息也可以包括在分组信息中。例如,关于设备如何 针对彼此进行安排的信息和/或耦合设备的通信信道或路径的安排可以包括在步骤534中 访问的分组信息中。此外,在一个实施方式中,分组信息可以基于与图12中所示GUI 600、 图13和/或图14中所示GUI 1300等的交互进行访问。 图12示出了根据本发明一个实施方式的、显示设备分组的示例性屏幕上计算机 实现的GUI 600。给设备分组有助于管理去往和来自该组的数据。另外,给设备分组也可以 有助于指派组功能或属性,以用于对来自该组的设备进行仿真期间实现。如上所述,设备组 可以接收仿真架构内的命令并对其做出响应。 如图12中所示,区域1030中显示的设备可以被分组成多个组。例如,设备1215 可以分组成第一组1210,而设备1225可以分组成第二组1220。在一个实施方式中,通过高 亮显示或以其他方式选择将被分组的设备(例如,设备1215、设备1225等)以及与(例如, 区域1050的)区域1252交互以分组设备,来执行分组。 —旦创建了设备分组,用于该分组内每个设备的信息或属性可以(例如,使用用 于配置设备分组的GUI)定义或改变。例如,改变用于数据组的仿真设备数据的数据范围可 以改变和/或覆盖为该组中各个设备输入的数据范围。 另外,在一个实施方式中,关于设备的可通信耦合的信息可以使用GUI 600来定 义。例如,仿真器(例如,220)可以被配置以生成和/或输出用于单个设备(例如,"设备 A")的仿真设备数据,即使该设备组包括多个设备(例如,"设备A"、"设备B"和"设备C")。 又如,仿真器(例如,220)可以配置用于为组生成和/或输出仿真设备数据,该组代表与该 组的每个设备相关联的各个仿真设备数据的平均。 图13示出了根据本发明一个实施方式的、使用用于对仿真器进行配置的基于对 象的方法的示例性屏幕上计算机实现的GUI1300。例如,将被仿真的设备可以置于显示区 域1320中,其中这些设备可以由用户配置以供仿真。更具体地,设备配置数据可以基于置 于区域1320中的设备的用户配置来生成,其中该配置可以包括各个设备配置(例如,定义 用于给定设备的一个或多个属性)、组设备配置(例如,定义用于设备的组的属性、定义哪 些设备被包括在给定设备组中等)、设备或设备组的可通信耦合等。设备配置数据可以由仿 真器(例如220)使用,以对设备进行实例化并对其进行仿真(例如,以便基于配置生成用 于这些设备的仿真设备数据等)。 如图13中所示,GUI 1300的区域1310包括设备对象1311、组对象1312、中心 (hub)对象1313、平均对象1314和选择对象1315。对象1311-1315的实例可以置于区域1320中(例如,通过将对象1311-1315的一个拖动并放置在区域1320中),以定义对应于对象的组件。例如,设备对象1311可以被拖动并放置在区域1320中以创建设备1311a(例如,类似于仿真设备225a-225d的一个),其中设备1311a可以是供仿真器(例如,220)仿真的设备。 组对象1312可以被拖动并放置在区域1320中以创建设备组(例如,1312a),其中该设备组可以是供仿真器仿真的设备的组。例如,组1312a可以包括三个设备,由组1312a中的数字"3"指示。另外,设备组(例如,1312a)内的设备可以通过与设备组(例如,代表设备组1312a的图形对象)交互来查看,其中图14示出了根据本发明一个实施方式的、具有包括多个设备的设备分组示例性屏幕上计算机实现GUI 1300。如图14中所示,设备组1312a可以包括设备1311h、1311i和1311j。 返回参考图13,中心对象1313可以被拖动并放置在区域1320中以创建中心组件(例如,1313a),其中中心组件可以是用于对来自多个设备或设备组的仿真输出数据进行访问、打包和传达的数据中心。平均对象1314可以被拖动并放置在区域1320中以创建平均组件(例如,1314a),其中平均组件可以是用于基于用于多个设备(例如,1311c和1311d)的仿真设备数据的平均来生成新的仿真输出数据的组件。另外,选择对象1315可以被拖动并放置在区域1320中以创建选择组件(例如,1315a),其中该选择组件可以是用于传达选自用于多个设备(例如,1311e、1311f和1311g)的仿真设备数据的仿真设备数据(例如,设备1311e、1311f和1311g的仿真设备数据)。 在一个实施方式中,对象可以通过拖动并放置来自于区域1310的对象、通过拖动对象并将其放置在区域1320的新位置等来放置和/或安排在区域1320中。另外,可通信耦合可以使用选自区域1330的工具来定义,其中区域1330的工具可以包括线工具(例如,用于将一个对象连接或耦合至另一对象、将一个对象连接或耦合至一组对象、将一组对象连接或耦合至另一组对象等)和/或其他工具。以此方式,设备1311c和1311的每个可以连接或耦合至平均组件1314,设备组1312a可以连接或耦合至中心组件1313b等。
因此,GUI 1300可以用于定义如何对仿真设备数据进行访问、收集和传达。例如,中心组件1313b可以对来自设备组1312a(例如,输出用于设备组1312a的每个设备的仿真设备数据)和平均组件1314(例如,输出代表来自设备1311c和1311d的仿真设备数据的平均的仿真设备数据)的仿真设备数据进行访问和/或打包。中心组件1313c可以对来自组件1315(例如,输出来自设备1311e、1311f或1311g的仿真设备数据)、设备1311a、设备1311b和设备组1312b(例如,输出用于设备组1312b的每个设备的仿真设备数据)的仿真设备数据进行访问和/或打包。此外,中心组件1313a可以对来自于中心组件1313b和13113c的仿真设备数据进行访问和/或打包。以此方式,实施方式使得用户能够定义设备的布置和/或可通信耦合,其能更准确地表示设备环境(例如,图1的120)中实际设备(例如,对应于每个仿真组件)的布置。 使用对象1311-1315定义的组件可以使用GUI 1300来配置。例如,与代表将被配置的组件进行的用户交互可以显示GUI (例如,图11的1100等),以定义属性或以其他方式配置该组件。备选地,耦合区域1320中组件的通信路径可以被配置。例如,路径1340可以被配置(例如,通过显示GUI或其他配置机制,以响应于与路径1340的用户交互来配置路径)以报告用于少于设备1312a的所有设备的数据。
返回图5B,步骤540涉及基于设备简档和/或设备(例如,225a-225d)的配置来 生成配置数据。例如,用于定义设备简档(例如,GUI 370、GUI 600、GUI 700、GUI 800等) 和/或用于定义设备(例如,GUI 370、 GUI 600、 GUI 900、 GUI 1100等)的、使用GUI输入 的信息可以被访问(例如,由仿真引擎322)并用于生成配置数据。在一个实施方式中,步 骤540可以响应于与GUI 600的按钮或区域1080的交互而被执行。 步骤550涉及存储配置数据以供仿真器(例如,220)访问和/或启用设备(例如,
225a-225d)的仿真。配置数据可以存储在仿真器(例如,220)可以访问的存储器(例如,
数据库324)中。在一个实施方式中,步骤550可以响应于与GUI 600的按钮或区域1080
的交互而被执行。 计算机系统平台 图16示出了本发明的实施方式可以在其上实现的示例性通用计算机系统平台 1600。例如,在一个实施方式中,计算机系统1600可以用于实现系统100的一个或多个组 件。又如,计算机系统1600可以用于实现系统200的一个或多个组件。
如图16所示,本发明的部分由计算机可读且计算机可执行的指令组成,这些指令 例如驻留在计算机系统平台1600中,并且可以用作通用计算机系统(未示出)的部分。应 当理解,图16的计算机系统平台1600仅是示例性的。这样,本发明可以在多种不同系统内 操作,包括但不限于例如通用计算机系统、嵌入式计算机系统、膝上型计算机系统、手持式 计算机系统、便携式计算机系统和单机计算机系统。 在一个实施方式中,由虚线1630描述的,计算机系统平台1600可以包括至少一个 处理器1610和至少一个存储器1620。处理器1610可以包括中央处理单元(CPU)或其他类 型的处理器。取决于计算机系统环境的配置和/或类型,存储器1620可以包括易失性存储 器(例如,RAM)、非易失性存储器(例如,ROM、闪存等),或二者的某个结合。另外,存储器 1620可以是可移除的、不可移除的等。 在其他实施方式中,计算机系统平台1600可以包括附加的储存器(例如,可移除 式储存器1640、不可移除式储存器1645等)。可移除式储存器1640和/或不可移除式储 存器1645可以包括易失性存储器、非易失性存储器或其任何组合。另外,可移除式储存器 1640和/或不可移除式储存器1645可以包括CD-ROM、数字通用盘(DVD)或其他光储存器、 磁带盒、磁带、磁盘储存器或其他磁性储存器设备,或可以用来存储供计算机系统平台1600 访问的信息的任何其他介质。 如图16所示,计算机系统平台1600可以经由通信接口 1670与其他系统、组件或 设备通信。通信接口 1670可以具体化计算机可读指令、数据结构、程序模块或模块化数据 信号(例如,载波)或其他传输机制中的其他数据。作为示例而不是限制,通信接口 1670 可以耦合至有线介质(例如,有线网络、直接连线连接等)和/或无线介质(例如,无线网 络、利用声、RF、红外或其他无线信令的无线连接等)。 通信接口 1670还可以将计算机系统平台1600耦合到一个或多个输入设备(例 如,键盘、鼠标、笔、声音输入设备、触摸输入设备等)。另外,通信接口 1670可以将计算机系 统平台1600耦合到一个或多个输出设备(例如,显示器、扬声器、打印机等)。
如图16中所示,图形处理器1650可以对存储在计算机系统平台1600的帧缓冲器 1660或其他存储器(例如,1620、 1640、 1645等)中的图形数据执行图形处理操作。存储在帧缓冲器1660中的图形数据可以由计算机系统平台1600的组件(例如,图形处理器1650、 处理器1610等)和/或其他系统/设备的组建进行访问、处理和/或修改。另外,图形数 据可被访问(例如,由图形处理器1650),并显示在耦合到计算机系统平台1600的输出设备 上。因此,存储器1620、可移除式储存器1640、不可移除式储存器1645、帧缓冲器1660或其 组合可以包括这样的指令,当在处理器(例如,1610、1650等)上执行时,会实现对仿真器 (例如,220)进行配置的和对多个设备(例如,225a-225d)进行仿真的方法。
在前述说明书中,已经针对可以因实现而异的众多特定细节进行了描述。因此,不 管使用了何种唯一且排他性的语言,也不管申请人意图使用何种唯一且排他性的语言,本 发明以本申请所提交的权利要求书并以该权利要求书的具体形式为准,并包括随后的任何 修改。因此,权利要求中为明确表述的限制、元素、属性、特征、优势或属性都不会以任何方 式对此权利要求的范围做出限制。因此,说明书和附图是用于说明的而不是用于限制。
权利要求
一种对多个设备进行仿真的计算机实现的方法,所述方法包括访问用于所述多个设备的配置数据,以及基于所述配置数据在计算机存储器内自动对所述多个设备进行实例化,其中所述访问和所述自动实例化是由可操作地耦合至正被测试的系统的仿真器执行的;访问从设备抽象层传达的命令,其中所述命令与所述多个设备相关联;基于所述命令的执行来自动对所述多个设备进行仿真,其中所述自动仿真包括将仿真设备数据从所述仿真器传达至所述正被测试的系统,用于其性能测试。
2. 根据权利要求1所述的方法,其中所述多个设备的每一个选自包括下述内容的组 传感器、嵌入式设备、便携式电子设备和用于访问来自多个设备的数据的数据中心。
3. 根据权利要求1所述的方法,其中所述命令包括针对与所述多个设备相关联的仿真 设备数据的请求,并且其中自动对所述多个设备进行仿真进一步包括执行所述命令和生 成所述仿真设备数据。
4. 根据权利要求3所述的方法,其中所述仿真设备数据是分组化数据。
5. 根据权利要求3所述的方法,其中所述配置数据包括选自由下述组成的组的信息 所述仿真设备数据的格式、所述仿真器输出所述仿真设备数据的速率、用于所述仿真设备 数据的值的范围、供包括在所述仿真设备数据中的所述多个设备的至少一个的操作参数, 和用于所述多个设备的至少一个的当前设备状态数据。
6. 根据权利要求1所述的方法,其中所述命令之一包括针对改变与所述多个设备相关 联的仿真设备数据的输出频率的请求。
7. 根据权利要求1所述的方法,其中所述命令之一包括与所述多个设备的至少一个设 备相关联的自定义命令。
8. —种设备仿真系统,包括仿真器,用于基于与所述多个设备相关联的配置数据对多个设备进行仿真,其中所述 配置数据与所述多个设备的至少一个用户定义的属性相关联;耦合至所述仿真器的设备抽象层,其中所述设备抽象层包括用于存储从所述仿真器下 载的所述配置数据的存储器,其中所述设备抽象层可进一步操作以实现与所述仿真器的通 信;以及其中所述设备抽象层可进一步操作以将与所述多个设备相关联的命令传达至所述 仿真器;以及其中所述仿真器可进一步操作以基于所述命令的执行对所述多个设备进行仿真,从而 对与所述设备抽象层相关联的系统进行性能测试。
9. 根据权利要求8所述的系统,进一步包括 耦合至所述设备抽象层的至少一个业务应用;以及其中所述设备抽象层可进一步操作以实现所述至少一个业务应用和所述仿真器之间 的通信。
10. 根据权利要求8所述的系统,其中所述仿真器可进一步操作以响应于所述命令的 执行来生成仿真设备数据,并且其中所述设备抽象层可进一步操作以将所述仿真设备数据 传达至耦合到所述仿真器的组件,以对其进行分析。
11. 根据权利要求10所述的系统,其中所述组件选自包括下述内容的组所述设备抽 象层的组件和耦合到所述设备抽象层的至少一个业务应用的组件。
12. 根据权利要求8所述的系统,其中所述命令包括针对与所述多个设备相关联的仿 真设备数据的请求,并且其中所述仿真器可进一步操作以通过输出所述仿真设备数据来执 行所述命令。
13. 根据权利要求12所述的系统,其中所述配置数据包括选自包括下述内容的组的 信息所述仿真设备数据的格式、所述仿真器输出所述仿真设备数据的速率、用于所述仿真 设备数据的值的范围、供包括在所述仿真设备数据中的所述多个设备的至少一个的操作参 数,和用于所述多个设备的至少一个的当前设备状态数据。
14. 根据权利要求8所述的系统,其中所述命令包括针对改变与所述多个设备相关联 的仿真设备数据的输出频率的请求。
15. 根据权利要求8所述的系统,其中所述仿真器可操作以在存储器中基于所述配置 数据来自动对所述多个设备进行实例化。
全文摘要
公开了一种用于对多个设备进行仿真的方法和系统。被配置以对多个设备进行仿真的仿真器可以输出用于多个设备的仿真设备数据,其中所述仿真设备数据的输出可以基于仿真器执行命令而进行。命令可以响应于来自仿真器的针对与多个设备相关联的任何命令而从设备抽象层接收。另外,仿真设备数据可以被传达至耦合到仿真器的组件,其中该组件对仿真设备数据进行处理的结果可以用于分析组件的性能。另外,用于以下的其它命令可以由仿真器执行用于改变仿真设备数据被输出的频率、用于执行在仿真器配置期间定义的另一操作等。
文档编号G06F17/50GK101710351SQ20091017584
公开日2010年5月19日 申请日期2009年9月17日 优先权日2008年9月17日
发明者G·D·麦克唐纳德, J·徐, M·J·比尔兹, S·斯陶斯 申请人:埃森哲环球服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1