一种智能机器人的软件包升级管理方法、设备及存储介质技术

技术编号:35353514 阅读:8 留言:0更新日期:2022-10-26 12:26
本申请公开了一种智能机器人的软件包升级管理方法、设备及存储介质。方法包括:根据预设的划分规则,对智能机器人的待更新升级包进行模块划分;确定待更新升级包的升级包信息,并基于升级包信息,将待更新升级包上传至外部访问服务器;更新外部访问服务器中升级包对应的拓扑结构图;在智能机器人需要升级的情况下,基于OTA服务技术,访问智能机器人,以读取智能机器人的机器人信息;机器人信息包括:机器人序列号、当前软件各模块的版本信息;基于机器人信息查询拓扑结构图,以确定智能机器人的升级方案,并将升级方案通过调用接口发送给智能机器人。本申请通过上述方法实现了降低智能机器人软件升级包的开发成本,简化智能机器人的升级流程。人的升级流程。人的升级流程。

【技术实现步骤摘要】
一种智能机器人的软件包升级管理方法、设备及存储介质


[0001]本申请涉及智能机器人开发
,尤其涉及一种智能机器人的软件包升级管理方法、设备及存储介质。

技术介绍

[0002]常见的包管理工具有:dpkg(Debian Package),apt(Advanced Packaging Tool),RPM(Red Hat Package Manager)以及YUM(Yellow dog Updater,Modified)。这些包管理工具都可以安装指定格式的软件包,其中dpkg只能安装本地的软件包,而apt,yum,rpm都可以从网上下载包进行安装,尤其是yum包管理工具,它可以自动搜索和下载依赖的软件包,使得软件的安装非常的简单和便捷。
[0003]传统的软件升级,仅提供一个二进制程序,升级过程比较简单;而对于智能机器人系统,各个软件之间通过信号量,共享内存等方式进行通信,有很强的关联性,所以在升级一个软件时,如果接口不兼容就会造成另一个或几个软件不能正常使用;如果将多个软件打包成一个升级包,又会造成软件升级包过大,对于软件包的下载有较高的要求,不利于软件包的升级。并且多款软件可能使用相同的第三方库,每一个软件包都上传一份,也会造成云盘空间资源的浪费;此外,各软件包可能含有相同功能的模块,比如日志模块,字符串处理模块等,这会造成额外的开发和维护的成本。
[0004]随着升级包的增多,软件的升级安装的复杂度成指数级增长,手动安装升级包将成为一种非常困难的事。因此,如何降低智能机器人软件升级包的开发成本,简化智能机器人的升级流程成为亟待解决的技术问题。

技术实现思路

[0005]本申请实施例提供了一种智能机器人的软件包升级管理方法、设备及存储介质,用以解决如下技术问题:如何降低智能机器人软件升级包的开发成本,简化智能机器人的升级流程。
[0006]第一方面,本申请实施例提供了一种智能机器人的软件包升级管理方法,其特征在于,方法包括:根据预设的划分规则,对智能机器人的待更新升级包进行模块划分;确定待更新升级包的升级包信息,并基于升级包信息,将待更新升级包上传至外部访问服务器;更新外部访问服务器中升级包对应的拓扑结构图;在智能机器人需要升级的情况下,基于OTA服务技术,访问智能机器人,以读取智能机器人的机器人信息;其中,机器人信息包括:机器人序列号、当前软件各模块的版本信息;基于机器人信息查询拓扑结构图,以确定智能机器人的升级方案,并将升级方案通过调用接口发送给智能机器人。
[0007]在本申请的一种实现方式中,在根据预设的划分规则,对智能机器人的待更新升级包进行模块划分之前,方法还包括:基于划分规则,对智能机器人的系统软件与应用软件进行模块划分。
[0008]在本申请的一种实现方式中,基于划分规则,对智能机器人的系统软件与应用软
件进行模块划分,具体包括:获取各软件使用的第三方库的名称以及版本号;确定名称及版本号相同的第三方库为公共模块;确定名称相同版本号不同的第三方库是否兼容,并在兼容的情况下,确定高版本第三方库为公共模块;在存在任一低版本第三方库不兼容高版本第三方库的情况下,将低版本第三方库与对应软件绑定,并确定绑定生成的模块为其他模块;将专属第三方库与其对应的软件进行绑定,并确定绑定生成的模块为其他模块;确定硬件系统对应的软件包为其他模块。
[0009]在本申请的一种实现方式中,在根据预设的划分规则,对智能机器人的待更新升级包进行模块划分之后,方法还包括:将待更新升级包中包含的公共模块上传至公共依赖库中。
[0010]在本申请的一种实现方式中,基于升级包信息,将待更新升级包上传至外部访问服务器,具体包括:判断待更新升级包中是否包含公共模块,并在待更新升级包中包含公共模块的情况下,确定公共模块的存储地址信息,并基于升级包信息中包含的公共模块的信息,对存储地址信息添加公共模块的属性信息;基于升级包信息中包含的各其他模块的信息,对对应的其他模块添加属性信息;将公共模块的存储地址信息与其他模块上传至内部审核服务器;基于预设的审核规则对存储地址信息与其他模块进行审核,并在审核通过的情况下,将存储地址信息与其他模块上传至外部访问服务器。
[0011]在本申请的一种实现方式中,在将存储地址信息与其他模块上传至外部访问服务器之后,方法还包括:更新外部访问服务器中的升级包列表。
[0012]在本申请的一种实现方式中,更新外部访问服务器中升级包对应的拓扑结构图,具体包括:读取升级包列表,以确定升级列表中的新增升级项;其中,新增升级项为外部访问服务器中新增的存储地址信息和/或其他模块;读取新增升级项的属性信息,以确定新增升级项是否为增量包;在确定新增升级项为增量包的情况下,在拓扑结构图中的对应升级项节点后创建一个对应的新增升级项节点,并将新增升级项节点与新增升级项关联;在确定新增升级项为全量包的情况下,判断新增升级项是否包含对应的历史升级项的全部功能模块;在新增升级项包含对应的历史升级项的全部功能模块的情况下,替换新增升级项对应的历史升级项;在新增升级项不包含对应的历史升级项的全部功能模块的情况下,创建一个与对应的历史升级项并列的新增升级项节点。
[0013]在本申请的一种实现方式中,基于机器人信息查询拓扑结构图,以确定智能机器人的升级方案,具体包括:基于机器人序列号,确定智能机器人的硬件信息;基于智能机器人的当前软件各模块的版本信息与智能机器人的硬件信息,对照拓扑结构图,以确定智能机器人的升级方案。
[0014]第二方面,本申请实施例还提供了一种智能机器人的软件包升级管理设备,其特征在于,设备包括:处理器;及存储器,其上存储有可执行代码,当可执行代码被执行时,使得处理器执行如权利要求1

8任一项的一种智能机器人的软件包升级管理方法。
[0015]第三方面,本申请实施例还提供了一种智能机器人的软件包升级管理的非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,计算机可执行指令设置为:根据预设的划分规则,对智能机器人的待更新升级包进行模块划分;确定待更新升级包的升级包信息,并基于升级包信息,将待更新升级包上传至外部访问服务器;更新外部访问服务器中升级包对应的拓扑结构图;在智能机器人需要升级的情况下,基于OTA服务技术,访问智
能机器人,以读取智能机器人的机器人信息;其中,机器人信息包括:机器人序列号、当前软件各模块的版本信息;基于机器人信息查询拓扑结构图,以确定智能机器人的升级方案,并将升级方案通过调用接口发送给智能机器人。
[0016]本申请实施例提供的一种智能机器人的软件包升级管理方法、设备及存储介质,将系统软件以及应用软件拆分为多个模块,减少软件升级包的冗余;同时将升级包指定包含的模块,然后根据升级包的信息构建升级拓扑图,再通过升级包的拓扑关系,获取下一个可以安装的最大版本;为当前版本的系统进行跨版本升级,降低安装的复杂度。
附图说明
[0017]此处所说明的附图用来提供对本申请的进一步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种智能机器人的软件包升级管理方法,其特征在于,所述方法包括:根据预设的划分规则,对智能机器人的待更新升级包进行模块划分;确定待更新升级包的升级包信息,并基于所述升级包信息,将所述待更新升级包上传至外部访问服务器;更新所述外部访问服务器中升级包对应的拓扑结构图;在所述智能机器人需要升级的情况下,基于OTA服务技术,访问所述智能机器人,以读取所述智能机器人的机器人信息;其中,所述机器人信息包括:机器人序列号、当前软件各模块的版本信息;基于所述机器人信息查询所述拓扑结构图,以确定所述智能机器人的升级方案,并将所述升级方案通过所述调用接口发送给所述智能机器人。2.根据权利要求1所述的一种智能机器人的软件包升级管理方法,其特征在于,在根据预设的划分规则,对智能机器人的待更新升级包进行模块划分之前,所述方法还包括:基于所述划分规则,对智能机器人的系统软件与应用软件进行模块划分。3.根据权利要求2所述的一种智能机器人的软件包升级管理方法,其特征在于,基于所述划分规则,对智能机器人的系统软件与应用软件进行模块划分,具体包括:获取各软件使用的第三方库的名称以及版本号;确定名称及版本号相同的第三方库为公共模块;确定名称相同版本号不同的第三方库是否兼容,并在兼容的情况下,确定高版本第三方库为公共模块;在存在任一低版本第三方库不兼容所述高版本第三方库的情况下,将所述低版本第三方库与对应软件绑定,并确定绑定生成的模块为其他模块;将专属第三方库与其对应的软件进行绑定,并确定绑定生成的模块为其他模块;确定硬件系统对应的软件包为其他模块。4.根据权利要求1所述的一种智能机器人的软件包升级管理方法,其特征在于,在根据预设的划分规则,对智能机器人的待更新升级包进行模块划分之后,所述方法还包括:将所述待更新升级包中包含的公共模块上传至公共依赖库中。5.根据权利要求1所述的一种智能机器人的软件包升级管理方法,其特征在于,基于所述升级包信息,将所述待更新升级包上传至外部访问服务器,具体包括:判断所述待更新升级包中是否包含公共模块,并在所述待更新升级包中包含公共模块的情况下,确定所述公共模块的存储地址信息,并基于所述升级包信息中包含的所述公共模块的信息,对所述存储地址信息添加所述公共模块的属性信息;基于所述升级包信息中包含的各其他模块的信息,对对应的其他模块添加属性信息;将所述公共模块的存储地址信息与所述其他模块上传至内部审核服务器;基于预设的审核规则对存储地址信息与所述其他模块进行审核,并在审核通过的情况下,将存储地址信息与所述其他模块上传至外部访问服务器。6.根据权...

【专利技术属性】
技术研发人员:蔡萌萌李朝铭高明刘鹏王召东赵洪宇
申请(专利权)人:山东新一代信息产业技术研究院有限公司
类型:发明
国别省市:

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

1