CN115878142A - 调试工业自动化装置的已更新的应用程序的方法和装置 - Google Patents

调试工业自动化装置的已更新的应用程序的方法和装置 Download PDF

Info

Publication number
CN115878142A
CN115878142A CN202211191313.0A CN202211191313A CN115878142A CN 115878142 A CN115878142 A CN 115878142A CN 202211191313 A CN202211191313 A CN 202211191313A CN 115878142 A CN115878142 A CN 115878142A
Authority
CN
China
Prior art keywords
app
values
pdm
process image
management system
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.)
Pending
Application number
CN202211191313.0A
Other languages
English (en)
Inventor
简·戈茨
于尔根·赖希曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Publication of CN115878142A publication Critical patent/CN115878142A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/048Monitoring; Safety
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4155Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3692Test management for test results analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • Computer Security & Cryptography (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Debugging And Monitoring (AREA)
  • Programmable Controllers (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

本发明涉及调试工业自动化装置的已更新的应用程序的方法和装置。为此,第一控制器上的第一现有应用程序和测试设备上的已更新的应用程序并行运行。在工业自动化系统中获得并存在于第一控制器的过程映像中的传感器数据由本地软件、尤其通过所谓的代理服务(简称:代理(Proxy))被写入单独的测试设备的过程映像中。在此,尚未属于测试设备(TE)的本地过程映像的存储单元在那里创建或分配。因此,生产系统(第一控制器ES)的“外部”数据和值能够在测试设备的本地过程映像中获得,而生产系统无需再改变应用程序的待测试版本。检查更新后的应用程序的输出值;如果成功,已更新的应用程序将被允许以供运行。

Description

调试工业自动化装置的已更新的应用程序的方法和装置
技术领域
本发明涉及一种根据本发明的用于调试工业自动化装置的已更新的应用程序的方法,以及一种根据本发明的用于调试工业自动化装置的已更新的应用程序的装置。
背景技术
当前的控制单元有本地过程映像,控制单元能够对其进行读写访问。控制功能能够使用此过程映像中存在的数据或值。过程映像的数据或值特别是所谓的I/O值,即传感器数据和执行器数据。
外部数据,即不经由数字和模拟输入/输出或不经由控制单元(如Profinet)的典型总线读取/写入的数据,只能经由接口或协议(如OPC-UA)从外部应用程序导入控制单元或是输出,但不是本地过程映像的直接组件。特别地,两个不同控制单元的过程映像不相互可见,并且因此不能相互访问。因此,外部数据必须从应用程序手动输入到本地过程映像中。通常,这还需要停止然后重新启动所涉及的应用程序。
数据能够在不同设备上的应用程序之间交换,例如经由OPC UA协议,或者在制造商Siemens的PLC(PLC=可编程逻辑控制器)的情况下经由S7协议。这是由程序员在工程阶段手动完成的,即它不会自动发生,也不能在运行期间执行。
如果应用程序要从远程控制单元访问数据,该应用程序必须“手动”访问相应的数据通道。本地可用的OPC UA服务器无法自动执行此操作,因为他没有客户端功能。如果存在本地OPC UA客户端,则必须“手动”完成数据链接或匹配算法必须生效。
已知解决方案的共同点是应用程序必须以不同的方式和方法一方面访问本地可用过程映像的数据,另一方面访问外部数据,因此必须始终设置和/或配置应用程序以用于外部访问,这对于现有应用程序(“棕地”应用程序、“旧版”应用程序)及其用于已更新的后续版本尤其重要,通常只能复杂地或根本不可能实现。在自动化技术领域,生产操作和模拟通常是分开的。
所描述的限制使得测试现有应用程序的更新版本变得困难,特别是在具有所谓“实时数据”的新版本要在单独的测试系统上与应用程序的先前版本并行运行的情况下。然而,这样的测试很重要,因为他们允许现有版本和新版本的行为,特别是所谓的“候选发布”或“测试版”,即需要最终测试的完成的版本直接比较。
待测试的版本通常必须使用与生产版本相比已更改的接口访问生产系统的传感器数据或过程映像,以便至少在访问过程映像的接口或具体的API方面应用程序的待测试的新版本与现有版本不同。换句话说:待测试的版本与后来的生产版本不同,这通常不适合测试。到目前为止,通常与生产操作无关地已经提前进行了最终“候选发布”的模拟。
发明内容
因此,本发明的一个目的是简化应用程序对过程图像,特别是外部过程图像的访问,使得统一的接口能够用于应用程序的待测试的版本生产性运行,也能够用于与之并行运行。
实现该目的的一个核心思想在于,通过本地软件,特别是通过所谓的代理服务(简称:代理)单独的测试系统中写入或由其读取在工业自动化系统中获得的并存在于工业控制器的过程映像中的传感器数据。在此,尚未属于测试系统的本地过程映像的存储单元(例如I/O值、变量或寄存器)在那里创建或分配,优选通过本地过程数据管理系统,或在创建后至少在本地过程数据管理系统中注册。因此,生产系统的“外部”数据和值在测试系统的本地过程映像中可用,而无需更改应用程序的生产版本或待测试的版本。本发明的另一个核心思想涉及将待测试的应用程序产生的数据,(主要是所谓的执行器值)传输至生产系统的本地过程映像中,从而待测试应用程序在生产系统之中最终被采用之前,能够尝试逐渐地接管工业装置的控制。
该目的尤其通过根据本发明的方法来实现。在此,提出了一种用于调试工业自动化装置的已更新的应用程序的方法,其中,具有第一应用程序的第一工业控制器包括具有本地使用的过程数据的至少一个本地过程映像,其中,该过程数据由多个值组成,特别是由工业自动化装置的传感器和/或执行器的值组成,其中,提供本地过程数据管理系统用于管理这些值的标识符和存储地址,并且其中,第一应用程序与本地过程数据管理系统交换关于值的标识符和存储地址的信息,并借助于该信息将这些至在至少一个本地过程映像中读取和/或写入。在此,设置有具有已更新的应用的、尤其具有第一应用程序的待测试的新版本的、至少一个另外的过程映像和另外的过程数据管理系统测试单元,其中,已更新的应用程序与测试单元的本地过程数据管理系统交换关于值的标识符和存储器地址的信息,并在至少一个另外的过程映像中读取和/或写入这些值。为此,在控制器和测试单元上分别设置代理服务,其中,代理服务相应地执行与本地过程数据管理系统的通信,和借助于在此交换的信息在相应的本地过程映像中读取和/或写入这些值,其中,已更新的应用程序与第一应用程序并行执行,其中,已更新的应用程序要读取的值由代理服务从第一控制器的至少一个过程映像中读取并能够插入到至少一个另外的过程映像中。在此,监控装置来执行对由已更新的应用程序存储在测试单元的至少一个过程映像中的至少一个输出值的检查,其中,已更新的应用程序仅在成功的检查后才被发布以用于生产运行。通过该方法,待测试的应用程序能够以例如其稍后访问生产系统的过程映像中的本地可用数据的相同的方式访问在测试系统上访问生产系统的数据,而无需为此更改或重新配置应用程序。
该目的还通过根据本发明的装置实现,该装置被设置用于执行该方法。为此,提供了一种用于调试工业自动化装置的已更新的应用程序的装置,其中,具有第一应用程序的第一工业控制器包括具有本地使用的过程数据的至少一个本地过程映像,其中,该过程数据由多个值组成,特别是工业自动化装置的传感器和/或执行器的值,其中,第一控制器包括用于管理值的标识符和存储器地址的本地过程数据管理系统,并且其中,第一应用程序被设置用于与本地过程数据管理系统交换关于这些值的标识符和存储器地址的信息,并被设计用于借助于该信息将这些值在至少一个本地过程映像中读取和/或写入。在此,测试单元设置有已更新的应用程序,特别是提供有第一应用程序的待测试的新版本,以及至少一个另外的过程映像和另外的过程数据管理系统,其中,已更新的应用程序被设置为与测试单元的本地过程数据管理系统交换关于值的标识符和存储器地址的信息,并在至少一个另外的过程映像中读取和/或写入这些值,其中,在控制器和测试单元上分别设置代理服务,其中,代理服务执行与相应的本地过程数据管理系统的通信,并借助于在此交换的信息在相应的本地过程映像中读取和/或写入这些值,其中,已更新的应用程序与第一应用程序并行地执行,其中,设置用于检查由已更新的应用程序存储在测试单元的至少一个过程映像中的至少一个输出值的监控装置,还提出,已更新的应用程序仅在成功的检查后才发布用于生产运行。上面已经根据该方法讨论的优点能够通过该装置来实现。
该方法的有利改进方案在各个实施例中详细说明;他们的特征和优点同样适用于根据本发明的装置。有利的设计方案也能够以一种显而易见的方式相互组合。
在第一变体方案中,能够检查由已更新的应用程序产生的输出值的可信性,特别是关于是否符合预设的标准或限制值。在特别有利的变体方案中,由第一应用程序作为输出值写入到第一控制器的过程映像中的至少一个值由代理服务从第一控制器的至少一个过程映像中读取并且传输至监控装置,之后通过监控装置将第一应用程序的输出值与更新后的应用程序的对应输出值进行比较。为此,从第一控制器的过程映像中读取的值有利地插入到至少一个另外的过程映像中,之后,监控装置访问存储在另外的过程映像中的值以进行比较。在一个实例中,如果在比较中确定的差值在百分比或绝对值方面并且可选地在预设的时间之后低于预定义阈值,则已更新的应用程序作为生产运行中采用的候选者被传输至第一生产控制器,并在那里代替应用程序的原始版本被使用。为此,在允许用于生产运行的情况下,监控装置在第一控制器上启动已更新的应用程序的安装和启动,以及促使从第一应用程序的至少一个输出值到新安装和调试的已更新的应用程序的相应的输出值的转换,以运行工业的自动化装置。代替或附加于监控关于百分比或绝对偏差的差值,还能够使用更复杂的算法或规则集。
已更新的应用程序对例如位第一应用程序或生产系统的传感器数据的值的访问能够自动地配置,这由此实现,即在已更新的应用程序向测试单元的本地过程数据管理系统请求本地不可用值的情况下,在第一步骤中,过程数据管理系统将该请求转发至本地代理服务,在第二步骤中,本地代理服务将请求转发至第一控制器的代理服务,在第三步骤中,该代理服务从第一控制器的本地过程映像中读取值,并将其转发至请求的测试单元的代理服务,在第四步骤中,请求的测试单元的代理服务将该值插入至少一个本地过程映像中,并且在本地过程数据管理系统中注册配属的地址信息,在第五步骤中,本地过程数据管理系统利用地址信息响应已更新的应用程序的请求,并且在第六步骤中,已更新的应用程序借助于地址信息访问值。
编程接口或应用程序用来访问过程映像的接口有利地被标准化,其中,应用程序和代理装置的这些接口在功能上没有区别。因此,代理装置将这个接口封装在单独的应用程序中是有利的,从而能够为不同平台创建的代理装置的不同版本使用为相同平台创建的应用程序的相同接口。为此,通过本地代理服务分别实例化本地代理应用程序,其中,代理应用程序访问相应的本地过程映像。类似地,如果每个应用程序借助于统一的应用程序接口与控制器的相应的本地过程数据管理系统通信,并且如果代理服务借助于功能相同或相同的应用程序接口与同一控制器的过程数据管理系统通信,则是有利的。
代理服务有利地借助于互联网协议传输请求和值。特别地,代理服务有利地借助于OPC UA协议相互通信,从而能够自动配置第一控制器与测试系统之间的数据交换。
附图说明
下面根据附图解释根据本发明的方法的实施例。这同样用于解释根据本发明的装置。
在此示出:
图1是解释问题的初始状态,
图2是从生产单元的过程数据管理系统到测试单元的值的提供,
图3是用于测试单元的应用程序的值的提供,以及
图4是与生产单元的应用程序并行运行的测试单元的已更新的应用程序的测试。
具体实施方式
图1示出了用于以下说明的初始状态。在图的右侧示出第一工业控制器ES,其在下文中也称为生产系统或生产单元。生产单元ES包括过程数据管理系统PDM_ES,其协调和管理在生产单元ES上运行的应用程序app1、app2,特别是他们的数据流和过程映像。过程数据管理系统PDM_ES不干预实际的数据流。因此,应用程序app1、app2直接访问过程映像app1Shm、app2Shm。在此,实现访问所谓的共享内存(“Shm”),即产生数据的应用程序将他们写入分配给相应的应用程序的共享内存,应用程序代表过程映像。共享内存能够在相应平台上的系统范围内读写。想要使用(消耗)此数据的应用程序通过过程数据管理系统接收关于此数据所在的共享内存的信息。应用程序app2读取app1在过程映像(共享内存)app1Shm中写入的值light1;应用程序app2需要此值来计算输出变量light2。过程数据管理系统传达了在哪里能够找到light1的知识。双箭头分别象征着应用程序与过程数据管理系统之间所需要的信息交换。反之,应用app2提供数据light2(“写入”通过前缀“p:”-“提供(provided)”表示);在这个简单的示例中,此数据light2是连接的工业过程的控制信息。例如,根据“变量”light2的值有多高,连接的灯能够具有介于0%与100%之间的亮度。
app2n(“app2 neu”)位于生产单元ES之外,其在单独的测试系统TE上运行,并且其旨在在成功测试后替换生产单元中使用的app2。对于在尽可能并行运行应用程序app2、app2n的情况下测试,更新后的应用程序app2n需要访问第一控制器ES(具体是应用程序app1)的数据light1。读取访问由标识符“c:”(“消耗(consumed)”)表示。
图2示出了用户如何在测试单元TE上启动app2n。应用程序app2n直接在测试单元TE的本地过程数据管理系统PDM_TE中注册,进而触发生产单元ES的过程数据管理系统PDM_ES。这将在后面根据图3更详细地解释。
为此,生产单元ES的过程数据管理系统PDM_ES在生产单元ES上启动所谓的代理服务prxy_app_es(也称为代理单元)。在此,代理服务prxy_app_es以这样的方式启动为:其读取在生产单元ES中产生的数据light1和light2,并经由IP通信接口(单元TE与ES之间的箭头)使其“对外”可用。为此,测试单元TE的过程数据管理系统PDM_TE将关于“期望数据”light1和light2的信息传输至生产单元ES的过程数据管理系统PDM_ES;该通信经由代理装置prxy_app_te、prxy_app_es进行(参见图3);此外,服务器或“分配器”(未显示)也能够集成到单元之间的通信中。监控装置DEB,即排错和工程系统或简称“排错器”(“DEB”)也安装在测试单元TE上,并执行测试的控制和评估。排错和工程系统通常也称为“IDE”(集成开发环境)。
图3示出了测试单元TE的过程数据管理系统PDM_TE如何在其侧启动代理服务prxy_app_te(测试单元的本地代理应用程序)。代理服务prxy_app_te经由IP通信接口读取由代理服务prxy_app_es提供的数据light1和light2,并将他们写入本地过程映像prxy_TE_Shm(代理服务的共享内存);替代地或附加地,数据light1也能够被写入或复制到应用程序app2n的过程映像app2nShm。数据light1和light2借助于在过程数据管理系统PDM_TE中注册“变量名”和存储器地址来注册,因此能够提供应用程序app2n和调试器或监控装置DEB。但是,来自该内存prxy_TE_Shm的数据light2仅被监控装置或排错器DEB消耗或读取,稍后,需要将数据light2的这个版本与来自应用程序app2n的内存app2nShm的版本进行比较。
数据light1和light2以及他们在过程映像prxy_TE_Shm中的存储位置因此被注册在测试单元TE的过程数据管理系统PDM_TE中,从而,将现在在测试单元TE上本地存在的light1的信息转发至消耗的应用程序app2n。
图4示出了应用程序app2n现在如何从代理装置prxy_app_te的过程映像prxy_TE_Shm读取数据light1,即应用程序app2n借助于中间接入的代理应用程序prxy_app_es的从生产单元ES接收来自应用程序app1的数据light1和prxy_app_te,并因此能够利用“原始数据”进行测试,即尤其能够比较由应用程序app2和app2n分别生成的数据light2,由三角形表示。代替于比较,由应用程序app2n生成的数据light2还能够相对于固定的边界值等被检查。也能够经由代理服务或代理应用程序prxy_app_es和prxy_app_te将已更新的应用程序app2n生成的数据light2发送回生产单元ES,并在那里写入过程映像app2Shm,以便在进一步的步骤中,仍然位于测试单元上的应用程序app2n接管原始应用程序app2的任务(为清楚起见,图中未显示此过程)。在多个生成的输出值的情况下,这能够逐步实现,其中,排错器DEB的用户能够为每个输出值单独设置是否并且何时并且在什么情况下将“原始的”或者由已更新的应用程序产生的值用于生产运行。
在此过程中,用户能够借助于用户界面完全控制哪些通过应用程序app2n产生的数据(例如执行器的值)需要在生产运行中采用,这能够通过使用代理服务prxy_app_es和prxy_app_te的数据结构来实现。用户能够随时使用测试或排错装置DEB监控整个过程;特别地,还能够出于安全原因等原因防止将不适合的值用于生产。
在最后一步(未示出)中,在成功检查之后,已更新的应用程序app2n被传输至生产单元ES,然后,应用程序app2在那里无缝地切换到新的应用程序app2n。现在能够停止原始应用程序app2并将其从生产单元ES中删除,因为应用程序app2n已经完全接管了任务。
因此,这能够实现应用程序/应用从模拟/测试逐渐转移到持续运行。在测试应用程序时,用户已经能够选择将数据接收到生产系统中,从而无问题地将已更新的应用逐渐地投入运行,其中,能够随时切换回到由原始应用程序创建的控制值。

Claims (11)

1.一种调试工业自动化装置的已更新的应用程序(app2n)的方法,
其中,具有第一应用程序(app2)的第一工业控制器(ES)包括具有本地使用的过程数据的至少一个本地过程映像(app1Shm、app2Shm),
其中,所述过程数据由多个值、特别是由所述工业自动化装置的传感器和/或执行器的值组成,
其中,设置本地过程数据管理系统(PDM_ES)以用于管理值的标识符和存储器地址,
其中,所述第一应用程序(app2)与所述本地过程数据管理系统(PDM_ES)交换关于值的标识符和存储器地址的信息并借助于所述信息在至少一个所述本地过程映像(app1Shm,app2Shm)中读取和/或写入值,
其特征在于,
测试单元(TE)配备有已更新的应用程序(app2n)、特别是所述第一应用程序(app2)的待测试的新版本,以及配备有至少一个另外的过程映像(app2nShm)和另外的过程数据管理系统(PDM_TE),其中,所述已更新的应用程序(app2n)与所述测试单元(TE)的本地过程数据管理系统(PDM_TE)交换关于值的标识符和存储器地址的信息并在至少一个另外的过程映像(app2nShm)中读取和/或写入值,
在第一控制器(ES)上和所述测试单元上分别设置代理服务,其中,所述代理服务分别执行与相应的本地过程数据管理系统(PDM_ES,PDM_TE)的通信并且借助于在此交换的信息在相应的本地过程映像(app1Shm、app2Shm、app2nShm)中读取和/或写入值,
所述已更新的应用程序(app2n)与所述第一应用程序(app2)并行执行,其中,所述已更新的应用程序(app2n)待读取的值由所述代理服务从所述第一控制器的至少一个过程映像(app1Shm,app2Shm)中被读取并且被插入到至少一个另外的过程映像(app2nShm)中,
其中,借助于监控装置(DEB)来执行对由所述已更新的应用程序(app2n)存储到所述测试单元(TE)的至少一个过程映像(app2nShm)中的至少一个输出值的检查,并且
其中,所述已更新的应用程序(app2n)在成功的检查后才被允许用于生产运行。
2.根据权利要求1所述的方法,其特征在于,
由所述第一应用程序(app2)作为输出值写入到所述第一控制器的过程映像(app2Shm)中的至少一个值由所述代理服务从所述第一控制器(ES)的至少一个过程映像(app1Shm,app2Shm)中读取并传输至所述监控装置,并且
为了检查,通过所述监控装置执行所述第一应用程序(app2)的输出值与所述已更新的应用程序(app2n)的输出值之间的比较。
3.根据权利要求2所述的方法,其特征在于,将从所述第一控制器(ES)的所述过程映像(app1Shm,app2Shm)读取的值插入到至少一个另外的过程映像(app2nShm,prxy_TE_Shm)中,并且所述监控装置(DEB)为了比较而访问在所述另外的过程映像中的存储的该值。
4.根据权利要求2或3所述的方法,其特征在于,在比较中确定了差值在百分比或绝对值方面低于预限定的阈值的情况下,所述已更新的应用程序(app2n)被设置作为采用到生产运行中的候选。
5.根据前述权利要求中任一项所述的方法,其特征在于,在允许用于生产运行的情况下,通过所述监控装置(DEB)开始在所述第一控制器(ES)上安装和启动所述已更新的应用程序(app2n),以及将所述第一应用程序(app2)的至少一个输出值转换到新安装和调试的事实已更新的应用程序(app2n)的相应输出值,以促使所述工业自动化装置的运行。
6.根据前述权利要求中任一项所述的方法,其特征在于,
在所述已更新的应用程序(app2n)向所述测试单元(TE)的本地过程数据管理系统(PDM_TE)请求本地不可用值的地址信息的情况下,
在第一步骤中,该过程数据管理系统(PDM_TE)将所述请求转发至所述本地代理服务,
在第二步骤中,所述本地代理服务将询问转发至所述第一控制器(ES)的代理服务,
在第三步骤中,该代理服务从所述第一控制器(ES)的本地过程映像(app1Shm,app2Shm)中读取值并将值转发至被请求的所述测试单元(TE)的代理服务,
在第四步骤中,被请求的所述测试单元的代理服务将值插入到至少一个本地过程映像(prxy_TE_Shm)中,并在所述本地过程数据管理系统(PDM_TE)中注册配属的地址信息,
在第五步骤中,所述本地过程数据管理系统(PDM_TE)利用所述地址信息回答所述已更新的应用程序(app2n)的请求,以及
在第六步骤中,所述已更新的应用程序(app2n)借助于所述地址信息访问值。
7.根前述权利要求中任一项所述的方法,其特征在于,通过至少一个代理服务实例化本地的代理应用程序,其中,用于所述代理服务的所述代理应用程序执行对本地过程映像的访问。
8.根据前述权利要求中任一项所述的方法,其特征在于,
每个应用程序(app1、app2、app2n)借助于统一的应用程序接口与控制器(ES)的或所述测试单元(TE)的相应本地过程数据管理系统(PDM_ES、PDM_TE)通信,以及
所述代理服务(prxy_app_te,prxy_app_es)借助于功能相同的或一致的应用程序接口与同一个控制器(ES)或测试单元(TE)的过程数据管理系统(PDM_ES,PDM_TE)通信。
9.根据前述权利要求中任一项所述的方法,其特征在于,所述代理服务借助于互联网协议传输请求和值。
10.根据权利要求9所述的方法,其特征在于,所述代理服务借助于OPCUA协议相互通信。
11.一种调试工业自动化装置的已更新的应用程序(app2n)的装置,
其中,具有第一应用程序(app2)的第一工业控制器(ES)包括具有本地使用的过程数据的至少一个本地过程映像(app1Shm、app2Shm),
其中,所述过程数据由多个值、特别是由所述工业自动化装置的传感器和/或执行器的值组成,
其中,第一控制器(ES)包括用于管理值的标识符和存储器地址的本地过程数据管理系统(PDM_ES),
其中,所述第一应用程序(app2)被设置用于与所述本地过程数据管理系统(PDM_ES)交换关于值的标识符和存储器地址的信息并被设计用于借助于所述信息在至少一个所述本地过程映像(app1Shm,app2Shm)中读取和/或写入值,
其特征在于,
测试单元(TE)配备有已更新的应用程序(app2n)、特别是所述第一应用程序(app2)的待测试的新版本,以及配备有至少一个另外的过程映像(app2nShm)和另外的过程数据管理系统(PDM_TE),其中,所述已更新的应用程序(app2n)被设置用于与所述测试单元的本地过程数据管理系统(PDM_TE)交换关于值的标识符和存储器地址的信息并在至少一个另外的过程映像(app2nShm)中读取和/或写入值,
在控制器和所述测试单元上分别设置代理服务,其中,所述代理服务分别设置用于执行与相应的本地过程数据管理系统(PDM_ES,PDM_TE)的通信并且借助于在此交换的信息在相应的本地过程映像(app1Shm、app2Shm、prxy_ES_Shm、prxy_TE_Shm)中读取和/或写入值,
所述已更新的应用程序(app2n)与所述第一应用程序(app2)设置为并行实施,其中,所述已更新的应用程序(app2n)待读取的值至少部分地由所述代理服务从所述第一控制器(ES)的至少一个过程映像(app1Shm,app2Shm)中读取并插入到至少一个另外的过程映像(prxy_TE_Shm,app2nShm)中,
其中,设置用于检查由所述已更新的应用程序(app2n)存储到所述测试单元(TE)的至少一个过程映像(prxy_TE_Shm,app2nShm)中的至少一个输出值的监控装置,其中,还设置有,所述已更新的应用程序(app2n)在成功的检查后才被允许用于生产运行。
CN202211191313.0A 2021-09-29 2022-09-28 调试工业自动化装置的已更新的应用程序的方法和装置 Pending CN115878142A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP21199868.7A EP4160390B1 (de) 2021-09-29 2021-09-29 Verfahren und anordnung zur inbetriebnahme einer aktualisierten anwendung für eine industrielle automatisierungsanordnung
EP21199868.7 2021-09-29

Publications (1)

Publication Number Publication Date
CN115878142A true CN115878142A (zh) 2023-03-31

Family

ID=78293867

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211191313.0A Pending CN115878142A (zh) 2021-09-29 2022-09-28 调试工业自动化装置的已更新的应用程序的方法和装置

Country Status (5)

Country Link
US (1) US20230101026A1 (zh)
EP (1) EP4160390B1 (zh)
JP (1) JP2023055628A (zh)
KR (1) KR20230046256A (zh)
CN (1) CN115878142A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220405188A1 (en) * 2021-06-21 2022-12-22 Red Hat, Inc. Monitoring activity of an application prior to deployment

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2711797A1 (en) * 2012-09-21 2014-03-26 ABB Research Ltd. Operating a programmable logic controller
CN109313571B (zh) * 2016-06-10 2022-09-09 施耐德电器工业公司 用于在工业系统中提供代理服务的方法和系统

Also Published As

Publication number Publication date
EP4160390C0 (de) 2024-03-27
US20230101026A1 (en) 2023-03-30
EP4160390B1 (de) 2024-03-27
EP4160390A1 (de) 2023-04-05
JP2023055628A (ja) 2023-04-18
KR20230046256A (ko) 2023-04-05

Similar Documents

Publication Publication Date Title
JP4827964B2 (ja) 安全通信構成部品の取付け場所を検証するための方法ならびに制御およびデータ伝送システム
US7275236B1 (en) Method for programming a multiple device control system using object sharing
US7865907B2 (en) Method and apparatus for providing automatic software updates
US20080313629A1 (en) Method for installation of objects for a component-based management system for field devices of automation technology
US20080189526A1 (en) Dynamic modifier function blocks for use in a process control system
CN101192165A (zh) 主从式多处理器系统以及软件版本加载方法
JP2002268707A (ja) コントローラ及びツール並びにそれらにより構成されるシステム
EP1586967A2 (en) A method and control system for controlling machinery
JP6257506B2 (ja) 電子制御装置のメモリ内のソフトウェアを変更する方法
US11544206B2 (en) Process control unit and method for interprocess exchange of process variables
CN115878142A (zh) 调试工业自动化装置的已更新的应用程序的方法和装置
US11500690B2 (en) Dynamic load balancing in network centric process control systems
US7249172B2 (en) System for remotely loading and remotely maintaining an electronic card
JP2013069005A (ja) 自動車用電子制御装置
EP3588215B1 (en) Control system
JP2010033435A (ja) 制御装置、制御方法及びコンピュータプログラム
CN115113591A (zh) 使用控制软件的虚拟化实例控制工业过程
Hadlich et al. Common communication model for distributed automation systems
CN110389871B (zh) 一种具备系统完整性确认功能的安全计算机平台
JP6954191B2 (ja) 制御システム、開発支援装置、および開発支援プログラム
JP2010231809A (ja) 制御装置及びコンピュータプログラム
CN113760347B (zh) 数据处理
JP2016099899A (ja) コントロールシステム、その支援装置、プログラマブルコントロール装置
US11880676B1 (en) Containerized modeling of device updates or modifications via digital twins
US20220343699A1 (en) Method and device for processing data associated with an electronic unit for a vehicle

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination