CN109964181B - 用于工业自动化设备的控制器和对这种控制器编程和运行的方法 - Google Patents

用于工业自动化设备的控制器和对这种控制器编程和运行的方法 Download PDF

Info

Publication number
CN109964181B
CN109964181B CN201780071794.2A CN201780071794A CN109964181B CN 109964181 B CN109964181 B CN 109964181B CN 201780071794 A CN201780071794 A CN 201780071794A CN 109964181 B CN109964181 B CN 109964181B
Authority
CN
China
Prior art keywords
controller
program
real
time system
computer
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.)
Active
Application number
CN201780071794.2A
Other languages
English (en)
Other versions
CN109964181A (zh
Inventor
M·克罗纳
I·比恩鲍姆
S·布林克曼
M·布洛克梅耶尔
F·哈瑞格
S·赫博瑞茨斯梅尔
C·皮特斯
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.)
Weidmueller Interface GmbH and Co KG
Original Assignee
Weidmueller Interface GmbH and Co KG
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 Weidmueller Interface GmbH and Co KG filed Critical Weidmueller Interface GmbH and Co KG
Publication of CN109964181A publication Critical patent/CN109964181A/zh
Application granted granted Critical
Publication of CN109964181B publication Critical patent/CN109964181B/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/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
    • G05B19/0426Programming the control sequence
    • 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/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及用于对工业自动化设备的控制器(10)编程和运行的方法,其中借助开发工具为控制器(10)创建程序。所述方法具有以下步骤:将数据从集成在控制器(10)中的网络服务器(101)传输给计算机(40),计算机经由网络(30)与控制器(10)连接,其中,数据包括基于网络的开发环境;在网络浏览器(41)中呈现开发环境,网络浏览器在计算机(40)上运行;使用者创建和/或编辑用于控制器(10)的程序(410);借助在网络浏览器(41)中运行的翻译模块(412)将使用者创建和/或编辑的程序(410)翻译成高级语言程序(413);将高级语言程序(413)传输给控制器(10);在控制器(10)内将高级语言程序(413)翻译成二进制程序(111);以及通过控制器(10)执行二进制程序(111)。本发明还涉及用于工业自动化设备的控制器(10)。

Description

用于工业自动化设备的控制器和对这种控制器编程和运行的 方法
技术领域
本发明涉及用于对工业自动化设备的控制器编程和运行的方法,在其中借助开发工具为控制器创建程序。
本发明还涉及适合执行该方法的控制器。
背景技术
工业自动化设备用于对自动化工业设备进行流程控制和监控。其通常具有也称为可存储器编程的控制器(SPS)(下面简称控制器)的工业自动化控制器。控制器经由现场总线直接地或经由也称为现场总线网关的现场总线耦联器与现场设备耦联。现场设备例如是输入和/或输出模块,也简称为E/A模块,其提供模拟的和/或数字的输入和/或输出通道,经由其可控制设备部件并且可读取例如传感器的测量值。
为了对控制器编程,通常使用外部的开发环境(工程工具)。根据标准IEC 61131,可以不同形式输入基础程序。通常使用的形式借助类似于逻辑块的功能块呈现。功能块可定位在图形操作界面中并且彼此关联。可替代地,基于文字的编程也是可能的。
由使用者创建的程序在开发环境中通过翻译器转变成可执行的程序代码,其被传输到控制器上并且在此处执行。此外,开发环境通常提供用于控制版本的机制,即,旧的程序版本存储在也称为“库”的数据库中,从而必要时可对其进行访问。
这种开发环境的不利之处在于,为了对控制器编程必须有配备该开发环境的计算机,例如PC,其与控制器耦联。如果多个开发者从具有这种开发环境的不同PC访问控制器,对此不能确保一致的版本历史。
发明内容
本发明的目的是,提供一种方法,借助该方法可独立于配备开发环境的外部计算机对控制器进行编程。另一目的是提供适合实施该方法的控制器。
该目的通过具有相应的独立权利要求的特征的方法或工业自动化控制器实现。有利的实施方式和改进方案在从属权利要求中给出。
根据本发明的方法的特征是,控制器借助集成的网络服务器将基于网络的开发环境传输给经由网络与控制器连接的计算机。由使用者创建的和/或编辑的程序借助包含在调出的网页中的翻译模块翻译成高级语言程序,高级语言程序经由网络被传输给控制器。在控制器中,接收的高级语言程序被翻译成适用于在控制器上执行的二级制程序并且通过控制器执行。
通过使开发环境从包含在控制器中的网络服务器传输给连接的计算机,无需使用具有特殊开发环境的计算机来编程。替代地,具有网络浏览器的每个计算机(PC、平板电脑等)都可用于编程。此外,通过以下方式支持这种普遍性,即,在网络浏览器中没有创建可直接由控制器执行的二进制程序,而是创建高级语言程序,例如C或C++,其在不包含控制器的硬件特定元素的意义上是通用的。可以在高级语言程序的后续翻译过程中将这种硬件特定元素添加到可执行语言中。
在方法的优选实施方式中,以图形编程语言创建或修改程序。例如,图形编程语言可包括能用于直观地对控制器编程的功能块。可替代地,可以使用其他合适的编程语言来创建程序。
在有利的改进方案中,除了高级语言程序,由使用者自己创建或修改的程序本身也从计算机或网络浏览器传输到控制器。优选地,然后在控制器之内将程序和/或高级语言程序和/或二进制程序一起存储在版本存储器中。至少程序和由此创建的二进制程序在此应该相互对应地存储。例如可以数据库的形式构造的版本存储器不仅使当前正在执行的程序版本可用,而且还存储经过的开发阶段。因此,访问控制器的网络服务器的每台计算机都可以访问当前正在执行的程序,并且如果需要,还可以访问先前的程序版本。
二进制程序和程序的始终可跟踪的对应关系能防止将程序不必要地拆分到不同的开发分支,例如,不小心继续开发了程序的旧版本,即使已经存在较新的开发状态。与访问的计算机无关,在上述继续开发中,每个网络浏览器都可以使用完整的版本历史记录。
在所述方法的另一有利的改进方案中,所述方法设置成,在具有来自计算机或网络浏览器的至少两个控制器的布置中处理在上一级别的项目中的两个控制器的程序。以这种方式可以灵活地使用所谓的分布式项目来工作,其中各个控制器执行在共同的上一级别的项目中的不同子项目。
由于开发状态存储在每个控制器的上述版本存储器中,在这种分布式工作中在任意时间都实现了程序的数据一致性。这甚至适用于灵活的混合使用,其中各个控制器的子项目单独更改,并在必要时在上一级别的项目中更改。
为了能编辑上一级别的项目,在用于上一级别的编辑者的网络浏览器的其中一个控制器不可用时,可设置成,在上一级别的编辑者的计算机中存储单个控制器的版本存储器的镜像。在与控制器重新连接之后,控制器和计算机以及上一级别的编辑者的版本存储器优选地自动同步。
在所述方法的优选实施方式中,利用数据库存储程序的版本历史。优选地,使用对于可访问的镜像和保持一致性合适的技术可用的数据库类型。一种根据本发明的控制器具有网络服务器,其设置用于将开发环境提供给连接的计算机。实现了关于所述方法提及的优点。
在控制器的有利改进方案中,所述控制器具有用于执行实施控制任务的二进制程序的实时系统和用于提供网络服务器的非实时系统。技术上可更复杂实现的实时系统保留控制器任务,其中,控制器的其他任务(例如关于提供网络服务器的任务)可在不太复杂的非实时系统中执行。
在实时系统和非实时系统之间的有效且可靠的分离可在控制器的实施方式中通过以下方式实现,即,为实时系统和非实时系统分配不同的处理器。在成本方面相对有利的替代方案是,提供用于控制器的处理器,其具有至少两个核心,其中至少一个核心被分配给实时系统并且至少一个核心被分配给非实时系统。
每个核心又可专门具有至少一个第一和必要时第二(快速)缓存,也称为一级或二级高速缓存。在另一有利的实施方式中,所述控制器具有工作存储器,其中一部分专门对应于实时系统并且第二部分对应于非实时系统,而实时系统和非实时系统都可访问工作存储器的第三部分。以这种方式利用专门对应的第一和第二部分使两个系统分离,而共同利用的第三部分实现系统之间的数据交换,例如在非实时系统中创建之后将二进制程序传输到实时系统中。
在控制器的另一有利的实施方式中,使实时系统和非实时系统的端口(尤其是外部端口,在本文中尤其是网络端口)在使用的硬件方面彼此分离。
附图说明
下面根据实施例借助附图详细阐述本发明。附图示出了:
图1示出了工业自动化设备的控制器以及耦联的计算机的示意图,在计算机上运行用于对控制器进行编程的开发环境;
图2示出了根据本发明的方法的示意图;
图3示出了根据图1的控制器的示意性框图;以及
图4示出了多个控制器以及与其耦联的计算机的布置的示意性框图,计算机用于处理分布式项目。
具体实施方式
图1以框图的形式示出了示例性的工业自动化设备,其具有控制器10。例如两个E/A模块21经由总线系统20连接在控制器10上,总线系统可为现场总线系统或专用总线,E/A模块具有输入部22和输出部23,其与工业设备的致动器和/或传感器耦联。控制器10具有至少一个网络接口11,以及其他的接口,例如一个现场总线接口12、另一现场总线接口13和USB(通用串行总线)接口14以及控制显示器15。
控制器10为了其编程经由网络接口11和网络30与计算机40连接。计算机40仅用于对控制器10进行编程;对于控制运行,控制器10独立于计算机40并且可在没有计算机的情况下独立运行。
例如,示出了在控制器10和计算机40之间的经由网络30的两个连接,一个是经由网线31的直接连接,一个是经由因特网32的连接。为了经由因特网32连接,可使用已知的连接方式,可经由因特网专用协议进行交换。
在计算机40中执行网络浏览器41,网络浏览器执行由控制器10提供的网页,网页包括开发环境。在网络浏览器41中开发环境通过程序410以功能框图的形式用符号表示,功能框图表示根据标准IEC 61131对于控制器10有效的图形编程方法。
图2更详细地在框图中示出了控制器10和用于对控制器10编程的计算机40的交互。为了清楚,图2中未示出连接在控制器10上的总线系统20。
控制器10分成两个部分,其中第一部分是非实时系统100,第二部分是实时系统110。在实时系统110中执行控制任务。实时系统110包括其中存储需要执行的二进制程序111的存储区域以及整个的程序控制系统112。该功能性原则上是已知的并且此处不再详述。
在非实时系统100中布置网络服务器101,网络服务器经由网络30输出和接收数据。
如结合图1所示出的,计算机40包括网络浏览器41,网络浏览器与控制器10的网络服务器101通信。在计算机40与控制器10连接的情况下且在调用网络浏览器41的情况下,从网络服务器101将网页传输给网络浏览器41,在网络浏览器41中网页提供开发系统。
在开发系统中包含用于程序410的例如以功能框图的形式的图形输入选项(“编辑器”)。网络浏览器41的用户可通过功能块的组合和连接将需要在控制器10上执行的程序组合在一起。
程序410通过同样包含在开发环境中的高级语言翻译器412被翻译成高级语言程序413。高级语言程序413被存储在计算机40的网络浏览器41可访问的存储区域中。优选地,高级语言程序413是C程序或C++程序,但是也可使用已知的其他编程语言。翻译成高级语言程序413的优点在于控制器10的硬件独立性。
此外,在开发环境中实现了版本管理411,其检测被翻译成高级语言程序413的程序410的特定版本并且转发到控制器10。版本存储在版本存储器106中,版本存储器在控制器10中设置在非实时系统100中。以这种方式可独立于所使用的计算机40调用程序410的不同版本。
然后,高级语言程序413从计算机40经由网络30传输给控制器10的网络服务器101。优选地,为此使用已知的基于网页的用于数据库的同步机制。
在控制器10中,将高级语言程序413传送给高级语言翻译器(“编译器”)102,高级语言翻译器将高级语言程序413翻译成可执行的程序。在随后的链接过程中,通过链接器104在该程序中加入硬件专用的库103。在安装步骤105中将生成的程序作为二进制程序111提供给实时系统110(“部署”)并且因此用于在控制器10上通过程序控制系统112执行。
如果要进一步开发该程序,则可独立于最初创建它的计算机40来改变或开发该程序。为此,经由网络30与控制器10本地或全局耦联的任一计算机40都能经由其网络浏览器41得到控制器10的开发环境并且装载程序410的当前版本或旧的版本,以便对其进行开发。在改变程序410之后,此时以上述方式将程序从此时使用的计算机40传送到控制器10,在此转换成二进制程序111并使其执行。
对此优选地设置安全机制,安全机制阻止对控制器10的未经授权的访问。除了涉及网络30的访问限制之外,从非实时系统100至实时系统110的转变具有可控的界限,该界限可用于阻止对程序控制系统112的未授权的访问。
图3示出了控制器10的硬件结构的示意图。图3尤其用于阐述硬件在非实时系统100和实时系统110方面的分配。
示例性示出的控制器10的特征是,设置由非实时系统100和实时系统110共同使用的处理器120。应注意的是,控制器10对于非实时系统100和实时系统110分别具有自身的处理器的实施方式也是可能的。但是示出的实施例在成本优化方面更为有利并且因此提供在非实时系统100和实时系统110之间的可靠分离。
在示出的实施例中,处理器120具有两个核心121,两个核心是彼此独立工作的运算单元。在可替代的实施方式中,也可使用具有多于两个核心的处理器,其中,至少相应其中一个核心被分配给非实时系统100并且其中一个核心被分配给实时系统110。
每个核心121具有单独的、仅可由该核心121使用的第一缓存器122,也称为“一级高速缓存”。也称为“二级高速缓存”的第二缓存器123可被两个核心121共同使用。在本文中使用单独的第二缓存器的替代实施方式也是可行的。
此外,控制器10具有工作存储器124,工作存储器同样可被两个核心121使用并且因此用于非实时系统100以及实时系统110。此处未示出的存储器管理模块调节处理器120对工作存储器124的访问。对此设置成,为两个核心121分配不同的工作存储器区域125,所述区域在工作存储器124之内部分重叠。以这种方式,工作存储器124的第一部分仅可用于非实时系统100的核心121并且工作存储器124的第二部分仅用于实时系统110的核心121。工作存储器124的第三部分可被两个核心121使用并因此可用于非实时系统100和实时系统110。工作存储器124的第三部分可用于在非实时系统100和实时系统110之间交换数据。类似的分配也可用于第二缓存器123。
通过将处理器120和工作存储器124分开到独立的核心121中或将工作存储器124的各部分开成仅与非实时系统100和仅与实时系统11相关联,这为实时系统110提供了可靠的环境,从而保护实时系统以防非实时系统110的未授权的访问。因此,由控制器10控制的生产环境防止了未被授权的访问,例如来自因特网和那里分布的恶意软件。
相应地,也可分开地对实时系统110和非实时系统100进行软件更新(“升级”)。后者通常需要更频繁地更新,以便关闭获知的安全漏洞。而在实时系统110中避免更新,以便不中断运行的系统并且使更新的不可预见后果的风险降至最低。严格隔离实时系统110是有利的,因为隔离的系统具有很少的可利用的安全漏洞。
分离和保护也反映在控制器10与外部设备的连接中。尤其用于非实时系统100和实时系统110的网络连接尽可能彼此分开。因此,控制器10具有:在实时系统110中的端口113,例如以太网端口,其用于(此处示例性地基于以太网的)现场总线接口12;背板总线端口,其用于E/A模块21的总线系统20;和此处示例性的另一现场总线端口13,例如用于CAN(控制区域网络)总线。此外,对于实时系统110可存在非易失性存储器114,例如闪存。
非实时系统100也具有端口107,例如用于网络接口11的以太网端口,其用于与内部以太网连接。另一端口107例如是USB端口,其用于USB接口14。此外可设置用于卡槽108的端口,例如SD卡可插入该卡槽中。与在实时系统110中类似,也可设置永久安装的例如以eMMC卡(嵌入式多媒体卡)形式的非易失性存储器109。
根据本申请的用于经由在(外部的)计算机40中运行的网络浏览器41创建用于控制器10的实际的程序控制系统112的二进制程序111的方法将结合图2针对控制器10和计算机40的组合进行描述。
下面参考图4描述一种布置,其中在所谓的分布式项目中有多个控制器10’、10”和10”’,其可由计算机40管理并且编程。本文示出的三个控制器的数量在此纯属示例性的。该数量也可为两个或大于三个。
所述控制器10’、10”和10”’中每个例如都如结合前面附图所述地构造。尤其控制器10’、10”和10”’中的每个都具有自身的网络服务器,其可经由网络30访问。此外,在控制器10’、10”和10”’中每个中都设有版本存储器106,在其中以二进制版本(参见图2中的二进制程序)以及源代码的形式(例如参见根据图1的功能框图411)、必要时以不同的开发状态存储。
为了在控制器10’、10”和10”’中的版本存储器106中编辑或创建程序,可由计算机40开始如前所述地经由网络浏览器41访问控制器10’、10”和10”’中的每个并且装载相应的用于编辑的程序,必要时进行创建或更改。以这种方式可通过计算机40集中管理多个控制器10。
对此,在有利的实施方式中设置成,由计算机40定义用于管理涉及控制器10’、10”和10”’的上一级别的项目。在上一级别的项目的版本管理器411之内,优选为包含的控制器10’、10”和10”’中的每个创建版本存储器106的镜像。在图4中将这些镜像以版本存储器镜像414’、414”和414”’在版本管理器411内示出。优选地,为此在计算机40自身中或在另一计算机(服务器)中运行网络服务器,其与控制器10’、10”和10”’的网络服务器101类似,提供网页形式的开发使用环境。
版本存储器镜像414’、414”和414”’提供以下优点,在相关的控制器10’、10”和10”’当前不可用时,必要时也可在中央计算机40上的用于控制器10’、10”和10”’的程序上工作。如果控制器10’、10”和10”’再次可用了,例如因为计算机40又在与相应的控制器10’、10”和10”’相同的网络中运行,优选在相应的控制器10的版本存储器106和计算机40上的版本管理器411中的版本存储器镜像414之间进行比较。
在控制器10’、10”和10”’中的一个经由另一计算机编辑时,以这种方式在编辑上一级别的项目的计算机40中各个控制器10’、10”和10”’的子项目保持一致。
以这种方式可灵活处理分布式项目。可使用相应的网络地址直接访问各个控制器10’、10”和10”’的子项目并且可独立于上一级别的项目编辑和更改子项目。然后可以在这种意义方面上一级别的计算机40上以交叉控制的方式编辑项目。
有利地,首先可通过使用控制器10’、10”和10”’小规模启动项目,随后在更大的环境中采用,例如在由多个控制器10控制的较大设备中。项目根据所选自动化实现方案的大小进行相应调整。可简单产生或管理自动化实现方案的变体,其中,用户不必担心子项目的一致合并,因为这是通过版本存储器106的镜像自动进行的。由此简化了分布式项目的维护和管理,因为可针对各个控制器10进行调整,而不必总是以上一级别处理整个项目。
附图标记列表
10 控制器
10’-10”’ 控制器
11 网络接口
12 现场总线接口
13 另一现场总线接口
14 USB接口
15 控制显示器
100 非实时系统
101 网络服务器
102 高级语言编译器
103 库
104 链接器
105 安装
106 版本存储器
107 端口
108 卡槽
109 非易失性存储器
110 实时系统
111 二进制程序
112 程序控制系统
113 端口
114 非易失性存储器
120 处理器
121 核心
122 第一缓存
123 第二缓存
124 工作存储器
125 工作存储器区域
20 总线系统
21 E/A模块
22 输入部
23 输出部
24 另一总线系统
30 网络
31 网线
32 因特网
40 计算机
41 网络浏览器
410 程序(功能框图)
411 版本管理器
412 高级语言翻译器
413 高级语言程序
414’-414”’ 镜像版本存储器

Claims (15)

1.对工业自动化设备的控制器(10、10’-10’’’)编程和运行的方法,其中借助开发工具为所述控制器(10)创建程序,其特征在于,具有以下步骤:
- 将数据从集成在所述控制器(10、10’-10’’’)中的网络服务器(101)传输给计算机(40),所述计算机经由网络(30)与所述控制器(10、10’-10’’’)连接,其中所述数据包括基于网络的开发环境;
- 在所述计算机(40)上运行的网络浏览器(41)中呈现开发环境;
- 使用者创建和/或编辑用于所述控制器(10)的程序(410);
- 借助在网络浏览器(41)中执行的翻译模块(412)将使用者创建和/或编辑的程序(410)翻译成高级语言程序(413);
- 将所述高级语言程序(413)传输给所述控制器(10);
- 在所述控制器(10、10’-10’’’)内将所述高级语言程序(413)翻译成二进制程序(111);以及
- 通过所述控制器(10)执行二进制程序(111)。
2.根据权利要求1所述的方法,其中以图形程序语言创建或修改所述程序(410)。
3.根据权利要求1或2所述的方法,其中所述翻译模块(412)将所述程序(410)翻成的高级语言程序(413)包括C源代码。
4.根据权利要求1或2所述的方法,其中除了高级语言程序(413),也将程序(410)从所述计算机(40)传输至所述控制器(10、10’-10’’’)。
5.根据权利要求1或2所述的方法,其中所述控制器(10、10’-10’’’)包括版本存储器(106),所述程序(410)和/或高级语言程序(413)和/或二进制程序(111)存储在版本存储器(106)中。
6.根据权利要求5所述的方法,其中至少所述程序(410)和从中创建的二进制程序(111)彼此对应地存储在所述版本存储器(106)中。
7.根据权利要求6所述的方法,其中所述程序(410)的不同开发状态和相应的从中创建的二进制程序(111)彼此对应地存储在所述版本存储器(106)中。
8.根据权利要求5所述的方法,其中存储在所述版本存储器(106)中的程序(410)可装载到开发环境中,以便通过计算机(40)编辑。
9.根据权利要求1或2所述的方法,其中用于至少两个控制器(10、10’-10’’’)的程序(410)可在网络浏览器(41)中作为上一级别的项目被编辑。
10.用于工业自动化设备的控制器(10),其特征在于,所述控制器(10)具有网络服务器(101),其设置成,为经由网络(30)与所述控制器(10)连接的计算机(40)提供用于程序(410)的开发环境,所述程序可在计算机(10)上的网络浏览器(41)中执行,其中,利用根据权利要求1-9中任一项所述的方法对用于工业自动化设备的控制器(10)编程和运行。
11.根据权利要求10所述的控制器(10),具有用于执行实施控制任务的二进制程序(111)的实时系统(110)和用于提供网络服务器(41)的非实时系统(100)。
12.根据权利要求11所述的控制器(10),其中为实时系统(110)和非实时系统(100)分配处理器(120)的不同核心(121)。
13.根据权利要求12所述的控制器(10),其中为所述处理器(120)的每个核心(121)专门分配第一和/或第二缓存(122、123)。
14.根据权利要求11至13中任一项所述的控制器(10),其中将工作存储器(124)的一部分分配给实时系统(110)并且将第二部分分配给非实时系统(100),而实时系统(110)和非实时系统(100)都能访问所述工作存储器(124)的第三部分。
15.根据权利要求11所述的控制器(10),其中为所述实时系统(110)和所述非实时系统(100)分配不同的端口(113、107)。
CN201780071794.2A 2016-11-21 2017-11-21 用于工业自动化设备的控制器和对这种控制器编程和运行的方法 Active CN109964181B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102016122324.7 2016-11-21
DE102016122324.7A DE102016122324A1 (de) 2016-11-21 2016-11-21 Steuerung für eine industrielle Automatisierungsanlage und Verfahren zum Programmieren und Betreiben einer derartigen Steuerung
PCT/EP2017/079932 WO2018091741A1 (de) 2016-11-21 2017-11-21 Steuerung für eine industrielle automatisierungsanlage und verfahren zum programmieren und betreiben einer derartigen steuerung

Publications (2)

Publication Number Publication Date
CN109964181A CN109964181A (zh) 2019-07-02
CN109964181B true CN109964181B (zh) 2022-02-25

Family

ID=60409295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780071794.2A Active CN109964181B (zh) 2016-11-21 2017-11-21 用于工业自动化设备的控制器和对这种控制器编程和运行的方法

Country Status (5)

Country Link
US (1) US10901387B2 (zh)
EP (1) EP3542232B1 (zh)
CN (1) CN109964181B (zh)
DE (1) DE102016122324A1 (zh)
WO (1) WO2018091741A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10940584B1 (en) * 2018-04-26 2021-03-09 X Development Llc Robotic control
AT521715A1 (de) * 2018-09-28 2020-04-15 Logi Cals Gmbh Verfahren zur Anzeige von Diskrepanzen zwischen einem Anwenderprogramm für eine speicherprogrammierbare Steuerung und dessen Kopie
US10942710B1 (en) * 2019-09-24 2021-03-09 Rockwell Automation Technologies, Inc. Industrial automation domain-specific language programming paradigm
US11048483B2 (en) 2019-09-24 2021-06-29 Rockwell Automation Technologies, Inc. Industrial programming development with an extensible integrated development environment (IDE) platform
US11163536B2 (en) 2019-09-26 2021-11-02 Rockwell Automation Technologies, Inc. Maintenance and commissioning
DE102020115028A1 (de) 2020-06-05 2021-12-09 Beckhoff Automation Gmbh Verfahren zum Erstellen und Ausführen eines Steuerprogramms zum Steuern eines Automatisierungssystems und Automatisierungssystem
US20220134222A1 (en) * 2020-11-03 2022-05-05 Nvidia Corporation Delta propagation in cloud-centric platforms for collaboration and connectivity

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035898B1 (en) * 1997-09-10 2006-04-25 Schneider Automation Inc. System for programming a factory automation device using a web browser
CN103814333A (zh) * 2011-07-06 2014-05-21 Abb股份公司 用于对可编程控制装置编程和配置的方法和设备
CN104104084A (zh) * 2014-07-16 2014-10-15 金海新源电气江苏有限公司 基于双核处理器的有源电力滤波控制器

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058693B1 (en) * 1997-09-10 2006-06-06 Schneider Automation Inc. System for programming a programmable logic controller using a web browser
US5950006A (en) * 1997-11-05 1999-09-07 Control Technology Corporation Object-oriented programmable controller
US20020004804A1 (en) * 2000-03-24 2002-01-10 Georg Muenzel Industrial automation system graphical programming language storage and transmission
US8131827B2 (en) * 2001-05-09 2012-03-06 Rockwell Automation Technologies, Inc. PLC with web-accessible program development software
US8086664B2 (en) * 2001-09-24 2011-12-27 Siemens Industry, Inc. Method and apparatus for programming programmable controllers and generating configuration data from a centralized server
US20060041854A1 (en) * 2004-07-22 2006-02-23 Steven Schlanger Devices and methods for programming microcontrollers
US20070005158A1 (en) * 2005-06-30 2007-01-04 Kabushiki Kaisha Yaskawa Denki Web based controller
US20080127146A1 (en) * 2006-09-06 2008-05-29 Shih-Wei Liao System and method for generating object code for map-reduce idioms in multiprocessor systems
US7987458B2 (en) * 2006-09-20 2011-07-26 Intel Corporation Method and system for firmware image size reduction
US8145804B2 (en) * 2009-09-21 2012-03-27 Kabushiki Kaisha Toshiba Systems and methods for transferring data to maintain preferred slot positions in a bi-endian processor
US10154121B2 (en) * 2012-09-28 2018-12-11 Revolution Display, Llc Control device, system containing the control device and method of using the same
US9823640B2 (en) * 2013-03-14 2017-11-21 Control Technology Corporation Networked programmable industrial controllers
US20150186119A1 (en) * 2013-12-31 2015-07-02 Rockwell Automation Technologies, Inc. Industrial automation device with editor and graphical object mobile visualization
WO2017040145A1 (en) * 2015-08-28 2017-03-09 Turck Holding Gmbh Web-based programming environment for embedded devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035898B1 (en) * 1997-09-10 2006-04-25 Schneider Automation Inc. System for programming a factory automation device using a web browser
CN103814333A (zh) * 2011-07-06 2014-05-21 Abb股份公司 用于对可编程控制装置编程和配置的方法和设备
CN104104084A (zh) * 2014-07-16 2014-10-15 金海新源电气江苏有限公司 基于双核处理器的有源电力滤波控制器

Also Published As

Publication number Publication date
DE102016122324A1 (de) 2018-05-24
CN109964181A (zh) 2019-07-02
WO2018091741A1 (de) 2018-05-24
EP3542232B1 (de) 2022-04-20
EP3542232A1 (de) 2019-09-25
US20190346819A1 (en) 2019-11-14
US10901387B2 (en) 2021-01-26

Similar Documents

Publication Publication Date Title
CN109964181B (zh) 用于工业自动化设备的控制器和对这种控制器编程和运行的方法
US11209788B2 (en) Techniques for improving industrial control systems
US8327316B2 (en) Compilation model
JP6442843B2 (ja) 制御装置
US9235381B2 (en) Method and device for the programming and configuration of a programmable logic controller
US8689184B2 (en) Apparatus, system, and method for managing industrial software configurations
US11307550B2 (en) Sequence control of program modules
CN110663006B (zh) 对可编程逻辑控制器执行故障转移并控制物理系统的方法
CN109565526B (zh) 用于将数据源系统连接到it系统上的方法和网关
CN102073538A (zh) 实时运转时间系统以及此运转时间系统功能性模块
Berger Automating with SIMATIC S7-400 inside TIA portal: configuring, programming and testing with STEP 7 Professional
Berger Automating with SIMATIC S7-1500: configuring, programming and testing with STEP 7 Professional
US12045038B2 (en) Runtime server for simultaneous execution of a plurality of runtime systems of an automation system
JP2016224557A (ja) プログラム作成支援装置、プログラムおよび判別方法
CN109937404B (zh) 程序模块之间的实时数据交换方法和系统
JP6135247B2 (ja) 情報処理装置および情報処理プログラム
US11169510B2 (en) Engineering system and method for planning an automation system
US20130218300A1 (en) Method for operating an automation system
JP6455096B2 (ja) コントロールシステム、その支援装置、プログラマブルコントロール装置
WO2013005350A1 (ja) シンボルテーブル生成方法、周辺機器との通信方法およびプログラマブルロジックコントローラ
JP7413183B2 (ja) コントロールシステム
CN108496126B (zh) 用于耦联两个总线系统的设备
US10768597B2 (en) Method and controller for flexible process control
JP2022018696A (ja) 制御プログラム生成装置

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
GR01 Patent grant
GR01 Patent grant