CN116149713B - 一种树型异构网络下的各级设备的程序升级方法及装置 - Google Patents

一种树型异构网络下的各级设备的程序升级方法及装置 Download PDF

Info

Publication number
CN116149713B
CN116149713B CN202310417045.8A CN202310417045A CN116149713B CN 116149713 B CN116149713 B CN 116149713B CN 202310417045 A CN202310417045 A CN 202310417045A CN 116149713 B CN116149713 B CN 116149713B
Authority
CN
China
Prior art keywords
computer equipment
firmware
equipment
protocol based
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310417045.8A
Other languages
English (en)
Other versions
CN116149713A (zh
Inventor
谭天诺
易理
解建伟
秦茂
张兴旺
孙君光
杨康佳
赖前程
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Kinte Industrial Co Ltd
Original Assignee
Guangzhou Kinte Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Kinte Industrial Co Ltd filed Critical Guangzhou Kinte Industrial Co Ltd
Priority to CN202310417045.8A priority Critical patent/CN116149713B/zh
Publication of CN116149713A publication Critical patent/CN116149713A/zh
Application granted granted Critical
Publication of CN116149713B publication Critical patent/CN116149713B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Abstract

本发明公开了一种树型异构网络下的各级设备的程序升级方法及装置,其中方法包括以下步骤:进行预配置,选择需要升级的设备;向需要升级的设备发出版本号校验请求;若未升级版本,则执行备份旧程序;将固件传输至中位机设备;判断固件是否属于下位机设备;若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。

Description

一种树型异构网络下的各级设备的程序升级方法及装置
技术领域
本发明涉及设备程序升级,具体涉及一种树型异构网络下的各级设备的程序升级方法及装置。
背景技术
上位机设备-中位机设备-下位机设备的一对多树形结构的工业装备产线系统。该系统为本发明所应用的载体,上位机设备-中位机设备为一对多系统,中位机设备-下位机设备也为一对多系统,组成树形结构。中位机设备系统通常运行VxWorks、threadX、RT-Thread Smart等复杂实时操作系统或嵌入式Linux、Wince等大型非实时操作系统。下位通常运行裸机程序或μC/OS、FreeRTOS、RT-Thread nano等精简实时操作系统。
在工业自动化和生产集约化趋势下,规模化工业装备产线系统的研发、生产、部署周期越来越短,对产品可靠性带来了新挑战。将传统互联网产业下的迭代升级概念带到工业装备领域,可以有效压缩研发、生产、部署周期的同时,也带来对成规模化的工业装备产线系统进行更新升级的挑战。规模化的工业装备产线的计算系统不是单纯的单一服务端到多客户端关系,反而是呈现一对多的树形结构。通讯网络也并非单一的工业互联网,这为不同层级间系统升级带来挑战。
应对这种状况的传统方法是对上位机设备无法直接通讯的部分采用人工手动升级,但面对紧张的生产部署周期和级数级增长的下位机设备系统,传统方法显然无法适应。因此,亟需发明一种能够满足需求的下位机设备系统中各级设备的程序升级方法。
发明内容
为了克服上述现有技术的设备程序升级方法无法适应生产部署周期和级数级增长的下位机设备系统的技术缺陷,本发明提供一种树型异构网络下的各级设备的程序升级方法及装置。
为了解决上述问题,本发明按以下技术方案予以实现的:
第一方面,本发明公开一种树型异构网络下的各级设备的程序升级方法,具体包括以下步骤:
进行预配置,选择需要升级的设备;
向需要升级的设备发出版本号校验请求;
若未升级版本,则执行备份旧程序;
将固件传输至中位机设备;
判断固件是否属于下位机设备;
若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;
若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。
作为本发明的一种优选实施,所述进行预配置,选择需要升级的设备,具体包括以下子步骤:
将中位机设备与下位机设备分组,以形成多个设备组;
通过手动设置或网络发现功能自动获取,以得到设备组中的中位机设备信息;
通过列表展示所有中位机设备;
通过手动设置或向中位机设备请求自动获取,以得到设备组中的下位机设备信息;
通过树形列表展示所有下位机设备;
获取用户所勾选的需要升级的其中若干组设备组;
配置校验版本功能和失败自动还原功能后,以完成一键启动传输的预配置。
作为本发明的一种优选实施,所述向需要升级的设备发出版本号校验请求,具体包括以下子步骤:
上位机设备通过基于TCP的专有网络通讯协议,向中位机设备发出版本校验请求数据;
分析版本校验请求数据,以获得请求类型;
若请求类型为校验中位机设备的中位机设备版本信息,则中位机设备通过访问内部存储获取中位机设备版本信息;
向上位机设备反馈中位机设备版本信息,所述中位机设备版本信息包括操作系统类型、操作系统版本及系统支持信息;
若请求类型为校验下位机设备的下位机设备版本信息,则中位机设备通过基于CAN/RS485的总线通讯协议,向该中位机设备分支下的下位机设备获取下位机设备版本信息、下位机设备个数和下位机设备种类;
向上位机设备反馈下位机设备版本信息、下位机设备个数和下位机设备种类。
作为本发明的一种优选实施,所述若未升级版本,则执行备份旧程序,具体包括以下子步骤:
基于用户的勾选情况,选择备份方法一和备份方法二中的一种备份方法执行;
若用户勾选使用基于TCP的专有网络传输协议时使用备份方法一,备份方法一具体包括:
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求备份固件/配置文件;
将原固件/原配置文件移动到备份区域;
下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障、无法响应向上级通过基于TCP的专有网络通讯协议发起的请求时需要强制更新,使用备份方法二,备份方法二具体包括:
上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方另一目录;
执行备份;
作为本发明的一种优选实施,所述将固件传输至中位机设备,具体包括以下子步骤:
上位机设备通过基于TCP的私有网络传输协议向中位机设备传输固件/配置文件;
上位机设备基于SFTP/SSH的网络传输协议向中位机设备传输固件/配置文件;
用户根据中位机设备平台的支持状况选择相应的传输协议。
作为本发明的一种优选实施,所述启动中位机设备二级传输以完成下位机设备的固件更新,具体包括以下子步骤:
上位机设备通过基于TCP的专有网络通讯协议向中位机设备发出固件更新请求;
中位机设备接收固件更新请求并解析后,选定该中位机设备分支下指定的一个或多个下位机设备;
通过基于CAN/RS485的总线传输协议向选定的下位机设备发起传输,以更新下位机设备固件;
上位机设备通过基于TCP的专有网络通讯协议向中位机设备发出轮询查询,以获取中位机设备更新进度;
中位机设备对每个下位机设备传输进度分别反馈至上位机设备;
仅当下位机设备固件成功传输完成,并重启复位后,且请求到符合的版本号后,中位机设备返回该下位机设备更新成功提示。
作为本发明的一种优选实施,还包括:
若更新失败,上位机设备以树形列表方式展示各个设备升级状况;
更新失败时,上位机设备通过图形界面展示更新失败原因提供工程人员排查故障;
若排查故障后更新成功,上位机设备列出对应设备的当前版本号。
作为本发明的一种优选实施,所述若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置,具体包括以下子步骤:
若固件不属于下位机设备,则验证固件是否属于中位机设备;
若固件属于中位机设备,则请求中位机设备还原文件;
还原文件的方法基于用户的勾选情况,选择还原方法一和还原方法二中的一种备份方法执行;
若用户勾选使用基于TCP的专有网络传输协议时使用还原方法一,还原方法一具体包括:
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求还原固件/配置文件;
将原固件/原配置文件移动到还原区域;
下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障、无法响应向上级通过基于TCP的专有网络通讯协议发起的请求时需要强制更新,使用还原方法二,还原方法二具体包括:
上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方另一目录;
执行还原。
作为本发明的一种优选实施,中位机设备更新升级后需要进行配置,包括配置固件权限、重启中位机设备;
配置方法基于用户勾选情况选择,包括配置方法一和配置方法二;
若用户勾选使用基于TCP的专有网络传输协议时使用配置方法一;
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求配置固件权限、重启中位机设备;
若用户勾选使用基于SFTP/SSH的网络传输协议时使用配置方法二;
上位机设备通过SSH协议向中位机设备请求配置固件权限、重启中位机设备;
验证中位机的操作平台类型则执行配置。
第二方面,本发明还公开一种树型异构网络下的各级设备的程序升级装置,包括:
设备选择模块,其用于进行预配置,选择需要升级的设备;
版本校验模块,其用于向需要升级的设备发出版本号校验请求;
程序备份模块,其用于若未升级版本,则执行备份旧程序;
固件传输模块,其用于将固件传输至中位机设备;
判断固件模块,其用于判断固件是否属于下位机设备;
下位更新模块,其用于若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;
中位更新模块,其用于若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。
与现有技术相比,本发明的有益效果是:
本发明创造性地,通过将上位机设备软件实现通过设计通讯协议实现二级传输以完成对需要更新的设备组件的版本号筛选,减少人工筛查工作量,减少设备组件重复更新带来的风险和工作量。中位机设备通过二级传输实现上位机设备对下位机设备的穿透式更新,上位机设备无需连接下位机设备即可实现更新。上位机设备对全产线多个工业装备及工业装备内多个设备组件进行并发式一键更新的方法。上位机设备通过可折叠树状列表对每个设备组件升级更新结果展示,如果更新失败,则对更新失败的原因进行展示。本发明能够满足对规模化的工业装备产线系统中所提出的,能够在上位机设备端进行一键式升级树形网络各个层级的工控组件的需求。
通过以下三点,保证装备在意外情况下更新失败情况下依然保持有再次更新能力。1.在中位机设备更新升级项目中,可以通过配置,在更新失败的时候自动恢复之前的程序;或人工手动恢复。2.在中位机设备固件通讯失灵的情况下,可以通过通讯协议强制更新设备。3.在下位机设备更新失败的情况下,可以重置到bootloader备用程序,保持通讯更新能力。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细的说明,其中:
图1是本发明的树型异构网络下的各级设备的程序升级方法的流程示意图;
图2是本发明的树型异构网络下的各级设备的程序升级装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施例。虽然附图中显示了本公开的优选实施例,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一个实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
访问设备和服务器可以通过有线或无线通信方式进行直接或间接地连接。访问设备可以是终端,也可以是服务器。访问设备上运行了目标应用。目标应用是能够向服务器发起数据请求的应用程序,如社交应用、支付应用、游戏应用等。服务器可以是目标应用提供服务的应用服务器,也可以是区别与目标应用所对应应用服务器的代理服务器。服务器用于识别每个访问设备是否属于恶意设备,对来自恶意设备的数据报文进行拦截。当服务器为代理服务器时,代理服务器将不属于来自恶意设备的数据报文转发至应用服务器。终端具体可以是台式终端或移动终端,移动终端具体可以智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。服务器与服务器分别可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
需要说明的是,以下说明书内容中会提及的传输协议及通讯协议,具体如下:
基于TCP网络的固件及配置文件传输协议:
用于上位机-中位机间,基于TCP的私有网络传输协议。上位机运行对应软件,中位机运行对应固件。该协议底层采用TCP连接,对要传输的固件及配置文件进行切割,分成多份,自定义传输字段作为协议,从发起端传输到目标端,并在目标端重新拼接,组合成文件,完成传输。该协议优点是不依赖于目标机器所运行的平台,广泛支持VxWorks、嵌入式Linux等各种操作系统仅需支持基础的TCP协议,并需要在双方软件/固件中集成自定义的传输字段协议;弊端是传输速度慢,文件校验复杂,并需要保证中位机固件正常运行,如果中位机固件卡死闪退,将无法传输,此外还缺乏安全保护措施。
基于SFTP/SSH的网络固件及配置文件传输协议:
用于上位机-中位机间,基于SFTP/SSH的网络传输协议。上位机运行对应软件,中位机保证支持SFTP/SSH的操作系统正常运行,该协议基于SFTP/SSH协议进行文件传输。上位机SFTP/SSH协议支持可以通过操作系统命令或者开源QSsh库在软件内部集成支持;中位机的SFTP/SSH协议支持需要操作系统支持。该协议优点是传输速度快,加密传输不易破解,无需保证中位机固件正常运行,可以在中位机固件卡死闪退的情况下升级更新固件;缺点是需要中位机操作系统支持SFTP/SSH协议。
基于CAN/RS485总线的固件传输协议:
用于中位机-下位机间,基于CAN/RS485的总线传输协议。上位机运行对应软件,中位机运行对应固件,下位机运行对应固件。通过自定义的CAN/RS48字段完成对下位机固件的升级更新。
基于TCP的专有网络通讯协议:
用于上位机-中位机之间,基于TCP的专有网络通讯协议。上位机主动发起请求,通过自定义的字段交互数据信息,包括但不限于中位机、下位机的程序版本。
基于CAN/RS485的总线通讯协议:
用于中位机-下位机之间,基于CAN/RS485的总线通讯协议。中位机主动发起请求,通过自定义的字段交互数据信息,包括但不限于下位机的程序版本。
实施例1
如图1所示,第一方面,本发明实施例公开一种树型异构网络下的各级设备的程序升级方法,具体包括以下步骤:
步骤S1:进行预配置,选择需要升级的设备;
步骤S2:向需要升级的设备发出版本号校验请求;
步骤S3:若未升级版本,则执行备份旧程序;
步骤S4:将固件传输至中位机设备;
步骤S5:判断固件是否属于下位机设备;
步骤S6:若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;
步骤S7:若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。
作为本发明的一种优选实施,所述进行预配置,选择需要升级的设备,具体包括以下子步骤:
将中位机设备与下位机设备分组,以形成多个设备组;
通过手动设置或网络发现功能自动获取,以得到设备组中的中位机设备信息;
通过列表展示所有中位机设备;
通过手动设置或向中位机设备请求自动获取,以得到设备组中的下位机设备信息;
通过树形列表展示所有下位机设备;
获取用户所勾选的需要升级的其中若干组设备组;
配置校验版本功能和失败自动还原功能后,以完成一键启动传输的预配置。
作为本发明的一种优选实施,所述向需要升级的设备发出版本号校验请求,具体包括以下子步骤:
上位机设备通过基于TCP的网络通讯协议,向中位机设备发出版本校验请求数据;
分析版本校验请求数据,以获得请求类型;
若请求类型为校验中位机设备的中位机设备版本信息,则中位机设备通过访问内部存储获取中位机设备版本信息;
向上位机设备反馈中位机设备版本信息,所述中位机设备版本信息包括操作系统类型、操作系统版本及系统支持信息;
若请求类型为校验下位机设备的下位机设备版本信息,则中位机设备通过基于CAN/RS48的总线通讯协议,向该中位机设备分支下的下位机设备获取下位机设备版本信息、下位机设备个数和下位机设备种类;
向上位机设备反馈下位机设备版本信息、下位机设备个数和下位机设备种类。
作为本发明的一种优选实施,所述若未升级版本,则执行备份旧程序,具体包括以下子步骤:
基于用户的勾选情况,选择备份方法一和备份方法二中的一种备份方法执行;
若用户勾选使用基于TCP的专有网络传输协议时使用备份方法一,备份方法一具体包括:
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求备份固件/配置文件;
将原固件/原配置文件移动到备份区域;
下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障、无法响应向上级通过基于TCP的网络通讯协议发起的请求时需要强制更新,使用备份方法二,备份方法二具体包括:
上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方另一目录;
执行备份。
作为本发明的一种优选实施,所述将固件传输至中位机设备,具体包括以下子步骤:
上位机设备通过基于TCP的专有网络传输协议向中位机设备传输固件/配置文件;
上位机设备基于SFTP/SSH的网络传输协议向中位机设备传输固件/配置文件;
用户根据中位机设备平台的支持状况选择相应的传输协议。
作为本发明的一种优选实施,所述启动中位机设备二级传输以完成下位机设备的固件更新,具体包括以下子步骤:
上位机设备通过基于TCP的网络通讯协议向中位机设备发出固件更新请求;
中位机设备接收固件更新请求并解析后,选定该中位机设备分支下指定的一个或多个下位机设备;
通过基于CAN/RS48的总线传输协议向选定的下位机设备发起传输,以更新下位机设备固件;
上位机设备通过基于TCP的网络通讯协议向中位机设备发出轮询查询,以获取中位机设备更新进度;
中位机设备对每个下位机设备传输进度分别反馈至上位机设备;
仅当下位机设备固件成功传输完成,并重启复位后,且请求到符合的版本号后,中位机设备返回该下位机设备更新成功提示。
作为本发明的一种优选实施,还包括:
若更新失败,上位机设备以树形列表方式展示各个设备升级状况;
更新失败时,上位机设备通过图形界面展示更新失败原因提供工程人员排查故障;
若排查故障后更新成功,上位机设备列出对应设备的当前版本号。
作为本发明的一种优选实施,所述若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置,具体包括以下子步骤:
若固件不属于下位机设备,则验证固件是否属于中位机设备;
若固件属于中位机设备,则请求中位机设备还原文件;
还原文件的方法基于用户的勾选情况,选择还原方法一和还原方法二中的一种备份方法执行;
若用户勾选使用基于TCP的专有网络传输协议时使用还原方法一,还原方法一具体包括:
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求还原固件/配置文件;
将原固件/原配置文件移动到还原区域;
下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障、无法响应向上级通过基于TCP的网络通讯协议发起的请求时需要强制更新,使用还原方法二,还原方法二具体包括:
上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方备份目录;
执行还原。
作为本发明的一种优选实施,中位机设备更新升级后需要进行配置,包括配置固件权限、重启中位机设备;
配置方法基于用户勾选情况选择,包括配置方法一和配置方法二;
若用户勾选使用基于TCP的专有网络传输协议时使用配置方法一;
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求配置固件权限、重启中位机设备;
若用户勾选使用基于SFTP/SSH的网络传输协议时使用配置方法二;
上位机设备通过SSH协议向中位机设备请求配置固件权限、重启中位机设备;
验证中位机的操作平台类型,执行配置。
综上所述,本发明创造性地,通过将上位机设备软件实现通过通讯协议实现二级传输以完成对需要更新的设备组件的版本号筛选,减少人工筛查工作量,减少设备组件重复更新带来的风险和工作量。中位机设备通过二级传输实现上位机设备对下位机设备的穿透式更新,上位机设备无需连接下位机设备即可实现更新。上位机设备对全产线多个工业装备及工业装备内多个设备组件进行并发式一键更新的方法。上位机设备通过可折叠树状列表对每个设备组件升级更新结果展示,如果更新失败,则对更新失败的原因进行展示。本发明能够满足对规模化的工业装备产线系统中所提出的,能够在上位机设备端进行一键式升级树形网络各个层级的工控组件的需求。
通过以下三点,保证装备在意外情况下更新失败情况下依然保持有再次更新能力。1.在中位机设备更新升级项目中,可以通过配置,在更新失败的时候自动恢复之前的程序;或人工手动恢复。2.在中位机设备固件通讯失灵的情况下,可以通过通讯协议强制更新设备。3.在下位机设备更新失败的情况下,可以重置到bootloader备用程序,保持通讯更新能力。
本实施例所述的树型异构网络下的各级设备的程序升级方法的其它步骤参见现有技术。
实施例2
如图2所示,第二方面,本发明实施例公开一种树型异构网络下的各级设备的程序升级装置,其特征在于,包括:
设备选择模块M1,其用于进行预配置,选择需要升级的设备;
版本校验模块M2,其用于向需要升级的设备发出版本号校验请求;
程序备份模块M3,其用于若未升级版本,则执行备份旧程序;
固件传输模块M4,其用于将固件传输至中位机设备;
判断固件模块M5,其用于判断固件是否属于下位机设备;
下位更新模块M6,其用于若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;
中位更新模块M7,其用于若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。
通过本发明实施例所公开的树型异构网络下的各级设备的程序升级装置的运行,能够执行实施例1所述的树型异构网络下的各级设备的程序升级方法的所有步骤,以达到相同的技术效果。
本实施例所述的树型异构网络下的各级设备的程序升级装置的其它结构参见现有技术。
实施例3
本发明还公开一种电子设备,至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,所述至少一个处理器执行指令时,具体实现以下的步骤:进行预配置,选择需要升级的设备;向需要升级的设备发出版本号校验请求;若未升级版本,则执行备份旧程序;将固件传输至中位机设备;判断固件是否属于下位机设备;若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。
实施例4
本发明还公开一种存储介质,存储有计算机程序,所述计算机程序被处理器执行时,具体实现以下步骤:进行预配置,选择需要升级的设备;向需要升级的设备发出版本号校验请求;若未升级版本,则执行备份旧程序;将固件传输至中位机设备;判断固件是否属于下位机设备;若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,上述编程语言包括面向对象的编程语言—诸如Smalltalk、C++、Java等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,上述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施方式,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施方式。在不偏离所说明的各实施方式的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施方式的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施方式。

Claims (8)

1.一种树型异构网络下的各级设备的程序升级方法,其特征在于,具体包括以下步骤:
进行预配置,选择需要升级的设备;
向需要升级的设备发出版本号校验请求;
若未升级版本,则执行备份旧程序,具体包括以下子步骤:
基于用户的勾选情况,选择备份方法一和备份方法二中的一种备份方法执行;
若用户勾选使用基于TCP网络专有传输协议时使用备份方法一,备份方法一具体包括:上位机设备通过基于TCP的网络专有通讯协议向中位机设备请求备份固件/配置文件;将原固件/原配置文件移动到备份区域;下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障无法响应通过基于TCP的网络协议发起的请求时,需要强制更新,使用备份方法二,备份方法二具体包括:上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方另一目录;执行备份;
将固件传输至中位机设备;
判断固件是否属于下位机设备;
若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;
若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置,具体包括以下子步骤:
若固件不属于下位机设备,则验证固件是否属于中位机设备;
若固件属于中位机设备,则请求中位机设备还原文件;
还原文件的方法基于用户的勾选情况,选择还原方法一和还原方法二中的一种还原方法执行;
若用户勾选使用基于TCP的专有网络传输协议时使用还原方法一,还原方法一具体包括:上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求还原固件/配置文件;将原固件/原配置文件移动到还原区域;下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障、无法响应上级通过基于TCP的网络专有通讯协议发起的请求时需要强制更新,使用还原方法二,还原方法二具体包括:上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方备份目录,执行还原。
2.根据权利要求1所述的树型异构网络下的各级设备的程序升级方法,其特征在于,所述进行预配置,选择需要升级的设备,具体包括以下子步骤:
将中位机设备与下位机设备分组,以形成多个设备组;
通过手动设置或网络发现功能自动获取,以得到设备组中的中位机设备信息;
通过列表展示所有中位机设备;
通过手动设置或向中位机设备请求自动获取,以得到设备组中的下位机设备信息;
通过树形列表展示所有下位机设备;
获取用户所勾选的需要升级的其中若干组设备组;
配置校验版本功能和失败自动还原功能后,以完成一键启动传输的预配置。
3.根据权利要求2所述的树型异构网络下的各级设备的程序升级方法,其特征在于,所述向需要升级的设备发出版本号校验请求,具体包括以下子步骤:
上位机设备通过基于TCP的网络通讯协议,向中位机设备发出版本校验请求数据;
分析版本校验请求数据,以获得请求类型;
若请求类型为校验中位机设备的中位机设备版本信息,则中位机设备通过访问内部存储获取中位机设备版本信息;
向上位机设备反馈中位机设备版本信息,所述中位机设备版本信息包括操作系统类型、操作系统版本及系统支持信息;
若请求类型为校验下位机设备的下位机设备版本信息,则中位机设备通过基于CAN/RS485的总线通讯协议,向该中位机设备分支下的下位机设备获取下位机设备版本信息、下位机设备个数和下位机设备种类;
向上位机设备反馈下位机设备版本信息、下位机设备个数和下位机设备种类。
4.根据权利要求3所述的树型异构网络下的各级设备的程序升级方法,其特征在于,所述将固件传输至中位机设备,具体包括以下子步骤:
上位机设备通过基于TCP的专有网络传输协议向中位机设备传输固件/配置文件;
上位机设备基于SFTP/SSH的网络传输协议向中位机设备传输固件/配置文件;
用户根据中位机设备平台的支持状况选择相应的传输协议。
5.根据权利要求4所述的树型异构网络下的各级设备的程序升级方法,其特征在于,所述启动中位机设备二级传输以完成下位机设备的固件更新,具体包括以下子步骤:
上位机设备通过基于TCP的网络专有通讯协议向中位机设备发出固件更新请求;
中位机设备接收固件更新请求并解析后,选定该中位机设备分支下指定的一个或多个下位机设备;
通过基于CAN/RS485的总线传输协议向选定的下位机设备发起传输,以更新下位机设备固件;
上位机设备通过基于TCP的网络专有通讯协议向中位机设备发出轮询查询,以获取中位机设备更新进度;
中位机设备对每个下位机设备传输进度分别反馈至上位机设备;
仅当下位机设备固件成功传输完成,并重启复位后,且请求到符合的版本号后,中位机设备返回该下位机设备更新成功提示。
6.根据权利要求5所述的树型异构网络下的各级设备的程序升级方法,其特征在于,还包括:
若更新失败,上位机设备以树形列表方式展示各个设备升级状况;
更新失败时,上位机设备通过图形界面展示更新失败原因提供工程人员排查故障;
若排查故障后更新成功,上位机设备列出对应设备的当前版本号。
7.根据权利要求6所述的树型异构网络下的各级设备的程序升级方法,其特征在于:
中位机设备更新升级后需要进行配置,包括配置固件权限、重启中位机设备;
配置方法基于用户勾选情况选择,包括配置方法一和配置方法二;
若用户勾选使用基于TCP的专有网络传输协议时使用配置方法一;
上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求配置固件权限、重启中位机设备;
若用户勾选使用基于SFTP/SSH的网络传输协议时使用配置方法二;
上位机设备通过SSH协议向中位机设备请求配置固件权限、重启中位机设备;
验证中位机的操作平台类型,则执行配置。
8.一种树型异构网络下的各级设备的程序升级装置,其特征在于,包括:
设备选择模块,其用于进行预配置,选择需要升级的设备;
版本校验模块,其用于向需要升级的设备发出版本号校验请求;
程序备份模块,其用于若未升级版本,则执行备份旧程序,具体包括以下子步骤:
基于用户的勾选情况,选择备份方法一和备份方法二中的一种备份方法执行;
若用户勾选使用基于TCP网络专有传输协议时使用备份方法一,备份方法一具体包括:上位机设备通过基于TCP的网络专有通讯协议向中位机设备请求备份固件/配置文件;将原固件/原配置文件移动到备份区域;下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障无法响应通过基于TCP的网络协议发起的请求时,需要强制更新,使用备份方法二,备份方法二具体包括:上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方另一目录;执行备份;
固件传输模块,其用于将固件传输至中位机设备;
判断固件模块,其用于判断固件是否属于下位机设备;
下位更新模块,其用于若固件属于下位机设备,则启动中位机设备二级传输以完成下位机设备的固件更新;
中位更新模块,其用于若固件不属于下位机设备,则对中位机设备进行更新升级,然后进行配置,具体包括以下子步骤:
若固件不属于下位机设备,则验证固件是否属于中位机设备;
若固件属于中位机设备,则请求中位机设备还原文件;
还原文件的方法基于用户的勾选情况,选择还原方法一和还原方法二中的一种还原方法执行;
若用户勾选使用基于TCP的专有网络传输协议时使用还原方法一,还原方法一具体包括:上位机设备通过基于TCP的专有网络通讯协议向中位机设备请求还原固件/配置文件;将原固件/原配置文件移动到还原区域;下位机设备的程序通过bootloader技术保证在更新失败时依然拥有通讯升级能力;
若用户勾选使用基于SFTP/SSH的网络传输协议时,或者,在中位机设备固件故障、无法响应上级通过基于TCP的网络专有通讯协议发起的请求时需要强制更新,使用还原方法二,还原方法二具体包括:上位机设备通过基于SFTP/SSH的网络传输协议将远端的固件/配置文件移动到远方备份目录,执行还原。
CN202310417045.8A 2023-04-19 2023-04-19 一种树型异构网络下的各级设备的程序升级方法及装置 Active CN116149713B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310417045.8A CN116149713B (zh) 2023-04-19 2023-04-19 一种树型异构网络下的各级设备的程序升级方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310417045.8A CN116149713B (zh) 2023-04-19 2023-04-19 一种树型异构网络下的各级设备的程序升级方法及装置

Publications (2)

Publication Number Publication Date
CN116149713A CN116149713A (zh) 2023-05-23
CN116149713B true CN116149713B (zh) 2023-12-15

Family

ID=86358535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310417045.8A Active CN116149713B (zh) 2023-04-19 2023-04-19 一种树型异构网络下的各级设备的程序升级方法及装置

Country Status (1)

Country Link
CN (1) CN116149713B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116501359B (zh) * 2023-06-29 2023-09-15 深圳和润达科技有限公司 对设备进行自适应远程升级的方法、装置、系统及介质

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103281399A (zh) * 2013-06-18 2013-09-04 广东顺德长和电气有限公司 一种分级远程控制终端在线升级系统及其方法
CN103763336A (zh) * 2013-11-29 2014-04-30 北京中启智源数字信息技术有限责任公司 一种面向复杂网络架构的软件更新方法
CN107453925A (zh) * 2017-09-21 2017-12-08 山东康威通信技术股份有限公司 基于多级通信平台的远程固件升级方法和云平台
CN107465539A (zh) * 2017-07-25 2017-12-12 北京康得新创科技股份有限公司 固件的升级方法、终端及固件的升级系统
CN110177022A (zh) * 2019-06-28 2019-08-27 武汉虹信通信技术有限责任公司 树形光纤分布系统全网升级控制方法及装置
CN110187906A (zh) * 2019-05-16 2019-08-30 天地(常州)自动化股份有限公司 多层异构网络下嵌入式设备固件更新方法
CN110730104A (zh) * 2019-10-29 2020-01-24 乐鑫信息科技(上海)股份有限公司 一种mesh网络设备的多设备批量固件升级的方法
CN113347225A (zh) * 2021-04-19 2021-09-03 中科创达软件股份有限公司 物联网终端设备的空中下载技术ota升级方法及服务器
CN113360173A (zh) * 2021-07-01 2021-09-07 无锡热能在线科技有限公司 一种工业设备多级联ota升级的装置及方法
CN113900693A (zh) * 2021-10-27 2022-01-07 深圳益邦阳光有限公司 一种固件升级方法、装置、系统、电子设备及存储介质
CN113961218A (zh) * 2021-10-14 2022-01-21 武汉迈威通信股份有限公司 交换机远程批量升级方法、装置、设备及存储介质
CN114489718A (zh) * 2021-12-30 2022-05-13 坎德拉(深圳)科技创新有限公司 树状连接系统的固件升级方法、装置、设备及存储介质
CN115209403A (zh) * 2022-07-15 2022-10-18 宁波亿林节水科技股份有限公司 一种固件升级方法、装置以及存储介质和电子设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2671624C1 (ru) * 2017-05-17 2018-11-02 Федеральное государственное бюджетное учреждение науки Институт проблем управления им. В.А. Трапезникова Российской академии наук Способ управления обновлениями программного обеспечения в системах с каскадной структурой

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103281399A (zh) * 2013-06-18 2013-09-04 广东顺德长和电气有限公司 一种分级远程控制终端在线升级系统及其方法
CN103763336A (zh) * 2013-11-29 2014-04-30 北京中启智源数字信息技术有限责任公司 一种面向复杂网络架构的软件更新方法
CN107465539A (zh) * 2017-07-25 2017-12-12 北京康得新创科技股份有限公司 固件的升级方法、终端及固件的升级系统
CN107453925A (zh) * 2017-09-21 2017-12-08 山东康威通信技术股份有限公司 基于多级通信平台的远程固件升级方法和云平台
CN110187906A (zh) * 2019-05-16 2019-08-30 天地(常州)自动化股份有限公司 多层异构网络下嵌入式设备固件更新方法
CN110177022A (zh) * 2019-06-28 2019-08-27 武汉虹信通信技术有限责任公司 树形光纤分布系统全网升级控制方法及装置
CN110730104A (zh) * 2019-10-29 2020-01-24 乐鑫信息科技(上海)股份有限公司 一种mesh网络设备的多设备批量固件升级的方法
CN113347225A (zh) * 2021-04-19 2021-09-03 中科创达软件股份有限公司 物联网终端设备的空中下载技术ota升级方法及服务器
CN113360173A (zh) * 2021-07-01 2021-09-07 无锡热能在线科技有限公司 一种工业设备多级联ota升级的装置及方法
CN113961218A (zh) * 2021-10-14 2022-01-21 武汉迈威通信股份有限公司 交换机远程批量升级方法、装置、设备及存储介质
CN113900693A (zh) * 2021-10-27 2022-01-07 深圳益邦阳光有限公司 一种固件升级方法、装置、系统、电子设备及存储介质
CN114489718A (zh) * 2021-12-30 2022-05-13 坎德拉(深圳)科技创新有限公司 树状连接系统的固件升级方法、装置、设备及存储介质
CN115209403A (zh) * 2022-07-15 2022-10-18 宁波亿林节水科技股份有限公司 一种固件升级方法、装置以及存储介质和电子设备

Also Published As

Publication number Publication date
CN116149713A (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
US11126426B2 (en) Method and system for implementing software changes using rolling upgrades with reduced downtime
US8589909B2 (en) Techniques for reducing down time in updating applications with metadata
EP3152650B1 (en) High-speed application for installation on mobile devices for permitting remote configuration of such mobile devices
CN102609281B (zh) 分布式软件补丁更新方法及系统
US9253265B2 (en) Hot pluggable extensions for access management system
US20220147367A1 (en) Method and System for Automation Tool Set for Server Maintenance Actions
US11106453B2 (en) Method and system for a client to server deployment via an online distribution platform
US8640098B2 (en) Offline configuration and download approach
US20100306337A1 (en) Systems and methods for cloning target machines in a software provisioning environment
CN111770169A (zh) 设备固件升级的方法、装置、设备以及存储介质
US10331428B1 (en) Automated firmware update management on huge big-data clusters
CN110225078B (zh) 一种应用服务更新方法、系统及终端设备
CN111225064A (zh) Ceph集群部署方法、系统、设备和计算机可读存储介质
CN116149713B (zh) 一种树型异构网络下的各级设备的程序升级方法及装置
US11645086B2 (en) System and method for implementing a filesystem agent management solution
CN111737227A (zh) 数据修改方法及系统
CN114064438A (zh) 数据库故障处理方法和装置
EP3260981B1 (en) Information processing apparatus, information processing system, and information processing method for updating firmware
US11704105B2 (en) Method, device, and computer program product for managing virtual machine upgrade
US9207928B2 (en) Computer-readable medium, apparatus, and methods of automatic capability installation
CN114564211A (zh) 集群部署方法、集群部署装置、设备及介质
CN114721686A (zh) 配置数据更新方法、装置、电子设备和存储介质
CN111459525A (zh) 应用程序更新数据处理系统、方法、存储介质、计算机
CN113821249A (zh) 项目开发配置的方法、装置、电子设备和可读存储介质
CN109101253B (zh) 云计算系统中主机的管理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant