用于自动化技术的软件工具的制作方法

文档序号:6368536阅读:128来源:国知局
专利名称:用于自动化技术的软件工具的制作方法
技术领域
本发明涉及一种用于自动化技术的软件工具。用于自动化技术的软件工具特别是指设计系统、工程系统、调试器等。
背景技术
用于自动化技术的软件工具是自身已知的。申请人提供了例如在品牌STEP旗下为人们所熟悉的用于自动化技术的为自动化设备编制自动化程序的工程系统,例如,可编程控制器或同类设备。可供終端用户编制自动化程序的这种工程系统或其它任何ー种软件工具自身都是ー个软件程序,由于提供的功能強大,其編制、维护和改进都需要大量的费用。
截至目前为止,这种软件工具的研发在很大程度上受多重发展的影响,也就是说,对于不同的软件工具而言,各软件工具以相同或相似的方式所必需的功能已经以专利申请的形式得到了实现,并以申请专利的方式与各个软件工具結合。这种多重发展首先对于不断增长的成本压カ来说是不利的。另外,各种软件工具对操作与用户指南(可用性)、屏幕显示(布局)等方面的普遍性的要求越来越高。但是,在少数领域内,自动化技术中的编程系统已经具有能多次应用编程工具的软件编制过程。一个例子就是所谓的目标系统中间人。他将根据在其上应装载自动化程序的自动化设备的类型,对在抽象编程模型上編制的自动化程序进行编译的任务分派给相应的编译器,从而分别根据基础的抽象自动化程序生成与各个自动化设备相匹配的具体的自动化程序。

发明内容
与之相应,本发明的目的在于提供一种用于自动化技术的软件工具以及ー种用于完成这种软件工具的方法,应用这种方法能避免前文所述的缺点,或者至少适合于减小其影响。该目的根据本发明通过权利要求I所述的特征来实现。同时,在用于自动化技术的具有输出转换器的功能的软件工具中设计为,多个分别设置用于自身的对象域的单域应用程序(单个应用程序)能同时与软件工具组合,每ー个这样的应用程序都包括至少ー个用于访问输出转换器的第一软件接ロ,并且输出转换器包括至少ー个变换组件,用于实现来自各个应用程序的对象域的对象向为输出组件而定义的抽象对象模型的对象的转换。单域应用程序这ー概念在下文中也会用到。单域应用程序是指分别用于编辑和/或处理恰好一个对象域的对象的特定的应用程序。单域应用程序在下文中有时也只简称为应用程序。由于软件工具能与多个这种应用程序、也就是说能与至少ー个这种应用程序或者两个或多个这种应用程序相组合,因此,软件工具的功能能随时动态地扩展出其它功能,即扩展出各种通过第一软件接ロ与输出转换器连接或能与之连接的应用程序。这是本发明的重要优点。软件工具因此成为ー个开放并且通用的系统,用户根据应用情况将各种必需的功能集成到这个系统中。软件工具根据连接这种应用程序的数量成为多域软件工具。对于这些软件工具的研发者来说优点在于,即特定的功能、例如输出功能只需执行一次并且能多次应用。特别是当多次应用某个特定的输出功能时,也会出现软件工具输出不同功能的统ー现象。本发明的有利的设计方案是从属权利要求的内容。在此所用的回引通过各从属权利要求的特征表明了独立权利要求的主题的其它设计方案;并且它不意味着放弃对回引的从属权利要求中特征组合进行独立、具体的保护。此外,在后面的权利要求中进ー步将某ー特征具体化时,在权利要求的设计方面,各个前述权利要求中不存在这种限制。软件工具的一种实施方式的特征在于,除了第一软件接ロ之外,每个应用程序包括至少ー个第二软件接ロ,用于访问数据库转换器,并且数据库转换器包括至少ー个变换组件或多个变换组件,用于实现来自应用程序的对象域的对象向为数据平台而定义的对象模型的对象的转换。然后软件工具的一个应用程序或各个应用程序能以不同的格式例如保存在各自的数据平台中,并且不依赖于应用程序在其中工作的对象域。如果软件工具同时具有多个在此处和下文中所描述类型的应用程序,并且其中每 个应用程序设置用于恰好一个对象域,则会得出多域软件工具,其中,对于软件工具的用户来说,支持多个对象域是完全透明的。在用于运行这种软件工具的方法中,如在此处和下文所述,在应用包含在软件エ具中或集成在软件工具中的应用程序时,通过应用第一软件接ロ并且经第一软件接ロ调用输出转换器,为该应用程序和为该应用程序的对象域而设立的对象实现了来自应用程序的对象域的对象向为输出组件而定义的抽象对象模型的对象的转换。在一种软件工具中,能与之相结合的应用程序具有上述第一软件接ロ并且同时具有第二软件接ロ,在应用包含在软件工具中或集成在软件工具中的应用程序吋,通过应用第二软件接ロ并且经第二软件接ロ调用数据库转换器,为该应用程序及该应用程序的对象域而设立的对象实现了来自应用程序的对象域而设立的对象向为数据平台而定义的对象模型的对象的转换。要实现上述目的还要应用编程设备、个人计算机等,此二者按照此处和下文中所述的方法来工作,并且具有实施此方法的装置。本发明优选地以软件的形式得到实施。因此,本发明一方面是ー种具有能由计算机执行、用于实施本发明所述方法的程序编码指令的计算机程序,另ー方面也是ー种具有这种计算机程序的存储介质以及最后也是ー种自动化设备、编程设备或类似设备,在其存储器中装载或能装载计算机程序作为实施此方法并实现设计方案的装置的设备。在这种设备的运行过程中,能以常见的方式和方法通过包含在设备中的处理单元以微处理器的形式或按照微处理器的方式执行计算机程序。


下面借助附图对本发明的一个实施例作进ー步说明。相互一致的物体或元件在所有的附图中都应用相同的參考标号来表示。这个或者说每个实施例都不是对本发明的限制。相反,在本公开文件的范畴内能有许多变化和修改,特别是那种能例如由专业人员为实现本发明的目的通过对总体说明或专项说明部分描述的以及权利要求和/或附图中包含的各种特征、元件或方法步骤加以组合或变化而得出的并且能通过组合各种特征形成新的物体或新的方法步骤、方法步骤次序的变种和组合。图中示出图I示出软件工具的基本结构的简化示意图,图2示出根据本发明的附件的实施方式,它具有多个应用程序,用于在软件工具、这些应用程序的第一和第二软件接口中实现不同的功能,以便于访问输出转换器或数据库转换器和输出组件以及数据平台,图3示出输出组件的抽象对象模型的对象类型的实例的ー种可能的示意图,以及图4和图5示出抽象对象模型的对象类型的实例的多种可能的示意图。
具体实施例方式图I示出下文中简称为工程系统10的软件工具的非常简化的示意图,该软件工具具有一个应用程序框架12 (英文为application framework)、至少一个基本应用程序14和一个数据管理系统16 (英文为data platform, data base)。这个或姆个基本应用程序14提供例如ー个具有一个或多个窗ロ的工作区域。应用程序框架12通常为操作各个应用程序(至少为操作基本应用程序14)提供一份注明功能(例如“插入对象”、“删除对象”等)和工具(例如“变焦”、“开启/关闭网格线”等)的菜単。这个或每个基本应用程序14借助于数据管理系统16来管理其数据,以便于能够保存数据。与图I所示的不变的多个基本应用程序14自己实现与自身相同或同类型的功能的方案相反,本发明提出了一种与各个应该由应用程序处理的对象域相协调的抽象概念。此时,对象域是指预定数量的或者能预定数量的对象或对象类型、特别是多个具有自身的数据技术语言空间的对象类型的有效区域。图2示出这种附件的简化示意图。取代基本应用程序14或者除了ー个基本应用程序14或多个基本应用程序14之外,工程系统10(图I)包括一个或多个单域应用程序20,22。一个单域应用程序20,22在下文中有时也只简称为应用程序20,22。两个或多个单域应用程序20,22对于装备了这种应用程序的软件工具的用户来说就如同一个多域应用程序。可能为多个的单域应用程序20,22也就对于用户来说是完全透明的,并且该软件工具被用作为多域软件工具。工程系统10包括输出组件24 (UI组件),并且每个单域应用程序20,22都应用这个输出组件24。因此,对于单域应用程序20,22来说,恰好存在ー个输出组件24,所有或者至少多个单域应用程序20,22共同使用这个输出组件。输出组件24以抽象对象模型(UI对象模型)为基础,该对象模型与具体的对象域分开定义。输出组件24的抽象对象模型通常仅限于图形的标记对象。为了访问输出组件24,每个单域应用程序20,22都包含一个为此而设置的软件接ロ(第一软件接ロ 26)。通过这个第一软件接ロ 26,能实现对下文中称为输出转换器28 (制图者)的功能的访问。输出转换器28负责将各个来自每个应用程序20,22的对象域的对象向输出组件24的对象模型转换。此输出转换器28的特点,即在软件中实现的软件工具的相关功能的特点在于它能够支持原则上任意数量的对象域,并且每个受到支持的对象域能向输出组件24的对象模型转换。此外,输出转换器28相应地具有相应多个变换组件30,32,34,其中每个变换组件30,32,34都能将至少一个对象域的对象向输出组件24的对象模型转换。以下借助于将连接编辑程序作为多域情况的例子对根据本发明的附件加以说明。一个简单的连接编辑程序能绘制出程序框图的小框、连接器和连接器之间的图形连接线。因此,输出组件24的抽象对象模型至少包含(在UI对象模型中)下述三种对象类型图形小框36、图型连接器38和图形连接线39。这些对象类型的实例图见图3。在连接编辑程序的例子中,要区分以下两种域模型数据流模型和信号流模型。为每种域模型分别设置恰好一个专属应用程序20,22 (图2)作为单域应用程序。数据流模型以具有至少以下三种对象类型(图4)的对象域为基础数据模块40、数据模块元件42和数据分配44。数据流模型用于自动化技术的工程系统,并且在那里专门服务于研发环境,用于在自动化技术的特殊程序语言的基础上编制自动化程序,即例如FUP 或 CFC。信号流模型以具有至少以下三种对象类型(图5)的对象域为基础单个控制単元46 (例如,阀门、发动机、调节器等)、控制变量/过程变量48 (例如,转数、关闭的阀门等)和信号连接50。信号流模型同样用于自动化技术的工程系统,并且在那里专门用于研发环境,以便按照流程技术的标准或规范来绘制信号流设计图。此处作为例子提到的两种域模型“数据流”和“信号流”由输出转换器28的两种相应的变换组件30,32,34提供支持。这种用于实现来自对象域“数据流”的对象向输出组件24的对象模型的转换的第一变换组件30的功能能通过按照软件执行以下分配得以说明
图形小框e数据模块 图型连接器e数据模块元件
图形连接线H数据分配。相应地,这种用于实现来自对象域“信号流”的对象向输出组件24的对象模型的转换的第二变换组件32的功能能通过按照软件执行以下分配得以说明
图形小框e单个控制单元图型连接器e控制变量/过程变量
图形连接线e信号连接。然而,要说明的是,在此处所选取的例子中只是偶然存在这样的情況,即每个模型正好包含三种对象类型。其它对象域也可能包含更多或更少的对象类型以及相应的n-m分配。为了执行此处描述的分配或依赖关系,需要考虑所谓的LUT(L00kUp-Table,查找表格)或进行类似的考虑。为应用程序20,22而设立并设置在其对象域中的各个对象域的(实例)对象都具有ー个表示各自基本对象类型的标记,即例如表示出数据模块40的对象类型。该标记能采用数字或字母或者其它合适的方式。此时,在不排除普遍有效性继续适用的条件下,假设这个标记是字母,并且分别以明文的形式包含对象类型的上述名称,例如“数据模块”、“数据模块元件”和“数据分配”。因此,图4所示示意图的基本数据如下
DBl (= “数据模块”)
输入
11(= “数据模块元件”)
12(= “数据模块元件”)
输出
Ol (= “数据模块元件”)
DB2 (= “数据模块”)
输入
11(= “数据模块元件”)
12(= “数据模块元件”)
输出
Ol(= “数据模块元件”)
C (= “数据分配”)
开始
DBl,Ol结束
DB2, Il在这种情况下,在对这些数据进行解释时,第一变换组件30能借助于按照示例以明文形式引入的对象标记(确切地说,是对象的基本对象类型的标记)挑选出各自适合的分配方式,方法是,例如在LUT中找出相应的标记,并识别出输出组件24的对象模型中与该标记结合的对象。为了在对象类型“数据模块”的基础上显示出称为“DB1”的对象,能调用并执行输出组件24的对象模型中对象类型“程序框图的小框”的功能。这一原则相应地适用于所有其它对象及其各自的基本对象类型。此外,这一原则还相应地适用于其它(初始)对象域,此处也例如可以是对象域“信号流模型”。由于每个应用程序20,22包含用于访问输出转换器28的第一软件接ロ 26,因此,整个软件工具,例如工程系统10 (图I),都能随时补充其它应用程序20,22,以便于提供附加功能。原则上讲,输出转换器28同样能随时通过补充额外的变换组件30来扩充。为了保持数据,也就是专门为了装载和保存为应用程序20,22设立在其对象域中的对象,在图2所示的实施方式中同样设置了一个转换装置。如此ー来,就能实现数据从ー种格式向不同的数据平台52,54,56的另ー种格式转换。数据平台52,54,56允许以软件技术、应答或操作的方式访问数据池、特别是数据库。因此,数据平台52,54,56包含或者具有至少访问未单独示出的数据库的功能。为了调用下文中称为数据库转换器58的功能(该功能用于实施转换),每个应用程序20,22都具有ー个第二软件接ロ 60。数据库转换器58包含ー个或多个变换组件62,64,66,其功能在实现来自对象域的对象向数据平台的对象转换方面,原则上与输出转换器28的变换组件30,32,34的功能相一致。应用程序20,22的各自对象域中的对象将被转换 为或与数据平台52,54,56的各个对象模型相吻合的对象并且反之亦然。为了保存各个应用程序20,22的对象域的对象,它们将被转换为数据平台52,54,56的对象模型并被传输给数据平台52,54,56,以便于能够直接保存。为了将来自于数据平台52,54,56的对象直接装载入各个应用程序20,22的对象域中,首先从数据平台52,54,56中调用相应的数据,并然后将其从数据平台52,54,56的对象模型转换为应用程序20,22的对象模型。除此之外,具有变换组件62,64,66的数据库转换器58还特别适用于在新软件生成过程中转换为另ー种数据存档文件。旧的数据格式以及ー种或多种随着新软件生成而产生的数据格式能得到数据库转换器58和各个变换组件62,64,66的支持。图2中侧面示出的框形箭头所涵盖的组件能在一定程度上分別插入应用程序框架12和数据管理系统16之间,从而能够集成到工程系统10(图I)或同类系统中。此处描述的各个重要方面可以简要总结如下应用根据本发明所述的附件能使自动化技术的软件工具动态地扩展出附加应用程序20,22。所有这种应用程序20,22共用一个输出组件24,相应地,其功能只能被软件工具包括一次(与至此为止至少有时在每个包含在软件工具中的具有输出功能的应用程序中执行这种功能相反)。如果软件工具的用户以后需要其它功能,则能得到或购买能够借助其第一软件接ロ 26或其第一和第二软件接ロ 26,60直接访问输出转换器28或输出-和数据库转换器28,58的另ー种应用程序20,22,从而能够顺利地集成到软件工具中。
权利要求
1.一种用于自动化技术的软件工具,具有用于输出转换器(28)的功能,其中多个分别设置用于自身的对象域的应用程序(20,22)同时与所述软件工具组合或者能与所述软件工具组合,其中每个应用程序(20,22)包括至少ー个用于访问所述输出转换器(28)的第一软件接ロ(26),并且其中所述输出转换器(28)包括至少ー个变换组件(30,32,34),用于实现来自所述应用程序(20,22)的对象域的对象(40,42,44 ;46,48,50)向为输出组件(24)而定义的抽象对象模型的对象(36,38,39)的转换。
2.根据权利要求I所述的软件工具,其中,每个应用程序(20,22)包括至少ー个用于访问数据库转换器(58)的第二软件接ロ(60),并且其中所述数据库转换器(58)包括至少ー个变换组件(62,64,66),用于实现来自所述应用程序(20,22)的对象域的对象(40,42,44 ;46,48,50)向为数据平台(52,54,56)而定义的对象模型的对象的转换。
3.根据权利要求I或2中任一项所述的软件工具,其中,所述软件工具同时包括多个应用程序(20,22),所述应用程序中的每个应用程序设置用于恰好一个对象域。
4.ー种用于运行根据前述权利要求中任一项所述的软件工具的方法,其中,在应用包含在所述软件工具中或集成在所述软件工具中的应用程序(20,22)时,通过应用第一软件接ロ(26)并且经所述第一软件接ロ(26)调用输出转换器(28),为所述应用程序及所述应用程序的对象域而设立的对象(40,42,44 ;46,48,50)实现了来自所述应用程序(20,22)的对象域的对象(40,42,44 ;46,48,50)向为输出组件(24)而定义的抽象对象模型的对象(36,38,39)的转换。
5.根据权利要求4所述的方法,其中,在应用包含在所述软件工具中或集成在所述软件工具中的应用程序(20,22)时,通过应用第二软件接ロ ¢0)并且经所述第二软件接ロ(60)调用数据库转换器(58),为所述应用程序及所述应用程序的对象域而设立的对象(40,42,44 ;46,48,50)实现了来自所述应用程序(20,22)的对象域的对象(40,42,44 ;46,48,50)向为数据平台(52,54,56)而定义的对象模型的对象的转换。
6.一种计算机程序,具有能由计算机执行的程序编码指令,当所述计算机程序在计算机上运行时,所述程序编码指令用于实施根据权利要求4或5中任一项所述的方法。
7.一种存储介质,具有根据权利要求6所述的、能由计算机执行的计算机程序。
8.一种自动化设备,具有存储器,在所述存储器中装载了根据权利要求6所述的计算机程序。
全文摘要
本发明涉及一种用于自动化技术的软件工具,该软件工具具有用于输出转换器(28)的功能,其中,多个分别设置用于自身的对象域的应用程序(20,22)同时与这个软件工具组合或者能与这个软件工具组合,其中每个应用程序(20,22)包括至少一个用于访问输出转换器(28)的第一软件接口(26),并且其中输出转换器(28)包括至少一个变换组件(30,32,34),用于实现来自应用程序(20,22)的对象域的对象(40,42,44;46,48,50)向为输出组件(24)而定义的抽象对象模型的对象(36,38,39)的转换。
文档编号G06F9/44GK102779036SQ20121012095
公开日2012年11月14日 申请日期2012年4月23日 优先权日2011年4月21日
发明者鲁道夫·波兰 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1