多层异构网络下嵌入式设备固件更新方法技术

技术编号:21999657 阅读:36 留言:0更新日期:2019-08-31 05:15
本发明专利技术涉及一种多层异构网络下嵌入式设备固件更新方法,在客户端软件刺激下,网络中的所有设备会产生JSON路由信息数据,第N层设备路由信息通过总线上传至第N‑1层,第N‑1层设备完整接收后,添加自身属性及其与第N层的链路关系再向第N‑2层传递,最终汇总到第一层设备,由其传送至远程主机进行解析,固件更新时,依据用户选择的目标设备,远程主机会生成目标路由并随程序文件一起下发,各层设备解析路由后进行转发,最终将程序文件下发至目标设备。本发明专利技术利用JSON描述设备路由,结合IAP技术,远程主机可更新多层异构网络下任意设备固件,大大减轻了工程维护成本,该方法可应用于网络拓扑复杂的各种工业场合。

Firmware Updating Method for Embedded Devices in Multilayer Heterogeneous Networks

【技术实现步骤摘要】
多层异构网络下嵌入式设备固件更新方法
:本专利技术涉及嵌入式系统
,尤其涉及一种多层异构网络下嵌入式设备固件更新方法。
技术介绍
:目前常用的嵌入式设备固件更新方法有以下三种:①JTAG/SWD接口烧写;②ISP接口烧写;③利用总线通信及IAP技术,远程更新固件。三种方法均可更新固件,但侧重场合不同:JTAG/SWD多用于程序开发阶段的下载、调试;ISP多用于批量生产时的固件烧写;远程总线固件更新则多用于产品现场维护。(1)无论JTAG/SWD还是ISP接口均需要辅助工具(如PC机、J-link),且需要拆卸产品外壳(这类接口一般不会引出),这些操作在有些工业场合是禁止的,如煤矿井下、化工等易燃易爆场所,一者非本安或隔爆设备严禁进入这些场所,二者场所内隔爆产品严禁开盖。这两种接口应用的局限性很大。(2)利用总线通信及IAP技术进行远程固件更新,从一定程度减轻了产品维护成本,且可以在多种工业场合应用。但研究发现多数应用局限于单一链路(以太网/RS485/CAN等)、单层网络拓扑,更新前需要将待升级设备从通信网络断开,接入辅助设备进行固件更新。这就要求工程人员必须深入现场,且设备存在长时间离线的可能。设备长时间离线在某些系统(煤矿安全监测系统)中是不允许的。单一链路、单层网络拓扑下远程固件更新并没有解决所有问题。
技术实现思路
:本专利技术的目标是提供一种多层异构网络下嵌入式设备固件更新方法,利用JSON描述设备路由,结合现有技术,远程主机可更新多层网络、多种链路(下文简称多层异构网络)下任意设备固件,大大减轻了工程维护成本。实现多层异构网络升级的关键是实现路由描述,路由描述的核心是层级关系描述。一些轻量级的数据交换格式,如XML、JSON,先天具有描述层级关系的优势。本专利技术利用JSON来描述设备路由信息。多层异构网络需要获取网络拓扑,在此基础上建立程序文件路由。即从用户的角度看,需要直观获得网络里的所有设备,进而选择升级对象;从系统运行角度看,系统中所有设备在作为转发器时需要明确程序文件的对象,进而规划转发动作。为实现上述目的,本专利技术提供一种多层异构网络下嵌入式设备固件更新方法,在客户端软件刺激下,网络中的所有设备会产生JSON路由信息数据,第N层设备路由信息通过总线上传至第N-1层,第N-1层设备完整接收后,添加自身属性及其与第N层的链路关系再向第N-2层传递,最终汇总到第一层设备,由其传送至远程主机进行解析,固件更新时,依据用户选择的目标设备,远程主机会生成目标路由并随程序文件一起下发,各层设备解析路由后进行转发,最终将程序文件下发至目标设备。具体的,所述多层异构网络下嵌入式设备固件更新方法具体包括如下步骤:(1)第N层设备的JSON路由信息数据在第N-1层设备上汇总;(2)第N-1层再向第N-2层传递,并添加自身属性描述及其与第N层的链路关系;(3)最终由第一层设备将汇总的JSON路由信息数据传送至远程主机;(4)远程主机解析路由数据,绘制出网络拓扑;(5)用户根据网络拓扑选择需要进行固件更新的设备;(6)远程主机依据用户选择生成目标设备的路由描述JSON数据,并将JSON数据及程序文件一起下发至第一层设备;(7)第一层设备判断路由后,更新路由信息,将数据下发至第二层设备,层层传递,第N-1层设备分析路由判断需更新其总线端口下的设备,第N-1层设备启动总线转发程序数据。其中,所述嵌入式设备具有Bootloader程序,远程主机上电后,首先运行Bootloader程序,Bootloader校验应用程序,校验通过后,设置中断向量、跳转、执行应用程序;校验不通过,Bootloader将监听通信总线,分拣程序数据包,待程序数据接收完毕,将应用程序编程至指定Flash扇区,进而再次尝试跳转、执行应用程序。另外,所述嵌入式设备还具有Probe程序,Probe程序用于监测总线、分拣程序数据包,待程序数据接收完毕后,跳转至Bootloader,由Bootloader将新的应用程序编程至指定Flash扇区,进而实现程序更新。本专利技术多层异构网络下嵌入式设备固件更新方法具有以下积极的效果:(1)实现了多层异构网络下嵌入式设备的远程固件更新,对比原技术,不需要深入现场,减轻了维护工作量,整个网络的同类设备均可同时更新,提高了工作效率;(2)固件更新辅助设备不需要进入工业现场,无应用场合限制;(3)可生成网络拓扑信息,形成设备树,反馈固件更新进度及状态,提高了固件更新的辨识度;(4)无需将待更新设备从原网络断开,更新过程不影响设备正常通信;(5)协议灵活,无网络层级及链路形式限制。附图说明:图1为本专利技术的多层异构网络下嵌入式设备固件更新方法的流程图;图2为本专利技术的多层异构网络下嵌入式设备固件更新方法的嵌入式软件结构图;图3为本专利技术的路由JSON键值的示意图;图4为本专利技术的程序文件JSON键值的示意图。具体实施方式:下面结合附图对本专利技术的较佳实施例进行详细阐述,以使本专利技术的优点和特征能更易被本领域人员理解,从而对本专利技术的保护范围做出更为清楚明确的界定。本专利技术所适应的网络形式不限于网络层级及链路形式,但为了说明过程,简要绘制了一个三层网络的网络拓扑,如图1所示,其中L1-D1表示第一层网络上ID为1的设备,Link1表示链路形式1,常用链路有以太网、RS485、CAN等。在客户端软件刺激下,网络中所有设备会产生JSON路由信息数据,并通过总线向上层设备传送,上层设备完整接收后,添加自身属性及链路关系,再向上层传送,最终由第一层设备汇总传送至客户端软件解析。JSON对象包含设备地址、设备类型、软硬件版本号、升级进度、端口等键值如图3所示,其中端口用于扩展下级设备。“步骤①”为第三层设备L3-D1、L3-D2及L3-D3的JSON数据在第二层设备L2-Dn的汇总;“步骤②”为二层设备L2-Dn向一层设备L1-Dn传送的JSON数据,添加了自身属性描述及L3-Dx与L2-Dn的链路关系;“步骤③”为L1-Dn传送至远程主机的JSON数据。客户端软件解析路由数据,即可绘制出L1-Dn设备下的网络拓扑,即“步骤④”。用户根据网络拓扑选择需要进行固件更新的设备,客户端软件依据用户选择生成程序文件路由描述JSON数据,该JSON数据不仅包含了必要的路由及使能信息,还包含了描述程序的一些关键字段,如程序名、长度、校验、版本等内容,如图4所示。该JSON包会连同程序数据一起下发,网络中的各级设备在接收后将解析JSON,判断路由,如果程序不属于本机,将启动总线进行转发。图1中“步骤⑤”用户选择升级L1-Dn下L2-Dn的两个三层设备;“步骤⑥”中客户端软件将JSON及程序数据同时下发至L1-Dn;“步骤⑦”中,L1-Dn设备判断路由后,更新路由信息,将数据下发至L2-Dn;L2-Dn分析路由判断需更新其链路Link3下的两个设备,L2-Dn启动Link3链路转发程序数据。具有多层异构网络固件更新功能的嵌入式设备软件结构如图2所示。MCU上电后首先运行Bootloader程序。Bootloader校验应用程序,校验通过后,设置中断向量,跳转、执行应用程序;校验不通过,Bootloader将监听通信总线,分拣程序数据包,待程序数据接收完毕,将本文档来自技高网...

【技术保护点】
1.一种多层异构网络下嵌入式设备固件更新方法,其特征在于:在客户端软件刺激下,网络中的所有设备会产生JSON路由信息数据,第N层设备路由信息通过总线上传至第N‑1层,第N‑1层设备完整接收后,添加自身属性及其与第N层的链路关系再向第N‑2层传递,最终汇总到第一层设备,由其传送至远程主机进行解析,固件更新时,依据用户选择的目标设备,远程主机会生成目标路由并随程序文件一起下发,各层设备解析路由后进行转发,最终将程序文件下发至目标设备。

【技术特征摘要】
1.一种多层异构网络下嵌入式设备固件更新方法,其特征在于:在客户端软件刺激下,网络中的所有设备会产生JSON路由信息数据,第N层设备路由信息通过总线上传至第N-1层,第N-1层设备完整接收后,添加自身属性及其与第N层的链路关系再向第N-2层传递,最终汇总到第一层设备,由其传送至远程主机进行解析,固件更新时,依据用户选择的目标设备,远程主机会生成目标路由并随程序文件一起下发,各层设备解析路由后进行转发,最终将程序文件下发至目标设备。2.根据权利要求1所述的多层异构网络下嵌入式设备固件更新方法,其特征在于,所述多层异构网络下嵌入式设备固件更新方法具体包括如下步骤:(1)第N层设备的JSON路由信息数据在第N-1层设备上汇总;(2)第N-1层再向第N-2层传递,并添加自身属性描述及其与第N层的链路关系;(3)最终由第一层设备将汇总的JSON路由信息数据传送至远程主机;(4)远程主机解析路由数据,绘制出网络拓扑;(5)用户根据网络拓扑选择需要进行固件更新的设备;(6)远程主机依据用户选择生成目标设备的路由描...

【专利技术属性】
技术研发人员:谢国军袁凤培李继云贺耀宜高文王华平吴岩明许海翔赵立厂
申请(专利权)人:天地常州自动化股份有限公司中煤科工集团常州研究院有限公司
类型:发明
国别省市:江苏,32

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

1