CN101529353A - 用于对自动化系统进行在线程序修改的方法 - Google Patents

用于对自动化系统进行在线程序修改的方法 Download PDF

Info

Publication number
CN101529353A
CN101529353A CNA2007800391291A CN200780039129A CN101529353A CN 101529353 A CN101529353 A CN 101529353A CN A2007800391291 A CNA2007800391291 A CN A2007800391291A CN 200780039129 A CN200780039129 A CN 200780039129A CN 101529353 A CN101529353 A CN 101529353A
Authority
CN
China
Prior art keywords
program
cpu
application program
automated system
overload
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.)
Granted
Application number
CNA2007800391291A
Other languages
English (en)
Other versions
CN101529353B (zh
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 CN101529353A publication Critical patent/CN101529353A/zh
Application granted granted Critical
Publication of CN101529353B publication Critical patent/CN101529353B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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] or computer integrated manufacturing [CIM]
    • G05B19/41845Total 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] or computer integrated manufacturing [CIM] characterised by system universality, reconfigurability, modularity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23327Modification of program in real time
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Information Transfer Between Computers (AREA)
  • Programmable Controllers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种用于对自动化系统进行在线程序修改的方法,其中,如下进行在线程序修改:将用以提供新的应用程序的新的程序部分加载到自动化系统的CPU中,在该CPU中加载了当前正在运行着的应用程序,并且其中,为了避免CPU的过载,只有在监测新的应用程序的所有程序循环的第一执行之后没有识别到CPU的过载,才最终切换到新的应用程序。

Description

用于对自动化系统进行在线程序修改的方法
技术领域
本发明涉及一种用于对自动化系统进行在线程序修改的方法。
背景技术
例如用于发电站的过程技术的设备通常由多个控制和调节系统的联合而被自动化。这些系统对应单个的设备范围。尽管有在单个自动化范围中的该结构化,还是远不能防止互相的影响。因此一个自动化系统的故障会导致整个设备的故障。
除了由于硬件错误造成的故障(这些故障例如通过相应的冗余可以最大程度地避免)之外,通过在线程序修改同样会导致自动化系统的过载。
在线程序修改特别是在开始运行或设备扩展期间在连续运行中是必要的。在此,在同时最佳使用CPU资源的情况下要将自动化系统的CPU过载的风险降低到最小。
自动化系统通常基于循环地工作。也就是说,在不同速度的循环上分布地执行用户程序。此时如果单个程序部分的运行时间超过各自的循环时间,则产生CPU过载。该影响导致从不精确的调节特性或实时特性直至整个自动化系统的停止。
迄今为止通常在加载之前或者期间仅检验CPU的静态接收能力。这意味着,将新的程序部分的存储要求与CPU中的还可用的存储器比较。但是,为了检验动态的接收能力,还需要其它的措施。此外,还可以离线地计算CPU满载。为此将应用程序的所有单个功能在考虑其流程循环的条件下累加。此外还要计算诸如系统负荷和通信负荷的参数。在此可能产生大的不精确性,因此必须规划更高的储备,和由此较小的CPU使用。此外,手工计算非常费时并且容易出错。为了避免这点,必须附加地开发和维护计算方案。例如,需要由新的或者改变的应用功能(Anwender-Funktion)来确定典型的运行时间并且将该运行时间更新(einpflegen)到计算工具中。
自动化系统的系统负荷和通信负荷也不能被足够精确地计算,因为该参数取决于许多并且对用户来说通常不可见的参数。典型的影响参数除了别的之外还有:
-过程输入和输出图像的更新,
-循环的警报处理,
-通信功能,和
-操作系统处理。
如果所有这些预防性的检验(如果存在的话)被肯定地进行,则新的程序部分被加载到运行着的CPU并且被执行。在此,总是不能排除由于加载太多的应用程序而导致CPU过载。于是,这会导致循环时间溢出,该溢出虽然被报警,但是对用户来说通常没有剩下用来撤销最后改变的时间。在许多情况下重复的循环时间超出导致整个自动化系统的停止状态。
发明内容
本发明要解决的技术问题是,提出一种对自动化系统进行在线程序修改的方法,利用该方法可以避免由于CPU过载而引起的有瑕疵的调节特性或者实时特性,该有瑕疵的特性在最坏的情况下导致整个自动化系统的停止。
按照本发明,上述技术问题是通过本文开头提到的用于对自动化系统进行在线程序修改的方法来解决的,其中,如下进行在线程序修改:将用以提供新的应用程序的新的程序部分加载到自动化系统的CPU中,在该CPU中加载了当前正在运行着的应用程序,并且其中,为了避免CPU的过载,只有在监测新的应用程序的所有程序循环的第一执行之后没有识别到CPU的过载,才最终切换到新的应用程序。
借助按照本发明的方法可以按照如下方式实现在线程序修改,使得首先根本不产生可能的过载情况。借助按照本发明设置的对新的应用程序的所有程序循环的第一执行的监测,可以直接地在首先暂时切换到新的应用程序之后及时地识别CPU的可能过载并且切换回初始的程序版本,从而不需要用户的响应。在此,优选地由自动化设备的操作系统进行监测,其中,监测时间间隔优选地由最慢的循环或者具有最小优先级的循环来确定。
总之,借助按照本发明的方法可以显著提高在在线程序修改情况下的稳定性。此外,可以最佳地利用CPU资源。
在按照本发明的方法的一种实用的实施方式中,该方法特别是在如下系统中具有优势:在该系统中自动化系统与工程系统通信,该工程系统通常经过图形接口允许对自动化系统的待控制/调节的过程的应用过程引导,在识别到CPU过载情况下向工程系统发送否定的应答(Quittung),以便发信号通知切换回初始的应用程序。也就是说,按照本发明自动化系统在识别到CPU过载的情况下切换回初始的应用程序,并且利用否定的应答将这点发信号通知工程系统。按照本发明以这种方式可以协调地切换回前面的程序版本。由此,整个在线改变过程被认为是不成功的并且优选地以合适的反应通知用户。按照本发明在此优选地确保,监测功能本身在过载情况下正常工作,这例如可以通过如下来实现,为监测功能分配一个足够高的优先级。
在没有识别到CPU过载的情况下,由自动化系统向自动化系统与之通信的工程系统发送一个肯定的应答,以便发信号通知最终切换到新的应用程序并且由此成功地结束在线修改过程。
附图说明
下面,对照示意性的附图对按照本发明的方法作进一步说明,附图中:
图1是一种自动化系统的工作原理的示意图,以及
图2是按照框图形式的按照本发明的方法的示意图。
具体实施方式
图1示意性示出了以循环工作的控制或者调节系统的形式的自动化系统的工作原理。该系统基于在固定的时间间隙之内具有以下片段的基本循环:
-更新输出端/读取输入端,
-循环1中的应用程序,
-循环2中的应用程序部分,
-循环3中的应用程序部分,
-...,
-循环n中的应用程序部分,
-空循环,以及
-操作系统部分。
每次完整地执行循环1中的应用程序。在更高循环中的应用程序被划分为多个尽可能相同大小的部分,每个基本循环分别处理其中之一。循环2中的应用程序由两部分组成,循环3中的由四部分组成,等等。如果一个基本循环的所有组件的运行时间之和大于其设置的循环时间,则此时会发生过载情况。
在执行所有固定循环中的应用程序之后还可用的剩余时间的一部分,被用于用较低的优先级处理的空循环。对该循环也进行时间监测并且在在线改变情况下必要时必须被包括在过载监测中。剩余时间的另一部分包括用于与操作系统通信的操作系统部分。
以下借助在图2中示出的框图解释按照本发明的方法。
如果通过与自动化系统通信的工程系统,在在线改变的范围内将新的程序部分加载到自动化系统的CPU中(参看图2中的步骤S1),则首先暂时切换到通过加载新的程序部分而提供的新的应用程序(参看图2中的步骤S2)。在此,按照本发明这样构造自动化系统,在当前还在运行的应用程序之外加载新的程序部分并且准备该程序部分的执行,但是还不执行。暂时的切换用于对新的应用程序的所有程序循环的第一执行进行监测(参看图2中的步骤S3)。在此,激活新的应用程序,其中优选附加地分别监测第一循环。此外,优选地由最慢的循环或者具有最小优先级的循环来确定监测时间间隔。如果在监测时间间隔之内自动化系统的操作系统没有识别到时间溢出,则向工程系统发送一个肯定的应答,以便发信号通知该工程系统已经进行的最终切换到新的应用程序。而在识别到过载情况下,自动化系统首先切换回初始的应用程序,并且接着向工程系统传输一个否定的应答,以便发信号通知该工程系统切换回初始的应用程序(参看图2中的步骤S4)。
按照本发明的方法可以在程序技术上优选地按照编程语言STIP7来实现并且可以被集成到SPPA-T3000 V2.0型的控制系统中,其中可以应用SIMATIC S7型的平台作为自动化平台。

Claims (3)

1.一种用于对自动化系统进行在线程序修改的方法,其中如下进行在线程序修改,将用以提供新的应用程序的新的程序部分加载到自动化系统的CPU中,在该CPU中加载了当前正在运行着的应用程序,并且其中,为了避免CPU的过载,只有在监测新的应用程序的所有程序循环的第一执行之后没有识别到CPU的过载,才最终切换到新的应用程序。
2.根据权利要求1所述的方法,其特征在于,在识别到CPU过载情况下,由所述自动化系统向该自动化系统与之通信的工程系统发送否定的应答,以便发信号通知切换回初始的应用程序。
3.根据权利要求1所述的方法,其特征在于,在没有识别到CPU过载的情况下,由所述自动化系统向该自动化系统与之通信的工程系统发送肯定的应答,以便发信号通知最终切换到新的应用程序。
CN2007800391291A 2006-10-26 2007-10-09 用于对自动化系统进行在线程序修改的方法 Active CN101529353B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP06022427.6 2006-10-26
EP06022427A EP1916583A1 (de) 2006-10-26 2006-10-26 Verfahren zur Durchführung von Online-Programmänderungen an einem Automatisierungssystem
PCT/EP2007/060712 WO2008049727A1 (de) 2006-10-26 2007-10-09 Verfahren zur durchführung von online-programmänderungen an einem automatisierungssystem

Publications (2)

Publication Number Publication Date
CN101529353A true CN101529353A (zh) 2009-09-09
CN101529353B CN101529353B (zh) 2012-06-13

Family

ID=37896019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800391291A Active CN101529353B (zh) 2006-10-26 2007-10-09 用于对自动化系统进行在线程序修改的方法

Country Status (12)

Country Link
US (1) US8495582B2 (zh)
EP (2) EP1916583A1 (zh)
JP (1) JP2010507848A (zh)
CN (1) CN101529353B (zh)
AT (1) ATE489665T1 (zh)
AU (1) AU2007308270B2 (zh)
DE (1) DE502007005793D1 (zh)
ES (1) ES2355407T3 (zh)
MX (1) MX2009004422A (zh)
RU (1) RU2432604C2 (zh)
WO (1) WO2008049727A1 (zh)
ZA (1) ZA200902083B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111344641A (zh) * 2017-11-08 2020-06-26 大陆-特韦斯股份有限公司 用于一机动车辆的控制装置和用于运行该控制装置的方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5964077B2 (ja) 2012-02-27 2016-08-03 三菱重工業株式会社 制御プログラム管理システム、及び制御プログラムの変更方法
CN105701003A (zh) * 2014-11-26 2016-06-22 鸿富锦精密工业(武汉)有限公司 运行程序自动监控系统及方法
CN108082214B (zh) * 2016-11-22 2020-08-04 上海宝信软件股份有限公司 基于轨道交通scada的一键运行应急响应系统
EP3660602B1 (en) * 2018-11-30 2023-06-07 CODESYS Holding GmbH Testing code for an industrial control program in an ancillary environment

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU387367A1 (ru) 1971-02-23 1973-06-21 Ленинградский ордена Ленина политехнический институт М. И. Калинина УСТРОЙСТВО дл ПЕРЕКЛЮЧЕНИЯ ПРОГРАММ
US5440741A (en) * 1993-09-20 1995-08-08 Motorola, Inc. Software overload control method
US5485620A (en) * 1994-02-25 1996-01-16 Automation System And Products, Inc. Integrated control system for industrial automation applications
US5802308A (en) * 1995-04-20 1998-09-01 Fujitsu Limited Load control system for centralized management/control type network
KR960043938A (ko) * 1995-05-27 1996-12-23 김광호 멀티프로세서 제어시스템의 단위 프로그램에 대한 메세지 과부하 제어방법
BE1009813A3 (nl) * 1995-09-29 1997-08-05 Philips Electronics Nv Programmeerbare logische controller.
US5970243A (en) * 1996-08-27 1999-10-19 Steeplechase Software, Inc. Online programming changes for industrial logic controllers
US6141683A (en) * 1998-01-30 2000-10-31 Lucent Technologies, Inc. Method for remotely and reliably updating of the software on a computer with provision for roll back
JP3280332B2 (ja) * 1998-07-10 2002-05-13 インターナショナル・ビジネス・マシーンズ・コーポレーション ループに対するバージョニングを実行する方法及び装置、配列レンジ・チェックに関する情報をベーシック・ブロック内において収集する方法及び装置、配列レンジ・チェックに関する情報を変更する方法、配列レンジ・チェック最適化方法、配列レンジ・チェックのためのコードを生成する方法、不要配列レンジ・チェック除去方法及び装置、配列レンジ・チェックを選択する方法、配列レンジ・チェック変更方法、配列レンジ・チェック収集方法、及び配列レンジ・チェック取扱判断方法
JP2000132207A (ja) * 1998-10-27 2000-05-12 Hitachi Ltd サイクルタイム設定方式
US7454457B1 (en) * 2000-02-07 2008-11-18 Parallel Networks, Llc Method and apparatus for dynamic data flow control using prioritization of data requests
JP2001242913A (ja) * 2000-02-28 2001-09-07 Hitachi Ltd 制御プログラムの自動編集処理方式
EP1300874B1 (en) * 2000-07-07 2012-09-19 Tokyo Electron Limited Method for maintaining a processor
JP2002041328A (ja) * 2000-07-24 2002-02-08 Tokyo Electron Ltd 処理装置を駆動するソフトウェアの自己診断方法
JP3907394B2 (ja) * 2000-09-20 2007-04-18 株式会社日立製作所 制御ユニットのキャリブレーションシステム
JP3688224B2 (ja) * 2001-07-23 2005-08-24 株式会社日立製作所 自動車用制御ユニット
US20060190106A1 (en) * 2001-07-30 2006-08-24 Rockwell Automation Technologies, Inc. Method for consistent storage of data in an industrial controller
US7065415B2 (en) * 2001-07-30 2006-06-20 Rockwell Automation Technologies, Inc. Method for consistent storage of data in an industrial controller
JP2003122574A (ja) 2001-10-10 2003-04-25 Matsushita Electric Ind Co Ltd 通信システム、ソフトウェア更新方法及びソフトウェア更新プログラム
US20080027769A1 (en) * 2002-09-09 2008-01-31 Jeff Scott Eder Knowledge based performance management system
US7278043B2 (en) * 2002-03-06 2007-10-02 Qualcomm Incorporated System, method, and apparatus for overload detection in real-time data processing applications
ES2379780T3 (es) * 2002-12-31 2012-05-03 Diebold, Incorporated Disposición de casete de efectivo para cajero automático
US7269824B2 (en) * 2003-02-13 2007-09-11 Path Reliability, Inc. Software behavior pattern recognition and analysis
DE10335989B4 (de) * 2003-08-01 2019-07-11 Kw-Software Gmbh Online-Änderungen von CIL-Code-Programmen für die Industrieautomatisierung
JP3826940B2 (ja) 2004-06-02 2006-09-27 日本電気株式会社 障害復旧装置および障害復旧方法、マネージャ装置並びにプログラム
US8387052B2 (en) * 2005-03-14 2013-02-26 Qnx Software Systems Limited Adaptive partitioning for operating system
US7953513B2 (en) * 2005-03-15 2011-05-31 Siemens Industry, Inc. Systems, devices, and methods for automation control
JP2006268172A (ja) * 2005-03-22 2006-10-05 Nec Corp サーバシステムおよびオンラインソフトウェア更新方法
US8082545B2 (en) * 2005-09-09 2011-12-20 Oracle America, Inc. Task dispatch monitoring for dynamic adaptation to system conditions

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111344641A (zh) * 2017-11-08 2020-06-26 大陆-特韦斯股份有限公司 用于一机动车辆的控制装置和用于运行该控制装置的方法
CN111344641B (zh) * 2017-11-08 2023-05-05 大陆-特韦斯股份有限公司 用于一机动车辆的控制装置和用于运行该控制装置的方法

Also Published As

Publication number Publication date
ZA200902083B (en) 2010-07-28
JP2010507848A (ja) 2010-03-11
US8495582B2 (en) 2013-07-23
MX2009004422A (es) 2009-05-11
EP2082299A1 (de) 2009-07-29
DE502007005793D1 (de) 2011-01-05
AU2007308270B2 (en) 2011-08-25
ES2355407T3 (es) 2011-03-25
US20100063605A1 (en) 2010-03-11
ATE489665T1 (de) 2010-12-15
RU2432604C2 (ru) 2011-10-27
RU2009119715A (ru) 2010-12-10
AU2007308270A1 (en) 2008-05-02
CN101529353B (zh) 2012-06-13
WO2008049727A1 (de) 2008-05-02
EP1916583A1 (de) 2008-04-30
EP2082299B1 (de) 2010-11-24

Similar Documents

Publication Publication Date Title
RU2487388C2 (ru) Исполнительный механизм для систем hvac и способ его функционирования
US8108056B2 (en) Industrial controller using shared memory multicore architecture
CN101529353B (zh) 用于对自动化系统进行在线程序修改的方法
EP4002123B1 (en) Method and systems for restarting a flight control system
US20070128895A1 (en) Redundant automation system for controlling a techinical device, and method for operating such an automation system
EP3301526B1 (en) Controller, control method, and program
CN101216793A (zh) 一种多处理器系统故障恢复的方法及装置
CN102768637A (zh) 一种控制测试执行的方法及装置
US11898449B2 (en) Turbine control system
CN103823719A (zh) 针对可执行程序的分布式云计算系统及针对可执行程序的分布式云计算方法
CN108762118B (zh) 一种通讯设备间的故障处理方法及装置
CN108139873B (zh) 打印机电力管理
CN106547606B (zh) 堆栈自检方法及装置
CN104391754A (zh) 一种任务异常的处理方法及装置
CN103901877A (zh) 基于故障属性数据的故障判断及处理方法
CN106094738B (zh) 用于运行自动化装置的方法和自动化装置
CN112823337A (zh) 用于数据处理的方法和可编程的控制装置
JP5653391B2 (ja) データポーリング方法及びその方法を用いた原子力プラントのディジタル計装制御システム
US20220402121A1 (en) Control and monitoring of a machine arrangement
CN107179980B (zh) 用于监视计算系统的方法和相应的计算系统
WO2016087002A1 (en) Voltage regulator mechanism, electronic device, method and computer program
CN107256012B (zh) 一种利用cic61508的喂狗机制实现多任务监控的方法
KR20230098431A (ko) 정전시 가용 전력의 선별적인 공급시스템
CN110018906A (zh) 调度方法、服务器及调度系统
US11119461B2 (en) Controller

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