专利名称:控制系统组态的增量式在线下载方法
控制系统组态的增量式在线下载方法技术领域 本发明涉及工业自动化控制领域,特别涉及一种控制系统组态的增量式在 线下载的方法。
技术背景随着自动化控制行业的快速发展,控制系统在越来越多的领域得到应用, 其规模也越来越大,因此随之对系统的安全性和可靠性也提出了更高的要求。 在自动化控制中,尤其是在过程控制领域,要求系统能够连续、安全、稳定的 运行,因此对其维护特别是在线维护的需求也日渐增大。完成在线维护的任务必须解决在线修改组态、在线下载组态等问题。在线 下载组态即联^U青况下,可对控制组态进行修改,并将修改过的组态部分下载 到控制器。在线下载作为实现在线维护的主要步骤,目前主要有整体下载与部分下载两种方式,来完成对控制系统的设置。 一种是整体下载模式将所有文 件视为一个整体进行统一的重新下载。该方法既要下载修改过的组态部分,又 要下载未修改过的组态部分,各组态对象之间具有相互调用关系,下载某一组 态时容易造成与之关联的部分组态数据的跳变从而影响系统运行的稳定性,而 且下载量大,所需时间长,效率低。另一种是部分下载模式根据需要只下载 修改的组态部分,无须下载未修改过的组态部分,这种下载方式就是增量式下 载。然而,现有技术增量式下载中,各组态对象在控制器的存储地址是随机的, 一个组态的修改将引起其他未修改组态的存储地址的改变,导致调用该未修改 组态时系统出错,无法下载,同时各组态对象之间相互关联,对一个组态对象 的修改仍然会影响到其他组态对象的正常工作,下载某一组态时容易造成与之 关联的部分组态数据的扰动从而不能保证下载的安全性,因此影响系统运行的 稳定性和可靠性;另夕卜,通常情况下,仅凭工程师的经验判断下载的组态内容,并不能充分保证下载的准确性;此外,现有技术缺乏对下载历史的记录,不方 便对系统的维护。发明内容本发明提供了一种控制系统组态的增量式在线下载的方法,该方法能够消 除每次下载组态所造成的数据扰动,从而提高下载的安全性和准确性,确保控制系统运行的稳定性,更进一步的,实现了对下载动作的记录,便于追述下载 历史。为此,本发明提供了一种控制系统组态的增量式在线下载方法,包括如下 步骤固定各组态对象在控制器中的存储地址,并且解除所述各个组态对象之间 的关联,以及设置各组态对象的版本标志;修改已解除关联的各组态对象;确定需要下载的已修改的组态对象;将已确定下载的各组态对象从工作站在线下载到控制器中的固定存储地址;更新已下载组态的版本标志。确定需要下载的已修改的组态对象具体包括如下步骤 比较所述控制器中存储的各组态对象的版本标志与其在工作站的版本标 志是否一致, 一致则不需下载,不一致则需要下载;列出需要下载组态的详细清单,根据清单执行下载任务;还包括如下步骤修改组态后检测单个组态对象是否通过编译,如果否, 则编译未编译的组态;如果是,则检测已编译的各组态对象之间的调用关系, 如果未通过检测,则取消下载,如果通过检测,则开始确定需要下载的已修改 的组态对象。所述更新已下载组态的版本标志具体包括以下步骤下载完成后验证是否 所有需要下载的组态对象都下载成功,如果未成功,取消下载;如果成功,通知控制器更新组态版本标志。下载过程中,按照固定的顺序下载各个组态对象,显示各个组态对象的下 载执行情况。修改组态在各组态对象界面下进行;编译、检测、下载和更新都在组态软 件总界面下统一进行。列出需要下载组态的清单后,工程师确认需要下载的组态的详细内容,然 后交组态软件总界面控制开始执行下载任务。更新已下载的组态版本标志后,记录并保存本次下载动作和内容。与现有技术相比,本发明具有以下优点编译、4全测、下载和更新都通过 组态软件总界面统一进行,减少了人为因素导致的错误,保障下载的准确性。 将硬件组态、位号组态、用户程序等各部分组态固定在控制器中的内存特定地 址,并隔绝了各部分组态对象之间的关联,能够消除下载组态造成的数据扰动, 增强下载安全性。更进一步的,提供下载前的关联检测,对修改后各部分组态 的调用关系进行检测,保证一个组态对象的修改不会影响到其他组态对象的正 常工作,更加提高了下载的安全性。此外,每次下载都有下载记录保存,可以 进行历史查看,追述所有的下载记录,方便对系统的维护。
通过附图中所示的本发明的优选实施例的更具体说明,本发明的上述及其 它目的、特征和优势将更加清晰。在全部附图中相同的附图标记指示相同的部 分。图l是固定各组态对象内存地址的示意图; 图2是检测已修改各组态对象的流程示意图; 图3是在线下载已修改各组态对象的流程示意图; 图4是实施例一的流程示意图; 图5是实施例二的流程示意图; 图6是实施例三的流程示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对 本发明的具体实施方式
做详细的说明。所述示意图只是实例,其在此不应限制 本发明保护的范围。在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明 能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背 本发明内涵的情况下做类似推广。因此本发明不受下面公开的具体实施的限制。自动化控制系统在线修改组态后,为了保障一个组态对象的修改不会影响 到其他组态对象的正常工作,消除从工程师站到控制站组态下载出错,首先本发明提出以下的方法解决内存固定和解除关联。所述内存固定是将控制器中组态数据区内存进行划分和管理,将组态对象 固定在控制器数据区内存的相应位置。图1是固定各组态对象内存地址的示意 图。参照图1所示,将组态对象与内存地址3绑定,当修改地址2的数据时, 地址3固定不变,保证该组态对象不受其他组态对象修改的影响。具体的说,硬件组态内存与1/0模块的逻辑地址绑定;位号的内存与位号 ID —一对应;用户程序数据区内存大小固定,代码区大小可变,保障一个用 户程序的修改不会移动其他用户程序在控制器内存中的位置。同时本发明还解除了各部分组态对象之间的关联,使用户改动局部的组态 时,控制器中的其他组态内存保持不变。具体的说,硬件组态与位号组态分离; 组态划分成几个部分,如控制组态、用户程序、资源文件、硬件配置等各分成 独立的模块;用户程序之间无法直接交互,只能通过I/0位号、页间变量、自 定义变量交换数据;不同控制站之间通过站间通讯功能块进行数据交互。因此 可分块进行编译和下载组态,分块的最小单位如下硬件组态以一块(或冗余 的一对)卡件为最小单位;位号组态以一个位号(通道)为最小单位;用户程 序以 一幅程序为最小单位。为了确保下载的安全性和系统的稳定性,本发明采用下载前对各组态对象进行检测。图2是检测已修改各组态对象的流程示意图参照图2所示,按照步骤201下载前检测单个组态对象是否通过编译,如 果否,则按照步骤202编译未编译的组态;如果是,则进行下面的步骤203; 接着按照步骤203检测通过编译的各组态对象之间的调用关系;然后按照步骤 204检测经过编译的各组态对象的版本标志;最后按照步骤205根据检测的结 果列出需要下载的组态的详细清单。内存固定和解除关联实现了各部分组态对象的相对独立,隔绝了各部分组 态对象之间的关联,保障一个组态对象的修改不会影响到其他组态对象的正常 工作,通过检测性关联进一步确认已修改的组态,确保未修改的部分不下载。检测后根据列出的下载内容详细清单在线下载。图3是在线下载已修改各 组态对象的流程示意图。参照图3所示,按照步骤301下载硬件组态、位号组 态和用户程序等各部分已修改的组态,按照步骤302由组态软件总界面验证是 否所有需下载的组态都下载成功,如果未成功则按照步骤303可手工取消下 载,如果成功则按照步骤304通知控制器更新组态版本。以某现场修改组态、实施在线下载为例,描述本发明的具体实施方式
。实施例一本发明所涉及的组态增量式在线下载方法是在联机情况下,可对组态对象 进行修改,并在线下载修改过的组态部分。本实施例揭示该增量式下载方法的 一般流程。图4是本实施例的流程示意图。参照图4所示,具体过程如下首先,按照步骤401,划分控制器中组态数据区内存,将位号组态、硬件 组态和用户程序等各组态对象分别固定存放在内存中特定的地址位置1、位置 2、位置3,如修改硬件组态,其他组态对象内存地址位置l或3都固定不变, 如图1所示。其次,按照步骤402,解除存放于内存固定地址的各个组态对象之间的关联,具体的说,将硬件组态与位号组态分离,组态划分成几个部分,控制组态、用户程序、资源文件、硬件配置等各分成独立的模块;用户程序之间无法直接 交互,只能通过I/0位号、页间变量、自定义变量交换数据;从而使修改硬件 组态而不会影响其他的组态对象。此时各个组态对象已经没有相互关联,分别设置各个组态对象的版本标 志,该标志以后用来鉴别组态对象是否进行过修改和下载,如步骤403所示。然后按照步骤404,在硬件组态软件中找到需要修改的模块AI721的第3 通道,将其信号类型从电流信号改为电压信号,并对修改后的硬件组态进行保 存。修改后,如步骤405所示,关闭硬件组态软件,打开组态软件总界面。 在开始下载前,按照步骤406检测各个组态是否通过编译,先4企测修改后 的硬件组态,如果否,则编译未编译的硬件组态;如果是,则检测通过编译的 各组态对象之间的调用关系;然后检测经过编译的各组态对象的版本标志;最 后根据检测的结果列出需要下载的组态的详细清单。根据以上列出的需要下载组态的详细清单,将需要下载的硬件组态部分从 工程师站在线下载到控制器,如步骤407所示。在该增量式下载中仅下载修改 的组态及与其关联的组态部分内容;下载结束后,由组态软件总界面验证是否 所有需下载的组态都下载成功,如果未成功则可手工取消下载,如果成功则通知控制器更新组态版本。最后按照步骤408更新已下载的硬件组态的版本标志,以便下次下载的检测。实施例二为方便对系统的维护,进行有效的下载管理,本实施例在组态下载完成后 记录并保存下载动作,以便进行历史查看,追述所有的下载记录。图5是本实施例的流程示意图。参照图5所示,过程具体如下首先,按照步骤501,划分控制器中组态数据区内存,将硬件组态、位号组态和用户程序等各组态对象分别固定存放在内存中特定的地址位置1、位置2、位置3,如修改位号组态,其他组态对象内存地址位置1或3都固定不变, 如图1所示。其次,按照步骤502,解除存放于内存固定地址的各个组态对象之间的关 联,具体的说,将硬件组态与位号组态分离,组态划分成几个部分,控制组态、 用户程序、资源文件、硬件配置等各分成独立的模块;用户程序之间无法直接 交互,只能通过I/0位号、页间变量、自定义变量交换数据;从而使修改位号 组态而不会影响其他的组态对象。此时各个组态对象已经没有相互关联,分别设置各个组态对象的版本标 志,该标志以后用来鉴别组态对象是否进行过修改和下载,如步骤503所示。然后按照步骤504,在位号组态软件中找到需要修改的位号AO00357,将 其工程单位从升改为毫升,对修改后的位号组态进行保存。修改后,如步骤505所示,关闭位号组态软件,打开组态软件总界面。下载前,按照步骤506检测各个组态是否通过编译,先检测修改后的位号 组态,如果否,则编译未编译的硬件组态;如果是,则检测通过编译的各组态 对象之间的调用关系;然后检测经过编译的各组态对象的版本标志;最后根据 检测的结果列出需要下载的组态的详细清单。根据以上列出的需要下载组态的详细清单,将需要下载的位号组态部分从 工程师站在线下载到控制器,如步骤507所示。在该增量式下载中仅下载修改 的位号组态及与其关联的组态部分内容;下载结束后,由组态软件总界面验证 是否所有需下载的组态都下载成功,如果未成功则可手工取消下载,如果成功 则通知控制器更新组态版本。然后按照步骤508更新已下载的位号组态的版本标志,以便下次下载的枱r测。最后记录并保存本次下载动作和内容,以便进行历史查看,追述所有的下 载记录,如步骤509所示。实施例三以上实施例可保证在线下载的安全性,消除下载时的数据扰动,为进一步 提高下载的安全性和可靠性,避免下载出错,本实施例在检测完毕列出下载详 细内容的清单后,由工程师做最后的确认,再交由组态软件总界面实施下载控制。图6是本实施例的流程示意图。参照图6所示,过程具体如下首先,按照步骤601,划分控制器中组态数据区内存,将位号组态、用户 程序和硬件组态等各组态对象分别固定存放在内存中特定的地址位置1、位置 2、位置3,如》务改用户程序,其他组态对象内存地址位置1或3都固定不变, 如图1所示。其次,按照步骤602,解除存放于内存固定地址的各个组态对象之间的关 联,具体的说,将硬件组态与位号组态分离,组态划分成几个部分,控制组态、 用户程序、资源文件、硬件配置等各分成独立的模块;用户程序之间无法直接 交互,只能通过I/0位号、页间变量、自定义变量交换数据;从而使修改用户 程序而不会影响其他的组态对象。此时各个组态对象已经没有相互关联,分别设置各个组态对象的版本标 志,该标志以后用来鉴别组态对象是否进行过修改和下载,如步骤603所示。然后按照步骤604,对用户程序进行修改,添加一个PID功能块及相应的 连线,增加此用户程序页的功能,对修改后的用户程序进行保存。修改后,如步骤605所示,关闭用户程序,打开组态软件总界面。在开始下载前,按照步骤606检测各个组态是否通过编译,先检测修改后 的用户程序,如果否,则编译未编译的用户程序;如果是,则检测通过编译的 各组态对象之间的调用关系;然后检测经过编译的各组态对象的版本标志;最 后根据检测的结果列出需要下载的组态的详细清单。按照步骤607所示,根据下载的组态的详细清单,工程师确认是否下载, 如果否,按照步骤608可手工取消下载,如果是,按照以下步骤609进行下载。根据以上工程师最终确认的需要下载的组态的详细清单,将需要下载的用户程序从工程师站在线下载到控制器,如步骤609所示。在该增量式下载中仅 下载修改的组态及与其关联^l组态部分内容;下载结束后,由组态软件总界面 验证是否所有需下载的组态都下载成功,如果未成功则可手工取消下载,如果 成功则通知控制器更新组态版本。最后按照步骤610更新已下载的硬件组态的版本标志,以便下次下载的招r测。以上所有实施例中编译、检测、下载、和更新都在组态软件总界面下统一 进行。需要说明的是,上述实施例更改的组态对象可以一次更改任意数量后统一 进行在线下载,即软件允许一次一个组态对象并对其实施在线下载,或一次完 成对多个组态对象的修改与在线下载;当同时下载多个组态对象时,按照固定 的顺序下载各个组态对象,例如系统库—行业库—用户功能块库—硬件—位号 表—程序调度表—用户程序。以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的 限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何 熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述 揭示的方法和技术内容对本发明技术方案作出许多可能的变动和修饰,或修改 为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本 发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属 于本发明技术方案保护的范围内。
权利要求
1、一种控制系统组态的增量式在线下载方法,其特征在于,包括如下步骤固定各组态对象在控制器中的存储地址,并且解除所述各个组态对象之间的关联,以及设置各组态对象的版本标志;修改已解除关联的各组态对象;确定需要下载的已修改的组态对象;将已确定下载的各组态对象从工作站在线下载到控制器中的固定存储地址;更新已下载组态的版本标志。
2、 根据权利要求1所述的控制系统组态的增量式在线下载方法,其特征 在于,确定需要下载的已修改的组态对象具体包括如下步骤比较所述控制器中存储的各组态对象的版本标志与其在工作站的版本标 志是否一致, 一致则不需下载,不一致则需要下载;列出需要下载组态的详细清单,根据清单执行下载任务。
3、 根据权利要求1所述的控制系统组态的增量式在线下载方法,其特征 在于,还包括如下步骤修改组态后检测单个组态对象是否通过编译,如果否, 则编译未编译的组态;如果是,则检测已编译的各组态对象之间的调用关系, 如果未通过检测,则取消下载,如果通过检测,则开始确定需要下栽的已修改 的组态对象。
4、 根据权利要求2所述的控制系统组态的增量式在线下载方法,其特征 在于,所述更新已下载组态的版本标志具体包括以下步骤下载完成后验证是 否所有需要下载的组态对象都下载成功,如果未成功,取消下载;如果成功,通知控制器更新组态版本标志。
5、 根据权利要求4所述的控制系统组态的增量式在线下载方法,其特征 在于下载过程中,按照固定的顺序下载各个组态对象,显示各个组态对象的 下载执行情况。
6、 根据权利要求5所述的控制系统组态的增量式在线下载方法,其特征 在于修改组态在各组态对象界面下进行;编译、检测、下载和更新都在组态 软件总界面下统一进行。 '
7、 根据权利要求1所述的控制系统组态的增量式在线下载方法,其特征 在于,还包括列出需要下载组态的清单后,工程师确认需要下载的组态的详 细内容,然后交组态软件总界面控制开始执行下载任务。
8、 根据权利要求1所述的控制系统组态的增量式在线下载方法,其特征 在于,还包括更新已下载的组态版本标志后,记录并保存本次下载动作和内
全文摘要
一种控制系统组态的增量式在线下载方法,包括如下步骤固定各组态对象在控制器中的存储地址,并且解除所述各个组态对象之间的关联,以及设置各组态对象的版本标志,修改已解除关联的各组态对象,确定需要下载的已修改的组态对象,将已确定下载的各组态对象从工作站在线下载到控制器中的固定存储地址,更新已下载组态的版本标志。本发明可消除每次下载组态所造成的数据扰动,从而提高下载的安全性和准确性,确保控制系统运行的稳定性,更进一步的,实现了对下载动作的记录,便于追述下载历史。
文档编号G05B19/00GK101216696SQ20081000005
公开日2008年7月9日 申请日期2008年1月3日 优先权日2008年1月3日
发明者卿 包, 欣 吴, 应正波, 凌 章, 坤 裘 申请人:浙江中控技术股份有限公司