用于对正在控制工业过程的控制程序进行更新的系统技术方案

技术编号:15863737 阅读:68 留言:0更新日期:2017-07-23 07:58
公开了一种用于对正在控制工业过程的控制程序进行更新的系统。发明专利技术人已经意识到,通过以下操作,工业控制器可以在它们被部署在场地中之后来更新,同时控制工业过程并且没有昂贵的停机时间:将替换机器可读部件存储在分配的程序空间中;定位被复制在分配的程序空间中的一个或更多个相关机器可读部件并且将其修改成替代地与替换机器可读部件相关;重新链接分配的程序空间中的控制程序的复本;以及将执行重定向至分配的程序空间中的控制程序。替换机器可读部件可以是指令、库或控制程序的子例程,并且不限于用户逻辑。分配的程序空间中的控制程序可以通过以下操作被最佳地测试:在将执行重定向至分配的程序空间中的控制程序之前验证操作。

【技术实现步骤摘要】
用于对正在控制工业过程的控制程序进行更新的系统
本专利技术涉及工业控制器领域,并且更具体地涉及用于对正在控制工业过程的控制程序进行更新的系统和方法。
技术介绍
工业控制器是用于控制例如工厂环境中的工业过程或机器的专用计算机系统。一般地,工业控制器执行存储的控制程序,该存储的控制程序从与受控过程或机器相关联并且感测过程或机器的条件的各种传感器读取输入,并且该工业控制器基于那些输入和存储的控制程序来计算用于对控制过程或机器的致动器进行控制的输出集合。来自威斯康星州密尔沃基市的洛克威尔自动化(RockwellAutomation)公司的Logix5000控制器是这样的工业控制器的示例。工业控制器在多个方面与常规计算机不同。在物理上,它们被构造成与常规计算机相比,基本上对冲击和损害鲁棒性更好并且更好地抵抗外部污染物和极端环境条件。处理器和操作系统被优化用于实时控制并且以被设计成允许快速地开发控制程序的语言来编程,该控制程序被定制成不断地改变机器控制或过程控制应用的集合。一般地,工业控制器具有高度模块化架构,例如,使得能够使用不同数目和类型的输入模块和输出模块将控制器连接至要控制的过程或机器。通过使用适于高度可靠且可用的实时通信的专用“控制网络”来便于该模块化。这样的控制网络(例如,以太网(EtherNet)/IP、设备网(DeviceNet)和控制网(ControlNet))与标准通信网络(例如以太网)的不同在于:通过对网络的通信容量进行预调度来确保最大通信延迟;和/或针对高可用性来提供冗余通信能力。作为其增强的模块化的一部分,工业控制器可以采用专用于特定类型的电信号和功能(例如检测输入AC或DC信号或者控制输出AC或DC信号)的I/O模块或设备。这些I/O模块或设备中的每一个可以具有连接器系统,该连接器系统使得这些I/O模块或设备能够以不同组合与所选择的其他I/O模块或设备一起被安装在壳体或机架中,以匹配特定应用的需求。多个或单独的I/O模块或设备可以被定位在靠近受控过程或机器的便利控制点处以经由控制网络与中央工业控制器通信。在工业控制器被部署在场地中并且进行操作以控制工业过程或机器之后,随后更新工业控制器可能是困难的。更新可以由厂家推荐或要求以解决任意数目的问题,例如校正具有首次在场地中被通知的异常的指令或库,或者扩展指令或库以提供如随后在场地中确定的更强的功能性。安装这样的更新通常需要更新(或刷新)工业控制器的固件,并且更新固件通常需要工业控制器的暂时停机时间。然而,中断对工业过程的控制通常是昂贵的因而是不期望的。例如,如果工业控制器正在控制生产物品的装配线,每隔一分钟工业控制器被停机,则装配线可能损失可计量的数目的物品的生产。因此,操作工业控制器的实体通常必须决定工业控制器更新的益处是否比成本更有价值,并且如果是,则决定用于以对成本的最小影响来更新工业控制器的最优日期/时间。在一些实例中,可以在线更新工业控制器的用户逻辑,例如在线编辑(OnlineEditing)或在线部分导入(PartialImportOnline)。然而,利用这样的工具的在线更新通常仅被限制于由用户所创建的逻辑。所需要的是以下机制:通过该机制,工业控制器可以在它们被部署在场地中之后被便利地更新,而不需要昂贵的停机时间和/或被限制于用户逻辑。
技术实现思路
专利技术人已经意识到,通过以下操作,工业控制器可以在它们被部署在场地中之后来更新,同时控制工业过程并且没有昂贵的停机时间:将替换机器可读部件存储在分配的程序空间中;定位被复制在分配的程序空间中的一个或更多个相关机器可读部件并且将其修改成替代地与替换机器可读部件相关;重新链接分配的程序空间中的控制程序的复本;以及将执行重定向至分配的程序空间中的控制程序。替换机器可读部件可以为指令、库或控制程序的子例程,并且不限于用户逻辑。分配的程序空间中的控制程序可以通过以下操作被最佳地测试:在将执行重定向至分配的程序空间中的控制程序之前验证操作。本专利技术的方面提供了用于在控制器运转(例如,控制生产线)的同时在版本之间更新工业控制器如Logix控制器的手段。能够被更新的范围包括被实现为(1)可加载库和(2)内联代码(inlinecode)的任何控制器行为(包括指令)。之后可以进行不同的部件打补丁(patching)过程,例如库打补丁和内联打补丁。在一个方面中,库打补丁过程可以包括:(1)下载库;(2)找到与被替换的库相关的任何库;(3)下载库相关项;(4)下载用户逻辑;(5)测试补丁以确保其按期望来工作;(6)接受该补丁;以及(7)使该补丁为永久的。在另一个方面中,内联打补丁过程可以包括:(1)改变系统部件(即,安装补丁);(2)找到与被改变的系统部件相关的任何用户逻辑部件;(3)将期望部件(所有期望部件或选择的期望部件)标记为脏(dirty);(4)对脏部件进行重建;(5)下载用户逻辑;(6)测试补丁以确保其按期望来工作;(7)接受补丁;以及(8)使该补丁为永久的。因此,提供了用于向工业控制器提供在线更新的机制。可以在无需中断以刷新固件的(以及所导致的工业过程的停机时间)的情况下更新工业控制器。更新可以在特定目标区域中例如经由附加指令(Add-OnInstructions,“AOI”)或者贯穿所有的用户逻辑来改变行为如何工作。可以立即执行或者在随后的下载时执行更新。可以对较窄的一部分的行为进行更新,并且实体无需在在线的同时对工业控制器的固件全部进行升级。此外,如本文所描述的,在能够修改小块的代码方面存在较少的风险和中断。然后,具体地,本专利技术的一个方面提供了一种工业控制系统,该工业控制系统包括工业控制器,该工业控制器执行正在控制工业过程的控制程序。工业控制器可以执行以:(a)将第一机器可读部件存储在分配的程序空间中,第一机器可读部件被存储以替换支持控制程序的第二机器可读部件;(b)定位与第二机器可读部件具有数据相关性的相关机器可读部件,并且将该相关机器可读部件复制到分配的程序空间;(c)修改分配的程序空间中的相关机器可读部件,以将与第二机器可读部件的数据相关性改变成与第一机器可读部件的数据相关性;(d)将控制程序复制到分配的程序空间,并且将分配的程序空间中的控制程序与分配的程序空间中的第一机器可读部件和相关机器可读部件链接;(e)执行分配的程序空间中的控制程序以验证操作;以及(f)在成功地验证操作之后,并且在控制程序正在控制工业过程的同时,将控制程序的执行重定向至分配的程序空间中的控制程序的执行。第一机器可读部件和第二机器可读部件可以是包括能够操作成由控制程序使用的非易失性资源的第一库和第二库。替选地,第一机器可读部件和第二机器可读部件可以是能够操作成由控制程序使用的第一指令和第二指令,并且第一指令和第二指令可以是针对工业过程所定制的附加指令。替选地,第一机器可读部件和第二机器可读部件可以是控制程序的第一子例程和第二子例程(用户逻辑的一部分)。相关机器可读部件可以是能够操作成由控制程序使用的指令或者可以是包括能够操作成由控制程序使用的非易失性资源的库。工业控制器还可以执行以:定位多个相关机器可读部件,多个相关机器可读部件中的每个相关机器可读部件与第二机器可读部件具有数据相关性;以及将多个相关机器可本文档来自技高网
...
用于对正在控制工业过程的控制程序进行更新的系统

【技术保护点】
一种工业控制系统,包括:工业控制器,所述工业控制器执行正在控制工业过程的控制程序,所述工业控制器执行以:(a)将第一机器可读部件存储在分配的程序空间中,所述第一机器可读部件被存储以替换支持所述控制程序的第二机器可读部件;(b)定位与所述第二机器可读部件具有数据相关性的相关机器可读部件,并且将所述相关机器可读部件复制到所述分配的程序空间;(c)修改所述分配的程序空间中的所述相关机器可读部件,以将与所述第二机器可读部件的数据相关性改变成与所述第一机器可读部件的数据相关性;(d)将所述控制程序复制到所述分配的程序空间,并且将所述分配的程序空间中的控制程序与所述分配的程序空间中的所述第一机器可读部件和所述相关机器可读部件链接;(e)执行所述分配的程序空间中的控制程序以验证操作;以及(f)在成功地验证所述操作之后,并且在所述控制程序正在控制所述工业过程的同时,将所述控制程序的执行重定向至所述分配的程序空间中的控制程序的执行。

【技术特征摘要】
2015.10.02 US 14/873,3861.一种工业控制系统,包括:工业控制器,所述工业控制器执行正在控制工业过程的控制程序,所述工业控制器执行以:(a)将第一机器可读部件存储在分配的程序空间中,所述第一机器可读部件被存储以替换支持所述控制程序的第二机器可读部件;(b)定位与所述第二机器可读部件具有数据相关性的相关机器可读部件,并且将所述相关机器可读部件复制到所述分配的程序空间;(c)修改所述分配的程序空间中的所述相关机器可读部件,以将与所述第二机器可读部件的数据相关性改变成与所述第一机器可读部件的数据相关性;(d)将所述控制程序复制到所述分配的程序空间,并且将所述分配的程序空间中的控制程序与所述分配的程序空间中的所述第一机器可读部件和所述相关机器可读部件链接;(e)执行所述分配的程序空间中的控制程序以验证操作;以及(f)在成功地验证所述操作之后,并且在所述控制程序正在控制所述工业过程的同时,将所述控制程序的执行重定向至所述分配的程序空间中的控制程序的执行。2.根据权利要求1所述的工业控制系统,其中,所述第一机器可读部件和所述第二机器可读部件是包括能够操作成由所述控制程序使用的非易失性资源的第一库和第二库。3.根据权利要求2所述的工业控制系统,其中,所述相关机器可读部件是能够操作成由所述控制程序使用的指令。4.根据权利要求1所述的工业控制系统,其中,所述第一机器可读部件和所述第二机器可读部件是能够操作成由所述控制程序使用的第一指令和第二指令。5.根据权利要求4所述的工业控制系统,其中,所述第一指令和所述第二指令是针对所述工业过程所定制的附加指令。6.根据权利要求4所述的工业控制系统,其中,所述相关机器可读部件是能够操作成由所述控制程序使用的第三指令。7.根据权利要求4所述的工业控制系统,其中,所述相关机器可读部件是所述控制程序的子例程。8.根据权利要求4所述的工业控制系统,其中,所述第一机器可读部件和所述第二机器可读部件是所述控制程序的第一子例程和第二子例程。9.根据权利要求4所述的工业控制系统,其中,所述相关机器可读部件是所述控制程序的第三子例程。10.根据权利要求1所述的工业控制系统,其中,所述工业控制器执行以:定位多个相关机器可读部件,所述多个相关机器可读部件中的每个相关机器可读部件与所述第二机器可读部件均具有数据相关性;以及将所述多个相关机器可读部件复制到所述分配的程序空间。11.根...

【专利技术属性】
技术研发人员:迈克尔·J·维斯特
申请(专利权)人:洛克威尔自动控制技术股份有限公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1