具有实时数据总线的实时自动化装置

文档序号:590056 发布日期:2021-05-25 浏览:9次 >En<

阅读说明:本技术 具有实时数据总线的实时自动化装置 (Real-time automation device with real-time data bus ) 是由 勒内·格拉夫 于尔根·赖希曼 奥拉夫·乌尔里希 克里斯蒂安·温克勒 于 2019-07-10 设计创作,主要内容包括:本发明涉及一种具有实时数据总线(110、210)和存储装置(102、202)的实时自动化装置(100、200),-其中实时数据总线(110、210)设置和设计用于传输与预设的或能预设的总线变量(310、320、330、340)相关联的值,其中将总线数据库(112、212)与实时数据总线(110、210)相关联,在总线数据库中将或能将总线变量源和/或总线变量接收者与总线变量(310、320、330、340)相关联,-其中为了将与总线变量(310、320、330、340)相关联的值从根据总线数据库(112、212)与总线变量(310、320、330、340)相关联的总线变量源经由实时数据总线(110、210)通信至根据总线数据库(112、212)与总线变量相关联的总线变量接收者,实时数据总线(110、210)设计和设置用于,在将值从总线变量源传输至实时数据总线(110、210)之后将或能将该值在预设的或能预设的时间或时段之内传输至总线变量接收者,-并且其中存储装置(102、202)还包括软件应用程序(150、154、156、158、160、162、164),软件应用程序设计和设置用于从实时数据总线(110、210)接收与总线变量(310、320、330、340)相关联的值或者用于将与总线变量相关联的值发送至实时数据总线(110、210),-其中实时自动化装置(100、200)设计和设置用于将软件应用程序(150、154、156、158、160、162、164)作为用于总线变量(310、320、330、340)的总线变量接收者或总线变量源在总线数据库(112、212)中注册。(The invention relates to a real-time automation device (100, 200) having a real-time data bus (110, 210) and a memory device (102, 202), wherein the real-time data bus (110, 210) is provided and designed for transmitting values associated with a predetermined or presettable bus variable (310, 320, 330, 340), wherein a bus database (112, 212) is associated with the real-time data bus (110, 210), in which a bus variable source and/or a bus variable receiver is or can be associated with the bus variable (310, 320, 330, 340), wherein for the purpose of communicating the values associated with the bus variable (310, 320, 330, 340) from the bus variable source associated with the bus variable (310, 320, 330, 340) according to the bus database (112, 212) to the bus variable source via the real-time data bus (110, 210) according to the bus database (112, 212), the real-time data bus (110, 210) is communicated to the bus database (112, 210), 212) A bus variable receiver associated with a bus variable, the real-time data bus (110, 210) being designed and set up to transmit or be able to transmit a value to the bus variable receiver within a preset or presettable time or period after transmission of the value from a bus variable source to the real-time data bus (110, 210), -and wherein the storage device (102, 202) further comprises a software application (150, 154, 156, 158, 160, 162, 164) designed and set up to receive a value associated with the bus variable (310, 320, 330, 340) from the real-time data bus (110, 210) or to transmit a value associated with the bus variable to the real-time data bus (110, 210), -wherein the real-time automation device (100, 200) is designed and set up to transmit the software application (150, 154, 156, 158, 160, 162, 158, 160, 162, 164) Are registered in a bus database (112, 212) as bus variable receivers or bus variable sources for bus variables (310, 320, 330, 340).)

具有实时数据总线的实时自动化装置

技术领域

本发明涉及一种具有实时数据总线和存储装置的实时自动化装置,其中实时数据总线设置和设计用于确定性地传输值,并且存储装置还包括软件应用程序,软件应用程序设计和设置用于从实时数据总线接收经由实时数据总线传输的值,或将值发送至实时数据总线以通过实时数据总线进行传输。

背景技术

从现有技术中已知这种实时自动化装置。对此,例如美国专利US 6,760,782 B1公开了一种可编程逻辑控制器,其具有经由背板总线相连的控制器模块和输入/输出模块。在此,背板总线实现这些模块之间确定性地交换实时数据。

现有技术的缺点在于,经由控制装置的公开的模块化构造对控制装置进行配置是相对僵化的。

发明内容

因此,本发明的目的是提供一种控制系统,其实现对参与控制的控制系统部件进行灵活配置。

所述目的由根据权利要求1的实时自动化装置来实现。

这种实时自动化装置包括实时数据总线和存储装置,其中该实时数据总线设置和设计用于传输与预设的或能预设的总线变量相关联的值。在此,将总线数据库与实时数据总线相关联,在总线数据库中将或能将总线变量源和/或总线变量接收者与总线变量相关联。此外,为了将与总线变量相关联的值从根据总线数据库与总线变量相关联的总线变量源经由实时数据总线通信至根据总线数据库与总线变量相关联的总线变量接收者,实时数据总线设计和设置用于,在将值从总线变量源传输至实时数据总线之后,将或能将该值在预设的或能预设的时间或时段之内传输至总线变量接收者。此外,实时自动化装置的存储装置包括软件应用程序,软件应用程序设计和设置用于从实时数据总线接收与总线变量相关联的值,或者用于将与总线变量相关联的值发送至实时数据总线,其中实时自动化装置设计和设置用于将软件应用程序作为用于总线变量的总线变量接收者或总线变量源在总线数据库中注册。

在此,在预设的或能预设的时间或时段之内将与总线变量相关联的值至总线变量接收者的传输设计和设置成,使得在将该值传输至实时数据总线时启动内部的时间流程,和/或将时间戳与该值或总线变量相关联,借助时间戳可以确定将值传输至实时数据总线的时间点和/或确定将值从实时数据总线传输至总线变量接收者的最早和/或最迟的传送时间点。在此,例如能够以不同时间单位来检测和/或确定时间,即例如使用秒、毫秒、微秒、计数器或时钟发生器的单位或时钟数、通过计数器或时钟发生器产生的时间周期的数量、和/或对于检测时间形式的值或从这种值中推导出的变量类似的专业常规的类型。

然后,例如能将实时数据总线设计和设置成,使得例如经由相应的中断控制或使用例如总线周期和/或类似的实时机制,遵守、尤其可靠地遵守根据本说明的、用于将值传输至总线变量接收者的预设的或能预设的时间范围。

实时数据总线例如可以设计和设置用于以由或可由时钟发生器预设的周期时间来周期性地传输数据。

在此,实时数据总线然后例如还可以设计和设置用于,将与总线变量相关联的值从根据总线数据库与总线变量相关联的总线变量源经由实时数据总线通信至根据总线数据库与总线变量相关联的总线变量接收者,使得在第一总线周期之内将值从总线变量源传输至实时数据总线的情况下,在跟随第一总线周期的预设的或能预设的总线周期内将值传输或能传输至总线变量接收者。

在此,可以灵活地设计实时数据总线,以便例如可以服务于具有不同实时要求的场景。为此,例如经由实时数据总线来逻辑上连接总线变量可以在时间上是独立的。因此,例如在简单的系统中,一旦变量值变化,在没有特别的时间的边界条件的情况下就可以尽可能快地进行新的总线变量值的分配。但是,实时数据总线还可以了解同步事件,在正常流程之外可以交换对于同步事件特定的总线变量值,并且随后根据通过同步事件的预定义来将相应的变量值传输至相应的总线变量接收者。与总系统的部件之间的同步一起,可以由此例如涵盖不同的实时场景。

如在常规的可编程逻辑控制器系统中的例如时间关联的和/或周期关联的处理属于这种实时场景。可选地或附加地,还能设有总线变量值的自由的事件驱动的传输或时间完全无关的传输。

在此,经由实时数据总线传输不同总线变量的值的独立性例如可以不仅运行在不同总线变量下的混合运行,而且由于自由的多重关联还允许在以基于事件(例如周期地或自由地基于事件)和时间上不受限的方式传输一个或多个总线变量的值之间的混合运行。

这例如还可以意味着:用于时间关联、例如严格周期性将值传输至特定的总线变量接收者的总线变量还能用于在没有时间限制的情况下将值传输至另一总线变量接收者。

上述目的还通过一种实时自动化装置来实现,其包括实时数据总线和存储装置,其中实时数据总线设置和设计用于传输与预设的或能预设的总线变量相关联的值,并且其中将总线数据库与实时数据总线相关联,在总线数据库中将或能将总线变量源和/或总线变量接收者与总线变量相关联。此外,实时数据总线设计和设置用于以由或能由时钟发生器预设的周期时间来周期性地传输数据,其中为了将与总线变量相关联的值从根据总线数据库与总线变量相关联的总线变量源经由实时数据总线通信至根据总线数据库与总线变量相关联的总线变量接收者,实时数据总线设计和设置用于,对于在第一总线周期内将值从总线变量源传输至实时数据总线的情况,将值随后在跟随第一总线周期的预设的或能预设的总线周期内传输或能传输至总线变量接收者。此外,实施自动化装置的存储装置还包括软件应用程序,软件应用程序设计和设置用于从实时数据总线接收与总线变量相关联的值,或者用于将与总线变量相关联的值发送至实时数据总线,其中实时自动化装置设计和设置用于将软件应用程序作为用于总线变量的总线变量接收者或总线变量源在总线数据库中注册。

使用在总线数据库中注册的总线变量并且将软件应用程序在总线数据库中注册为用于总线变量的相应的源或接收者实现了将软件应用程序非常灵活地耦联到实时数据总线处。

因此,例如还可以添加另一软件应用程序,并且通过将该软件应用程序在用于相应的一个或多个总线变量的总线数据库中相应地注册为源和/或接收者,可以相对容易地将新的软件应用程序耦联到数据总线处,而在此没有损害经由实时数据总线的现有的通信或者至少没有值得注意地或显著地损害该通信。

此外,通过使用总线变量机制和总线变量及其源和/或接收者在总线数据库中的相应的注册,提高了灵活性。由此实现:通过将用于总线变量的新的源或接收者相应地在总线数据库中注册,能将经由实时数据总线的通信灵活地匹配于相应地与实时数据总线连接的软件应用程序,而不损害现有通信或至少不值得注意地或显著地损害现有通信。在此,所提出的总线变量机制例如可以与所谓的“发布订阅机制”类似地构成或设计,如其在通信或数据通信的领域中已知那样。

实时自动化装置例如可以设计和设置为电子控制装置、计算机或PC、所谓的控制器、所谓的可编程逻辑控制器、分布式外围设备的控制器单元、数据网关、云通信网关、所谓的边缘设备或设计和设置用于确定性实时传输值或数据的任何其他自动化或控制装置。

在此,实时自动化装置例如可以设计和设置用于控制设备和/或设施,或者设计和设置用于例如在控制任务范围中通信和转发实时数据,或也用于在相应的设备和/或设施和数据网络(例如自动化网络和/或服务器网络或所谓的私有云或公共云)之间传输实时数据。此外,实时自动化装置还能设计和设置用于处理和转发相应的音频视频数据。

在此,实时自动化装置例如可以包括壳体,或者还能由多个部件构成,例如部件各自具有壳体。这种部件然后例如可以经由外部总线部件相连或也直接经由实时数据总线的部件相连。

实时数据总线例如可以构建和设计为电子数据总线。在此,例如能够以基于IP的方式运行经由数据总线传输分别与总线变量相关联的值,并且例如根据符合IEEE 802的以太网标准或者基于该以太网标准构成。例如,数据通信可以设计和设置为根据TSN标准(TSN=符合标准IEEE 802.1的时间敏感网络)或基于该TSN标准的实时通信。

实时数据总线例如可以设计和设置为软件应用程序和/或包括这种软件应用程序。在此,实时数据总线例如可以设计和设置为,使得为了经由实时数据总线传输总线变量的值,不将值经由有线的或无线的通信连接(例如以太网\WLAN或现场总线连接或类似的连接)进行传输。经由构造为软件应用程序的实时数据总线在两个软件应用程序之间传输总线变量的值可以设计和设置为,从第一软件应用程序经由实施总线数据软件应用程序传输至第二软件应用程序。在此,根据本说明的构造为软件应用程序的实时数据总线例如可以称作为数据总线软件应用程序或软件数据总线。

在此,然后能将实时数据总线设计和设置用于以由或能由时钟发生器预设的周期时间来周期性地传输数据,使得在这种软件应用程序之内或在这种软件应用程序参与到总线周期时段的情况下组织通信流程,该总线周期时段基于由时钟发生器预设的或能预设的周期时间。

在此,可以确定性地经由实时数据总线传输值,这表示:在预设的或能预设的时间界限内或在预设的或能预设的最大时间内,经由实时数据总线将值从相应的发送器传输至一个或多个接收者。

在此,这些时间界限或最大时间例如可以适配于各自设置的应用,使得在时间不那么关键的应用中绝对可以设有毫秒、秒或甚至分钟的时间界限,并且在时间关键的应用中、即例如多个马达或轴的同步中,绝对可以设有几十或几百毫秒的范围内、或甚至在几百毫秒或几十微秒或还更小的范围内的时间界限。

经由实时数据总线传输或能够传输的值可以是任何数值的、字母数值的、数字的或模拟的数据或其任意组合。

将总线变量理解为涉及相应经由或可经由实时数据总线传输的值的逻辑标识符。在此,例如在经由实时数据总线传输特定的总线变量的值时可以共同传输用于具有相应的值的该总线变量的相应的名称或其他标识符。以该方式,例如对于该总线变量的值存储在总线数据库中的接收者能将该传输的值识别为属于所列举的总线变量。此外,例如还能在将值从相应的总线变量源传输至实时数据总线时相应地将总线变量的名称或标识符添加给相应的、属于该总线变量的值,以使实时数据总线识别或能识别与相应的总线变量的配属关联。

在此,经由将总线变量在总线数据库中注册,实时数据总线可以识别出:从一个或多个源中的哪个将或者能将特定的总线变量的值传输至实时数据总线,并且将或者能将总线变量的相应的值传输至哪个接收者。在此,总线数据库可以是实时数据总线的一部分,还能将其设计和设置为实时自动化装置内部或外部的单独的部件。

在此,例如在总线数据库内对特定的总线变量例如可以包括用于该总线变量的值的一个或多个源、用于该总线变量的值的一个或多个接收者、和/或用于该总线变量的值的相应的传送方信息。这种传送方信息例如还可以与相应的源或接收者相关,并且例如包括如下的信息,即是否必须在预设的或能预设的时间界限内确定性地进行相应值的传输,或者无法确定性地进行这种值的相应的传输。

在此能提出:在总线数据库中对于分别在此注册的总线变量注册用于总线变量的值的至少一个的源和/或用于总线变量的值的至少一个接收者。

在此,总线变量源可以是将或者能将总线变量的值传输至实时数据总线的软件应用程序或硬件装置。总线变量接收者同样可以是软件应用程序或硬件部件,软件应用程序或硬件部件从或能从实时数据总线接收总线变量的值。在此,实时数据总线例如可以设计和设置成,使得实时数据总线将总线变量的特定值传输、尤其确定性地传输至所有在总线数据库中针对该变量注册的接收者。此外,还可以提出:实时数据总线设计和设置成,使得其将总线变量的特定值传输、尤其确定性地传输至一个或多个在总线数据库中针对该变量注册的接收者。

在此,总线数据库例如能够以常见的数据库格式设计和设置,例如设计和设置为SQL数据库或还有所谓的“非SQL数据库”。此外,总线数据库例如还可以设计和设置为表格、尤其链接表格。在这种表格中,例如能将总线变量与相应的总线变量源、总线变量接收者和/或根据本说明的其他相关联的信息相关联。

在一个有利的设计方案中,在总线数据库中注册的总线变量的至少一个源、和/或该总线变量的至少一个接收者是存储在存储装置中的软件应用程序、和/或一个或多个其他的存储在存储装置中的且与实时数据总线通信连接的软件应用程序。

例如,可以根据所谓的“发布订阅方案”来设计和设置一个或多个总线变量的值经由实时数据总线的通信。这种“发布订阅方案”的实例在通信技术中已知,例如已知为根据OPC UA标准的第14部分的所谓的OPC UA PubSub标准。

在这“发布订阅方案”的范围中,将数据传输至总线的总线用户、例如一个或多个所提到的软件应用程序称作为“发布者”或“公布方”,而在总线数据库中注册为一个或多个总线变量的值的接收者的总线用户称作为相应的“订阅者”或“订阅用户”。这种接收者例如可以是根据本说明的一个或多个软件应用程序。在此,“发布者”在实时数据总线上一定程度地发布特定总线变量的值,而“订阅用户”一定程度上“订阅”相应订阅的总线变量的值。在此,在实时数据总线内可以根据符合OPC UA PubSub标准的“发布订阅方法”设计和设置通信模式,如其当前在OPC UA标准的“第14部分”中规定的那样。

此外,根据本说明的经由实时数据总线进行的与总线变量相关联的值的通信还能根据客户端服务器机制来设计和设置。

该存储装置例如可以设计和设置为电子存储装置。

在此,具有存储装置的实时自动化装置设计和设置成,使得将软件应用程序安装在存储装置中,以使软件应用程序即使实时自动化装置切断也保留在其中,并且在重新接通实时自动化装置时再次运行准备就绪地设在存储装置中。

此外,实时数据总线可以设计和设置用于以由或能由时钟发生器预设的周期时间来周期性地传输数据,使得数据传输或数据传递以预设的或能预设的周期时间的彼此相随的时段或彼此相随的时间上的总线周期来分段或组织。在此,固定地设定周期时间或者可设定和/或可改变周期时间。

例如,周期数据传输的实时数据总线可以设计和设置一个周期时间,该周期时间可以由时钟指定或以如下方式预定义,即在连续的时段或连续的时间进行数据传输或数据传输将确定或指定的周期时间长度的总线周期分段或组织。周期时间可以是固定的,还能可变地调节和/或改变。

时钟发生器例如可以是实时自动化装置的组成部分,并且例如可以设计和设置为所谓的“时钟”。在此,实时自动化装置还可以设置和设计成,从时钟发生器产生的时钟周期中获取实时数据总线的周期时间。因此,例如实时数据总线的周期时间可以是时钟发生器的时钟时间的整数多倍、或者是其的分数。

此外,时钟发生器还能存在于实时自动化装置外部,并且例如可以经由相应的外部端子输送给实时自动化装置。因此,例如如果将相应的现场总线线路与实时自动化装置连接,则还能将经由现场总线线路引导的现场总线时钟装置用作时钟发生器。例如,这种现场总线可以根据PROFINET或PROFIBUS标准来设计和设置。

实时数据总线的周期时间例如可以适配于实时自动化装置的相应的实时要求,或者还能适配于处于存储装置中的软件应用程序或者其他处于存储装置中的软件应用程序。因此,例如周期时间可以处于10或100微秒的范围内,或者还能处于1、10或100毫秒的范围内。在实时自动化装置或软件应用程序的相应时间不太关键的应用中,还可以设有秒范围中或甚至更大范围中的周期时间。

例如能将软件应用程序和/或根据本说明的一个或多个存储在存储装置中的其他软件应用程序设为总线变量源和/或总线变量接收者,并且相应地在总线数据库中注册。此外,还能将实时自动化装置外的软件应用程序或设备或模块设为总线变量源和/或总线变量接收者。在这种情况下,相应的软件应用程序、设备和/或模块能够以相应合适的方式与实时自动化装置的实时数据总线连接。

经由实时数据总线的通信例如能够以具有各周期时间长度的彼此相随的时间周期来结构化。在此,总线变量的值从总线变量源到一个或多个总线变量接收者的通信可以设计和设置成,使得将该值在第一总线周期之内传输至实时数据总线,其中,第一总线周期具有一个周期时间的长度。并且随后,将该值在跟随第一总线周期的预设的或能预设的总线周期从实时总线数据传输至多个总线变量接收者、至少一个总线变量接收者或所有总线变量接收者。在此可以提出:在跟随第一总线周期的总线周期内将该值传输或能传输至总线变量接收者之一。这例如同样在总线数据库中确定,尤其针对总线变量接收者确定或者也普遍地确定。这例如可以在总线数据库中根据相应的总线变量来确定。

此外,传输可以构造为,使得最迟必须在跟随第一总线周期的预设的或能预设的总线周期内将值传输至总线变量接收者。这还相应地存储在总线数据库中或可存储在其中。

因此,例如可以提出:在第一总线周期内传送的总线变量值在直接紧随其后的总线周期内被传输或能被传输至总线变量接收者。还可以提出:相应值给总线变量接收者的传送在下下个、下下下个或也在间隔开预设或能预设数量的总线周期的周期中才传输或能传输至总线变量接收者。

对传输总线变量的值的实时请求例如可以根据总线变量设置,使得例如在对于特定总线变量存在相对高实时要求的情况下,因此例如该总线变量的值至接收者的传输必须在直接紧随该值至实时数据总线的传输的总线周期中进行。对于其他的总线变量于是可以提出:至接收者的传输例如在与将该值传输至实时数据总线的多个总线周期间隔开的总线周期中进行或必须在该总线周期中进行,其中对于其他的总线变量例如存在不那么高的实时要求。

此外,可以提出:从总线变量源传输至实时数据总线的值被或者能被传输至一个或多个总线变量接收者一次、两次或任意多次。在此,这种值到总线变量接收者的多次传送可以分别根据值首次至相应的接收者的传输距值至实时数据总线的传输的时间间隔来进行。

例如,将值多次传输至总线变量接收者可以进行直到该接收者确认接收到该值为止。此外,仅当总线变量的值改变和/或例如改变了特定的预设的或能预设的百分比或值时才可以一次或多次地传送该值。

软件应用程序可以是可能在存储装置中运行或正运行的软件应用程序,其中软件应用程序在软件应用程序运行期间产生一种或多种功能。因此,软件应用程序例如可以设计和设置用于控制和调节过程、设备和/或设施。此外,软件应用程序例如可以至少还设计和设置用于执行或管理实时自动化装置与外部装置、例如传感器、执行器或类似设备的通信,例如也包括测量和/或控制值的相应的处理和/或评价。这种通信例如可以经由相应的连接线路、现场总线、互联网、以太网或无线连接(例如近场通信(NFC)、RFID、蓝牙、WLAN或蜂窝无线电)进行。

此外,软件应用程序还可以设计和设置用于数据评估、数据计算和/或数据处理或作为数据库系统。例如,软件应用程序还能被设计和设置为具有关于例如信号、数据等的计算、处理、加工和/或输出的确定性时间表现的实时软件应用程序。例如,因此该软件应用程序例如还有一软件应用程序可以具有实时控制器或实时控制装置、例如可编程逻辑控制器的功能,或包括这种功能。这样构成的软件应用程序例如可以设计和设置为例如所谓的“软PLC”和/或PLC仿真(PLC:“可编程逻辑控制器”),或者可以包括这种功能。

例如,于是可以在软件应用程序的运行期间将属于一个或多个总线变量的一个或多个值从软件应用程序传输至实时数据总线。以该方式,还能在软件应用程序在实时自动化装置内运行期间从实时数据总线将一个或多个总线变量的一个或多个值接收到软件应用程序处。

例如,可以通过实时自动化装置将软件应用在总线数据库中注册为用于一个或多个总线变量的总线变量接收者和/或总线变量源。例如,这可以在软件应用程序的实施、安装或激活期间进行或在实时自动化装置中启动软件应用程序的运行期间进行,或者还能在实时自动化装置的启动或开机期间进行。其在应用程序的情况下进行。在此,例如可以由实时自动化装置的操作系统或由软件应用本身来触发和/或执行注册。

在此,在数据库内关联的范围内,能将软件应用程序在总线数据库中注册为用于一个或多个总线变量的值的源和/或接收者。替换于此或与此并行地,注册还能设计和设置为,使得将作为源和/或接收者的软件应用程序与一个或多个总线变量相关联。

在此,总线变量可以通过数据库范围中的相应名称、标识代码和/或类似标识符示出。相应地,软件应用程序还能通过总线数据库中的相应标识符、名称和/或标识代码示出。在此,所突出的注册和/或总线数据库可以设计和设置为使得可以由实时数据总线例如从总线数据库中得出:将一个或多个源和/或一个或多个接收者的哪个与特定总线变量相关联。此外,还能将注册设计和设置为使得实时数据总线能从总线数据库中得出:特定软件应用程序对于一个或多个总线变量中的哪个起源的作用,和/或特定软件应用程序对于一个或多个总线变量中的哪个设置和设计为接收者。

因此,例如可以提出:软件应用程序设计和设置用于,从实时数据总线接收与总线变量相关联的值并将与第二总线变量相关联的值发送至实时数据总线,其中实时自动化装置还设计和设置用于将软件应用程序作为用于总线变量的总线变量接收者或总线变量源在总线数据库中注册。

此外,在一个有利的设计方案中可以提出:实时自动化装置还设计和设置用于将作为用于总线变量的源或接收者的软件应用程序的关联删除或禁用。此外,可以提出:实时自动化装置设计和设置成,在软件应用程序在实时自动化装置内禁用或删除的范畴中,也将作为用于总线变量的源或接收者的软件应用程序的关联禁用或删除。

在此,可以禁用软件应用程序作为源和/或接收者的关联,使得在总线数据库内移除作为用于相应的总线变量的源和/或接收者的软件应用程序的标识符或者将其标识为非活跃的。

此外还可以提出:将软件应用作为用于特定总线变量的源或接收者的关联作为总线数据库中的数据集来实现,尤其作为单独的数据集来实现。在该情况下例如可以提出:数据集在相应禁用的情况下被再次移除。

例如,能将软件应用程序的禁用理解为:例如停止软件应用程序的运行,或者将软件应用程序与实时数据总线脱离耦合,至少逻辑上脱离耦合。还能通过软件应用程序在总线数据库内的相应的标识符来进行该软件应用程序的禁用,该标识符例如表明:不再由实时数据总线从软件应用程序接收总线变量的值,或不再从实时数据总线将任何总线变量值传输至该软件应用程序。

此外,软件应用程序例如可以包括应用程序软件模块和接口软件模块,其中应用程序软件模块被设计和设置用于实施软件应用的功能,例如利用与总线变量相关的值来实施。此外,接口软件模块可以设计和设置用于在应用程序软件模块和实时数据总线之间传输与总线变量相关联的值。

该设计方案可以进一步提高实时自动化装置的灵活性,因为例如接口软件模块可以标准地使用或至少定期地在软件应用程序内使用,以便与实时数据总线通信。例如,借此可以实现:在创建新的软件应用程序时,分别仅必须创建或开发对应于该软件应用程序的期望功能的应用程序软件模块,并且因此为了该新的应用程序软件模块与实时数据总线通信仅还必须将该新应用程序软件模块与例如已经创建为标准模块的接口软件模块耦联。在此,接口软件模块例如还可以为了耦联到应用程序软件模块而设有标准化的接口。例如,可以根据OPC UA标准或其他相应的通信标准来设计和设置应用程序软件模块和接口软件模块之间的通信。

此外,在软件应用程序的这种模块化的设计方案中,应用程序软件模块例如可以设计和设置用于计算特定的总线变量的值,其中然后将值相应地从应用程序软件模块传输至接口软件模块,然后通过接口软件模块根据实时数据总线的数据和/或时间格式将相应的值传输至实时数据总线。相应地还能将应用程序软件模块设计和设置用于处理特定总线变量的值。然后,例如可以经由接口软件模块从实时数据总线接收总线变量的相应值,接口软件模块然后将值相应地传输至应用程序软件模块。

在本说明的范围中,软件应用程序和实时数据总线之间的通信的启动通常例如可以在启动和/或激活软件应用程序期间进行。此外,在软件应用程序已经运行时还能启动软件应用程序和实时数据总线之间的通信。在此,例如还可以通过在总线数据库中相应地设置活动信息来进行软件应用程序和实时数据总线之间的通信的启动,如下面在本说明的范围中还更详细地阐述。

在软件应用程序根据其作为总线变量源和/或总线变量接收者的功能在总线数据库中注册后,在实时数据总线中至少存在对于将软件应用程序结合到经由实时数据总线进行的通信的主要信息,并且实时数据总线可以实施相应的通信构成。在总线数据库中注册软件应用程序期间,例如还能设计、设置、删除和/或改变实时相信息、活动信息和/或重复信息。这下面在本说明的范围中还更详细地阐述。

在启动软件应用程序和实时数据总线之间的通信之后,于是例如能将已注册的总线变量的值从软件应用程序输出给实时数据总线。此外,然后软件应用程序可以为该通信识别已注册的总线变量的特定值并且从实时数据总线接收该值。

通常,能将软件应用程序或软件应用程序的接口软件模块设计和设置用于监听经由实时数据总线的通信。此外,软件应用程序或软件应用程序的接口软件模块根据本说明可以设计和设置用于识别总线变量的值,尤其对如下总线变量识别,对于总线变量将软件应用程序作为总线变量接收者在总线数据库中注册。为此,例如能将相应的地址信息添加到总线变量的相应值,软件应用程序和/或软件应用程序的接口软件模块从该值中识别:总线变量的相应的值是配属的并且对于软件应用程序确定为接收者。

在一个有利的设计方案中,能将实时自动化装置设计和设置用于控制设备或设施。在这种情况下,软件应用程序还可以设计和设置为用于运行用于控制设备或设施的控制程序的控制软件应用程序。此外,该软件应用程序或另外的软件应用程序还能设计和设置用于输入和/或输出关于设备或设施的控制的数据的输入输出软件应用程序。

在此,软件应用程序例如可以设置或设计用于对设备或设施进行实时控制。在此,控制软件应用程序例如可以设计和设置为,使得在运行控制软件应用程序运行时生成实时控制装置或可编程逻辑控制器的功能。这种控制软件应用程序例如可以设计和设置为例如所谓的“软PLC”或这种“软PLC”的实例。在此,控制程序例如可以是控制软件应用程序的组成部分,或者还能单独存在或存储在实时自动化装置的存储区域中。此外,控制软件应用程序还能不包括单独的控制程序或可以访问这种程序,而是整体上设计和设置用于控制、特别是实时控制设备或设施。

输入输出软件应用程序例如可以设计和设置用于经由实时自动化装置的相应的接口将数据输入给设备或设施或从设备或设施输出。在此,该接口例如可以构造为用于将数据和/或值输出给设备或设施的模拟或数字接口或者例如也设计和设置为用于与设备或设施通信的所谓的现场总线接口、以太网接口或还有互联网接口。

还可以提出实时自动化装置包括:根据本说明设计和设置为控制软件应用程序的至少一个软件应用程序、以及根据本说明设计和设置为输入输出软件应用程序的至少一个软件应用程序。借助这样构造的实时自动化装置,例如可以进行实时自动化装置与要控制的设施或与要控制的设备经由一个或多个输入输出软件应用程序和实时自动化装置的相应接口的通信。随后,在此由至少一个输入输出软件应用程序将例如从设备或设施接收到的数据经由实时数据总线传输至一个或多个控制软件应用程序。然后,可以在一个或多个软件应用程序中计算相应的控制数据,其中然后可以经由实时数据总线将该控制数据传输至输入输出软件应用程序,并且然后能从输入输出软件应用程序经由相应的接口再次输出给设备或设施。以该方式能以也如上所示构造的实时自动化装置进行设备或设施的控制。

然后,以该方式构造的实时自动化装置例如能相对简单地通过如下方式设有新的功能和/或新的通信选项,即例如为了扩展功能将另一控制软件应用程序安装在实时自动化装置的存储装置中。另一控制软件应用程序相应地根据设计方案在总线数据库中注册为关于总线变量的值的源和/或接收者。在此,必要时还在总线数据库中引入新的总线变量。在另一控制软件应用程序的相应的注册的范畴中,还可以改变和/或移除至今为止已经在实时自动化装置中实施的软件应用程序的注册。因此,经由相应地适配总线数据库中的相应注册,能相对容易地添加实时自动化装置的新功能。

在此,例如可以进行新功能的该实施,使得实时自动化装置的已经存在的或当前的功能少量地被损害或也几乎不被损害。例如,这还通过如下方式实现,即功能的扩展最终除了少量影响运行的新软件应用程序安装外,基本上基于总线数据库中注册的改变。

相应地,还可以通过在实时自动化装置中安装另一输入输出软件应用程序来扩展通信选项。

在另一个有利的设计方案中,在总线数据库中将实时信息与软件应用程序相关联。在此可以提出:实时数据总线设计和设置为,在考虑实时信息的情况下,将与作为总线变量接收者的软件应用程序相关联的总线变量的值传输至软件应用程序。

这进一步提高了实时自动化装置的灵活性,因为将特定总线变量的值传输至软件应用程序可以适配于软件应用程序的实时要求。

在此,实时信息可以在将软件应用程序在总线数据库中注册的范围中关联或确定。此外,例如还能在较晚的时间点设置、设定和/或还有改变实时信息。

例如可以提出:实现或者存在经由相应的接口从外部装置到实时数据总线的访问。然后,例如可以经由该外部装置来设计实时数据总线和/或还可以设置或改变实时数据总线的一个或多个参数。此外,例如能够以该方式查看、设置、删除和/或改变总线数据库中的条目。所提及的实时信息例如能够以该方式经由这种外部装置来设置、删除、改变和/或分配给软件应用程序,或者这种分配能被移除或禁用。

实时信息例如可以是如下信息,该信息涉及:值到与实时信息相关联的软件应用程序的传输在预设的时间或时段期间、在预设的或能预设的总线周期数量的范围内或根据实时数据总线的相应的时间上的预设是否必须传输至软件应用程序。此外,实时信息还可以包含以下信息:在将值传输至软件应用程序时,无需考虑时间上的或关于最大数量的总线周期的预设。然后,例如能将这种数据的传输设计和设置为非实时传输。

在此,实时信息可以包括关于时间或时段的信息,该时间或时段应位于将总线变量的值传输至实时数据总线的时间点和该值传输至软件应用程序的时间点之间,其中针对总线变量将软件应用程序关联为接收者。

此外,实时信息可以包括关于总线周期数量的信息,该数量最大或通常应位于其中将总线变量的值传输至实时数据总线的总线周期和在其之内将该值传输至软件应用程序的总线周期之间,其中对于总线变量将软件应用程序作为接收者关联。在此,数量例如还能为0,这表示:特定总线变量的值在紧随传送总线周期之后的总线周期中必须传输至软件应用程序,其中对于特定的总线变量将软件应用程序注册为接收者。

此外可以提出:在总线数据库中,将总线变量的软件应用程序关联为总线变量接收者,并且将实时信息与该关联相关。此外,还能将实时信息与总线数据库中的总线变量相关联。在此,实时数据总线还可以设计和设置成,使得总线变量的值在考虑实时信息的情况下传输。此外可以提出:在将实时信息与总线变量的组合关联且将软件应用程序注册为总线变量接收者的情况下,在考虑实时信息的情况下,将总线变量的值传输至软件应用程序。

在此,在总线数据库内构建实时信息以及实时信息的设计选项和在考虑实时信息的情况下进行数据传输可以根据本说明来设计和设置,或者相应地类似于在本说明范围内示出的设计方案来设计。

实时信息例如可以包括关于待遵守的时间、特别是待遵守的最大时间的时间信息,该时间位于将值传输至实时数据总线和从实时数据总线将值传输至软件应用程序之间。在此,时间信息还可以包括最小待遵守的时间,使得值的传送必须位于最小待遵守的时间和待遵守的时间之间。

实时信息还可以包括关于总线周期数量的信息,该数量的总线周期位于、必须位于或者应当最大位于将值传输至实时数据总线的总线周期和将值传输至软件应用程序的总线周期之间。

在此,总线周期的数量可以表示总线周期的最大数量,最大数量位于将值传输至实时数据总线的总线周期和将该值传输至软件应用程序的总线周期之间。此外,总线周期的数量还能预设总线周期的固定数量,在固定数量的总线周期之后必须将相应的值传输至软件应用程序。在此,这种上面列举的总线周期数量例如还能为0,这表示:将值传输至接收者软件应用程序在如下总线周期内进行,总线周期紧随在其之内将值传输至实时数据总线的总线周期之后。

此外,实时信息还能包括如下的信息,即对于在将值传输至实时数据总线和将值从实时数据总线传输至软件应用程序之间的总线周期的数量和/或时间,通常需考虑预定义。这种类型的实时信息例如可以是如下信息,即对于相应的总线变量和/或软件应用程序,必须将与其连接的通信设计和设置为经由实时数据总线的实时通信。

在此,同样可以在实时信息的范围内存储或者还通常结合实时数据总线确定或存储该实时信息如何或者以何种时间预定义进行的其他细节。用于经由实时数据总线进行实时数据传输的通常的时间预设的这种装置例如还能经由相应的外部装置和实时数据总线的相应接口来设计或是经由其设计的。

此外,实时信息还可以包括以下信息,即对于在将值传输至实时数据总线和将值从实时数据总线传输至软件应用程序之间的总线周期的数量和/或时间,通常无需考虑预定义。这例如对应于如下信息,即在将相应的总线变量的值相应地传输至特定的软件应用程序时无需实时数据传输。总线变量的相应的值的这种传输例如于是可以进行为,使得实时数据总线可以适配其他预定义、即例如当前通信负载或另外的预定义的该传输。例如,能够以如下时段由实时数据总线传输这种非实时数据,在该时段中经由实时数据总线完全不传输具有实时要求的数据或传输相对少量的具有实时要求的数据。

还可以在总线数据库中将重复信息与软件应用程序相关联,其中于是实时数据总线可以设计和设置为,在考虑重复信息的情况下实施或者可以实施将总线变量的值传输至软件应用程序的频率。

在此,在总线数据库中注册软件应用程序的范围中还可以进行重复信息与软件应用程序的关联,或者还经由与实时数据总线装置外部的装置根据本说明进行。在此,重复信息可以包括如下信息,即将总线变量的特定值传输至软件应用程序的频率如何。特别地,重复信息可以包括如下的信息,即总线变量的特定值在其传输至实时数据总线之后传输至相应的软件应用程序的频率如何。特别地,重复信息还可以包括如下的信息,即总线变量的未改变的值或特定总线变量的基本上未改变的值传输至软件应用的频率如何。在此,重复信息还可以包括如下的信息,即总线变量的值必须至少改变何种量或值或百分比以触发将现在新的值重新传输至软件应用程序。关于这种最小值变化以触发重新传输总线变量的新值的这种信息也例如可以通常结合实时数据总线或总线数据库存储,并且还例如通过外部装置根据本说明来设计或能够设计。

因此,例如可以通常将总线变量的特定值在其传输至实时数据总线之后传输至相应的软件应用程序仅一次或确定的或可确定的数量次。此外,例如可以通常将总线变量的特定的、未改变的或基本上未改变的值传输至软件应用程序仅一次或确定的或可确定的数量次,并且然后,当该值与前值、例如与上述预定义不同时,才再次将又对应于预定义的新值传输至软件应用程序。此外还可以提出:例如根据实时信息或也根据实时数据总线中的通常的预定义定期地将总线变量的相应当前值传输至软件应用程序。

在总线变量的总线数据库中还能将软件应用程序关联为总线变量接收者,并且然后还根据本说明将重复信息与该关联来关联。在这种情况下,实时数据总线然后还可以设计和设置成,使得将所述总线变量的值传输至软件应用程序的频率考虑重复信息。

在总线数据库中,还可以根据本说明将重复信息与特定的总线变量相关联,其中然后实时数据总线设计和设置成,在考虑重复信息的情况下实施总线变量的值的传输的频率。

在此,可以根据本说明设计和设置在传输总线变量的值时对重复信息的考虑。

此外,在总线数据库中还能将活动信息与软件应用程序相关联。

活动信息例如还能同样在总线数据库中注册软件应用程序的范围中设计或设置。活动信息还可以通过用于设计和管理实时数据总线的相应的外部装置结合实时数据总线或在总线数据库中确定、规定、检测、删除或改变。活动信息例如可以包括如下的信息,即软件应用程序被主动地考虑作为在总线数据库中确定的总线变量的值的源和/或接收者。活动信息还能包括如下的信息,即在经由实时数据总线通信总线变量的值时无需考虑软件应用程序。因此,例如利用这种活动信息可以激活或禁用软件应用程序。因此,例如可以灵活地接通和切断软件应用程序的相应功能。

更普遍的是,实时数据总线例如可以实现为实时自动化装置内的软件应用程序。软件应用程序例如可以基于实时自动化装置的操作系统、例如实时操作系统来运行或可基于其运行。在该情况下,可以基于在软件应用程序之间的通信来运行在根据要保护的软件应用程序以及相应的实时数据总线应用程序之间的通信。这种通信例如可以基于实时自动化装置的操作系统、特别是实时自动化装置的实时操作系统来进行或设计和设置。

实时数据总线例如还能构造为具有相应的数据线路和硬件组件和硬件模块的硬件部件。实时数据总线例如还能包括硬件部件、例如相应的线路、接口部件和/或相应的电路或组件、例如硬件模块或ASIC以及一个或多个软件部件的组合。软件部件例如可以是所谓的总线控制器或用于控制实时数据总线的类似的软件部件。于是,总线数据库例如可以是提出的软件部件的一部分,或还能被单独存储在实时自动化装置的存储装置中。

此外,能将实时自动化装置例如设计和设置用于将实时数据总线注册为总线变量接收者或者注册为用于总线变量或总线数据库的其他总线变量的总线变量源。该注册例如可以是实时数据总线本身的特性,或者还能由实时自动化装置的操作系统来执行,或者可以由其来执行。

以这种方式,例如可以实现:可以经由实时数据总线发布关于实时数据总线的信息、例如其参数、已注册的总线变量、已注册的总线变量源和/或总线变量接收者、相应的实时参数、重复参数和/或活动信息或类似的信息。以该方式,可以使这种信息例如对于该软件应用程序或还有实时自动化装置的存储区域中的其他软件应用程序可访问。此外,以这种方式,实时数据总线还能是总线变量的经由实时数据总线通信的值的接收者,进而例如接收与实时数据总线关联的软件应用程序的信息或由该软件应用程序提供的信息。

借助于该设计方案,例如能将信息提供给实时数据总线外部的用户或还有软件应用程序使用,并且正好相反,还能将实时自动化装置中的软件应用程序以及外部装置的信息提供给实时数据总线。因此,例如可以在实时数据总线处执行设定,或者可以设置、更改或还有删除相应的参数。这例如可以在实时自动化装置中的一个或多个软件应用程序的协作下进行,软件应用程序设计和设置用于例如经由以太网和/或互联网连接与外部装置进行通信。这种软件应用程序例如可以包含Web(网页)服务器或OPC UA服务器的功能。

上述目的还由一种具有第一和第二实时自动化装置的实时自动化系统来实现,实时自动化装置分别根据本说明构造,其中第一实时自动化装置的实时数据总线和第二实时自动化装置的实时数据总线经由总线连接段连接,使得在将值从第一实时自动化装置(100)之内的总线变量源传输至第一实时自动化装置(100)的实时数据总线(110)的情况下,该值在预设的或能预设的时间或时段之内传输或能传输至第二实时自动化装置(200)内的总线变量接收者。

此外,上述目的还通过一种具有第一和第二实时自动化装置的实时自动化系统来实现,实时自动化装置分别根本说明构造,其中第一实时自动化装置的实时数据总线和第二实时自动化装置的实时数据总线经由总线连接段连接,使得在第一总线周期内将值从第一实时自动化装置之内的总线变量源传输至第一实时自动化装置的实时数据总线的情况下,该值随后在跟随第一总线周期的预设的或能预设的总线周期内从第二实时自动化装置的实时数据总线传输或能传输至第二实时自动化装置内的总线变量接收者。

这种实时自动化系统通过如下方式提供关于由这种自动化系统进行控制方面的灵活性,即通过多个实时自动化装置实现灵活地耦联或能够耦联与相应的实时数据总线的软件应用之间的实时通信。

在此,总线连接段例如可以经由第一和第二实时自动化装置处的相应的接口分别连接于相应的自动化装置的实时数据总线。在此,经由总线连接段可以根据实时通信协议来进行通信。这种协议例如可以设计和设置为所谓的现场总线协议、例如PROFINET协议、PROFIBUS协议或类似的现场总线协议。此外,通信协议还能是基于实时以太网,并且例如基于根据IEEE 802.1标准化的“时间敏感网络”(TSN)协议来进行。在这种情况下,经由总线连接段进行的通信可以例如设计和设置为基于TSN的OPC UA通信或基于TSN的PROFINET通信。

总线连接元件例如可以设计和设置为第一和第二实时自动化装置之间的电缆或光缆连接元件,或者例如也设计和设置为第一和第二实时自动化装置的限时供应的接口之间的无线的区段或无线通信。

在此,第一和第二自动化装置的实时数据总线、总线变量源或总线变量接收者、总线周期以及经由实时数据总线对总线变量的值的传输还可以根据本说明设计和设置。尤其在预设的或能预设的时间或时段内或在预设的或能预设的跟随第一总线周期的总线周期内传输总线变量的值可以根据本说明来设计和设置。

上述目的还由一种用于激活软件应用程序的方法实现,软件应用程序根据本说明被设计和设置并且被存储或能被存储在根据本说明的实时自动化装置的存储区域中。在此,软件应用程序设计和设置用于将与第一总线变量相关联的值传输至实时自动化装置的实时数据总线和/或用于从实时数据总线接收与第二总线变量相关联的值。在此该方法包括如下步骤:

a1.将软件应用程序在总线数据库中注册为用于第一总线变量的总线变量源,和/或将软件应用程序在总线数据库中注册为用于第二总线变量的总线变量接收者;

b1.启动软件应用程序和实时数据总线之间的通信。

在此,可以根据本说明设计和设置将软件应用程序在总线数据库中注册为总线变量源和/或总线变量接收者。总线数据库本身以及实时数据总线还能根据本说明设计和设置。

此外,可以提出:在所提出的方法步骤b1.之前,安装、实例化、启动和/或激活软件应用程序。此外,可以根据本说明将软件应用程序设计和设置为控制软件应用程序,其中在用于激活软件应用程序的所描述的方法的运行期间也启动在控制软件应用程序内运行控制程序。

上述目的还通过一种用于禁用软件应用程序的方法实现,其中软件应用程序根据本说明被设计和设置并被存储或能被存储在根据本说明的实时自动化装置的存储区域中,并且其中软件应用程序在总线数据库中注册为用于第一总线变量的总线变量源,和/或将软件应用程序在总线数据库中注册为用于第二总线变量的总线变量接收者。在此该方法包括如下步骤:

a1.结束软件应用程序和实时数据总线之间的通信;

bl.禁用将软件应用程序在总线数据库中注册为用于第一总线变量的总线变量源和/或禁用将软件应用程序在总线数据库中注册为用于第二总线变量的总线变量接收者。

在此,总线变量、总线变量源、总线变量接收者、总线数据库和实时数据总线可以根据本说明设计和设置。还能根据本说明设计和设置将软件应用程序注册为总线变量源和/或总线变量接收者。

例如通过结束软件应用程序的运行、禁用软件应用程序或例如通过相应的设置在实时数据总线的总线数据库中的活动信息,可以结束软件应用程序和实时数据总线之间的通信。在结束软件应用程序和实时数据总线之间的通信期间或在其结束之后,不再将总线变量的值从软件应用程序传输至实时数据总线,并且例如也不再从实时数据总线接收相应的值。此外,在结束软件应用程序和实时数据总线之间的通信期间,例如还能通过软件应用程序结束经由实时数据总线进行的通信的可能存在的读取。

例如可以通过删除实时数据总线的总线数据库中的相应的数据组和/或关联来进行软件应用程序的注册的禁用。此外,还可以通过设置或移除与软件应用程序相关联的活动信息或相应的活动信息来进行软件应用程序的禁用,其中相应的活动信息与软件应用程序作为总线变量源或总线变量接收者的关联相关。

在此,用于禁用软件应用程序的方法还设计和设置为,使得在方法步骤b1.之后,卸载、停止和/或禁用软件应用程序。此外,软件应用程序根据本说明可以设计和设置为控制软件应用程序,其中在上述方法运行期间必要时停止在控制软件应用程序范围中运行的控制程序。

在从属权利要求中得出其他有利的设计方案。

附图说明

下面示例性地参考附图更详细地阐述本发明。

附图示出:

图1示出实时自动化装置的示例;

图2示出实时自动化系统的示例;

图3示出对于根据图1的实时自动化装置的经由实时数据总线传输总线变量的值的时间走向;

图4示出用于根据图1的实时自动化装置的总线数据库条目的示例。

具体实施方式

图1示出用于控制设施500的实时控制器100,该设施由机器人510和包装机520构成。在此,实时控制器100是根据本说明的实时自动化装置的示例。

实时控制器100包括其中安装有第一PLC应用程序150和第二PLC应用程序154的存储区域102,第一和第二PLC应用程序包括设计和设置用于控制设施500的控制程序。此外,第一输入输出应用程序156以及第二输入输出应用程序158安装在存储区域102中,其中第一输入输出应用程序156设计和设置用于经由实时控制器100的现场总线接口140和相应的现场总线与机器人510通信。第二输入输出应用程序158设计和设置用于经由实时控制器100的数字的输入输出接口142和相应的连接线路与包装机520通信。

实时控制器100还包括具有总线数据库112的实时数据总线110。在此,实时数据总线110包括用于与实时数据总线110实时通信数据的实时接口116,以及用于与实时数据总线110进行非实时通信的MQTT接口114(MQTT:消息队列遥测传输)。

第一PLC应用程序和第二PLC应用程序以及第一输入输出应用程序和第二输入输出应用程序分别包括:用于相应的应用程序150、154、156、158与实时数据总线110之间经由所述实时数据总线的实时接口116进行实时通信的实时总线接口模块151。

在此,第一PLC应用程序150还构造为,使得在应用程序150内在产生PLC应用程序150的功能的PLC软件模块(图1中未示出)和实时总线接口模块151之间的通信经由OPC UA接口152进行。该设计例如通过如下方式简化了创建实时控制器100的软件应用程序:即例如总线接口模块151已经可以作为标准化的软件部件存在,并且经由所示出的OPC-UA接口152实现对总线接口模块151的标准化的访问。

此外,用于仿真设施500的设备仿真应用程序164安装在实时控制器100的存储区域102中,所述设备仿真应用程序同样包括用于与实时数据总线110经由其实时接口116进行通信的总线接口软件模块151。此外,将Web服务器应用程序160以及OPC-UA接口应用程序162安装在存储区域102中,所述Web服务器应用程序和所述OPC-UA接口应用程序能够通信,以与实时数据总线110经由其构造为MQTT接口114的非实时接口114进行通信。为了与外部装置、即例如Web客户端640或位于云610中的装置进行通信,Web服务器应用程序160和OPCUA接口应用程序162经由LAN接口130与户联保连接,所述互联网在图1中通过连接线路602用符号表示。

用于与实时数据总线110经由其非实时接口114进行非实时通信的MQTT协议(MQTT:(消息队列遥测传输))是标准化的开放的消息协议,所述消息协议良好地适合于用于控制和监控设备的机器间通信。上述的并且还已经在本说明的范围中多次提及的通讯协议“OPC-UA”、也称为“OPC统一体系架构”是一种通信协议,所述通信协议由所谓的“OPC基金会”标准化,并且也定期扩展(例如,参见:www.opcfoundation.org)。

实时控制器100还包括实时操作系统120和实时时钟122,所述实时时钟用作用于实时控制器100的基本的时钟源。实时时钟122的相应的时钟周期例如用于提供用于实时数据总线110的相应的周期时间和总线周期。此外,实时时钟还能用作相应的时钟周期、周期时间或用于例如实时操作系统120和/或所实施的软件应用程序150、154、156、158、160、162、164的其他实时功能、类似的时间参量的基础。

为了设计和编程第一PLC应用程序150和第二PLC应用程序154,还设有工程系统630,所述工程系统经由互联网602和LAN接口130实现对所述应用程序150、154的访问。借助于所述工程系统630,例如可以设置和改变第一和第二PLC应用程序150、154的参数。此外,借此还可以创建在所述应用程序150、154中运行的控制程序并且在所述应用程序中实施。此外,还可以经由工程系统630来设计第一和第二输入输出应用程序156、158,并且设置或改变所述应用程序的相应参数。

为了清楚起见,在此应注意:图1中绘制在实时控制器100内的、处于相应的接口130、140、142和相应的软件应用程序150、154、156、158、160、162、164还有与实时数据总线110之间的数据连接线可理解为符号的或逻辑的通信路径。相同的情况适用于各种软件应用程序和实时数据总线110之间的连接线。

所谓的总线变量310、320、330用于经由实时数据总线110进行通信。结合图3和图4更详细地阐述了总线变量和经由实时数据总线110进行的所述总线变量的值的通信。基本上,在实时控制器100的存储装置102中实施的软件应用程序150、154、156、158、160、162、164与实时数据总线110之间以及必要时还有它们彼此之间的通信基于:对于不同的总线变量分别在实时数据总线110的总线数据库中存储:软件应用程序150、154、156、158、160、162、164中的哪个将哪个总线变量310、320、330的值提供给实时数据总线110,并且所提到的软件应用程序150、154、156、158、160、162、164中的哪一个或哪几个对于总线变量310、320、330中的哪个注册为总线变量的值的接收者。该通信概念在原理上与称为“发布订阅”的通信概念类似。在一个有利的设计方案中,例如这种“发布订阅”通信概念可以直接在实时数据总线上实施。

此外可以提出:Web服务器应用程序160包括Web服务器,并且Web服务器应用程序160还作为用于所有在总线数据库112中注册的总线变量310、320、330的接收者登记在总线数据库112中。以该方式,在Web服务器应用程序160中分别存在不同的总线变量310、320、330的当前值,所述值然后例如可以由外部Web客户端640经由互联网602和实时控制器100的LAN接口130从Web服务器应用程序160的Web服务器中调用或者可以调用。此外,Web服务器应用程序160还能在总线数据库112中注册为用于特定总线变量的源。这例如可以实现:将特定的值从Web服务器应用程序160传输至实时数据总线110,所述值然后可以由实时数据总线110本身处理,或者设置用于传输至在实时控制器100的存储区域102中的软件应用程序150、154、156、158、160、162、164中的相应的一个或多个。以类似的方式,由例如云160中的外部装置经由互联网602和LAN接口130借助于OPC-UA应用程序162经由OPC0UA协议访问实时数据总线110。

实时数据总线110本身的设计包括总线数据库122的设计或适配经由总线工程系统620来进行,所述总线工程系统经由互联网602和实时控制器100的LAN接口130具有对实时数据总线110经由其MQTT接口114进行访问。为此,总线工程系统620直接使用MQTT协议本身,以设计、监视或也改变实时数据总线110的参数、即例如周期时间或传输参数,以及还有总线数据库112的条目。

为了控制设施500设有相应的总线变量310、320、330、340并且相应地注册在总线数据库112中。原则上,输入输出应用程序156、158起总线变量的值的源的作用,所述源对应于设施500中的相应的传感器。然后,将相应的传感器值从输入输出应用程序156、158传输至实时数据总线110。第一PLC应用程序150包括用于设施500的控制程序,所述控制程序至少还需要所述传感器值。所述值从输入输出应用程序156、158传输至实时数据总线,并且然后经由所述实时数据总线传输至第一PLC应用程序150。然后,从所述值中,PLC应用程序150例如可以计算出用于设施500的控制值,所述值然后经由实时数据总线110传输至第一输入输出应用程序156,并且由所述第一输入输出应用程序然后例如还经由实时控制器100的现场总线接口140传输至设施500的机器人510。

结合下面的图3和图4更详细地阐述尤其关于在此使用的总线变量概念的所描述的实时传输的精确的流程。

此外,可以并行于设施500的实际运行,在设备仿真应用程序164中在实时控制器100的存储区域102中可以运行该设施500的仿真。以此方式,例如可以通过将设备仿真应用程序164中的设施仿真的所求出的值与设施500的实际传感器值进行比较,识别出设施500中的工作。此外,能从设备仿真164中获取实际设施500的164个参数值,所述参数值会引起设施500的更有利的运行。

图2示出实时控制器系统700,所述实时控制器系统是根据本说明的实时自动化系统的示例。实时控制器系统包括已经在图1中示出的实时控制器100以及第二实时控制器200,所述第二实时控制器的结构基本上对应于图1中示出的实时控制器100。关于实时控制器100,在图2中没有示出所有在图1中示出的细节,以便使附图更清楚。

第二实时控制器200同样包括存储区域202,在当前的实施例中,在所述存储区域中安装第一和第二输入输出应用程序156、158,所述输入输出应用程序根据图1中示出的设计方案安装在实时控制器100中。在图2所示的实施例中,这两个输入输出应用程序156、158未安装在实时控制器100中。

此外,第二实时控制器200同样包括具有相应的总线数据库212的实时数据总线210,以及同样包括实时操作系统220和相应的时钟发生器222,所述时钟发生器又用作在第二实时控制器200中使用的实时时钟或时钟周期。

第二实时控制器200还又包括LAN接口230,第二实时控制器200经由所述LAN接口又与互联网602连接或可与其连接。此外,第二实时控制器200包括现场总线接口240以及数字的输入输出接口242,第二实时控制器200借助所述输入输出接口与设施500连接。在此,设施500的机器人510经由现场总线接口240与第二实时控制器200连接,而包装机520经由数字的输入输出接口242与第二实时控制器200连接。

此外,实时控制器100包括数据总线接口118,经由所述数据总线接口将实时控制器100的实时数据总线110与数据总线连接线缆400连接。第二实时控制器200还包括相应的数据总线接口218,第二实时控制器200的实时数据总线210同样经由所述数据总线接口与数据总线连接线缆400连接。

在此,实时控制器100、200的数据总线接口118、218设计和设置成,使得也在实时控制器100的应用程序150、154之一和第二实时控制器200的应用程序156、158之间可以进行或进行实时数据传输。为此,实时控制器100、200的数据总线接口118、218设计和设置呈,使得还能经由数据总线连接线缆400实时传输总线变量的值。

在此,数据总线接口118、218还可以设计和设置成,使得也经由数据总线连接线缆400获得关于数据总线的总线周期和时钟时间的相应的信息。例如,这可以实现为,使得实时控制器100的实时数据总线110与第二实时控制器200的实时数据总线210时钟同步运行,其中经由实时控制器100的和第二实时控制器200的两个数据总线接口118、218的通信来设计和获得时钟同步。

此外,为了在实时控制器100和第二实时控制器200之间对总线变量的值进行通信,可以提出:提供实时控制器100的总线数据库112中的条目,尤其实时控制器100的总线数据库112中还有第二实时控制器200的总线数据库212中的所有条目,并且反之亦然。例如,两个总线数据库112、212的该同步例如同样可以经由数据总线接口118、218以及数据总线连接线缆400进行。此外,这种同步例如还可以经由两个实时控制器100、200的MQTT接口114、214以及相应地经由互联网602可能包括其他部件、即例如总线工程系统620(图2中未示出)来实现。

可以根据诸如现场总线协议的实时通信协议来设计和设置经由总线接口118、218和数据总线连接线缆400在两个实时控制器100、200之间的数据通信。此外,该通信还可以根据现场总线标准进行,即例如基于根据IEEE 802.1标准化的TSN通信(TSN:时间敏感网络)的PROFINET来进行,或者也根据基于TSN通信的OPC-UA通信进行。

通过还在两个实时控制器100、200的两个总线数据库112、212中用于总线变量的数据源和/或数据接收者也分别已知:何者处于相应另一实时控制器100、200中并且经由总线接口118、218和数据总线连接线缆400提供两个实时控制器100、200的实时数据总线110、210之间的同步的实时通信,借助控制器系统700还能对总线变量的值进行通信,其中至少一个总线变量源和至少一个总线变量接收者位于实时控制器100、200中的不同控制器中。

此外,通过实时控制器100、200中的总线数据库112、212的上述同步还可行的是:应用程序从实时控制器100、200之一移动到实时控制器100、200中的另一个中,而不必停止整体功能的运行或者没有显著地损害。因此,第二PLC应用程序例如可以通过如下方式从实时控制器100移动到第二实时控制器200中:即在第二实时控制器200中安装并启动第二PLC应用程序154的副本,并且在该范畴中,第二PLC应用程序154在第二实时控制器200中的总线数据库212中注册,并且然后激活其功能。然后,可以相应地在实时控制器100的总线数据库112中移除该应用程序的注册,并且在实时控制器100中卸载或者禁用第二PLC应用程序154的原始副本。随后,总线数据库112、212中的相应的同步又确保两个实时控制器100、200中的同步的注册状态。以这种方式,例如能将应用程序从一个控制器100、200移动到另一控制器100、200中,而不必停止或损害或显著地损害控制器系统700的功能。

图3示出在第一和第二PLC应用程序150、154和第一和第二输入输出应用程序156、158参与下经由用于控制设施500的根据图1的实时控制器100的实时数据总线110进行的通信的短的时段。

在此,基于虚拟场景,其中机器人510的抓持器应从包装机520提取完成的产品,其中在包装过的产品在包装机520中处于最终止挡传感器处之前,所述抓持器应已经开始其运动。在此,机器人510的抓持器应逐步运动,其中机器人510总是获得下一运动步骤的最终位置作为受控变量。在此,为了简单起见,总是应仅考虑机器人510的抓持器的一次的线性运动。

对于该运动控制基于四个总线变量:第一变量“位置值”310,所述位置值与机器人510的抓持器的位置的各当前值相关联;第二变量“传感器值”320,所述传感器值与包装机520中的产品的最终位置的触摸传感器相关联;第三总线变量“目标位置”330,所述目标位置分配给机器人510的抓持器的下一运动步骤的由第二PLC应用成形计算的目标位置;以及第四总线变量“受控变量”340,将用于机器人510的抓持器的运动的当前的控制变量分配给所述受控变量。在此,由第一PLC应用程序150基于总线变量“位置值”310、“传感器值”320以及“目标位置”330的各当前值经由在第一PLC应用程序150中运行的控制程序求出总线变量“受控变量”的各新值。

现在,图3示出用于求出和传输总线变量“受控变量”340的新值的周期,所述受控变量如其结合在上面示出的虚拟场景所阐述。为此,在图3中沿着时间轴线示出三个在实时数据总线110中直接依次运行的总线周期126,所述总线周期通过四个总线时钟信号124形成。

对于现在描述的总线通信,在实时数据总线110的总线数据库112中对于总线变量“位置值”310将第一PLC应用程序等级为数据源,而对于所述总线变量310将第一PLC应用程序150注册为数据接收者。对于总线变量“传感器值”320,在总线数据库112中将第二个输入输出应用程序158注册为数据源,而将第一PLC应用程序150注册为数据接收者。对于总线变量“目标位置”,将第二PLC应用程序154在总线数据库112中注册为数据源,而同样地对于所述总线变量330将第一PLC应用程序150在总线数据库中注册为总线变量接收者。并且对于总线变量“受控变量”340,将第一PLC应用程序150在总线数据库112中注册为数据源,而将第一输入输出应用程序156在总线数据库112中对于所述总线变量340注册为总线变量接收者。

在此,在该示例中,实时数据总线110设计和设置为,使得将在第一总线周期内传输至实时数据总线110的总线变量的值在直接随后的总线周期中根据总线数据库112传输至一个或多个接收者。此外,实时数据总线110设计和设置成,使得将总线变量310、320、330、340的分别当前传输述给实时数据总线110的值根据总线数据库112中的注册仅传输至一个或多个接收者一次。

现在,根据图3,由第一输入输出应用程序156将机器人的抓持器的当前位置的当前由机器人510检测到的值作为与总线变量位置值310相关联的值在第一总线周期中传输至实时数据总线310。相应地,由第二输入输出应用程序158将与总线变量传感器值320相关联的当前值同样在第一总线周期之内传输数给实时数据总线320。同样地,在第一总线周期内,随后还有第二PLC应用程序154将总线变量330的当前值传输至实时数据总线110。

现在,根据实时数据总线110的总线数据库112中的条目已知:对于所述总线变量的全部三个当前值分别将第一PLC应用程序150注册为总线变量接收者。因此,在直接随第一总线周期的第二总线周期中,根据图3,将总线变量“目标位置”330、“传感器值”320和“位置值”310的当前值从实时数据总线110传输至第一PLC应用程序150。

所述值现在通过在那里运行的控制程序在第一PLC应用程序150内处理,并通过控制程序计算总线变量“受控变量”340的当前值。对于控制程序的运行,第一PLC应用程序150需要如下周期时间,所述周期时间时移地在图3中登记。在当前的情况下,第一PLC应用程序150的周期时间128短于总线周期时间,使得总线变量“受控变量”340的当前计算的值同样还在实时数据总线110的第二总线周期126中从第一PLC应用程序150传输至实时数据总线。在直接紧随其后的第三总线周期126中,将总线变量“受控变量”340的当前值传输至在总线数据库112中为此注册为总线变量接收者的第一输入输出应用程序156,并经由现场总线接口140由所述第一输入输出应用程序输出给机器人510。

图4示出针对上面结合图3详细阐述的通信场景的根据图1的实时控制器100的实时数据总线110的总线数据库112中的当前条目的示例。

在图4中示出表格“应用程序列表”360,所述应用程序列表包含如下信息中的一些,所述信息有关存储在实时控制器100的存储装置102中的软件应用150、154、156、158、160、162、164存储在实时数据总线110的总线数据库112中。在此,该应用程序列表360在称作“应用程序名称”361的第一列中示出相应的软件应用程序的相应的名称或相应的命名。相应的软件应用程序能够以所述应用程序名称361例如在总线数据库112中注册。

实时控制器100配设有所谓的多核处理器,所述多核处理器包括具有多个计算核的微处理器。在此,在应用程序列表360中的列“核”662中,对于实时控制器100的存储区域102中的每个软件应用程序已知:在哪个核上,所述多核处理器执行该软件应用程序。以该方式,例如可以在总线数据库112中确定:在实时控制器的多个可行的计算资源的哪个上执行特定的软件应用程序。

在另一列“RT信息”366中列出与相应的软件应用程序相关联的实时信息。在此,在软件应用程序中的参与经由实时数据总线110进行的实时通信的软件应用程序中添加RT标识符(RT:实时)。相反,在软件应用程序中的不需要实时通信的软件应用程序中在列RT信息366中添加非RT标识符。RT信息366是根据本说明的实时信息的示例。

在最后一列(活动)368中,列出关于相应的软件应用程序的活动信息。在此,所述信息构造为,使得软件应用程序中的在列活动368中具有“Y”的软件应用程序主动运行,并且参与经由实时数据总线110的通信。软件应用程序的在活动列368中具有“N”的软件应用程序刚好没有主动地在实时控制器100中运行,和/或不参与经由实时数据总线110的通信。

在图4中的名称为“应用程序变量关联”350的另一表格中示出如下信息,所述信息关于总线变量310、320、330、340与总线变量源或总线变量接收者的关联存储在实时数据总线110的总线数据库112中。

在该表350中提到的总线变量310、320、330、340涉及结合图3更详细阐述的实施例。

在名称为“总线变量名称”351的第一列中分别列出了所使用的总线变量310、320、330、340的命名,而在第二列“当前值”352中列出了与各总线变量相关联的当前值。

在名称为“关联的应用程序”353以及“源/接收者”354的下两个列中分别列出了:在实时控制器中实施的软件应用程序150、154、156、158中的哪个软件应用程序参与相应的总线变量310、320、330、340的值的通信,并且该软件应用程序150、154、156、158是否用作为用于该总线变量的值的源和/或用作为用于该总线变量的值的接收者。在名称为“RT传送信息”356的下一列中,在总线变量310、320、330、340和软件应用程序150、154、156、158的其中软件应用程序150、154、156 158起用于所述总线变量310、320、330、340的值的接收者作用的组合中存在关于如下的实时信息:将所述总线变量310、320、330、340的值以何种实时要求传输至所提出的软件应用程序150、154、156、158。在当前的示例中,在列“RT传送信息”356中列出了总线周期的数量,所述数量位于将所提出的总线变量310、320、330、340的值传输至实时数据总线110的总线周期和将所述值传输至在相应的行中列出的软件应用程序150、154、156、158的总线周期之间或者应最大位于其之间。在此,在当前的情况下,到处都登记“0”,这意味着:在将所述总线变量310、320、330、340的值在特定的总线周期中传输至实时数据总线110之后,将该值在直接随该总线周期之后的总线周期中必须传输至在所述行中提出的软件应用程序150、154、156、158。这也必须对应于在图3中阐述的实施例的范畴中的处理方式。在列“RT传送信息”356中提出的信息同样是根据本说明的实时信息的示例。

在另一列“频率信息”357中分别说明:在将特定的总线变量310、320、330、340的新值传输至实时数据总线110之后,将该值传输至软件应用程序150、154、156、158的频率如何。在本示例中,在此,在所有相对应的总线变量接收者软件应用程序中都列举“1”,这意味着:已将传输至实时数据总线110的特定总线变量的新值此后刚好传输至在相应的行中列举的接收者软件应用程序一次。在此,在所示出的实施例中无关紧要的是:实际值在此相对于先前值是否变化。在本发明的另一设计方案中,例如可以提出:在当前示例中总是仅当相应总线变量的值变化、尤其变化了预设量或百分比时,才将值传输至在行中列举的软件应用程序。

在表格“应用程序变量关联”350的名称为“总线周期信息”358以及“时间信息”359的最后两列中,在列“总线周期信息”358中存在关于如下的信息,即在哪个总线周期中最后发生关于在行中同样已知的总线变量310、320、330、340的在行中列举的软件应用程序150、154、156、158的通信。在下面的示例中,总线周期的编号对应于图3中示出的实施例的编号。通常来看,例如自特定的时间点、例如实时控制器100的启动或相应的复位起对当前总线周期的命名持续地计数。列“时间信息”359说明:在哪个时间点从在该行中列举的软件应用程序150、154、156、158最后一次传输在该行中列举的总线变量310、320、330、340的值或者将该值最后一次传输至该软件应用程序,其中该时间点涉及如下总线周期的开始,在所述总线周期内发生所述传输。在当前的实施例中,假设总线周期为100毫秒,并且在列时间信息359中分别说明以毫秒为单位的、自相应的总线周期开始起的时间。

本发明总体上涉及一种实时自动化装置,其具有实时数据总线和一个或多个与实时数据总线耦联的软件应用程序。为了经由实时数据总线进行通信,使用如下概念,该概念基于确定的或可确定的总线变量的使用,对于该总线变量的值经由实时数据总线传输或能够经由其传输。在此,实时数据总线包括总线数据库,其中注册所使用的总线变量,并且还注册了现有软件应用程序中的哪些起用于相应的总线变量的值的源的作用,以及软件应用程序中的哪个起用于哪个总线变量的接收者的作用。此外,实时数据总线是能实时传输的,并且能够在预先限定或可预先线的时间段中将传输至实时数据总线的值传输至限定的接收者。

该设备概念例如使不同的数据源和数据接收者关于各个总线变量可以相互匿名。这例如还通过如下方式实现,例如实时自动化装置中的新实施的软件应用程序可以注册为一个或多个总线变量的值的源和/或接收者。在此,这可以构造为,使得用于相应的总线变量的值的可能的另一发送器或者总线变量的可能的另一接收者没有获得关于此的信息并且对于正确的功能而言也不需要这种信息。这种总线变量的使用和其在总线数据库中的注册显著地简化了这种实时数据总线的操作。

此外,通过该总线概念,还能相对简单地将新的软件应用程序添加给实时自动化装置或安装在那里,或者也将选优的软件应用程序禁用或删除,而至少原则上,在功能上没有改变实时自动化装置的其他的软件应用程序的通信和功能和其经由实时数据总线的通信。最后,通过例如重新安装软件应用程序仅通过如下方式改变总线数据库中的条目:即例如将软件应用程序登记为用于特定总线变量的源和/或接收者,或者所述软件应用程序也本身引入用于经由实时数据总线进行的通信的一个或多个新的总线变量。

由于总线数据库中的现有条目由此至少功能上没有变化,所以已经存在的软件应用程序可以至少在没有显著限制的情况下还经由实时数据总线进行通信。这实现非常灵活的设计和还实现在持续运行中改变实时自动化装置的功能,即不必停止或切断实时自动化装置。以该方式,将实时自动化装置的硬件与其中运行的软件以显著的程度脱离耦合,并且实时自动化装置的功能可以相对简单地设计当前的要求并且甚至在运行时灵活地适配于当前的要求。

32页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:可编程逻辑控制器、外部仪器、方法及程序

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类