一种软件的在线升级方法,应用于工控系统中,所述工控系统包括微处理器以及至少两个存储器,所述存储器其中一个被指定作为主用的程序存储器,其余作为备用的程序存储器,其特征在于,该方法包括以下步骤: 升级步骤:微处理器控制一个备用程序存储器存储下载的软件升级数据并升级该备用程序存储器中相应软件; 切换步骤:微处理器控制将所述软件升级后的备用程序存储器存储地址与主用程序存储器存储地址互换以便切换主备用工作程序区。(*该技术在2023年保护过期,可自由使用*)
【技术实现步骤摘要】
本专利技术涉及一种软件的升级方法及装置,尤指一种工业控制(简称工控)系统中软件的在线升级方法及装置。
技术介绍
通常将用于工控系统的计算机称为工业控制计算机(简称工控机),在工控系统中,工控机要对大量的外来信号进行处理,然后根据处理结果输出控制信号。控制机一般由计算机和过程输入输出(I/O)通道两大部分组成。其中计算机由控制软件以及主机、输入输出设备、外部磁盘机、磁带机等硬件设备组成。在计算机外部又增加一部分过程输入/输出通道,用于实现将工业生产过程中的检测数据送入计算机进行处理;另一方面将计算机输出的对生产过程控制的命令、信息转换成工业控制对象的控制信号,再送往工业控制对象的控制器,由控制器完成对生产设备的运行控制。为保证工控系统对现场信号的实时响应,在一个工控系统的控制周期内(如0.5s),计算机的微处理器需要对现场信号进行采集、处理、传送等操作,控制周期越短,对现场信号响应速度响应则越快,也越能保证其实时性,从而对现场信号的突变能做出快速响应。但控制周期的长短与微处理器的处理能力、运行频率以及所接的外围设备大有关系,因此控制周期不可能无限地小,一般是取一个整数值,如0.1s、0.5s等。尽管微观上看起来一个具体的控制过程是在多个控制周期内完成的,但从整个宏观概念来讲,比如在一段较长的时间内,控制周期相对于这段时间来说是很微小的,因此控制系统的运行(对数据采集和控制)可以看作是连续的,这也是控制系统所要求的连续性。随着工控系统的升级,需要对控制机的控制软件进行升级,公知技术中,软件下载和更新通常是在需要进行下载和更新软件时,停止当前软件的运行,并利用一片程序存储器存储下载的软件,在下载和更新完成后再重新启动并运行新的软件,这种方法只能适用于一些对实时性要求不高且重要性较低的场合,对于对实时性要求较高的工业应用场合,例如工业生产是连续(昼夜)生产的场合,就要求控制机具有高可靠性,不能中途停机。上述软件升级方法就不能很好的满足其要求,并会给高要求的现场控制系统带来安全隐患,增加不可靠的因素,容易在软件停止运行时造成失控状态。为实现软件升级,中国专利《可远程下载运行软件的智能数据监控通讯设备及方法》(专利号ZL98124981)公开了一种技术方案,该方案的主要内容是由下载操作程序从接口接收新的软件升级数据,将所述升级数据存储到随机数据存储器中,再从随机数据存储器中读出写入FLASH(闪存)中,从而完成软件的更新。该方法主要用于智能数据监控通讯设备,下载完毕后需重新启动处理器,其优点是可降低现场更新程序的复杂性和较大的工作量,但由于下载完成后还要重新启动处理器以便进行软件初始化等软件更新流程,必然造成部分时间内系统失控,因此该方案存在安全性和可靠性不高的缺点,且不能实现在线升级软件。另外,中国专利《远程程序下载系统和设备》(专利号ZL98106699)公开了另一种软件的升级方案,该方案在下载时采用四段程序来顺序更新软件,主要用于数字电视接收机的控制软件的更新。此方案与上一方案相比,优点是更新的软件被下载在EEPROM(电可擦除只读存储器)中,而非随机存储器中,与上述第一个方案相同的原因,该方案同样存在安全性和可靠性不高的缺点,且不能实现在线升级软件。此外,中国专利《能够不中断在线处理更新操作文件的方法》(申请号98125648.1)也公开了一种软件的升级方案,该方案利用两组处理器和存储器,由一组存储器和处理器执行当前程序,另一组存储器和处理器接收更新程序,更新完成后实现切换和替代。该方案可在线完成操作文件的更新,但更新完成后,还需进行更新程序的初始化操作等,因此,同样存在安全性和可靠性的问题,另外,两组处理器和存储器的应用不仅使成本增加也使电路结构变得复杂。综上,现有软件升级的方案,大都是将软件升级数据先下载到随机存储器再写入程序存储器中,更新完成后需要重新启动处理器以便处理器能按照升级后的新程序运行,这些方案都存在对当前运行的程序会产生影响的缺点,因为重新启动处理器必然会失去对外界的控制,造成失控状态,存在一个所谓的“真空”状态,因此不能实现工业应用真正意义上的可靠与连续。
技术实现思路
为了解决现有技术升级工控系统软件时,需重新启动处理器以致安全性和可靠性较低的问题,本专利技术提供一种安全性和可靠性都较高的软件的在线升级方法及装置,适合应用在实时性和可靠性要求较高的工业应用场合。为解决上述问题,本专利技术提供的软件的在线升级方法,包括以下步骤升级步骤微处理器控制一个备用程序存储器存储下载的软件升级数据并升级该备用程序存储器中相应软件;切换步骤微处理器控制将所述软件升级后的备用程序存储器存储地址与主用程序存储器存储地址互换以便切换主备用工作程序区。进一步,还包括继续升级步骤利用所述下载的软件升级数据升级其他存储器中的相应软件。最好,所述升级步骤以及继续升级步骤在工控系统控制周期的空闲期间分时、分段执行。最好,所述切换步骤在工控系统控制周期之间的空闲期间执行。最好,所述存储器相同且存储地址连续。相应地,本专利技术提供的软件的在线升级装置,包括至少两个存储器,其中一个存储器作为主用程序存储器,其余存储器作为备用程序存储器,所述备用程序存储器中其中一个在软件升级时被指定用于存储下载的软件升级数据并首先完成其上相应软件的升级;地址转换电路,在被指定的备用程序存储器中软件升级完成后,将所述被指定的备用程序存储器存储地址与主用程序存储器的存储地址互换以便切换主备用工作程序区; 微处理器,用于控制下载软件升级数据并升级主备用程序存储器中的相应软件,以及控制所述地址转换电路完成主备用工作程序区的转换。最好,所述地址转换电路为逻辑控制的译码电路。最好,所述微处理器在工控系统控制周期的空闲期间分时、分段控制执行软件升级数据的下载以及存储器中软件的升级。最好,所述地址转换电路在工控系统控制周期之间的空闲期间执行地址转换。与现有技术相比,本专利技术具有以下优点1、采用一个微处理器和多个程序存储器,在线升级时通过其中一个程序存储器存储软件升级数据并升级其上的软件,然后通过微处理器控制,由地址转换电路实现多个程序存储器的存储地址转换以实现切换主备用工作程序区,由升级后的软件运行并进行控制,并可继续升级其他程序存储器的软件,由于只应用了一个微处理和简单的地址转换电路,成本低,实现电路简单;2、在线软件下载和更新在工控系统的控制周期空闲时进行,由于采用了分多个控制周期更新软件、分时分段和中断的方式,使得在线升级期间对原控制周期运行程序的影响不大,可靠性较好;3、进一步,通过硬件实现地址互换的方式来进行新老软件的在线切换,实现了新老程序的无缝运行,保证了工业控制场合的稳定性、安全性、可靠性和连续性。附图说明图1是本专利技术软件的在线升级方法流程图;图2是本专利技术软件的在线升级装置组成示意图;图3是本专利技术软件的在线升级装置具体实施例组成示意图;图4是本专利技术实现程序存储器存储地址互换的示意图;图5是本专利技术地址转换电路组成示意图;图6是本专利技术软件的在线升级装置基于以太网通信的实施例电路组成图; 图7是图6所示软件的在线升级装置的工作流程图。具体实施例方式本专利技术应用的工控系统包括微处理器以及多个存储器,所述多个存储器中其中一个被指定作为主用的程序存储器本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:黄文君,郑洪波,王霄峡,
申请(专利权)人:浙江中控技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。