用于动态设备描述语言菜单的装置和方法与流程

文档序号:14303111阅读:147来源:国知局
用于动态设备描述语言菜单的装置和方法与流程

概括地说,本公开内容涉及过程工厂中的过程控制系统,更具体地说,本公开内容涉及动态地创建和修改设备描述语言菜单。



背景技术:

过程控制系统已广泛地用于制造产品或者对过程进行控制的制造厂和/或工厂(例如,化学制造、电厂控制等等)中。过程控制系统还用于自然资源的收获,例如,石油和天然气钻井和处理过程等等。事实上,实际上任何制造过程、资源收获过程等等都可以通过应用一个或多个过程控制系统来自动化。相信过程控制系统最终也将在农业中得到更广泛的应用。

过程控制系统(如,化工、石油或者其它过程中使用的那些过程控制系统)通常包括一个或多个集中的或者分散的过程控制器,所述一个或多个过程控制器经由模拟、数字或组合的模拟/数字总线来通信耦合到至少一个主机或操作者工作站以及一个或多个过程控制和仪器设备(例如,现场设备)。现场设备(其可以例如是阀门、阀门定位器、开关、变送器和传感器(例如,温度、压力和流速传感器))在过程中执行功能,例如,打开或关闭阀门,测量过程参数。过程控制器接收用于指示现场设备所执行的过程测量或过程变量或者与现场设备相关联的过程测量或过程变量的信号和/或关于这些现场设备的其它信息,使用该信息来实现控制例程,随后生成用于通过总线中的一个或多个向现场设备发送以控制该过程的操作的控制信号。通常,来自现场设备和控制器的信息可用于由操作者工作站执行的一个或多个应用,以使得操作者能够执行关于该过程的期望功能,诸如查看过程的当前状态、修改过程的操作等等。

过程工厂中的各个设备可以在物理和/或逻辑组中互连,以创建逻辑过程(例如,控制回路)。类似地,控制回路可以与其它控制回路和/或设备互连以创建子单元。子单元可以与其它子单元进行互连以创建单元,其转而可以与其它单元互连以创建一个区域。过程工厂通常包括互连区域,并且商业实体通常包括可以互连的过程工厂。因此,过程工厂包括具有互连资产的多层次的层次结构,商业企业可以包括互连的过程工厂。换言之,与过程工厂相关的资产或者过程工厂本身可以组合在一起,形成更高层次的资产。

多年来,实现过程控制系统的方式已经发生演变。老一代的过程控制系统通常是使用专用的集中式硬件和硬连线来实现的。

但是,现代过程控制系统通常使用高度分布的工作站、智能控制器、智能现场设备的网络等等来实现,其中一些或全部可以执行整个过程控制策略或者方案的一部分。具体而言,大多数现代过程控制系统包括智能现场设备和其它过程控制组件,它们经由一个或多个数字数据总线来彼此通信地耦合和/或通信地耦合到一个或多个过程控制器。除了智能现场设备之外,现代过程控制系统还可以包括模拟现场设备,例如,4-20毫安(ma)设备、0-10伏直流(vdc)设备等等,这些设备通常直接耦合到控制器而不是共享的数字数据总线等等。

在典型的工业或过程工厂中,使用分布式控制系统(dcs)来控制在该工厂执行的许多工业过程。该工厂可以具有集中控制室,该集中控制室具有含有用户输入/输出(i/o),磁盘i/o和计算领域已知的其它外围设备的计算机系统,其具有通信地连接到集中控制室的一个或多个过程控制器和处理i/o子系统。另外,一个或多个现场设备通常连接到i/o子系统和过程控制器以实现工厂内的控制和测量活动。虽然过程i/o子系统可以包括连接到遍布整个工厂的各个现场设备的多个i/o端口,但现场设备可能包括各种类型的分析设备、硅压力传感器、电容式压力传感器、电阻式温度检测器、热电偶、应变仪、限位开关、开/关交换、流量变送器、压力变送器、电容式液位开关、称重秤、换能器、阀门定位器、阀门控制器、执行器、螺线管、指示灯或者通常在过程工厂中使用的任何其它设备。

如本文所使用的,术语“现场设备”涵盖这些设备以及执行控制系统中的功能的任何其它设备。无论如何,现场设备可以包括例如输入设备(例如,提供用于指示过程控制参数(例如,温度、压力、流量等等)的状态信号的诸如传感器之类的设备)、以及用于响应于从控制器和/或其它现场设备接收的命令来执行动作的控制操作器或执行器。

传统上,模拟现场设备通过双线双绞线电流回路来连接到控制器,其中每个设备通过单一的双线双绞线来连接到控制器。模拟现场设备能够在指定范围内响应或发送电信号。在典型的配置中,通常在该对的两条线之间具有大约20-25伏特的电压差,并且通过该回路的电流为4-20ma。将信号发送到控制室的模拟现场设备,对通过该电流回路流动的电流进行调制,其中该电流与感测到的过程变量成比例。

在控制室的控制下执行动作的模拟现场设备,由通过该回路的电流的幅度进行控制,其中该电流由过程i/o系统的i/o端口进行调制,转而由控制器进行控制。具有有源电子设备的传统双线模拟设备还可以从回路接收高达40毫瓦的功率。需要更多功率的模拟现场设备通常使用四条线来连接到控制器,其中两条线向设备供电。这样的设备在本领域中称为四线设备,其不受到功率限制,两线设备通常受到功率限制。

离散现场设备可以发送或者响应二进制信号。通常,离散现场设备使用24伏特信号(无论ac还是dc)、110或240伏特ac信号或者5伏特dc信号进行操作。当然,可以将离散设备设计成根据特定的控制环境所需要的任何电气规范进行操作。离散输入现场设备是简单的开关,其连通或者断开与控制器的连接,而离散输出现场设备将基于来自控制器的信号的存在或不存在来采取动作。

历史上,大多数的传统现场设备具有与现场设备执行的主要功能直接相关的单一输入或单一输出。例如,传统的模拟电阻式温度传感器实现的唯一功能是通过对流过双线双绞线的电流进行调制来发送温度,而传统的模拟阀定位器所实现的唯一功能则是:将阀定位在基于流过双线双绞线的电流的幅度来完全打开和完全关闭的位置之间的某个位置。

最近,作为混合系统的一部分的现场设备变得可用,其将数字数据叠加在用于发送模拟信号的电流回路上。一种这样的混合系统在控制技术中称为高速可寻址远程换能器(hart)协议。hart系统使用电流回路中的电流幅度,来发送模拟控制信号或接收感测的过程变量(如在传统系统中),但其也将数字载波信号叠加在电流回路信号上。hart协议使用bell202频移键控(fsk)标准,将数字信号叠加在4-20ma模拟信号之上的低电平。这使得能够进行双向现场通信,并使得除了正常的过程变量之外的另外信息可以与智能现场仪器进行通信。在不中断4-20ma信号的情况下,hart协议以1200bps进行传输,hart协议允许主机应用(主机)从现场设备每秒钟获得两次或更多次数字更新。由于数字fsk信号是相位连续的,因此不会干扰4-20ma信号。

fsk信号相对较慢,因此可以以每秒大约2-3次更新的速率来提供辅助过程变量或其它参数的更新。通常,使用数字载波信号来发送辅助和诊断信息,但不使用其来实现现场设备的主要控制功能。通过数字载波信号提供的信息的示例包括辅助过程变量、诊断信息(其包括传感器诊断、设备诊断、接线诊断和过程诊断)、操作温度、传感器温度、校准信息、设备id号、结构材料、配置或编程信息等等。因此,单个混合现场设备可以具有各种输入和输出变量,并可以实现各种功能。

最近,美国仪器学会(isa)已经定义了较新的控制协议。该新协议通常称为现场总线(fieldbus),其具体称为sp50(其是标准和实践小组委员会50的缩写)。现场总线协议定义了两个子协议。h1现场总线网络以每秒31.25千比特的速率传输数据,向耦合到网络的现场设备提供电力。h2现场总线网络以每秒2.5兆比特的速率传输数据,不向连接到网络的现场设备供电,但提供冗余传输介质。现场总线是一种非专利开放标准,其现在已经在工业中普遍存在,因此已经开发出许多种类型的现场总线设备,并在过程工厂中使用。由于除了其它类型的现场设备(如,hart和4-20ma设备)之外,还使用现场总线设备,因此需要具有与这些不同类型设备中的每一种相关联的单独支持和i/o通信结构。

典型地全数字化的较新的智能现场设备,具有维护模式和增强型功能,这些功能不能从旧的控制系统访问或者与其兼容。即使分布式控制系统的所有组件都遵守相同的标准(例如,现场总线标准),一个制造商的控制设备也可能无法访问另一个制造商现场设备提供的辅助功能或辅助信息。

通常,这些基础所规定的通信协议包括:用于指定每个设备如何识别自身并通过使用所谓的设备描述(dd)与过程控制系统进行通信的标准,其中dd规定了协议的应用层以及与设备进行通信所需要的各种用户界面定义。dd是以公知的和良好支持的如国际电工委员会标准(例如,iec61804)的设备描述语言(ddl)(其也称为电子设备描述语言(eddl))编写的。每个设备类型通常具有其自己的dd,它是对现场设备的数据和操作过程的形式描述,其包括变量、数据(参数)、通信(寻址信息)、方法、命令/操作(例如,校准)以及与设备的各种特征相关联的图形用户界面(例如,菜单和显示格式)。关于设备的每个可访问变量的信息通常包括在设备描述中,从而规定与设备的兼容性和可能的通信。例如,这些变量包括过程测量、任何派生值以及设备的所有内部参数(例如,范围、传感器类型、线性化选择、结构材料、制造商、版本号等等)。ddl指示主机系统或者主机应用如何利用设备的dd来进行通信、解码和显示信息。

通常以多种不同的方式来使用用于各种设备的dd。例如,当在过程工厂中实现过程应用或者主机应用时,负责维护该过程应用的维护人员可能需要获得关于各个设备的各种参数的帮助信息。类似地,编写过程应用的系统设计人员可以使用dd来获得关于设备的更多信息。设备制造商通常在计算机可读介质上提供dd,使得这些dd可以容易地复制到各种过程控制系统计算机或者各种与过程工厂相关的应用中。具体而言,设备制造商通常为它们制造的每个设备提供dd,其利用ddl来规定与设备相关的参数、如何与设备进行通信、对设备的限制等等。

基于ddl的主机可以读取和解释ddl中的设备的dd,以确定设备类型和与该设备相关联的重要参数、限制等等,其中dd开发者(例如,设备制造商、协议基础)认为这些参数对用户来说很重要。因此,ddl结构(例如,变量、方法、命令、菜单、以及诸如图像、图形、网格、波形和图表之类的显示格式)由基于ddl的主机或主机应用进行解释并显示给用户。基于ddl的主机可以将与设备相关联的参数、限制等等定义为用于该设备的图形元素的固有属性或参数。基于ddl的主机还可以具有用于选择或定义设备的可视化的程序,可以基于来自dd的信息或者基于所存储的针对用于该设备的dd所规定的设备类型的模板,来选择用于提供针对该设备的基本动作和动画的一个或多个通用脚本。资源文件也可用于将ddl信息转换为显示。但是,资源文件通常由dd开发者进行设计,在这种情况下,该显示(尽管有些可进行配置以定义设备的可视化和动画)通常在显示信息时是静态的,并且用户必须查看由开发人员的资源文件所指定的信息。因此,用户不能控制他/她查看的信息和/或查看该信息的方式。对于由dd指定的设备的图形用户界面而言,为了获取用户认为重要的信息,可能需要用户遍历多个菜单。



技术实现要素:

一种设备描述语言(ddl)菜单配置系统和方法使用户能够配置和维护ddl菜单,以便查看被认为对用户重要的信息,而不是基于设备描述开发者提供的资源文件来查看信息。用户能够选择过程设备,选择与这些过程设备相关的菜单元素,以添加到ddl菜单中(其中该ddl菜单包括来自不同过程设备的不同设备描述的菜单元素),即使这些设备描述来自不同的开发者(例如,不同的过程设备制造商)。可以将菜单保存在ddl主机上,并由用户根据需要进行激活以查看菜单上的信息。用户还可以重新配置菜单具有新的菜单元素。

本文所公开的系统和方法使用如用户所选用于过程控制设备的设备描述,来更新ddl主机。除了其它项之外,该设备描述还包括用于查看关于过程控制设备的信息的菜单和/或显示格式。通过设备描述,对来自设备描述的ddl菜单结构(menuconstruct)进行披露(expose)并显示在配置界面中,使得用户能够选择对用户重要的ddl菜单结构。随后,用户可以将ddl菜单结构增加并配置到ddl菜单中,以便根据用户的优选项来配置ddl菜单。将ddl菜单映射到用户有兴趣观察的各种ddl菜单结构中。ddl菜单由ddl主机进行维护,使得用户可以根据需要激活或去激活ddl菜单,通过增加新的ddl菜单结构、修改ddl菜单中的ddl菜单结构或者从ddl菜单中删除ddl菜单结构,来重新配置ddl菜单。

附图说明

图1是根据本公开内容的分布式过程控制系统的组合框图和示意图;

图2是根据本公开内容,经由互联网来与各种数据库进行网络连接的分布式过程控制系统的基于ddl的主机系统的框图;

图3是根据本公开内容,用于配置由基于ddl的主机维护的新ddl图形用户界面的示例性ddl图形用户界面配置例程的流程图;

图4是根据本公开内容,用于生成ddl图形用户界面的示例性图形用户界面;

图5是根据本公开内容,用于选择设备来创建ddl图形用户界面的示例性图形用户界面;

图6是根据本公开内容,用于获取选定的设备的设备描述的示例性设备描述获取例程的流程图;

图7是根据本公开内容,用于创建和配置ddl图形用户界面的示例性图形用户界面;

图8是根据本公开内容,用于示出在创建基于ddl的主机系统所维护的用户定义的设备描述菜单时的过程之间的交互的示例性序列图;

图9是示出用户定义的设备描述菜单的示例性图形用户界面;

图10是根据本公开内容,用于激活ddl图形用户界面的示例性菜单激活例程的流程图;

图11是根据本公开内容,用于对现有的ddl图形用户界面进行编辑的示例性设备描述菜单编辑例程的流程图;

图12是根据本公开内容,用于向现有的ddl图形用户界面增加新设备的ddl菜单结构的示例性设备增加例程的流程图;

图13是根据本公开内容,用于对ddl图形用户界面中的菜单结构进行修改的示例性ddl菜单修改例程的流程图;

图14是根据本公开内容,用于从ddl图形用户界面中删除ddl菜单结构的示例性ddl菜单结构删除例程的流程图;

图15是根据本公开内容,用于向ddl图形用户界面增加ddl菜单结构的示例性ddl菜单结构增加例程的流程图;以及

图16是根据本公开内容,用于对ddl图形用户界面中的ddl菜单结构进行修改的示例性ddl菜单结构修改例程的流程图。

具体实施方式

现参见图1,硬连线分布式过程控制系统10包括连接到一个或多个主机工作站或计算机14(其可以是任何类型的个人计算机或工作站)的一个或多个过程控制器12。过程控制器12还连接到输入/输出(i/o)设备20、22的组(bank),它们中的每一个转而连接到一个或多个现场设备25-39。控制器12(举例而言,其可以是fisher-rosemount系统公司出售的deltavtm控制器)经由例如以太网连接40或其它通信链路,通信地连接到主机计算机14。同样,控制器12使用与例如标准4-20ma设备相关联的任何期望的硬件和软件和/或诸如现场总线或harq协议之类的任何智能通信协议,通信地连接到现场设备25-39。如通常所已知的,控制器12实现或者监督其中存储的过程控制例程或者与之相关联,并与设备25-39进行通信以便以任何期望的方式来控制过程。

现场设备25-39可以是诸如传感器、阀门、变送器、定位器等等之类的任何类型的设备,而组20和22中的i/o卡可以是遵循诸如hart、现场总线、profibus等等之类的任何期望的通信或控制器协议的任何类型的i/o设备。在图1所示出的实施例中,现场设备25-39是通过模拟线,与i/o卡22a进行通信的标准4-20ma设备。将现场设备28-31示出成连接到兼容hart的i/o设备20a的hart设备。类似地,现场设备32-39是智能设备(例如,现场总线设备),其使用例如现场总线协议通信,通过数字总线42或44与i/o卡20b或22b进行通信。当然,除了4-20ma、hart或现场总线协议之外,现场设备25-39和i/o卡20和22的组还遵循任何其它期望的标准或协议(其包括未来开发的任何标准或协议)。

控制器12中的每一个被配置为:使用通常称为功能块的方式来实现控制策略,其中,每个功能块是整体控制例程的一部分(例如,子例程),与其它功能块进行协作操作(经由称为链路的通信)以在过程控制系统10中实现过程控制回路。功能块通常执行输入功能(例如,其与变送器、传感器或其它过程参数测量设备相关联)、控制功能(例如,其与执行pid、模糊逻辑等等控制的控制例程相关联)或者输出功能(其控制诸如阀门之类的某个设备的操作,以执行过程控制系统10中的某个物理功能)中的一个。当然,也存在混合功能块和其它类型的功能块。这些功能块的组称为模块。可以将功能块和模块存储在控制器12中并由其执行,这通常是这些功能块用于标准4-20ma设备和某种类型的智能现场设备或者与之相关联的情形,或者功能块和模块可以存储在现场设备自身中并由其实现,这可以是使用现场总线设备的情形。虽然将图1中所示出的控制系统10描述成使用功能块控制策略,但也可以使用其它惯例(例如,梯形逻辑、顺序流程图等等),使用任何期望的专用或者非专用编程语言,来实现或者设计控制策略。

此外,以已知的方式,工作站14中的一个或多个可以包括用户界面应用,以使诸如操作者、配置工程师、维护人员等等之类的用户能够与工厂中的过程控制网络10进行交互。具体而言,工作站14可以包括一个或多个用户界面应用,这些用户界面应用可以在工作站14中的处理器上执行,以与数据库、控制模块或者控制器12或i/o组20、22中的其它例程进行通信、与现场设备25-39和这些现场设备中的模块等等进行通信,以从工厂获得信息(例如,与过程控制系统10的正在进行的状态有关的信息)。这些用户界面应用可以处理所收集的信息和/或在与工作站14中的一个或多个相关联的显示设备上进行显示。所收集的、处理的和/或显示的信息可以是例如过程状态信息、在工厂中生成的告警和报警、维护数据等等。同样,一个或多个应用可以存储在工作站14中并在其中执行,以执行配置活动(例如,生成或配置要在工厂中执行的模块),执行控制工厂中的操作者活动(例如,改变设置点或者其它控制变量)等等。当然,例程的数量和类型并不受到本文所提供的描述的限制,如果期望的话,可以在工作站14中存储并实现其它数量和类型的与过程控制相关的例程。此外,工作站14还可以经由例如内联网、外联网、总线、以太网40等等,来连接到企业wan以及用于实现从远程位置对工厂10远程监控或者与工厂10进行通信的计算机系统。

如通过图1的讨论所显而易见的,主机工作站14和控制器12之间以及控制器12和现场设备25-39之间通信,使用包括下面中的一种或多种的硬连线通信连接来实现:hart现场总线和4-20ma硬连线通信连接。但是,如上所述,这种硬连线通信连接可以以某种方式使用无线通信来替代,或者在图1的过程环境中使用无线通信来增强,其中无线通信是可靠的、容易建立和配置的,向操作者或者其它用户提供对于无线网络的功能性能力进行分析或查看的能力等等。

例如,可以遍布过程控制系统来部署无线网络。结果,过程控制系统中的i/o设备中的一些或全部(例如,传感器和执行器)可以被部署为使用硬连线技术、无线技术或者其组合,通信地耦合到过程控制系统。例如,可以在控制器12、工作站14和现场设备25-31中的一些之间维持硬连线通信,而可以在控制器12、工作站14和现场设备32-39中的其它部分之间建立无线通信。无线技术可以包括但不限于:zigbee、wifi、蓝牙、超宽带(uwb)等等、或者任何其它短距离无线技术、以及卫星、wi-max和其它远距离无线传输。具体而言,无线技术可以包括任何现成的用于发送过程控制数据的无线产品。可以在无线技术上实现某种网络协议,或者可以为无线通信开发新的过程控制标准。

参见图2,基于ddl的主机系统50(其可以是过程控制系统10的一部分,具体而言,工作站14)可以包括用于监测和操作过程控制系统10和更具体的现场设备25-39的多个主机应用。例如,主机系统50可以包括用于过程控制、仿真、维护、诊断、配置等等的主机应用。主机系统50(或者每一个主机应用)还可以具有用于存储现场设备25-39中的一个或多个的设备描述(dd)的本地库或数据库52。如图2中所示,主机系统50连接到互联网54,其可以是直接连接或者间接(例如,经由以太网40)。在替代的实施例中,可以使用企业wan来全部地或部分地替代互联网54。

如图2中所示,主机系统50经由互联网54来通信地耦合到多个数据库或系统,这些数据库或系统中的每一个可以与过程控制系统10进行通信。例如,管理信息系统56可以从过程控制系统10收集各种信息,其包括但不限于输入、产品等等。诸如hart通信基础数据库58、foundationfieldbus数据库60、profibus(过程现场总线)数据库62、设备制造商数据库(例如,艾默生过程管理数据库64)等等之类的各种dd数据库,可以同样地经由互联网54来通信地耦合到主机系统50。数据库56、58、60、62、64可以包含关于在过程控制系统10中使用的各种设备的信息(其包括用于这些设备的设备描述)。例如,hart通信基础数据库58可以包含用于在过程控制系统10中使用的各种hart设备的设备描述,foundationfieldbus数据库60可以包含用于在过程控制系统10中使用的各种现场总线设备的设备描述,profibus数据库62可以包含用于在过程控制系统10中使用的各种profibus设备的设备描述。对于来自设备制造商的在过程控制系统10中使用的各种设备而言,这些设备描述还可以存储在不同制造商所提供的各种数据库(例如,艾默生过程管理数据库64)中。

如上面所提及的,设备描述是针对于一种类型的现场设备的数据和操作过程的规范描述,其包括与该设备的各种特征相关联的变量、数据(参数)、通信(寻址信息)、方法、命令/操作(例如,校准)和图形用户界面(例如,菜单和显示格式),设备描述由设备制造商或dd开发者利用公知和良好支持的设备描述语言(ddl)来编写。例如,国际电工委员会标准(iec)标准iec61804-3:2010(e)将电气设备描述语言(eddl)指定成用于描述现场设备的属性(例如,设备参数和依赖关系、设备功能(如,仿真模式、校准等等)、图形表示(如,菜单、增强型用户界面等等)、与控制设备的交互、图形化系统和持续性数据存储)的通用语言。通常,将设备描述提供成根据设备描述语言规范所准备的电子数据文件(例如,具有“.ddl”扩展的文本文件),其中该设备描述语言规范描述设备的特定特征和功能(其包括由基于ddl的主机系统50使用以访问相应的现场设备中的所有参数和数据的菜单和图形显示特征的细节)。一般而言,设备描述是使用识别词和名称的格式的一系列复合语句(statement),包括设备的每个可访问变量,例如,过程测量值、派生值、和诸如范围、传感器类型、结构材料等等之类的内部参数。例如,用于设备描述的语句通常包括但不限于:变量、菜单、命令和方法,它们中的每一个都具有其自己的结构化信息。

变量可以是现场设备中包含的或者主机系统50与现场设备进行交互所使用的任何值或数据类型(例如,整数、浮点、字母数字等等)(例如,压力变送器中的压力、上限范围和下限范围、设备标签等等)。此外,用于变量的结构化信息还可以指定如何显示该变量(例如,变量名)、相关联的设备、帮助文件等等。对于每个命令而言,设备描述指定用于与该命令有关的几乎每一项的数据结构(例如,请求、响应、状态、响应含义等等)。针对设备所识别的每个命令,都提供命令语句。方法是用于主机在该设备上执行的一组操作(例如,安装、校准、命令等等)。操作者可以例如通过经由主机呈现的菜单选项来调用方法,其中以编写这些操作的顺序来执行该组操作。菜单是向终端用户的呈现。其可以用于向操作者呈现变量、信息或者其它菜单。

基于ddl的主机50包括配置界面,后者允许过程工厂的终端用户(例如,操作者)使用用户所选定的每个设备的dd中的信息,来配置ddl图形用户界面,使得主机50可以基于dd中的菜单结构,来动态地创建和维护自定义菜单。具体而言,该用户界面使用户能够通过以下方式来选择用于该自定义ddl图形用户界面的ddl结构:将来自dd的ddl结构披露给主机50,清楚地解释/呈现ddl结构、以及可能遇到的任何依赖关系。可以将选定的ddl结构和特定的菜单结构添加到ddl图形用户界面,使得将ddl图形用户界面映射到所选定的ddl结构,其中在任何时间存储和获取所配置的ddl图形用户界面(自定义菜单)。用户可以激活所配置的ddl图形用户界面,以便查看经由ddl图形用户界面呈现的数据、从视图中隐藏、使用新的或另外的ddl结构进行重新配置、使用用于新的或另外的设备的ddl结构(即,另外的dd)进行重新配置、通过修改ddl图形用户界面等等中的现有ddl结构进行重新配置等等。因此,与制造商设计的或者dd开发者设计的强加给用户的菜单相比,用户可以基于所认为的对于用户最重要的信息来定制菜单。基于ddl的主机50维护ddl结构信息的完整性,并且发出为了捕获ddl结构数据值所需要的命令。

一般而言,可以通过使用ddl条件、文件数据和本地变量,来完成ddl图形用户界面的配置、存储和获取。ddl条件在工业中被很好地理解成涉及依赖于变量的子对象。鉴于内部依赖关系(例如,变量或参数之间的依赖关系)可能很复杂,ddl条件是处理这些依赖关系的逻辑。具体而言,使用ddl条件允许配置界面不仅显示可用于选择或输入的ddl结构,而且还可以显示在选择结构或者提供输入时可能遇到的任何依赖关系。用类似的方式,ddl条件可能导致配置界面“隐藏”与所选定的结构或输入无关的ddl结构。术语“隐藏”的使用应被理解为意味着:从视图中隐藏ddl结构,防止ddl结构被选择或者输入输入(例如,对菜单结构进行灰化)。例如,如果用户选择一个设备参数(例如,温度),则配置界面可以“隐藏”与该参数无关的所有信息、图标、变量等等,只留下与该选择相关的ddl结构(例如,温度设置、温度单位选项等等)。因此,ddl条件使得配置接口只提供与先前选择的ddl结构有效或者相关的ddl结构,并且ddl图形用户界面中的先前选择的ddl结构的使用可以以选择这些ddl结构中的一个或多个为条件。假定有时候存在大量的ddl结构和依赖关系,也可以使用这些ddl条件来帮助用户配置菜单。

用户对用户配置的ddl图形用户界面(例如,所选ddl菜单结构、值等等)的优选项(preference),可以存储成称为文件(file)数据的ddl文件数据结构,其中某些变量的值可以存储在用户的数据库中。这些变量称为本地(local)变量,其值不需要存储在设备固件中,与存储在设备固件中的其它ddl变量(即,设备变量值)不同。将这些优选项存储成文件数据在不更改现有固件的情况下,允许ddl图形用户界面,这是因为文件数据不需要对设备本身进行任何其它工作。也就是说,ddl图形用户界面的配置在ddl中的基于ddl的主机50的设备之外进行。为此,本地变量不存储在设备中,而是存储成ddl文件数据。ddl文件数据因此充当为将ddl图形用户界面映射到向ddl图形用户界面增加的ddl菜单结构的本地资源文件。当激活ddl图形用户界面时,基于ddl的主机(或者基于ddl的主机应用)利用文件数据将ddl信息(例如,ddl菜单结构、变量值等等)转换为显示。

使用文件数据的ddl图形用户界面的ddl的部分伪代码示例,如下所述地提供,其包括变量和用于查看变量的菜单:

根据上面的示例,可以定义用户配置的菜单优选项(configure_param1、configure_param2和configure_param3),并作为文件数据(user_configuration)本地存储在用户的数据库(例如,基于ddl的主机50)中。当例如工作站14使用ddl来显示ddl图形用户界面时,使用ddl中的file语句来调用菜单优选项。

menu语句描述了图形用户界面(process_variables_root_menu)获得变量,实现如上面所指示的用户优选项(configure_param1)来确定界面的布局。随后,定义图形用户界面优选项(例如,压力表、压力图表、值)的细节,其中,“switch”表示与来自制造商或dd开发者的dd中所提供的缺省菜单的改变。在上面的示例中,屏幕标题和显示样式分别使用label(“过程变量”)和stylewindow(样式窗)来指定。随后,使用用户优选项(configure_param1)来确定屏幕布局。该示例中的用户优选项(configure_param1)定义了如何显示信息(压力),它们可以处于用于相同信息(gauge_showing_pressure、sweep_chart_plotting_pressure、pressure_value_as_text)的一种或多种格式(例如,规格、图表、文本)中。这些格式是dd的ddlmenu结构的一部分。

如上面所提及的,条件指代依赖于变量的子对象的使用。例如,如果用户配置显示器以监测压力变量,则期望压力维持在上限和下限之间,其中,压力读数落在这些限制之外将触发报警或告警。因此,配置图形用户界面以显示变量压力,可能会针对压力的上限和下限值而调用条件或子对象。用户能够选择变量(压力)和与该变量相关联的其它菜单结构(例如,规格、图表、文本),并且自动呈现依赖于要添加到图形用户界面的变量的子对象(例如,其它变量)(例如,pressure_upper_range_value、pressure_lower_range_value)。ddl条件还可以使得这样的选择是强制性的,使得在ddl图形用户界面中包括菜单结构(例如,压力)是以另外的菜单结构(例如,pressure_upper_range_value、pressure_lower_range_value)的选择为条件。

variable语句描述了要根据在menu语句中描述的图形用户界面(process_variables_root_menu)来显示的变量数据。变量是现场设备中所包含的任何值或类型的数据(例如,枚举、整数、浮点、字母数字等),或者由主机系统50与现场设备交互时使用(例如,压力变送器中的压力、上限和下限范围、设备标签等)。用于变量的结构化信息可进一步指定变量将如何显示、显示名称、关联的设备、帮助文件等等。在上面的示例中,变量压力是枚举值(typeenumeration),其中显示名称为“过程变量:第一项”。items属性指定将显示给用户的dd的选定元素(“pv的测量”、“pv的扫描图”、“pv作为文本”)。

为了创建用于特定的设备或者设备组(例如,一系列设备或者诸如回路、单元、区域等等之类的设备逻辑组)的ddl图形用户界面,对用于这些设备的dd进行获取,披露该dd中的所有ddl菜单结构。图3是用于配置基于ddl的主机50所维护的新ddl图形用户界面的ddl图形用户界面配置例程100的流程图。参见图3,在方框302处,配置例程100确定是否接收到用于配置设备(或者设备组)的ddl图形用户界面的命令。图4提供了一种图形用户界面(gui)的例子,其中根据该gui,用户可以选择该选项来生成用于设备或者设备组的ddl图形用户界面(“生成用户定义的菜单”)。如图4中所示,可以经由设备管理工具(例如,艾默生过程管理tm所出售的ams@套件的一部分来提供的ams设备管理器),来提供用于生成用户定义的菜单的选项。如图4中所示,可以从gui工具条中的下拉菜单来选择该选项,或者通过选择设备(例如,通过右击设备的名称或图标,其中该设备显示具有所述选项的菜单,以生成用于该设备的ddl图形用户界面)来选择该选项。一旦用户选择了用于生成ddl图形用户界面的选项,则gui可以显示如图5中所示的窗口或框架,其中通过该窗口或框架来配置ddl图形用户界面。图5的窗口是用于生成和配置ddl图形用户界面的配置界面的显示示例,其中可以向用户呈现该ddl图形用户界面以便从列表中选择设备中的特定一个,并披露ddl结构和为所选定的设备配置菜单。

在方框102处接收到用于配置ddl图形用户界面的命令之后,在方框104处,配置例程100确定是否选择了一个设备或者一组设备。用户可以从gui中呈现的设备列表(例如,图4中所示出的设备1到设备6)中选择一个或多个设备。用户所选定的设备可以是位于用户的控制范围/可访问范围之内和/或位于特定的物理设备或者逻辑设备组中的那些设备。例如,如果用户是操作者,则可以向用户呈现该用户具有监测和/或控制授权的那些设备列表。替代地或另外地,向用户呈现的设备列表可以是位于某个物理和/或逻辑组(例如,回路、单元、区域等等)内的设备。例如,如图4中所示,设备1-设备6是一种特定装备的所有设备。

例如,用户可以通过将表示该列表中所呈现的设备的图标拖拽到图5中所示出的配置窗(即,拖放动作),来选择设备。替代地,如果用户通过选择设备(例如,通过右击设备图标)来选择用于生成ddl图形用户界面的选项,则可以自动地将所选定的设备添加到配置窗中。配置例程100可以在指定的时间段之后超时(方框106)。

一旦选择了一个或多个设备,则在方框108处,配置例程100获取用于所选定的设备的dd。可以从基于ddl的主机50的dd库52中获取用于设备的dd(如果先前已经从该设备自身提供、从管理信息系统56提供、从各种dd数据库58、60、62中的一个提供、或者从设备制造商数据库64中提供的话)。图6是用于在图3的方框108处,获取选定的设备的设备描述的dd获取例程200的例子。开始于方框202处,基于ddl的主机50连接到设备,并使用已知的命令来请求用于该设备的dd标识。可以利用用于与设备进行通信的协议,来指定该dd标识请求。例如,如果使用hart协议,则可以向设备发送命令#0以请求用于该设备的dd标识。可以通过通信链路40或者经由基于ddl的主机50和设备之间的任何其它通信链路,从基于ddl的主机50向设备发送该请求。

在方框204处,响应于方框202所发送的请求,从设备接收dd标识,并将所接收的针对该设备的dd标识存储在存储器中。应当知道,设备提供的dd标识可以包含诸如制造商id、设备标识符、设备修订版等等之类的用于该设备的信息。在方框206处,dd获取例程200使用所接收的dd标识中的设备信息,确定基于ddl的主机50(或者基于ddl的主机应用)是否具有用于该设备的dd。例如,方框206可以涉及:针对用于该设备的dd标识所识别的dd,在基于ddl的主机50上搜索本地dd库52或者主机应用。

如果确定基于ddl的主机50不具有用于该设备的dd,则在方框208处,dd获取例程200识别具有用于该设备的dd的连接到互联网54的dd数据库(例如,hart数据库58),向数据库发送请求以获得用于该设备的dd。可以通过在互联网54上发送请求,并分析针对该请求的响应,来识别dd数据库。当然,基于ddl的主机50可以存储可能的或者已知的dd数据库(例如,hart数据库58、foundationfieldbus数据库60、profibus数据库62或者一个或多个制造商的数据库64等等)的互联网地址,基于ddl的主机50可以连接到这些数据库以搜索期望的dd。dd获取例程200还可以使用任何期望的搜索引擎、浏览器等等来搜索期望的dd。如果期望的话,则dd获取例程200可以使用交互式屏幕与操作者进行交互,以使操作者能够辅助在互联网54上发现适当的dd。当发现了包含有用于该设备的dd的数据库时,dd获取例程200向数据库发送请求,以获得用于该设备的dd。针对数据库的该请求可以包括:用于该设备的dd识别中包含的信息中的一些或者全部,如在方框204处所获得的。

在方框208处将用于该设备的dd下载到基于ddl的主机50之后,或者当在方框206处确定基于ddl的主机50具有用于该设备的dd时,在方框210处,dd获取例程200更新基于ddl的主机50。用户可以根据需要来指示:应当针对dd,对基于ddl的主机50进行自动地更新。替代地,可以在方框210处发送命令,以使用期望的dd来更新基于ddl的主机50。使用用于设备的dd来更新基于ddl的主机50,可以涉及:将用于设备的dd保存到特定位置的存储器中,并根据需要,在基于ddl的主机50中插入针对该特定位置的调用。此外,使用用于设备的dd来更新基于ddl的主机50,还可以涉及:在dd库52中插入用于该设备的dd。

再次参见图3,一旦获取到用于所选定的设备的dd,则在方框110处,配置例程100读取用于该设备的dd,在dd中向基于ddl的主机50(或者主机应用)披露所有ddl菜单和ddl菜单结构(例如,在菜单中显示的菜单项或者参数,例如,变量、图形、图像、网格、图表等等)。例如,配置例程100可以对dd进行扫描和分析,以使用户可通过配置界面来获得所有ddl菜单结构,使得可以向配置例程100以及下面将进一步其它例程提供ddl菜单结构和值,从而设计具有用户期望的将应用于ddl图形用户界面的菜单选项和参数的ddl图形用户界面。应当理解的是,制造商仍然希望对用户能够访问的项进行限制。因此,披露ddl菜单和ddl菜单结构,允许用户依据其如何查看该信息来配置ddl图形用户界面,但并不是必须允许用户查看任何信息和全部信息。也就是说,根据设备制造商所开发的资源文件来生成的缺省设备菜单中所通常显示的数据仍然可用于用户,但披露ddl菜单和ddl菜单结构并不向用户披露另外的数据。相反,披露ddl菜单和ddl菜单结构,将用户已经能够在用于所选定的设备的缺省设备菜单中查看的菜单结构变成可选的,使得用户能够配置如何在ddl图形用户界面中呈现数据。

在方框112处,在配置界面中向用户呈现ddl菜单结构,在图7中示出了其一个例子。如图7中所观察的,该配置界面在菜单结构模板300中,呈现所披露的ddl菜单结构(“params”)。虽然为了举例目的而示出成变量#(变量1、变量2、变量3等等),但以用户可理解的方式来呈现和清楚地描述ddl菜单结构的名称。除了菜单结构模板300之外,还可以提供菜单样式模板302,以呈现用于不同类型的菜单的选项(例如,组合框、窗口、菜单、页)。配置模板304充当为用于ddl图形用户界面的模板,提供用户可以设计ddl图形用户界面的区域。

根据用户的优选项(例如,布局、菜单样式等等),在方框114处,可以对ddl菜单结构进行选择,在方框116处,添加到ddl图形用户界面中。例如,参见图7,用户可以从菜单结构模板300中选择表示ddl菜单结构的特定图形图标,将这些图标拖拽到配置模板304中,将ddl菜单结构放置在用户想要放置的位置。在配置模板304中,用户可以以任何期望的方式来排列菜单结构。同样,用户可以从菜单样式模板302中选择表示菜单样式的图标,将该图标拖拽到配置模板304中,并将该菜单样式放置在用户想要放置的位置。在配置模板304中,用户可以以任何期望的方式来排列菜单样式和/或菜单结构。例如,不是使ddl图形用户界面显示用于监测特定设备的所有相关信息,而是用户可以选择多个设备,并为每个设备选择温度变量来显示在ddl图形用户界面中,从而生成被定制为显示仅仅温度读数、仅仅压力读数或者用于多个设备的任何其它变量的ddl图形用户界面,这是来自设备dd的缺省菜单所不支持的特征(这是由于dd只是特定于特定的设备或者设备类型的)。

当在方框116处向ddl图形用户界面增加菜单结构时,配置例程100还可以确定所增加的菜单结构是否具有一个或多个依赖项(例如,依赖于某个变量的子对象)。在该情况下,配置例程100可以将控制从方框118处返回到方框114,使用ddl条件来只呈现依赖于先前选定的菜单结构的菜单结构。例如,如果增加的变量是用于选定的设备的压力,则用于压力的依赖项可以是诸如上限和下限值之类的关键参数。使用ddl条件,配置例程100可以“隐藏”所有其它菜单结构,只向用户呈现用于压力的上限和下限范围菜单结构。此外,使用ddl条件,配置例程100甚至可以防止用户完成和保存菜单,直到满足这些条件为止,使得在ddl图形用户界面中包括的菜单结构,以进一步的菜单结构的选择为条件。

此外,给定设备(或者设备组)在dd中具有多个菜单结构,还可以使用ddl条件来引导用户对菜单进行配置。虽然配置例程100为了配置ddl图形用户界面的目的而披露菜单结构,但ddl条件可以用于通过以下方式来简化菜单结构向用户的呈现:只呈现菜单结构的一个子集,“隐藏”所有其它菜单结构,随后只呈现与先前选定的菜单结构相关的那些菜单结构。例如,配置例程100可以开始于:只呈现用于所选定的设备的变量(例如,压力、温度等等),同时“隐藏”用于这些变量的所有其它菜单结构(例如,图形、图表、依赖项等等)。一旦选择了变量(例如,压力),则可以隐藏所有其它菜单结构(包括未选择的变量),或者它们是不可选择的,除非它们与所选定的变量相关(例如,压力图形、压力图表、压力依赖项等等)。一旦满足了用于变量的ddl条件,则配置例程100可以返回到只为所选定的设备呈现这些变量。

在一个实施例中,甚至相关菜单结构的呈现也可以是基于ddl条件。例如,当用户选择变量“压力”时,配置例程100可以随后呈现压力的上限和下限范围所对应的菜单结构。仅仅当用户选择了用于上限和下限范围值的菜单结构,配置例程100才呈现用于压力的图形、图表等等的菜单结构。因此,使这些图形、图表等等依赖于用于压力的上限和下限范围值,转而依赖于变量压力。用此方式,可以使用ddl条件来甚至使相关的菜单结构依赖于彼此,以便引导用户通过该配置。在一些情况下,ddl条件可以是强制性的(例如,选择用于压力的上限和下限范围值),使得直到选择了菜单结构为止,否则配置例程100将不会继续进行或者不允许用户完成和保存菜单。在其它情况下,ddl条件可以是可选的(例如,选择用于压力的图形或图表)。因此,ddl条件的使用可以用于引导用户通过菜单的配置,而不会使用户以所述多个ddl菜单结构可用作为包括在ddl图形用户界面中的选项。

如果用户完成了配置ddl图形用户界面(如在方框118处所确定的),则在方框120处,可以保存该菜单。如果没有,则控制可以返回到方框114,以进行下一个ddl菜单结构选择。当在方框120处保存所配置的ddl图形用户界面时,使用基于ddl的主机50来保存ddl图形用户界面。具体而言,将ddl图形用户界面保存成文件数据,其中,所选ddl菜单结构的值存储在用户数据库中(例如,基于ddl的主机50的用户数据库)。可以将ddl菜单结构存储成作为本地变量的文件数据,而不是与设备存储在一起。通过将用户优选项存储成文件数据,可以在无需改变现有固件,以及不需要对设备本身进行另外改变的情况下,生成和存储ddl图形用户界面。也就是说,该解决方案完全在ddl内。因此,用户能够对基于ddl的主机50所动态生成和维护的ddl图形用户界面进行配置。该配置界面(例如,图4、5和图7中所示出的那些)允许用户挑选和选择对于用户来说重要的ddl菜单结构,其中这些结构添加到ddl图形用户界面中。如下面所进一步讨论的,用户可以在任何时间,调用和激活ddl图形用户界面,隐藏ddl图形用户界面,重新配置ddl图形用户界面具有不同的ddl菜单结构。

图8是用于示出在基于图3中所公开的方法,生成和配置基于ddl的主机系统50所维护的ddl图形用户界面时的过程之间的交互的序列图。首先,在基于ddl的主机50上执行的ddl主机应用350可以向菜单创建器界面352发出用于生成新的用户定义菜单的异步调用(“生成”)。ddl主机应用350可以是来自套件的应用,菜单创建器界面352可以是用于生成和配置图5和图7中所描述的菜单的配置界面,其中从应用向该配置界面进行用于生成菜单的调用。用于生成新的ddl图形用户界面的调用,可以是响应于当用户选择图4中的“生成用户定义的菜单”选项时,图3的方框102处的配置ddl图形用户界面的命令。转而,可以从菜单创建器界面352向设备发现器界面(例如,设备管理器或者图4中描述的其它设备管理工具)发出用于生成ddl图形用户界面的另一个异步调用(“生成”)。替代地,用于生成新的ddl图形用户界面的该调用可以是源自于菜单创建器界面352(如果已经另外启动了的话)。同样,用于生成新的ddl图形用户界面的该调用可以是源自于设备发现器界面354,例如,当用户在如参照图4所讨论的设备管理工具中从设备列表中选择设备时,在该情况下,从设备发现器界面354向菜单创建器界面352发出该调用。

用于生成新的用户定义菜单的调用使得设备发现器界面354向数据存储应用356发出同步调用(“获得设备”),以便获取向用户呈现的用于进行选择的设备列表,如在图3的方框104处。作为响应,数据存储应用356向设备发现器界面354返回设备列表(“设备列表”)。该设备列表可以是授权用户进行监测和/或控制的那些设备、或者位于特定的回路、单元、区域等等内的设备(基于在设备发现器界面中进行的回路、单元、区域等等的选择)。例如,如果用户使用导航树选择了特定的单元,则可以从数据存储356中获取该单元所对应的设备(其包括该单元中的所有回路)。同样,如果用户使用导航树选择了某个单元内的特定回路,则可以从数据存储356中获取该回路所对应的设备。

随后,设备发现器界面354可以向用户呈现这些设备,作为响应,设备发现器界面354可以从该序列之外接收用于指示来自用户的设备选择(“设备选择”)的消息,其对应于图3的方框104。作为响应,从设备发现器界面354向菜单创建器界面352发送用于表示所选定的设备的异步消息(“设备选择”)。随后,创建器界面352向数据存储应用发出同步调用(“获得设备参数”),以获取所选定的设备的所有ddl菜单结构。用于获取ddl菜单结构的调用,可以调用数据存储应用356中的子例程来获取用于所选定的设备的dd,如图3的方框108处和图6中所描述的。

数据存储应用356使用用于所选定的设备的菜单结构列表(“设备参数”),对菜单创建器界面352进行响应,在该时间点,将这些菜单结构披露给菜单创建器352(或者由菜单创建器352进行披露)以便向用户呈现。随后,菜单创建器界面352可以从该序列之外接收用于指示用户所选ddl菜单结构的同步消息(“选择参数/添加到菜单”)以便添加到菜单,其对应于图3的方框114-118和图7中所描述的界面。

向ddl图形用户界面增加菜单结构可以涉及:将ddl图形用户界面映射到所选定ddl菜单结构。将ddl图形用户界面映射到所选定ddl菜单结构可以涉及:当激活ddl图形用户界面时,在ddl图形用户界面文件数据中插入用于调用ddl菜单结构的调用或命令。此外,映射还可以涉及:向ddl图形用户界面文件数据增加链接(映射)到ddl菜单结构的值。例如,参照上面所提供的用于使用文件数据的ddl图形用户界面的ddl的部分伪代码示例,ddl菜单结构“gauge_showing_pressure”、“sweep_chart_plotting_pressure”和“pressure_value_as_text”可以充当为当激活ddl图形用户界面时,在显示设备上显示这些ddl菜单结构的图形表示的调用。变量(压力)具有“0”、“1”和“2”的值,它们分别映射到ddl菜单结构“gauge_showing_pressure”、“sweep_chart_plotting_pressure”和“pressure_value_as_text”。

一旦选择和增加了ddl菜单结构,则执行针对数据存储365的异步调用,以保存ddl图形用户界面(“保存菜单”),其对应于图3的方框120。如上面所讨论的,可以将ddl图形用户界面存储成基于ddl的主机50上的ddl文件数据。基于ddl的主机50具有维护ddl菜单结构信息(如从相关联的设备所获取的和如在配置例程100期间所披露的)的完整性的任务,其中ddl菜单结构进行本地保存(例如,保存在dd数据库52中)。此外,基于ddl的主机50还发出为了获取ddl结构数据值所需要的命令。例如,当文件数据中的ddl结构充当为调用时,基于ddl的主机50对这些调用进行解释,发出命令以从本地数据库中获取用于ddl图形用户界面的ddl结构,并将这些ddl结构显示成ddl图形用户界面的一部分。

在图9中,示出了用户配置的ddl图形用户界面的示例,其中图9包括所选定的设备的图像(图形表示)360、用户选择的变量362-368的图形表示以及用于这些变量的输入值的方框370-378、用于调用ddl方法的菜单选项380。一旦保存了ddl图形用户界面,则可以在菜单设备模板(例如,窗口或框架)中查看该ddl图形用户界面。使用诸如套件应用之类的ddl主机应用,可以通过选择作为导航菜单选项384的快捷键条382或者从设备列表中选择设备(例如,右击设备名称或图标)来激活或者调用ddl图形用户界面,以生成具有该ddl图形用户界面作为一个选项的上下文菜单。虽然显示成“新菜单”,但用于这些选项的标签可以与用户所保存的ddl图形用户界面相同。

图10是用于激活ddl主机应用中的ddl图形用户界面(例如,设备管理器)的示例性ddl图形用户界面激活例程400的流程图。开始于方框402,例如使用基于ddl的主机50或者其它工作站14,来启动ddl主机应用。在方框404处,ddl主机应用可以向用户列出或者显示一个或多个设备(例如,用户被授权进行监测和/或控制的设备)。如先前所提及的,该设备可以位于特定的回路、单元、区域等等内。替代地或另外地,如在方框406处,ddl主机应用可以显示与这些设备相关联的一个或多个菜单选项,其包括设备的制造商或者dd的开发者所提供的缺省标准dd、以及针对所选定的设备的任何配置的ddl图形用户界面。

用户可以以多种方式来选择菜单,其包括但不限于:从显示的设备列表中选择设备,或者从显示的菜单选项中选择ddl图形用户界面。例如,在方框408处,可以从菜单选项中选择ddl图形用户界面,其中在方框410处,启动所选定的ddl图形用户界面。如果在方框412处选择了设备(例如,通过右击设备名称或者图标),则在方框414处,菜单激活例程400可以确定是否存在ddl图形用户界面。如果存在,则412处的设备的选择可以在方框416处,在该ddl图形用户界面作为一个选项的情况下,生成上下文菜单。在选择了用于ddl图形用户界面的选项之后,在方框418处,启动ddl图形用户界面。如果不存在ddl图形用户界面,则在方框420处,菜单激活例程400可以使得生成标准上下文菜单。在选择了用于缺省的标准设备菜单的选项之后,在方框422处,使用用于该设备的dd和资源文件来启动缺省的标准设备描述菜单。

一旦生成、配置和保存了ddl图形用户界面,就可以对该ddl图形用户界面进行编辑,以修改该ddl图形用户界面中的一个或多个ddl菜单结构(例如,删除一个结构、增加一个结构、修改一个结构)或者增加用于新设备的ddl菜单结构。图11是用于对现有的ddl图形用户界面进行修改或者增加的编辑例程500的例子。开始于方框502,显示用户的ddl图形用户界面。可以在类似于图9所示出的gui中,呈现ddl图形用户界面,从而用户可以从便捷键条382中选择ddl图形用户界面,或者作为导航菜单选项384。举一个例子,可以从工具条中进行用于对选定的ddl图形用户界面进行编辑的选项,或者通过选择(例如,右击)快捷键条382或者导航菜单384中所列出的ddl图形用户界面,来生成具有对ddl图形用户界面进行编辑的选项的上下文菜单。

一旦使用用于对ddl图形用户界面进行编辑的选项,在方框504处选择了ddl图形用户界面,则在方框506处,披露用于该ddl图形用户界面的ddl菜单结构。类似于在图3的方框110处披露ddl菜单结构,编辑例程500可以对ddl图形用户界面进行扫描和分析,以使用户可通过配置界面来获得所有ddl菜单结构,使得向用户显示ddl图形用户界面中的ddl菜单结构和值。此外,如果用户想要向ddl图形用户界面增加ddl菜单结构,则编辑例程500可以获取最终生成、或者先前配置ddl图形用户界面时获取的设备的dd。同样,编辑例程可以对dd进行扫描和分析,以使用户可通过配置界面来获得所有ddl菜单结构。如果该dd没有存储在dd库52中,则编辑例程500可以使用图6的dd获取例程200。

在方框508处披露ddl菜单结构之后,在方框508处,在配置界面中向用户呈现这些ddl菜单结构。该配置界面可以与图7中所示出的相同,其中显示了用于在配置模板304中编辑的ddl图形用户界面。一旦披露了ddl菜单结构和呈现了ddl图形用户界面来进行编辑,就可以向用户呈现具有用于编辑ddl图形用户界面的选项,例如,修改ddl图形用户界面,或者向ddl图形用户界面增加用于新设备的ddl菜单结构。基于用户的选择(如在方框510处所确定的),在方框512处,编辑例程500可以向ddl图形用户界面增加用于新设备的一个或多个ddl菜单结构,或者在方框514处,对ddl图形用户界面进行修改(例如,增加、删除或者修改ddl菜单结构)。

为了在方框512处增加用于新设备的ddl菜单结构,可以调用新设备例程600,如图12中所示。该新设备例程可以类似于图3中所示出的设备描述配置例程100。具体而言,开始于方框602处,获取可以增加其ddl菜单结构的设备,并使用例如图4中所示出的设备管理工具来向用户呈现。在方框604处,增加设备例程600确定是否选择了一个设备或者一组设备。用户可以从设备管理工具gui中呈现的设备列表中,选择一个或多个设备。如同生成ddl图形用户界面,用户所选定的设备可以是位于用户的控制范围/可访问范围之内和/或位于特定的物理设备或者逻辑设备组中的那些设备。例如,用户可以通过将表示该列表中所呈现的设备的图标拖拽到图5的配置窗304中(即,拖放动作),来选择设备。替代地,如果用户选择了设备(例如,通过右击设备图标),则可以自动地将所选定的设备添加到配置窗304中。增加设备例程600可以在指定的时间段之后超时(方框606)。

一旦选择了一个或多个设备,则在方框608处,增加设备例程600获取用于所选定的设备的dd。可以从基于ddl的主机50的dd库52中获取用于设备的dd(如果先前已经从该设备自身提供、从管理信息系统56提供、从各种dd数据库58、60、62中的一个提供、或者从设备制造商数据库64中提供的话)。在方框608处,增加设备例程600可以使用图6的dd获取例程来获取所选定的设备的dd。

当获取到用于所选定的设备的dd时,在方框610处,增加设备例程600读取用于新设备的dd,向基于ddl的主机50(或者主机应用)披露该dd中的所有ddl菜单和ddl菜单结构(例如,在菜单中显示的菜单项或者参数,比如变量、图形、图像、网格、图表等等)。增加设备例程600可以对dd进行扫描和分析,以使用户可通过配置界面来获得所有ddl菜单结构,使得可以向增加设备例程600提供ddl菜单结构和值,以向ddl图形用户界面增加ddl菜单结构。如同图3,披露ddl菜单和ddl菜单结构,将用户已经能够在用于所选定的设备的缺省设备菜单中查看的菜单结构变成可选的,使得用户可以选择向ddl图形用户界面增加哪些ddl菜单结构。

在方框612处,在配置界面中向用户呈现用于新设备的ddl菜单结构,例如,图7中所示出的。使用图7作为一个例子,可以在配置模板304中显示正在编辑的ddl图形用户界面,其中在菜单结构模板300中提供披露的ddl菜单结构。菜单结构模板300中的披露的ddl菜单结构可以仅仅是在方框610处针对新设备所披露的那些,或者可以包括用于新设备的ddl菜单结构以及在ddl图形用户界面中使用的ddl菜单结构、和/或用于在最初生成和配置该ddl图形用户界面时获取的用于该设备的ddl菜单结构。

一旦披露和呈现了ddl菜单结构,则根据用户的优选项(例如,布局、菜单样式等等),在方框614处,可以对ddl菜单结构进行选择,在方框616处,添加到ddl图形用户界面中。例如,再次参见图7,用户可以从菜单结构模板300中选择表示ddl菜单结构的特定图形图标,将这些图标拖拽到配置模板304中,将ddl菜单结构放置在用户想要放置的位置。在配置模板304中,用户可以以任何期望的方式来排列菜单样式和/或菜单结构。用于向ddl图形用户界面增加ddl菜单结构的处理,可以与上面所描述的图3中的方框116相同。当在方框616处向菜单增加菜单结构时,增加设备例程600针对具有依赖关系的任何变量,使用上面参照图3所描述的ddl条件的概念,引导用户对ddl图形用户界面进行编辑。

如果用户完成了向ddl图形用户界面增加针对新设备的ddl菜单结构(如方框618处所确定的),则控制可以返回到编辑例程500。如果没有完成,则控制可以返回到方框614,增加设备例程600等待下一个ddl菜单结构选择。

再次参见图11,如果在方框514处,用户选择修改ddl图形用户界面,则编辑例程500可以调用修改例程700(如图13中所示)。开始于方框702,基于用户输入(例如,通过将表示该菜单结构模板300中所呈现的ddl菜单结构的图形图标拖拽到图7的配置模板304中(即,拖放动作),将表示在配置模板304中呈现的ddl菜单结构的图标拖拽到配置模板304之外,或者右击表示ddl菜单结构的图标,以显示具有对该ddl菜单结构进行编辑的选项的上下文菜单),在方框508处,从ddl菜单结构的显示中选择ddl菜单结构。如上面所提及的,向用户呈现的ddl菜单结构可以包括:在正在编辑的ddl图形用户界面中使用的ddl菜单结构、以及在最初生成和配置ddl图形用户界面时或者在先前编辑该ddl图形用户界面时获取的用于该设备的ddl菜单结构。

一旦在方框702处选择了ddl结构,则修改例程700可以转到向用户呈现用于修改ddl图形用户界面的选项,例如,从ddl图形用户界面中删除ddl菜单结构,向ddl图形用户界面增加ddl菜单结构或者修改ddl图形用户界面中的ddl菜单结构。在一个实施例中,选择ddl菜单结构的方式,可以自动地调用用于修改ddl图形用户界面的选项。例如,如果用户将表示配置模板304中的ddl菜单结构的图标拖拽到配置模板304之外,则修改例程700可以将该动作解释成从ddl图形用户界面中删除ddl菜单结构,故在方框704处,调用删除ddl菜单结构例程。同样,如果用户将表示ddl菜单结构的图标从菜单结构模板300拖拽到配置模板304中,则修改例程700可以将该动作解释成向ddl图形用户界面增加ddl菜单结构,故在方框706处,调用增加ddl菜单结构例程。如果用户点击了表示菜单结构模板300中的ddl菜单结构的图标,则修改例程700可以将该动作解释成修改ddl菜单结构,故在方框708处,调用修改ddl菜单结构例程。替代地或另外地,可以经由上下文菜单(例如,右击表示ddl菜单结构的图标)和/或经由工具条菜单,来调用在方框704、706、708处的修改选项中的每一个。

图14是用于从ddl图形用户界面中删除ddl菜单结构的、在图13中的方框704处所示出的删除ddl菜单结构例程800的例子。开始于方框802处,删除ddl菜单结构例程800可以验证已选择了ddl菜单结构,在方框804处,删除所选定ddl菜单结构。举一个例子,如果修改例程700解释了用于将表示ddl菜单结构的图标从配置模板304之中拖拽到配置模板304之外的动作,则可以使用方框802来跟踪该图标在配置界面中的移动,其中,仅仅当该图标“掉到”配置模板304之外时,才在方框804处发生从ddl图形用户界面中删除该ddl菜单结构。如果用于删除ddl菜单结构的选项是经由上下文菜单来调用的,则可以使用方框802来验证用户选择(例如,右击)了用于ddl菜单结构的图标,并当用户从上下文菜单中选择删除选项时,在方框804处删除该ddl菜单结构。类似地,如果用于删除ddl菜单结构的选项是经由工具条菜单来调用的,则可以使用方框802来验证用户选择了ddl菜单结构(例如,用户点击了该ddl菜单结构进行删除,或者从工具条菜单中选择了删除选项,将一个ddl菜单结构列表带入到选择进行删除)。

应当理解的是,可以一次删除多个ddl菜单结构,例如,通过使用鼠标在多个ddl菜单结构的图标周围画一个框,通过上面所描述的方法之一来删除所选定的ddl结构。删除ddl菜单结构例程800可以在方框806处,验证用户是否在删除ddl菜单结构,例如,通过提示用户将删除该ddl菜单结构,和/或提示用户将进行进一步的ddl菜单结构删除。如果用户完成了从ddl图形用户界面中删除ddl菜单结构(如方框806处所确定的),则控制可以返回到图11的编辑例程500。如果没有,则控制可以返回到方框802,删除ddl菜单结构例程800等待用于从ddl图形用户界面中删除的下一个ddl菜单结构选择。

图15是用于向ddl图形用户界面增加ddl菜单结构的、在图13中的方框706处所示出的增加ddl菜单结构例程900的例子。如果在最初生成和配置ddl图形用户界面时或者在先前编辑ddl图形用户界面时获取的设备的dd中的ddl菜单结构还没有在图11的方框506处披露(例如,如果仅仅披露了ddl图形用户界面中的ddl菜单结构),则可以在方框902处,披露来自该dd的ddl菜单结构。类似于在图3的方框110和图11的方框506处披露ddl菜单结构,增加ddl菜单结构例程900可以对dd进行扫描和分析,以使用户可通过配置界面来获得所有ddl菜单结构,使得向用户显示该dd中的ddl菜单结构和值。

在方框902处披露了ddl菜单结构之后,在方框904处,在配置界面中向用户呈现这些ddl菜单结构。该界面可以与图7中所示出的界面相同,其中,在菜单结构模板302中显示ddl结构。一旦对这些ddl菜单结构进行了披露和呈现,则可以在方框906处,选择ddl菜单结构,并在方框908处,将其添加到ddl图形用户界面中。用于向ddl图形用户界面增加ddl菜单结构的处理,可以与上面所描述的图3中的方框116的处理相同。例如,用户可以从菜单结构模板302中选择用于ddl菜单结构的图形图标,将该图标拖拽到配置模板304中的ddl图形用户界面,并在配置模板304中的任何期望的位置释放该图标。此外,在方框906处,还可以考虑和使用ddl条件,其中,增加ddl菜单结构例程900可以将控制从方框910处返回到方框906处,以满足这些条件,如上面所描述的。

如果用户完成了向ddl图形用户界面增加ddl菜单结构(如方框910处所确定的),则控制可以返回到图11的编辑例程500。如果没有,则控制可以返回到方框906处,增加ddl菜单结构例程900等待用于向ddl图形用户界面增加的下一个ddl菜单结构选择。

图16是用于修改ddl图形用户界面中的ddl菜单结构的、在图13中的方框708处所示出的修改ddl菜单结构例程1000的例子。开始于方框1002处,选择ddl图形用户界面中的ddl菜单结构。例如,用户可以点击在配置模板304中显示的ddl图形用户界面中的ddl菜单结构的一个或多个图形图标,或者在它们周围画一个框。随后,用户可以经由上下文菜单或者工具条,选择用于修改所选定ddl菜单结构的值的选项。替代地,简单地选择ddl菜单结构,可以组成用于修改ddl菜单结构的选项的选择。

在方框1004处,接收用于该ddl菜单结构的新值。例如,用户可以输入变量的新值,其包括但不限于:上限和下限范围、值、数据类型、名称等等。同样,用户可以通过将用于配置模板304中的所选定ddl菜单结构的图标拖拽到期望的位置,输入针对于ddl图形用户界面中的ddl菜单结构的布置的新值。一旦在方框1004处输入和接收了新值,则可以在方框1006处,对该ddl菜单结构进行更新。如果用户完成了修改ddl图形用户界面中的ddl菜单结构(如方框1008处所确定的),则控制可以返回到图11的编辑例程500。如果没有,则控制可以返回到方框1002处,修改ddl菜单结构例程1000等待用于在ddl图形用户界面中修改的下一个ddl菜单结构选择。

再次参见图11,无论是删除、增加和/或修改ddl菜单结构,还是已经将来自新设备的ddl菜单结构添加到用户配置的菜单中,控制都可以返回到编辑例程500。如果用户完成了修改ddl图形用户界面(如在方框516处所确定的),则在方框518处,可以保存该更新的ddl图形用户界面。如果没有,则控制可以返回到方框508,以用于对ddl图形用户界面的下一次修改。当在方框518处保存更新的ddl图形用户界面时,使用基于ddl的主机50来保存该更新的ddl图形用户界面,如在图3的方框120处。具体而言,将更新的ddl图形用户界面保存成文件数据,其中所选ddl菜单结构的值存储在用户数据库中(例如,基于ddl的主机50的用户数据库)、存储成本地变量,而不是与设备存储在一起。同样,通过将用户优选项存储成文件数据,可以在无需改变现有固件,以及不需要对设备本身进行另外改变的情况下,生成和存储ddl图形用户界面。

虽然前述文本阐述了本发明的许多不同实施例的详细描述,但是应当理解的是,本发明的范围由本专利的最后部分提出的权利要求的词语进行定义。该详细描述应被解释成仅仅是示例性的,并且没有描述本发明的每个可能的实施例,这是因为描述每个可能的实施例即使不是不可能的,也是不切实际的。利用现有的技术或者本专利申请的提交日之后研制的技术可以实现许多可选择的实施例,这些实施例仍然落入限定本发明的所附权利要求的范围之内。

虽然将ddl图形用户界面配置技术以及其组成要素描述成可以在工作站或服务器上实现的例程,但它们也可以利用硬件、固件等等来实现,可以由包括多个处理器的任何其它处理器来实现。因此,本文所描述的组成要素可以根据期望,实现在标准多用途cpu中,也可以实现在诸如专用集成电路(asic)或其它硬连线设备之类的专门设计的硬件或固件上。当利用软件来实现时,可以将该软件例程存储在任何计算机可读存储器中,比如存储在磁盘、激光光盘或者其它存储介质上、存储在计算机或处理器的ram或rom中、存储在任何数据库中等等。

因此,在不脱离本发明的精神和范围的基础上,可以采用本文描述和图示的技术和结构来进行多种改变和变化。因此,应当理解的是,本文所描述的方法和装置只是示例性的,而不是限制本发明的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1