本发明涉及远程在线升级软件,具体为一种基于以太网tftp协议远程在线升级软件的方法。
背景技术:
1、工商业储能技术是近几年新兴发展的技术,作为集成系统,对储能集成的技术处于探索前进的路上,通过结合市场实际项目运行逐渐积累经验去不断完善的,rtc控制器作为系统集成的核心部件,面临着对自身运行程序随时升级的挑战,项目现场一般比较偏僻,通过人工现场升级程序,运营成本比较大。
2、但是传统的iap是产品预留通信接口,结合pc的上位机给发布的产品升级,也有采用4g dtu设备给设备进行远程升级,但是又另外增加了成本,而且受4g网络信号影响,偏远地区升级体验不太友好。
技术实现思路
1、(一)解决的技术问题
2、针对现有技术的不足,本发明提供了一种基于以太网tftp协议远程在线升级软件的方法,具备实现任意数量的从机设备实现升级,低成本、易实现、可操作性强等优点,解决了升级成本高、受4g网络信号影响、操作性低的问题。
3、(二)技术方案
4、为实现上述目的,本发明提供如下技术方案:一种基于以太网tftp协议远程在线升级软件的方法,包括以下步骤:
5、步骤一、通过pc网络端把给要升级设备的升级文件传送到ems设备里,在ems设备上设置一个文件上传接口,该接口可以接受来自网络的升级文件,使用安全的文件传输协议如https或sftp将升级文件上传到ems设备,ems设备接收到文件后,进行文件完整性校验,确保文件未损坏;
6、步骤二、通过网络发送升级指令到ems设备,或者设置一个定时任务,在指定时间自动发送升级指令,ems设备接收到升级指令后,解析指令内容,准备执行升级操作;
7、步骤三、rtc设备接收到升级指令后,在flash的特定地址写入待升级标志,rtc设备执行软件重启操作,重启后进入bootloader程序;
8、步骤四、rtc在bootloader程序里读取到特定的flash地址的值为待升级标志,则开启tftp客户端,主动连接设定好的tftp服务端的ip和端口号ems的tftp服务端;
9、步骤五、tftp客户端连接成功后,向服务端发送get请求,请求下载特定的升级文件如rtc.bin,在下载文件之前,先将应用程序区域的flash数据拷贝到备份程序区域,拷贝完成后,擦除应用程序区域的flash,准备写入新的升级文件;
10、步骤六、tftp客户端按照协议接收升级文件,接收完成后进行文件完整性校验,校验无误后,将接收到的文件写入应用程序区域的flash里,写入完成后,在flash的特定地址标记升级成功标志,重启rtc设备,跳转到新的应用程序运行;
11、步骤七、在升级过程中,如果出现任何错误,如连接失败、文件获取失败、传输超时、校验失败等,则立即停止升级操作,将备份区域的flash数据拷贝回应用程序区域flash里,恢复到之前的程序继续运行。
12、优选的,所述通过网络把给要升级设备的升级文件传送到ems设备内时,使用加密的网络协议如https或sftp将升级文件更加安全地传送到ems设备,同时提供文件传输状态监控和日志记录功能,以便跟踪传输进度和诊断问题。
13、优选的,所述通过网络给ems发送升级rtc指令或设定指定时间让ems给rtc发升级指令时,提供网络指令发送的确认和重试机制,确保指令能够可靠地到达ems设备,在ems设备上实施指令解析和验证,确保指令的合法性和正确性。
14、优选的,所述在rtc接收到ems下发的升级指令后,在rtc设备上实施flash地址的访问控制和验证,确保只有合法的升级操作才能修改flash,在bootloader程序中增加对升级标志的验证和错误处理逻辑,确保升级过程的正确性。
15、优选的,所述rtc在bootloader程序里读取到特定的flash地址后,在bootloader程序中实施tftp客户端的重连和超时处理逻辑,确保能够稳定地连接到tftp服务端,提供对tftp服务端ip和端口号的动态配置功能,以便在需要时更改连接参数,在获取升级文件前,先检查文件的存在性和完整性,确保获取到的是正确的升级文件。
16、优选的,所述从tftp服务端get特定的文件名,在擦除应用程序区域flash之前,先确保备份程序区域的flash有足够的空间来存储备份数据,提供对flash擦除操作的验证和错误处理逻辑,确保擦除操作的正确性和可靠性,在备份和擦除flash数据时,实施数据加密和校验机制,确保数据的安全性和完整性。
17、优选的,所述在tftp客户端按照协议接收升级文件时,实施数据流控制和校验机制,确保接收到的数据是完整和正确的,提供对升级文件的多次校验机制,包括在接收过程中和接收完成后的校验,确保文件的正确性,在写入升级文件到应用程序区域flash时,实施写入验证和错误处理逻辑,确保写入操作的正确性和可靠性,在标记升级成功标志前,先确保升级文件已经正确写入并校验无误。
18、优选的,所述在升级过程中,实施详细的错误记录和诊断功能,以便在升级失败时能够快速定位问题,提供对备份区域flash数据的验证和恢复机制,确保在升级失败时能够恢复到之前的程序版本并继续运行,在恢复到之前的程序版本后,实施必要的系统检查和测试,确保系统能够稳定运行,同时,提供升级失败的报警和通知功能,以便及时通知相关人员进行处理。
19、(三)有益效果
20、与现有技术相比,本发明提供了一种基于以太网tftp协议远程在线升级软件的方法,具备以下有益效果:
21、该基于以太网tftp协议远程在线升级软件的方法,通过ems采用linux系统架构,ems开发数据接口支持,ems具有联网功能,可方便的在远程把文件放入到ems设备里存储,ems和rtc之间通过以太网连接,若有多台rtc设备和ems连接,通过交换机组成局域网,由于各个rtc的ip不同,ems即可发送指令让单台rtc设备进入升级状态,也可以发指令让局域网内所有rtc进入升级状态,实现任意数量的从机设备实现升级,同时在ems接受到完整的文件后,再给rtc进行升级,ems和rtc之间组成的具有硬连接的局域网,升级更加快速稳定,相对传统的升级方式,具有低成本、易实现、可操作性强的特点。
1.一种基于以太网tftp协议远程在线升级软件的方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述通过网络把给要升级设备的升级文件传送到ems设备内时,使用加密的网络协议如https或sftp将升级文件更加安全地传送到ems设备,同时提供文件传输状态监控和日志记录功能,以便跟踪传输进度和诊断问题。
3.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述通过网络给ems发送升级rtc指令或设定指定时间让ems给rtc发升级指令时,提供网络指令发送的确认和重试机制,确保指令能够可靠地到达ems设备,在ems设备上实施指令解析和验证,确保指令的合法性和正确性。
4.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述在rtc接收到ems下发的升级指令后,在rtc设备上实施flash地址的访问控制和验证,确保只有合法的升级操作才能修改flash,在bootloader程序中增加对升级标志的验证和错误处理逻辑,确保升级过程的正确性。
5.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述rtc在bootloader程序里读取到特定的flash地址后,在bootloader程序中实施tftp客户端的重连和超时处理逻辑,确保能够稳定地连接到tftp服务端,提供对tftp服务端ip和端口号的动态配置功能,以便在需要时更改连接参数,在获取升级文件前,先检查文件的存在性和完整性,确保获取到的是正确的升级文件。
6.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述从tftp服务端get特定的文件名,在擦除应用程序区域flash之前,先确保备份程序区域的flash有足够的空间来存储备份数据,提供对flash擦除操作的验证和错误处理逻辑,确保擦除操作的正确性和可靠性,在备份和擦除flash数据时,实施数据加密和校验机制,确保数据的安全性和完整性。
7.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述在tftp客户端按照协议接收升级文件时,实施数据流控制和校验机制,确保接收到的数据是完整和正确的,提供对升级文件的多次校验机制,包括在接收过程中和接收完成后的校验,确保文件的正确性,在写入升级文件到应用程序区域flash时,实施写入验证和错误处理逻辑,确保写入操作的正确性和可靠性,在标记升级成功标志前,先确保升级文件已经正确写入并校验无误。
8.根据权利要求1所述的一种基于以太网tftp协议远程在线升级软件的方法,其特征在于:所述在升级过程中,实施详细的错误记录和诊断功能,以便在升级失败时能够快速定位问题,提供对备份区域flash数据的验证和恢复机制,确保在升级失败时能够恢复到之前的程序版本并继续运行,在恢复到之前的程序版本后,实施必要的系统检查和测试,确保系统能够稳定运行,同时,提供升级失败的报警和通知功能,以便及时通知相关人员进行处理。
