OTA升级方法、OTA升级装置、电子设备和电磁除垢处理器与流程
本技术涉及ota升级,特别涉及一种ota升级方法、ota升级装置、电子设备和电磁除垢处理器。
背景技术:
1、在智慧供热领域中,供热管道的水中容易出现杂质,可通过电磁除垢能够将内部杂质清理。相关技术中,用于电磁除垢处理器的ota升级通常采用单存储分区直接覆盖的方式,即升级数据包直接写入业务程序所在的存储区域并覆盖原有固件代码,而不考虑升级过程中供电中断、传输丢包等异常工况所导致的业务固件损坏风险。这样,在需要对处于运行状态的电磁除垢处理器进行固件版本更新时,采用业务程序直接接收升级数据包并原地覆盖原有固件的模式完成升级操作,可能使得升级过程中出现异常工况后电磁除垢处理器无法自行恢复运行,造成电磁除垢处理器停机时间延长与现场运维成本增加。
技术实现思路
1、本技术提供了一种ota升级方法、ota升级装置、电子设备和电磁除垢处理器。
2、本技术实施方式提供一种ota升级方法,应用于电磁除垢处理器,所述电磁除垢处理器的存储区域划分为第一区、第二区与第三区,所述第一区用于引导校验ota升级包,所述第二区用于运行电磁除垢业务,所述第三区用于存储所述ota升级包的升级固件,所述方法包括:
3、在所述电磁除垢处理器启动后,运行所述第一区的程序,读取所述第三区预设偏移位置处的内嵌参数字段,以判断第三区是否存储有所述ota升级包的升级固件,所述升级固件包括所述内嵌参数字段;
4、在所述第三区不存在所述ota升级包的升级固件的情况下,跳转至所述第二区运行电磁除垢业务代码;
5、在所述第三区存储有所述ota升级包的升级固件的情况下,对所述第二区的原有业务固件进行擦除,并将所述升级固件写入所述第二区;
6、在将所述升级固件写入所述第二区后,对所述第三区存储的升级固件进行擦除,并在所述升级固件擦除完成后跳转至所述第二区运行电磁除垢业务代码,以实现所述ota升级。
7、如此,通过第一区、第二区与第三区的功能分隔设计,构建了稳定可靠的升级引导体系,引导程序始终不受业务固件升级的影响,即使业务区固件损坏,也能通过引导程序完成修复与重新升级,能够有效避免升级失败导致电磁除垢处理器无法运行的状况。并且,通过升级固件先完整缓存至第三区再写入业务区,能够确保写入业务区的固件数据完整,降低升级过程中的数据错误风险。此外,升级过程中业务程序的中断仅发生在固件擦除写入的短暂阶段,能够最大程度缩短业务中断时长,降低升级对工业生产流程的影响。还需说明地,升级完成后自动清理第三区的升级固件,既释放存储资源,也避免后续启动时重复触发升级流程,保障电磁除垢处理器长期运行的稳定性。
8、在某些实施方式中,所述读取所述第三区预设偏移位置处的内嵌参数字段,以判断第三区是否存储有ota升级包的升级固件,包括:
9、解析所述内嵌参数字段,获取升级固件长度信息与预设校验信息;
10、根据所述升级固件长度信息,计算所述升级固件的实际校验信息;
11、将所述实际校验信息与所述预设校验信息进行比对;
12、若所述实际校验值与所述预设校验信息一致,则判定所述第三区存储有所述ota升级包的升级固件;
13、若所述实际校验值与所述预设校验信息不一致,则判定所述第三区不存在所述ota升级包的升级固件。
14、如此,能够有效识别存储区域中的无效数据与残留碎片,避免因误判启动错误的升级流程。并且,通过长度界定范围与校验值比对相结合的方式,能够全面验证升级固件的完整性,防止损坏的固件写入业务运行区域,降低升级失败导致电磁除垢处理器故障的风险。此外,整个校验过程在引导程序阶段完成,无需额外增加功能模块,执行流程简洁,占用计算资源较少,能够在电磁除垢处理器启动过程中快速完成判定,不会明显增加电磁除垢处理器的启动时长。
15、在某些实施方式中,所述内嵌参数字段为8字节,所述内嵌参数字段的前4字节用于指示所述升级固件长度信息,所述内嵌参数字段的后4字节用于指示所述预设校验信息。
16、如此,能够简化引导程序的解析逻辑,并能减少引导代码的代码量,进而能够降低第一存储区域的空间占用。并且,统一的字段格式能够提升不同版本升级包之间的兼容性,便于电磁除垢处理器固件的长期迭代与维护。
17、在某些实施方式中,所述方法还包括:
18、在所述第二区运行所述电磁除垢业务代码的过程中,基于所述第二区响应外部设备发送的ota升级请求,擦除所述第三区中存储的原有数据,所述原有数据包括历史版本ota升级包的升级固件;
19、接收所述外部设备发送的ota升级包并逐包写入所述第三区;
20、在所述ota升级包接收完成的情况下,对所述第三区内的升级固件进行完整性校验;
21、在所述完整性校验通过的情况下,重启所述电磁除垢处理器;
22、在所述完整性校验失败的情况下,继续运行所述电磁除垢业务代码。
23、如此,能够避免升级过程中长时间中断业务运行,适配工业场景下电磁除垢处理器持续工作的需求。并且,升级包的接收与校验均在第三区完成,不会对第二区的业务固件造成修改或干扰,进而能够保障业务运行的稳定性。
24、在某些实施方式中,所述方法还包括:
25、若在ota升级数据包接收过程中断电,电磁除垢处理器上电后运行所述第一区的程序,读取所述第三区预设偏移位置处的内嵌参数字段,以判断第三区是否存储有ota升级包的升级固件,所述升级固件包括所述内嵌参数字段;
26、在所述第三区不存在所述ota升级包的升级固件的情况下,跳转至所述第二区运行电磁除垢业务代码;
27、在所述第三区存储有所述ota升级包的升级固件的情况下,对所述第二区的原有业务固件进行擦除,并将所述升级固件写入所述第二区;
28、在将所述升级固件写入所述第二区后,对所述第三区存储的升级固件进行擦除,并在所述升级固件擦除完成后跳转至所述第二区运行电磁除垢业务代码,以实现所述ota升级。
29、如此,能够自动处理接收过程中断电的异常场景,无需人工干预重新发起升级,降低了工业现场电磁除垢处理器的运维成本。
30、在某些实施方式中,所述方法还包括:
31、若在所述第一区程序对所述第二区的原有业务固件进行擦除或在所述升级固件写入所述第二区的过程中断电,在所述电磁除垢处理器重启后,再次运行所述第一区的程序,读取所述第三区预设偏移位置处的内嵌参数字段,以重新对所述第二区的原有业务固件进行擦除及将所述升级固件写入所述第二区。
32、如此,能够覆盖升级全流程的断电场景,无论断电发生在接收阶段还是写入阶段,电磁除垢处理器均可自动恢复并完成升级,避免因升级过程中断电导致电磁除垢处理器无法启动的故障。
33、在某些实施方式中,所述方法还包括:
34、在接收到所述外部设备发送的所述ota升级包的情况下,若确定所述ota升级包接收校验无误且成功写入所述第三区,向所述外部设备反馈升级包反馈信息,所述升级包反馈信息用于指示当前ota升级包已被所述电磁除垢处理器正确接收并处理;
35、其中,若所述外部设备在预设时间内未收到所述升级包反馈信息,则重发所述ota升级包;
36、若重发次数达到预设阈值仍未收到所述升级包反馈信息,则退出ota升级。
37、如此,能够有效应对工业现场复杂通信环境下的丢包错包问题,提升ota升级包的传输成功率。并且,通过电磁除垢处理器端的确认反馈,外部设备能够准确掌握每个数据包的传输状态,及时发现传输异常并执行重发,避免因单包丢失导致整个升级失败。
38、在某些实施方式中,所述ota升级包包括所述内嵌参数字段、电磁除垢处理器地址字段、命令字字段、软件版本字段、当前包序号字段、包最大长度字段、当前包实际长度字段、升级包实体字段以及校验和字段;
39、其中,所述命令字字段中预设数值标识升级控制指令;
40、所述软件版本字段的第一预设字节为电磁除垢处理器类型,所述软件版本字段的第二预设字节为软件版本号,用于版本匹配与避免重复升级;
41、所述内嵌参数字段中的预设校验信息通过将所述预设偏移位置处的字节数据置零后进行校验计算得到。
42、如此,通过多维度的字段设计,能够实现电磁除垢处理器寻址、指令识别、版本匹配、分包管理与多级校验等多重功能,进而能够有效避免电磁除垢处理器错配、重复升级、传输丢包与数据错误等各类问题,提升ota升级的成功率与稳定性。
43、本技术实施方式还提供一种ota升级装置,所述ota升级装置应用于电磁除垢处理器,用于实现上述ota升级方法,所述电磁除垢处理器的存储区域划分为第一区、第二区与第三区,所述第一区用于引导校验ota升级包,所述第二区用于运行电磁除垢业务,所述第三区用于存储所述ota升级包的升级固件,所述装置包括:
44、校验模块,被配置为在所述电磁除垢处理器启动后,运行所述第一区的程序,读取所述第三区预设偏移位置处的内嵌参数字段,以判断第三区是否存储有ota升级包的升级固件,所述升级固件包括所述内嵌参数字段;
45、跳转执行模块,被配置为在所述第三区不存在所述ota升级包的升级固件的情况下,跳转至所述第二区运行电磁除垢业务代码;及在所述第三区存储有所述ota升级包的升级固件的情况下,对所述第二区的原有业务固件进行擦除,并将所述升级固件写入所述第二区;
46、清理模块,被配置为在将所述升级固件写入所述第二区后,对所述第三区存储的升级固件进行擦除,并在所述升级固件擦除完成后跳转至所述第二区运行电磁除垢业务代码,以实现所述ota升级。
47、如此,依托各模块间的协同配合,本技术实施方式提供的ota升级装置通过第一区、第二区与第三区的功能分隔设计,构建了稳定可靠的升级引导体系,引导程序始终不受业务固件升级的影响,即使业务区固件损坏,也能通过引导程序完成修复与重新升级,能够有效避免升级失败导致电磁除垢处理器无法运行的状况。并且,通过升级固件先完整缓存至第三区再写入业务区,能够确保写入业务区的固件数据完整,降低升级过程中的数据错误风险。此外,升级过程中业务程序的中断仅发生在固件擦除写入的短暂阶段,能够最大程度缩短业务中断时长,降低升级对工业生产流程的影响。还需说明地,升级完成后自动清理第三区的升级固件,既释放存储资源,也避免后续启动时重复触发升级流程,保障电磁除垢处理器长期运行的稳定性。
48、本技术实施方式还提供一种电子设备,所述电子设备上存储有计算机程序,所述计算机程序被处理器执行时,实现上述方法的步骤。
49、本技术实施方式还提供一种电磁除垢处理器,所述电磁除垢处理器包括上述的电子设备。
50、本技术的实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本技术的实施方式的实践了解到。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com