CN114579166A - 组件模块升级方法、组件模块和财务机器人 - Google Patents
组件模块升级方法、组件模块和财务机器人 Download PDFInfo
- Publication number
- CN114579166A CN114579166A CN202011375761.7A CN202011375761A CN114579166A CN 114579166 A CN114579166 A CN 114579166A CN 202011375761 A CN202011375761 A CN 202011375761A CN 114579166 A CN114579166 A CN 114579166A
- Authority
- CN
- China
- Prior art keywords
- component module
- target component
- application program
- upgrade package
- upgrade
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/658—Incremental updates; Differential updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/12—Accounting
- G06Q40/125—Finance or payroll
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Finance (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例公开了一种财务机器人的组件模块升级方法、组件模块及财务机器人,升级方法包括:接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;响应于所述升级请求向所述远程主机发送下载请求;接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包;其中,所述升级包的传输协议为Ymodem协议;在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。实施本申请,可以提高财务机器人各组件模块的升级效率和升级成功率。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种财务机器人组件模块升级方法、装置、组件模块及财务机器人。
背景技术
财务机器人可以替代财务人员完成一些简单重复的财务工作,从而提高财务工作的效率。随着财务机器人功能的丰富,财务机器人具有大量的组件模块,组件模块根据内置的应用程序,各个组件模块之间相互配合完成财务工作,在目前的使用场景中,各个组件模块的应用程序存在升级的需求,由于组件模块的应用程序是烧录在新品中,然后焊接到印刷电路板上的,因此在对组件模块的应用程序进行升级时需要使用特殊的插口,需要维护人员将升级设备插入到接口中进行升级,升级效率不高且升级过程中可能会遇到错误。
发明内容
本申请实施例提供了一种财务机器人组件模块升级方法、组件模块、存储介质及财务机器人,可以解决相关技术中组件模块的应用程序升级效率低和容易出错的问题。所述技术方案如下:
第一方面,本申请实施例提供了一种财务机器人的组件模块升级方法,所述方法包括:
目标组件模块接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;
目标组件模块响应于升级请求向远程主机发送下载请求;下载请求用于请求在远程主机上下载最新的升级包,升级包的格式为Ymodem协议;
在检测到目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;
如果完整性校验成功,根据所述目标组件的模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。
财务机器人包括多个组件模块,远程主机可以基于网络通信协议与财务机器人中的各个组件模块进行通信,例如:远程主机基于modbus RTU协议与各个组件模块进行升级,各个组件模块均设置有独立的处理器,各个组件模块之间可以单独设置存储器,也可以是多个组件模块共享一个公共的存储器,本申请不作限制。财务机器人包括的各个组件模块之间通过Modbus总线进行相互通信。Ymodem协议是一种错误纠正协议,数据成功接收的不会发送确认消息,数据未被成功接收则发送非确认(NAK)消息,并执行重发流程,且只有在升级成功后才根据所述目标组件的模块的升级包更新预存储的旧应用程序得到新应用程序,从而保证升级财务机器人的组件模块上的应用程序的安全性和可靠性。
在一种可能的设计中,所述接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包,包括:
接收来自所述远程主机依次发送的多个数据包;
将所述多个数据包进行重组得到所述升级包。其中,升级包可以是增量升级包,也可以是全量升级包,远程主机将升级包进行分段处理,以负荷网络传输协议modbus RTU协议的要求,分段处理得到多个数据包,对多个数据包进行编号,然后根据数据包的编号大小从小达到依次向财务机器人发送数据包,指导所有的数据包全部发送给财务机器人,财务机器人中的目标组件模块接收到多个数据包,对多个数据包进行重组得到升级包。
在一种可能的设计中,所述在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验之前,还包括:
解析每个数据包中携带的停止传输指示符的值;
在所述停止传输指示符的值为预设值时,确定所述升级包传输完毕。
在一种可能的设计中,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程,还包括:
向财务机器人中除所述目标组件模块之外的其他组件模块发送停止工作指令;其中,所述停止工作指令用于指示所述其他组件模块停止工作。
在所述新应用程序成功运行后,向所述其他组件模块发送恢复工作指令;其中,所述恢复工作指令用于指示所述其他组件模块恢复工作。
在一种可能的设计中,所述组件模块的存储空间划分为第一存储空间和第二存储空间。
在一种可能的设计中,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,包括:
在所述第二存储空间中获取所述目标组件模块当前存储的旧应用程序;
将所述第一存储空间中存储所述升级包和所述旧应用程序进行增量更新得到新应用程序。
在一种可能的设计中,还包括:
在所述完整性校验失败时,向所述远程主机发送校验失败消息,从所述第二存储空间中获取所述旧应用程序在所述目标组件模块上运行;或
在所述完整性校验成功时,将所述新应用程序覆盖写入到所述第二存储空间中。
第二方面,本申请实施例提供了一种财务机器人的组件模块,该组件模块为财务机器人中待升级的目标组件模块,所述目标组件模块包括:
收发单元,用于接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;
响应于所述升级请求向所述远程主机发送下载请求;
接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包;其中,所述升级包的传输协议为Ymodem协议;
校验单元,用于在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;
更新单元,用于如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。
第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
第四方面,本申请实施例提供一种组件模块,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。
第五方面,本申请实施例提高一种财务机器人,包括上述的组件模块。
本申请一些实施例提供的技术方案带来的有益效果至少包括:
通过利用Ymodem为传输协议传输升级包,以通过Modbus RTU组网方式来实现财务机器人的组件模块和远程主机之间的通信,且只有在升级成功后才根据所述目标组件的模块的升级包更新预存储的旧应用程序得到新应用程序,从而保证升级财务机器人的组件模块上的应用程序的安全性和可靠性。另外,在对组件模块的应用程序进行升级过程中如果出现异常情况(包括在完整性校验失败或新应用程序在目标组件上运行失败时),将组件模块的应用程序恢复有原有状态,从而进一步保证升级财务机器人的组件模块上的应用程序的安全性和可靠性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的网络架构图;
图2是本申请实施例提供的一种财务机器人的组件模块升级方法的流程示意图;
图3是本申请实施例提供的一种财务机器人的组件模块的结构示意图;
图4是本申请实施例提供的一种财务机器人的组件模块的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
参见图1,为本申请实施例提供的一种网络架构图,本申请的网络架构包括:远程主机10和财务机器人11,财务机器人11包括多个组件模块,终端设备的数量本申请不作限制,例如:图1中的多个组件模块为:组件模块1、组件模块2、…、组件模块N,N为大于1的整数。组件模块在财务机器人中实现不同的功能,例如:扫描功能、打印功能、图像处理功能、鉴权功能等。各个组件模块均设置有一个处理器,因此具备和远程主机10单独通信的能力,同时各个组件模块之间可可以基于modbus总线相互进行通信。组件模块和远程主机10之间可以采用基于串行的网络通信协议进行通信,例如:modbus协议。各个组件模块可以单独设置一个存储器,即各个组件模块具有单独的存储空间,也可以是各个组件模块共用一个存储器,该存储器中分别为每个组件模块分配有存储空间。可选的,各个组件模块的存储空间又可以划分为第一存储空间和第二存储空间。
基于图1的网络架构,请参见图2,为本申请实施例提供的一种财务机器人组件模块升级方法的流程示意图。如图2所示,本申请实施例的所述方法可以包括以下步骤:
S201、接收来自远程主机的升级请求。
其中,远程主机会查询财务机器人中各个组件模块上应用程序的版本号,在组件模块的版本号和远程主机上该组件模块的版本号不一致时,会向该组件模块发送升级请求,升级请求会携带待升级的目标组件模块的标识。例如:目标组件模块为组件模块1,组件模块1上当前的应用程序的版本号为V1.0,远程主机上存储的组件模块1的应用程序的版本号为V1.1,那么对比二者不相同时,远程主机会向组件模块1发送升级请求,升级请求会携带待升级的组件模块1的标识,标识用于唯一表示组件模块1的身份,包括但不限于MAC地址、IP地址或端口号中的一种或多种。远程主机可以基于网络通信协议与待升级的目标组件模块之间进行通信,例如:modbus RTU协议。
S202、响应于所述升级请求向所述远程主机发送下载请求。
其中,下载请求用于请求远程主机向目标组件模块传输升级包,下载请求会携带目标组件模块的标识,以便远程主机根据目标组件模块的标识确定待发送的升级包。
S203、接收来自所述远程主机响应于所述下载请求发送的目标组件模块的升级包。
其中,升级包的传输协议为Ymodem协议,Ymodem协议是一种错误纠正协议,使用较大数据块的调制解调采用这种协议,以获得更高的工作效率,采用Ymodem协议的调制解调器以1024字节数的块发送数据,数据成功接收的不会发送确认消息,数据未被成功接收则发送非确认(NAK)消息,并执行重发流程。升级包可以是增量升级包或全量升级包,增量升级包是远程主机上存储的应用程序和目标组件模块上存储的应用程序的增量数据,全量升级包即完备的新应用程序的升级包。
S204、在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验。
其中,完整性校验用于检验目标组件接收到的升级包和远程主机上存储的升级包是否相同,完整性校验可以采用现有的任意一种完整性校验算法,例如:CRC32校验算法。
S205、如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在目标应用程序上运行新应用程序。
其中,预存储的旧应用程序是目标组件模块当前存储的应用程序(更新升级时存在的应用程序),如果目标组件模块的升级包完整性校验成功后,根据来自远程主机的升级包对目标组件模块当前存储的应用程序进行更新的新应用程序,如果升级包为增量升级包,需要将该增量升级包和目标组件模块当前存储的旧应用程序进行合并得到新应用程序;如果升级包为全量升级包,将该全量升级包进行解压缩后即得到新应用程序,然后在目标组件模块上运行新应用程序,以此完成目标组件模块的程序升级。
在一个或多个实施例中,所述接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包,包括:
接收来自所述远程主机依次发送的多个数据包;
将所述多个数据包进行重组得到所述升级包。
举例来说,远程主机和目标组件之间的网络通信协议只允许一次传输128K的数据包,升级包的大小确远大于128K,那么远程主机将升级包进行分段处理得到多个128K的数据包,最后一个数据包的大小可能不足128K,不足的部分可以使用指定的填充字符进行填充。然后将多个数据包依次进行编号,例如:从1、2、3、...、的方式进行编号,然后根据编号从小到大的顺序依次向目标组件模块传输多个数据包。目标组件模块接收远程主机依次发送的多个数据包,根据多个数据包的编号从小到大进行重组得到升级包,如果最后一个数据包中存储指定的填充字符,需要移除该填充字符。
其中,每个数据包会携带一个停止传输指示符,停止传输指示符的值为预设值时,表明该数据包为最后一个数据包,即完成升级包的传输过程,例如:目标组件模块每接收到一个数据包会检测停止传输指示符,在传输指示符的值为1时表示该数据包为最后一个数据包,然后将先前接收到的所有数据包进行重组得到完整的升级包。
在一个或多个实施例中,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,还包括:
向财务机器人中除所述目标组件模块之外的其他组件模块发送停止工作指令;其中,所述停止工作指令用于指示所述其他组件模块停止工作。
在所述新应用程序成功运行后,向所述其他组件模块发送恢复工作指令;其中,所述恢复工作指令用于指示所述其他组件模块恢复工作。
其中,各个组件模块之间配合使用才能执行财务机器人的正常工作,财务机器人的目标组件模块升级过程中,财务机器人的其他组件模块无法正常工作,目标组件模块在升级过程中,具体来说是接收到升级请求之后即向其他组件发送停止工作指令,然后在完成升级过程后,目标组件模块通过modbus总线向其他组件模块发送恢复工作指令,具体来说是目标组件模块在成功运行新应用程序后通过modbus总线向其他组件模块发送恢复工作指令。在本实施例中,各个组件升级模组可以并行的进行升级,以提高财务机器人中各个组件模块的升级效率。
在一个或多个实施例中,所述组件模块的存储空间划分为第一存储空间和第二存储空间。
其中,第一存储空间和第二存储空间为两个相互独立的存储空间,可以分别位于两个不同的存储器,也可以位于同一存储器。第一存储空间用于存储从远程主机下载的升级包,第二存储空间用于存储目标组件模块中当前的应用程序。
在一个或多个实施例中,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,包括:
在所述第二存储空间中获取所述目标组件模块当前存储的旧应用程序;
将所述第一存储空间中存储所述升级包和所述旧应用程序进行增量更新得到新应用程序。
其中,增量升级包是远程主机上存储的应用程序和目标组件模块上存储的应用程序的差分数据,远程主机通过向目标组件模块发送增量升级包的方式可以减小传输的数据量。
在一个或多个实施例中,还包括:
在所述完整性校验失败时,向所述远程主机发送校验失败消息,从所述第二存储空间中获取所述旧应用程序在所述目标组件模块上运行;或
在所述完整性校验成功时,将所述新应用程序覆盖写入到所述第二存储空间中。
其中,在完整性校验失败或新应用程序在目标组件上运行失败时,向远程主机发送校验失败消息,远程主机接收到校验失败消息会重新向目标组件模块发送升级包,然后采用图2中相同的方式再次执行升级流程。与此同时,目标升级模块会从第二存储空间中获取先前的旧应用程序,采用旧应用程序进行运行。如果完整性校验成功,将旧应用程序覆盖写入到第二存储空间中。
本申请的有益效果包括:通过利用Ymodem为传输协议传输升级包,以通过ModbusRTU组网方式来实现财务机器人的组件模块和远程主机之间的通信,且只有在升级成功后才根据所述目标组件的模块的升级包更新预存储的旧应用程序得到新应用程序,从而保证升级财务机器人的组件模块上的应用程序的安全性和可靠性。另外,在对组件模块的应用程序进行升级过程中如果出现异常情况(包括在完整性校验失败或新应用程序在目标组件上运行失败时),将组件模块的应用程序恢复有原有状态,从而进一步保证升级财务机器人的组件模块上的应用程序的安全性和可靠性。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参见图3,其示出了本申请一个示例性实施例提供的财务机器人的组件模块的结构示意图。该财务机器人的组件模块可以通过软件、硬件或者两者的结合实现成为财务机器人的全部或一部分。组件模块3为待升级的目标组件模块,该组件模块3包括:收发单元30、校验单元31和更新单元32。
收发单元30,用于接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;
响应于所述升级请求向所述远程主机发送下载请求;
接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包;其中,所述升级包的传输协议为Ymodem协议;
校验单元31,用于在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;
更新单元32,用于如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。
在一个或多个实施例中,所述接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包,包括:
接收来自所述远程主机依次发送的多个数据包;
将所述多个数据包进行重组得到所述升级包。
在一个或多个实施例中,还包括:
确定单元,用于解析每个数据包中携带的停止传输指示符的值;
在所述停止传输指示符的值为预设值时,确定所述升级包传输完毕。
在一个或多个实施例中,收发单元30还用于:
向财务机器人中除所述目标组件模块之外的其他组件模块发送停止工作指令;其中,所述停止工作指令用于指示所述其他组件模块停止工作。
在所述新应用程序成功运行后,向所述其他组件模块发送恢复工作指令;其中,所述恢复工作指令用于指示所述其他组件模块恢复工作。
在一个或多个实施例中,所述目标组件模块的存储空间划分为第一存储空间和第二存储空间。
在一个或多个实施例中,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,包括:
在所述第二存储空间中获取所述目标组件模块当前存储的旧应用程序;
将所述第一存储空间中存储所述升级包和所述旧应用程序进行增量更新得到新应用程序。
在一个或多个实施例中,还包括写入单元,用于在所述完整性校验失败时,向所述远程主机发送校验失败消息,从所述第二存储空间中获取所述旧应用程序在所述目标组件模块上运行;或
在所述完整性校验成功时,将所述新应用程序覆盖写入到所述第二存储空间中。
需要说明的是,上述实施例提供的财务机器人的组件模块在执行财务机器人组件模块升级方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的财务机器人的组件模块与财务机器人组件模块升级方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图2所示实施例的方法步骤,具体执行过程可以参见图2所示实施例的具体说明,在此不进行赘述。
请参见图4,为本申请实施例提供了一种财务机器人的组件模块结构示意图。如图4所示,组件模块1000为图1中业务机器人中待升级的目标组件模块,所述组件模块1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
其中,通信总线1002用于实现这些组件之间的连接通信。
其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)、modbus总线。
其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种接口和线路连接整个财务机器人1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行财务机器人1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital SignalProcessing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics ProcessingUnit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图4所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及应用程序。
在图4所示的组件模块1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的配置应用程序接口的应用程序,并具体执行以下操作:
接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;
通过网络接口1004响应于所述升级请求向所述远程主机发送下载请求;
通过网络接口1004接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包;其中,所述升级包的传输协议为Ymodem协议;
在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;
如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。
在一个或多个实施例中,处理器1001执行所述接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包,包括:
接收来自所述远程主机依次发送的多个数据包;
将所述多个数据包进行重组得到所述升级包。
在一个或多个实施例中,处理器1001还用于:
解析每个数据包中携带的停止传输指示符的值;
在所述停止传输指示符的值为预设值时,确定所述升级包传输完毕。
在一个或多个实施例中,处理器1001还用于:
通过网络接口1004向财务机器人中除所述目标组件模块之外的其他组件模块发送停止工作指令;其中,所述停止工作指令用于指示所述其他组件模块停止工作。
在所述新应用程序成功运行后,通过网络接口1004向所述其他组件模块发送恢复工作指令;其中,所述恢复工作指令用于指示所述其他组件模块恢复工作。
在一个或多个实施例中,所述目标组件模块的存储空间划分为第一存储空间和第二存储空间。
在一个或多个实施例中,处理器1001执行所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,包括:
在所述第二存储空间中获取所述目标组件模块当前存储的旧应用程序;
将所述第一存储空间中存储所述升级包和所述旧应用程序进行增量更新得到新应用程序。
在一个或多个实施例中,处理器1001还用于执行:
在所述完整性校验失败时,向所述远程主机发送校验失败消息,从所述第二存储空间中获取所述旧应用程序在所述目标组件模块上运行;或
在所述完整性校验成功时,将所述新应用程序覆盖写入到所述第二存储空间中。
其中,本申请通过利用Ymodem做文件传输协议,以modbus RTU为传输方式,进行驱动的财务机器人中各个组件模块的应用程序升级,为保证升级过程中出现异常的时(异常包括文件不完整或升级过程中掉电等),组件模块的处理器可以回到初始运行状态,本申请描述的应用程序方法具有占用资源小的特点,可以在组件模块的嵌入式系统芯片完成,也可以在裸机上运行,具有比较高的可移植性。
本实施例的构思和图2的方法实施例相同,其带来的技术效果也相同,具体过程可参照图2实施例的描述,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (10)
1.一种财务机器人的组件模块升级方法,其特征在于,包括:
接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;
响应于所述升级请求向所述远程主机发送下载请求;
接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包;其中,所述升级包的传输协议为Ymodem协议;
在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;
如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。
2.根据权利要求1所述的方法,其特征在于,所述接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包,包括:
接收来自所述远程主机依次发送的多个数据包;
将所述多个数据包进行重组得到所述升级包。
3.根据权利要求2所述的方法,其特征在于,所述在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验之前,还包括:
解析每个数据包中携带的停止传输指示符的值;
在所述停止传输指示符的值为预设值时,确定所述升级包传输完毕。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,还包括:
向财务机器人中除所述目标组件模块之外的其他组件模块发送停止工作指令;其中,所述停止工作指令用于指示所述其他组件模块停止工作。
在所述新应用程序成功运行后,向所述其他组件模块发送恢复工作指令;其中,所述恢复工作指令用于指示所述其他组件模块恢复工作。
5.根据权利要求1所述的方法,其特征在于,所述目标组件模块的存储空间划分为第一存储空间和第二存储空间。
6.根据权利要求5所述的方法,其特征在于,所述根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,包括:
在所述第二存储空间中获取所述目标组件模块当前存储的旧应用程序;
将所述第一存储空间中存储所述升级包和所述旧应用程序进行增量更新得到新应用程序。
7.根据权利要求6所述的方法,其特征在于,还包括:
在所述完整性校验失败时,向所述远程主机发送校验失败消息,从所述第二存储空间中获取所述旧应用程序在所述目标组件模块上运行;或
在所述完整性校验成功时,将所述新应用程序覆盖写入到所述第二存储空间中。
8.一种财务机器人的组件模块,其特征在于,该组件模块为目标组件模块,所述目标组件模块包括:
收发单元,用于接收来自远程主机的升级请求;其中,所述升级请求携带待升级的目标组件模块的标识;
响应于所述升级请求向所述远程主机发送下载请求;
接收来自所述远程主机响应于所述下载请求发送所述目标组件模块的升级包;其中,所述升级包的传输协议为Ymodem协议;
校验单元,用于在检测到所述目标组件模块的升级包传输完毕后,对所述目标组件模块的升级包进行完整性校验;
更新单元,用于如果完整性校验成功,根据所述目标组件模块的升级包更新预存储的旧应用程序得到新应用程序,以及在所述目标组件模块上运行所述新应用程序。
9.一种财务机器人的组件模块,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~7任意一项的方法步骤。
10.一种财务机器人,其特征在于,包括如权利要求9所述的组件模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011375761.7A CN114579166A (zh) | 2020-11-30 | 2020-11-30 | 组件模块升级方法、组件模块和财务机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011375761.7A CN114579166A (zh) | 2020-11-30 | 2020-11-30 | 组件模块升级方法、组件模块和财务机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114579166A true CN114579166A (zh) | 2022-06-03 |
Family
ID=81766734
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011375761.7A Pending CN114579166A (zh) | 2020-11-30 | 2020-11-30 | 组件模块升级方法、组件模块和财务机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114579166A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117873540A (zh) * | 2024-03-13 | 2024-04-12 | 成都星联芯通科技有限公司 | 前面板升级流程优化方法 |
-
2020
- 2020-11-30 CN CN202011375761.7A patent/CN114579166A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117873540A (zh) * | 2024-03-13 | 2024-04-12 | 成都星联芯通科技有限公司 | 前面板升级流程优化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105183675A (zh) | 对usb设备的访问方法、装置、终端、服务器及系统 | |
US20130152069A1 (en) | Method, apparatus and system for initiating terminal operation | |
CN105897461A (zh) | 多系统ota升级方法和多系统设备 | |
WO2022142153A1 (zh) | 电表升级方法、系统、智能电表及存储介质 | |
CN112286565B (zh) | 一种基于存储容器的嵌入式系统差分升级方法 | |
WO2017016282A1 (zh) | 软件升级方法及装置、计算机存储介质 | |
CN105468393A (zh) | 模块版本升级方法及终端装置 | |
CN113746892A (zh) | 一种远程升级方法及无线终端设备 | |
CN111736866A (zh) | 兼容一对一和一对多的在线升级方法及终端设备 | |
CN109002305B (zh) | 一种设备程序的更新方法及其系统 | |
CN109688208B (zh) | 一种基于fc-ae-asm消息的数据加载方法 | |
CN114221866A (zh) | 一种终端升级的方法、装置及介质 | |
CN110505071A (zh) | 局域网内fpga板卡的远程更新方法、系统及相关装置 | |
CN114579166A (zh) | 组件模块升级方法、组件模块和财务机器人 | |
CN110147246A (zh) | 空间下载技术的版本检查方法及装置、存储介质和终端 | |
CN114153484A (zh) | 更新程序的运行方法、装置、电子装置和存储介质 | |
CN107277163B (zh) | 一种设备远程映射方法及装置 | |
CN113138788A (zh) | 空调程序升级方法及空调系统 | |
CN110198222A (zh) | 一种配电自动化终端即插即用测试方法及测试主站 | |
CN111865676A (zh) | 配置文件的更新检查方法、装置、服务器及存储介质 | |
CN104570967A (zh) | 基于Android系统的远程控制方法及系统 | |
WO2022257927A1 (zh) | 密钥烧录方法、装置、电子设备板卡及存储介质 | |
CN105407003A (zh) | 一种1553总线的数据加卸载方法 | |
CN110149389B (zh) | 一种全息显示装置的数据传输控制方法及系统 | |
CN109343880A (zh) | 一种rn包更新方法、装置及可读存储介质 |
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 |