PLC固件升级系统及方法技术方案

技术编号:8366714 阅读:492 留言:0更新日期:2013-02-28 05:01
本发明专利技术提供了一种PLC固件升级系统,包括升级判断单元、系统升级单元、升级启动单元以及位于非易失性存储器中的升级标识,其中:所述升级判断单元,用于判断升级标识是否有效并在升级标识无效时启动PLC系统处理PLC任务;所述系统升级单元,用于在所述升级标识有效时接收升级数据及使用所述升级数据更新PLC系统程序,并在数据更新完成后将所述升级标识设为无效;所述升级启动单元,用于在接收到固件升级指令时将升级标识设为有效并启动固件升级流程。本发明专利技术还提供一种PLC固件升级方法。本发明专利技术通过升级标识并在PLC上电启动时判断升级标识是否有效来启动固件升级过程,保证了固件升级过程中突然断电等异常情况恢复后重新升级。

【技术实现步骤摘要】

本专利技术涉及可编程逻辑控制器领域,更具体地说,涉及一种PLC固件升级系统及方法
技术介绍
随着工业设备自动化控制需求的持续增长,PLC (可编程逻辑控制器)的使用领域迅速扩大,并且在功能上也推陈出新。PLC作为工业自动化控制系统的控制单元,面对扩大的市场需求和千变万化的应用现场,需要不断开发新的功能和优化完善已有的功能。目前,对于已经装备在客户现场和集成在设备厂商工业设备上的PLC产品,通常需要由PLC厂商的服务人员或者用户现场升级PLC系统。为了提高产品的易用性和升级的可靠性,一些PLC产品本身具有固件升级功能,以方便后续的功能更新和产品升级,满足客户对PLC产品功能的持续需求。在这些固件升级系统中有数据接收模块和系统升级模块等部分组成,把接收的数据存储并对当前的PLC系统进行软件版本的升级。然而这种固件升级方法,存在着诸多缺点缺乏固件升级过程中突然断电情况的有效处理;对升级数据有效性判断不足;固件升级权限的限制不足;升级过程繁琐,甚至需要过多的人为介入;缺乏对当前待升级系统标签信息的判断和处理;升级数据保密性的问题等等。
技术实现思路
本专利技术要解决的技术问题在于,针对上述PLC固件升级缺乏断电处理等问题,提供一种PLC固件升级系统及方法。本专利技术解决上述技术问题的技术方案是,提供一种PLC固件升级系统,包括升级判断单元、系统升级单元、升级启动单元以及位于非易失性存储器中的升级标识,其中所述升级判断单元,用于判断升级标识是否有效并在升级标识无效时启动PLC系统处理PLC任务,该升级判断单元在PLC上电启动时自动执行;所述系统升级单元,用于在所述升级标识有效时接收升级数据及使用所述升级数据更新PLC系统程序,并在数据更新完成后将所述升级标识设为无效及启动更新后PLC系统处理PLC任务;所述升级启动单元,用于在接收到固件升级指令时使PLC系统中断PLC任务及将升级标识设为有效,并启动升级判断单元。在本专利技术所述的PLC固件升级系统中,所述升级启动单元包括指令接收子单元、权限验证子单元、系统中断子单元以及标识设置子单元;所述指令接收子单元用于接收固件升级指令及升级校验码;所述权限验证子单元用于通过预存的校验码对升级校验码进行验证;所述系统中断子单元用于在升级校验码验证通过后使PLC系统中断PLC任务;所述标识设置子单元用于在升级校验码验证通过后将升级标识设置为有效,并启动升级判断单J Li ο在本专利技术所述的PLC固件升级系统中,所述系统升级单元包括标签验证子单元、数据接收子单元、数据更新子单元以及标识修改子单元;所述标签验证子单元用于从控制终端接收更新数据的标签信息并验证该标签信息;所述数据接收子单元用于在所述标签信息验证通过后接收升级数据;所述数据更新子单元用于使用所述升级数据更新PLC系统;标识修改子单元用于在系统更新完成后将升级标识修改为无效,并启动更新后的PLC系统。在本专利技术所述的PLC固件升级系统中,所述升级启动单元还包括标签保存子单元,用于保存当前运行的PLC系统的标签信息;所述标签验证子单元根据标签保存子单元保存的标签信息验证从控制终端接收的标签信息。在本专利技术所述的PLC固件升级系统中,所述系统升级单元通过串口、USB接口或者无线网络从控制终端接收加密的升级数据。 本专利技术还提供一种PLC固件升级方法,包括以下步骤(a) PLC 上电启动;(b) PLC判断升级标识是否有效,并在所述升级标识有效时执行步骤(C),否则执行步骤(d),所述升级标识位于非易失性存储器中;(C )所述PLC接收升级数据并使用所述升级数据更新PLC系统程序,在更新完成后擦除所述升级标识并执行步骤(d);(d)所述PLC执行PLC任务并在接收到固件升级指令后使PLC系统中断PLC任务及将升级标识设置为有效,然后执行步骤(a)。在本专利技术所述的PLC固件升级方法中,所述步骤(d)中,所述PLC在接收到固件升级指令后对升级权限进行验证并在升级权限验证通过后使PLC系统中断PLC任务及将升级标识设置为有效。在本专利技术所述的PLC固件升级方法中,所述步骤(b)包括(bl)所述PLC接收并验证标签信息,在所述标签信息验证通过后执行步骤(c),否则升级失败。在本专利技术所述的PLC固件升级方法中,所述步骤(d)中包括保存当前运行的PLC系统的标签信息,所述步骤(bl)中根据保存的标签信息验证接收的升级数据的标签信息。 在本专利技术所述的PLC固件升级方法中,所述步骤(c )中,PLC通过串口、USB接口或者无线网络从控制终端接收加密的升级数据。本专利技术的PLC固件升级系统及方法,通过升级标识并在PLC上电启动时判断升级标识是否有效来启动固件升级过程,保证了固件升级过程中突然断电等异常情况恢复后重新开始升级。本专利技术还提供添加PLC系统的标签信息保证了升级数据和待升级PLC系统的一致性,有效防止误升级问题的产生。并且,本专利技术通过固件升级校验码来限制升级权限,可防止误操作的发生。附图说明图I是本专利技术PLC固件升级系统实施例的示意图。图2是图I中升级启动单元实施例的示意图。图3是图I中系统升级单元实施例的示意图。图4是本专利技术PLC固件升级方法实施例的示意图。具体实施例方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术适用于基于微处理器的PLC产品的固件升级,该PLC包括PLC系统和独立于PLC系统的用于固件升级的升级引导系统(BootLoader ),其中PLC系统具有PLC产品的全部功能,而升级引导系统主要进行PLC系统软件的升级。在PLC上电启动后首先进入升级引导系统,判断升级标志(或者升级引脚),如果有效则开始固件升级过程,否则跳转到PLC系统运行。如图I所示,是本专利技术PLC固件升级系统实施例的示意图。本专利技术的固件升级系统包括升级引导系统以及升级启动单元,其中升级引导系统独立于用于执行PLC任务的PLC 系统,其在PLC上电启动时载入PLC的处理器运行。上述升级引导系统包括升级标识、升级判断单元11、系统升级单元13。上述升级判断单元11、系统升级单元13以及升级启动单元12由运行于PLC的处理器的软件实现。升级标识为PLC的存储装置(非易失存储器,可掉电存储)中的一个字段,当该字段的值为预设值时升级标识有效,否则升级标识无效。升级判断单元11用于判断升级标识是否有效并在升级标识无效时(即升级标识非预设值)启动PLC系统执行PLC任务、在升级标识有效(即升级标识为预设值)时启动系统升级单元13进行系统升级。该升级判断单元11在PLC上电启动时自动执行。由于升级判断单元11在上电启动时即执行,因此在PLC升级异常(例如在固件升级过程中断电等)并恢复后自动重新进入固件升级操作。在实际应用中,上述升级标识也可用升级引脚代替,即升级判断单元11在判断升级引脚是否有效,并根据升级引脚是否有效来进行相应操作。系统升级单元13用于在升级标识有效时接收升级数据及使用升级数据更新PLC系统程序。该系统升级单元13在数据更新完成(即固件升级完成)后将升级标识设为无效,然后启动更新后的PLC系统工作,执行PLC任务。具体地,升级数据可本文档来自技高网...

【技术保护点】
一种PLC固件升级系统,其特征在于:包括升级判断单元、系统升级单元、升级启动单元以及位于非易失性存储器中的升级标识,其中:所述升级判断单元,用于判断升级标识是否有效并在升级标识无效时启动PLC系统处理PLC任务,该升级判断单元在PLC上电启动时自动执行;所述系统升级单元,用于在所述升级标识有效时接收升级数据及使用所述升级数据更新PLC系统程序,并在数据更新完成后将所述升级标识设为无效及启动更新后的PLC系统处理PLC任务;所述升级启动单元,用于在接收到固件升级指令时使PLC系统中断PLC任务及将升级标识设为有效,并启动升级判断单元。

【技术特征摘要】

【专利技术属性】
技术研发人员:孟国军
申请(专利权)人:深圳市汇川控制技术有限公司深圳市汇川技术股份有限公司苏州汇川技术有限公司
类型:发明
国别省市:

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

1