CN116931984A - 机器人软件远程升级方法及系统 - Google Patents
机器人软件远程升级方法及系统 Download PDFInfo
- Publication number
- CN116931984A CN116931984A CN202310687989.7A CN202310687989A CN116931984A CN 116931984 A CN116931984 A CN 116931984A CN 202310687989 A CN202310687989 A CN 202310687989A CN 116931984 A CN116931984 A CN 116931984A
- Authority
- CN
- China
- Prior art keywords
- software
- version
- upper computer
- robot
- command
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000004891 communication Methods 0.000 claims abstract description 18
- 238000012423 maintenance Methods 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例涉及机器人技术领域,特别是涉及一种机器人软件远程升级方法及系统。若需要对机器人软件进行升级,维护人员可通过客户端向服务器发送软件升级命令和软件升级包,继而服务器将软件升级命令和软件升级包发送至机器人的上位机,上位机又将软件升级命令和软件升级包发送至中位机;中位机接收到软件升级命令和软件升级包后,基于初始版本的软件和软件升级包生成升级版本的软件,并将执行软件升级命令的执行结果发送至所述上位机,服务器通过与上位机进行通信便可以获取中位机执行软件升级命令的执行结果,将该执行结果发送至客户端。服务器、客户端、上位机和中位机之间通过通信连接的系统架构使得维护人员不需现场操作,减少了人力成本。
Description
技术领域
本申请实施例涉及机器人技术领域,尤其是涉及一种机器人软件远程升级方法及系统。
背景技术
机器人在人们生活中占用重要的角色,各行各业都可能使用到机器人。但是,机器人软件的迭代速度也越来越快,且机器人内的各功能模块通常不能一次性达到最完美的状态,因此,为了实现新的功能或解决当前安装的软件存在的问题,在机器人投入使用后通常还需要对机器人的软件进行更新。
现有技术中,机器人软件的升级方法通常为现场手动升级方法。该方法一般由维护人员到现场根据升级指导书进行一系列操作,完成软件的更新操作。该方法需要维护人员亲临现场,且对维护人员的要求比较高,比如,维护人员需要熟悉一些系统知识和指令。另外,当需要升级多个不同地方的多个机器人的软件时,会进一步增加人力的成本。
发明内容
为了简化升级操作、降低人力成本,本申请实施例提供一种机器人软件远程升级方法及系统,能够实现机器人主体软件的远程升级,不需要维护人员亲临现场。
在本申请的第一方面,提供了一种机器人软件远程升级方法,应用于系统,该系统包括客户端、服务器和至少一机器人,机器人包括机器人主体和安装于所述机器人主体的上位机和中位机,其中,客户端和服务器通信连接,服务器和上位机通信连接,中位机与上位机通信连接,机器人设置有若干功能节点,所述功能节点设置有初始版本的软件;在该方法中,客户端通过服务器向上位机发送软件升级命令和软件升级包;上位机将接收到的软件升级命令和软件升级包发送至中位机;若中位机接收到软件升级命令,则中位机响应于软件升级命令,根据初始版本的软件和升级包生成升级版本的软件,并将执行软件升级命令的执行结果发送至上位机。
在本申请的实施例中,当需要对机器人的软件进行升级时,维护人员可以通过客户端向服务器发送软件升级命令和软件升级包,继而服务器将软件升级命令和软件升级包发送至机器人的上位机,上位机又将软件升级命令和软件升级包发送至中位机。中位机接收到软件升级命令和软件升级包后,基于初始版本的软件和软件升级包生成升级版本的软件,并将执行软件升级命令的执行结果发送至所述上位机,服务器通过与上位机进行通信便可以获取中位机执行软件升级命令的执行结果,并将该执行结果发送至客户端。服务器、客户端、上位机和中位机之间通过通信连接的系统架构使得维护人员不需现场操作,减少了人力成本;同时,维护人员还能够通过客户端及时监控升级过程。
在一些实施例中,所述方法还包括:所述客户端通过所述服务器将版本获取命令发送至所述上位机;所述上位机将接收到的所述版本获取命令发送至所述中位机;若所述中位机接收到所述上位机发送的版本获取命令,则所述中位机响应于所述版本获取命令,以获取所述初始版本的软件的版本信息,并将所述初始版本的软件的版本信息发送至所述上位机。
在一些实施例中,所述方法还包括:所述客户端通过所述服务器将版本回退命令发送至所述上位机;所述上位机将接收到的所述版本回退命令发送至所述中位机;若所述中位机接收到所述版本回退命令,则所述中位机响应于所述版本回退命令,对所述初始版本的软件进行版本回退操作,从而得到目标版本的软件。
在一些实施例中,所述根据所述初始版本的软件和软件升级包生成升级版本的软件之后,所述方法还包括:启动所述升级版本的软件。
在一些实施例中,所述客户端通过所述服务器将查询指令发送至所述上位机;所述上位机接收所述查询指令,并将所述查询指令发送至所述中位机;若所述中位机接收到所述查询指令,则所述中位机响应于所述查询指令,以获取查询结果,并将所述查询结果反馈至所述上位机;其中,所述查询指令用于查询所述机器人的机器人标识信息、节点标识信息和软件版本信息中的一项或多项。
在一些实施例中,所述服务器保存有所述机器人的机器人标识信息,所述中位机保存有所述功能节点的节点标识信息,所述软件升级命令携带有至少一目标机器人的机器人标识信息和目标功能节点的所述节点标识信息;所述客户端通过所述服务器向所述上位机发送软件升级命令和软件升级包,包括:所述客户端将软件升级命令发送至服务器;所述服务器基于所述目标机器人的机器人标识信息,将所述软件升级命令和软件升级包发送至目标机器人的上位机;所述根据所述初始版本的软件和软件升级包生成升级版本的软件,包括:所述目标机器人的中位机解析所述软件升级命令,以获得所述目标功能节点的节点标识信息;所述中位机基于所述目标功能节点的节点标识信息,确定目标功能节点,以获取所述目标功能节点中设置的初始版本的软件;所述中位机基于所述软件升级包和所述目标功能节点中设置的初始版本的软件生成升级版本的软件;其中,所述目标机器人为所述至少一机器人中的任一机器人,所述目标功能节点为所述若干功能节点中的任一功能节点。
在一些实施例中,所述方法还包括:所述客户端通过所述服务器将抓包命令发送至所述上位机;所述上位机将接收到的所述抓包命令发送至所述中位机;若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令,将所述初始版本的软件发送至所述上位机。
在一些实施例中,所述中位机将所述初始版本的软件发送至所述上位机的步骤具体包括:所述中位机在成功生成所述升级版本的软件后,压缩所述升级版本的软件;若所述升级版本的软件压缩成功,则将压缩后的所述升级版本的软件发送给所述上位机,并发送通知消息给上位机,其中,所述通知消息用于通知所述上位机已将所述压缩后的所述初始版本的软件成功发送至所述上位机。
在一些实施例中,述初始版本的软件包括主程序文件和配置文件;所述若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令将所述初始版本的软件发送至所述上位机,包括:若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令,将所述初始版本的软件中的所述程序文件和/或所述配置文件发送至所述上位机。
在本申请的第二方面,还提供了一种机器人软件远程升级系统,该系统包括客户端、服务器和至少一机器人,所述机器人包括机器人主体和安装于所述机器人主体的上位机和中位机,其中,所述客户端与所述服务器通信连接,所述服务器与所述上位机通信连接,所述中位机与所述上位机通信连接,所述系统用于执行第一方面所述的方法。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的关键或重要特征,亦非用于限制本公开的范围。本公开的其他特征通过以下的描述将变得容易理解。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一些实施例提供的机器人软件远程升级系统的结构示意图;
图2是本申请的一些实施例提供的机器人软件远程升级方法的流程示意图;
图3是本申请的一些实施例提供的中位机根据初始版本的软件和软件升级包生成升级版本的软件的方法的流程示意图。
具体实施方式
下文将参考附图中示出的若干示例性实施例来描述本公开的原理和精神。应当理解,描述这些具体的实施例仅是为了使本领域的技术人员能够更好地理解并实现本公开,而并非以任何方式限制本公开的范围。在以下描述和权利要求中,除非另有定义,否则本文中使用的所有技术和科学术语具有与所属领域的普通技术人员通常所理解的含义。
如本文所使用的,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象,并且仅用于区分所指代的对象,而不暗示所指代的对象的特定空间顺序、时间顺序、重要性顺序,等等。
示例性地,图1出示了本申请的机器人软件远程升级系统的结构示意图,如图1所示,机器人软件远程升级系统包括至少一机器人110、客户端120和服务器130,其中,服务器130分别与机器人110和客户端120通信连接。机器人110包括机器人主体和设置于机器人主体的上位机111和中位机112;服务器130具体与上位机111通信连接。上位机111和中位机112通信连接,例如,上位机111和中位机112具体可以通过CAN总线通信连接。上位机111具体可以是人机交互界面,中位机具体可以是工控机。在本申请的某些实施例中,机器人还包括安装于机器人主体的下位机;下位机与中位机通信连接,下位机例如可以用于驱动控制机器人的底盘电机等;此时,中位机主要用于定位导航,且机器人安装的初始版本的软件具体可以是导航软件。在一些实施例中,客户端130和服务器130通过网络连接,服务器130和至少一机器人110中的各个机器人110通过网络连接。
本实施例中,机器人110的类型包括但不限于:家务型机器人,用于执行家庭内各事,例如,扫地、控制家内电器开关、家内事务管理或提醒等;操作型机器人,用于自动控制执行指定动作,一般用于自动化系统中;程控型机器人,用于按照设定的顺序及条件,依次执行动作;数控型机器人,用于根据接收到的数值、语言等对机器人等示教内容,进行作业;搜救型机器人,用于通过红外线扫描特定位置周边的影像,并将扫描的影像发送给指定终端;平台型机器人,用于在指定场景(如酒店)下提供定制化智能服务等。上述的各类型的机器人仅为示例性地,机器人110的类型还可以有其他更多的类型。
具体地,在一些实施例中,各个机器人110具有唯一的机器人标识信息,如机器人序列号。机器人110设置有若干功能节点,不同的功能节点可以用于执行不同的功能。每一个功能节点可以负责一个单独的模块化的功能,例如电机驱动模块、电池控制模块等等。各个功能节点包括待升级软件,该待升级软件为初始版本的软件。各个功能节点中设置有待升级软件和升级接入模块,升级接入模块与待升级软件交互,并保存有待升级软件的标识信息,用于向中位机提供待升级软件的标识信息。机器人上安装的初始版本的软件可以是任意合适的软件,例如,导航软件、电机驱动软件或智能聊天软件等。
各个功能节点具有唯一的节点标识信息,该节点标识信息用于对不同的功能节点进行区分。节点标识信息具体可以包括节点号或网络端口号。在一些实施例中,不同类型的网络协议采用不同类型的节点标识。例如,当功能节点的网络协议类型为传输控制协议(Transmission Control Protocol,TCP)时,节点标识信息为节点号。而当功能节点的网络协议类型为用户数据报协议(User Datagram Protocol,UDP)时,节点标识信息为网络端口号。
具体地,在一些实施例中,客户端具体可以是WEB浏览器;服务器具体可以是WEB服务器。客户端包括用户界面模块,用户界面模块用于:接收用户提交的命令(例如,软件升级命令、版本获取命令、版本回退命令、查询指令、抓包命令),并将用户提交的命令发送至服务器,以及接收服务器转发的机器人发送的机器人信息并输出给用户。其中,机器人信息例如可以包括机器人标识信息和节点标识信息等、以及机器人对用户提交的命令的执行结果等。用户界面模块还可以用于接收用户提交的机器人标识信息和节点标识信息,并将所述机器人标识信息和节点标识信息提交给所述服务器;接收服务器转发的通知信息并将通知信息输出给用户。客户端的用户界面模块可以提供可视化界面,简化升级操作。
本申请实施例提供了一种机器人软件远程升级方法,应用于机器人软件远程升级系统,例如应用于图1中的系统。示例性地,图2出示了机器人软件远程升级方法的流程示意图,如图2所示,该方法包括以下步骤21-步骤23:
步骤21:所述客户端通过所述服务器向所述上位机发送软件升级命令和软件升级包;
步骤22:所述上位机将接收到的所述软件升级命令和所述软件升级包发送至所述中位机;
步骤23:若所述中位机接收到软件升级命令,则所述中位机响应于所述软件升级命令,根据所述初始版本的软件和软件升级包生成升级版本的软件,并将执行所述软件升级命令的执行结果发送至所述上位机。
在本实施例中,当维护人员想要对机器人的软件进行升级时,维护人员通过客户端的用户界面向客户端提交软件升级命令;客户端接收到用户提交的软件升级命令后,将软件升级命令和软件升级包发送至服务器,从而由服务器将软件升级命令和软件升级包转发至机器人的上位机。机器人的上位机接收到服务器发送的软件升级命令后和软件升级包后,将软件升级命令和软件升级包后发送至中位机;中位机根据初始版本的软件和软件升级包生成升级版本的软件,从而由中位机对机器人上安装的初始版本的软件进行升级。
在一些实施例中,中位机还可以获取其执行软件升级命令的执行结果,并将执行结果发送至上位机。具体地,在另一些实施例中,上位机可以显示该执行结果;在另一些实施例中,上位机还可以将执行结果发送至服务器,从而通过服务器将该执行结果转发至客户端,由客户端显示该执行结果。执行结果包括软件升级成功或软件升级失败等。在本申请的实施例中,服务器、客户端、上位机和中位机之间通过通信连接的系统架构使得维护人员不需现场操作,减少了人力成本;同时,维护人员还能通过客户端及时监控升级过程。
在一些实施例中,服务器保存有至少一机器人中的各个机器人的机器人标识信息,中位机保存有中位机所在的机器人若干个功能节点中的各个功能节点的节点标识信息。软件升级命令携带有至少一目标机器人的机器人标识信息和目标功能节点的节点标识信息。客户端通过服务器向上位机发送软件升级命令和软件升级包的步骤,包括:客户端将软件升级命令发送至服务器;服务器基于目标机器人的机器人标识信息,将软件升级命令和软件升级包发送至目标机器人的上位机。
请参阅图3,上述步骤23具体包括以下步骤231-步骤233:
步骤231:所述目标机器人的中位机解析所述软件升级命令,以获得所述目标功能节点的节点标识信息;
步骤232:所述中位机基于所述目标功能节点的节点标识信息,确定目标功能节点,以获取所述目标功能节点中设置的初始版本的软件;
步骤233:所述中位机基于所述软件升级包和所述目标功能节点中设置的初始版本的软件生成升级版本的软件。
在本实施例中,目标机器人的中位机接收到其上位机发送的软件升级命令后,对软件升级命令进行解析,从而得到目标功能节点的节点标识信息,从而在若干个功能节点中确定目标功能节点,并基于软件升级包和目标功能节点中设置的初始版本的软件生成升级版本的软件。软件升级包可以远远小于初始版本的软件。软件升级包可以包含指令和数据,中位机可以使用这些指令和数据来根据初始版本的软件生成升级版本的软件。本实施例中,维护人员不但可以灵活地选择需要升级的机器人(也即目标机器人)还可以选择目标机器人上需要升级的功能节点(也即目标功能节点)。
在一些实施例中,为了获取升级版本的软件,中位机可以基于软件升级包对初始版本的软件进行升级操作。若生成的升级版本的软件不完整,中位机可以对不完整的升级版本的软件进行版本回退操作。软件升级包可以包含用于把升级版本的软件变换回到初始版本的软件的指令和/或数据,以便对不完整的升级版本的软件进行版本回退操作。具体地,中位机可以根据升级标志判断生成的升级版本的软件是否完整,若升级标志不正常,则中位机确定生成的升级版本的软件不完整,从而中位机对不完整的升级版本的软件进行版本回退操作;若升级标志正常,则中位机确定升级版本的软件完整。
中位机具体可以查询是否获取到新版本的软件升级包;若确定获取到新版本的软件升级包,则基于该新版本的软件升级包对初始版本的软件进行升级;若确定未获取到新版本的软件升级包则不进行软件升级操作。初始版本的软件具体包括初始主程序和初始配置文件。在一些实施例中,中位机可以确定是否需要升级初始主程序,若确定需要升级初始主程序则对初始主程序进行升级并得到升级版本的主程序。中位机还可以确定升级版本的主程序是否完整,若完整,则对初始主程序进行备份并生成主程序更新标志;若升级版本的主程序不完整,则不生成主程序更新标志。在另一些实施例中,中位机还用于确定是否升级初始配置文件,若确定需要升级配置文件,则中位机对初始配置文件进行升级,从而得到升级后的配置文件;若确定不需要升级配置文件,则中位机不会对初始配置文件进行升级。中位机还用于确定升级后的配置文件是否完整,若升级后的配置文件完整,则对初始配置文件进行备份,并将升级后的配置文件覆盖初始配置文件,从而实现初始配置文件的升级,同时中位机生成配置文件更新标志,若升级后的配置文件不完整,则中位机不生成配置文件更新标志。
在一些实施例中,上述机器人软件远程升级方法还包括以下步骤41-步骤43:
步骤41:所述客户端通过所述服务器将版本获取命令发送至所述上位机;
步骤42:所述上位机将接收到的所述版本获取命令发送至所述中位机;
步骤43:若所述中位机接收到所述上位机发送的版本获取命令,则所述中位机响应于所述版本获取命令,以获取所述初始版本的软件的版本信息,并将所述初始版本的软件的版本信息发送至所述上位机。
本实施例中,当维护人员需要获取功能节点中当前设置的软件的版本信息时,维护人员可以向客户端输入版本获取命令,以使客户端将版本获取命令发送至服务器,从而通过服务器将将版本获取命令发送至上位机。上位机接收到版本获取命令后,将版本获取命令发送至中位机。中位机响应于接收到的版本获取命令,获取功能节点上当前设置的软件的版本信息,其中,功能节点上当前设置的软件的版本信息可以是软件升级成功前的初始版本的软件的版本信息,也可以是软件升级成功后的升级版本的软件的版本信息。当中位机获取到该版本信息时,还可以将该版本信息发送至上位机,以使上位机将该版本信息发送至服务器,继而服务器将版本信息发送至客户端,并通过客户端的用户界面将版本信息呈现给维护人员。具体地,版本信息例如可以是版本号。
在一些实施例中,上述机器人软件远程升级方法还包括以下步骤51-步骤53:
步骤51:所述客户端通过所述服务器将版本回退命令发送至所述上位机;
步骤52:所述上位机将接收到的所述版本回退命令发送至所述中位机;
步骤53:若所述中位机接收到所述版本回退命令,则所述中位机响应于所述版本回退命令,对所述初始版本的软件进行版本回退操作,从而得到目标版本的软件。
在本实施例中,当维护人员需要将功能节点设置的初始版本的软件退回至上一版本时,维护人员向客户端输入版本回退命令。客户端将接收到的版本回退命令发送至服务器,并通过服务器将版本回退命令发送至上位机。上位机接收到版本回退命令后将版本回退命令发送至中位机。
中位机响应于版本回退命令,对初始版本的软件进行版本回退操作,从而得到目标版本的软件。本实施例中,版本回退操作指的是将软件从初始版本回退到上一个版本。中位机具体可以查询其是否存储有目标版本的软件的备份文件,若是,则中位机将目标版本的软件的备份文件覆盖初始版本的软件,从而得到目标版本的软件;若否,则中位机不能对初始版本的软件进行版本回退操作,此时,中位机可以将提醒信息发送至上位机,以使上位机通过服务器将提醒信息转发给客户端;该提醒信息用于提醒维护人员中位机未查询到目标版本的软件的备份文件,从而无法对初始版本的软件进行版本回退操作。本实施例中,维护人员可以通过客户端下发版本回退命令,从而通过中位机对初始版本的软件进行版本回退操作。
在一些实施例中,中位机在成功生成升级版本的软件后,启动升级版本的软件。在另一些实施例中,中位机具体还可以启动上述目标版本的软件。中位机可以控制机器人重新启动以运行目标版本的软件和/或升级版本的软件。
上述机器人软件远程升级方法还包括以下步骤61-步骤63:
步骤61:所述客户端通过所述服务器将查询指令发送至所述上位机;
步骤62:所述上位机接收所述查询指令,并将所述查询指令发送至所述中位机;
步骤63:若所述中位机接收到所述查询指令,则所述中位机响应于所述查询指令,以获取查询结果,并将所述查询结果反馈至所述上位机。
本实施例中,当维护人员需要对机器人的信息进行查询时,可以向客户端输入查询指令,查询指令用于查询机器人的机器人标识信息、节点标识信息和软件版本信息中的一项或多项。客户端接收搭配查询指令后,将查询指令发送至服务器,以使服务器将查询指令发送至上位机。上位机接收到查询指令后,将查询指令发送至中位机。中位机响应于接收到的查询指令,获取查询结果,并将所述查询结果反馈至上位机,以使上位机将查询结果发送至服务器;继而服务器将查询结果发送至客户端。客户端通过用户界面将查询结果反馈给维护人员。
在一些实施例中,上述机器人软件远程升级方法还包括:上位机将机器人标识信息发送给中位机,中位机按照机器人标识信息修改机器人的存储配置信息中对应的参数,中位机关闭同步多进程模型(udp_server),并更新升级包工具,增量更新主程序参数,加载存储配置信息并恢复主程序参数,然后中位机重启同步多进程模型,启动当前安装的软件并结束设置。
在一些实施例中,上述机器人软件远程升级方法还包括以下步骤71-步骤73:
步骤71:所述客户端通过所述服务器将抓包命令发送至所述上位机;
步骤72:所述上位机将接收到的所述抓包命令发送至所述中位机;
步骤73:若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令,将初始版本的软件发送至所述上位机。
本实施例中,当维护人员需要获取功能节点中当前设置的初始版本的软件时,维护人员可以向客户端输入抓包命令。客户端接收到抓包命令后,将抓包命令发送至服务器,以使服务器将抓包命令发送至上位机。上位机接收到抓包命令后,将抓包命名发送至中位机。中位机响应于接收到的抓包命令,将功能节点设置的初始版本的软件发送至上位机。
在一些实施例中,步骤73具体包括以下步骤731-步骤732:
步骤731:所述中位机在成功生成所述升级版本的软件后,压缩所述升级版本的软件;
步骤732:若所述升级版本的软件压缩成功,则将压缩后的所述升级版本的软件发送给所述上位机,并发送通知消息给上位机,其中,所述通知消息用于通知所述上位机已将所述压缩后的所述初始版本的软件成功发送至所述上位机。
本实施例中,若所述中位机接收到抓包命令,则中位机响应于抓包命令,在成功生成升级版本的软件后,对升级版本的软件进行压缩处理,并将压缩后的升级版本的软件发送给上位机;从而上位机可以将将压缩后的升级版本的软件发送给服务器,并通过服务器将将压缩后的升级版本的软件发送给客户端。故而,可以通过客户端获取压缩后的升级版本的软件。在一些实施例中,中位机还可以发送通知消息给上位机,其中,通知消息用于指示已将压缩后的初始版本或升级版本的软件成功发送至上位机。上位机还可以通过服务器将通知消息发送给客户端,从而客户端可以将通知消息展现给维护人员。
具体地,在一些实施例中,升级版本的软件包括升级版本的主程序和升级版本的配置文件,中位机以将升级版本的主程序和/或升级版本的配置文件上传给上位机。在将升级版本的主程序和/或升级版本的配置文件上传给上位机之前,中位机还可以对升级版本的主程序和/或升级版本的配置文件进行压缩处理。在一些实施例中,中位机具体可以基于抓包命令中携带的参数将升级版本的主程序和/或升级版本的配置文件上传上位机。若抓包命令中包括第一参数(如参数nav),则中位机将压缩后的升级版本的主程序发送给上位机;若抓包命令中包括第二参数(如参数src),则中位机将压缩后的升级版本的配置文件发送给上位机;若抓包命令中包括第三参数(如参数all),则中位机将压缩后的升级版本的配置文件和压缩后的升级版本的主程序都发送给上位机。
具体地,若抓包命令中包括第三参数,则中位机对升级版本的主程序进行压缩,若升级版本的主程序压缩成功,则中位机将压缩好的升级版本的主程序发送给上位机,并发送第一通知消息给上位机,以通知上位机升级版本的主程序已成功发送给机器人;若升级版本的主程序压缩失败,则发送第二通知消息给上位机,以通知上位机软件升级过程出现错误。中位机还对升级版本的配置文件进行压缩,若升级版本的配置文件压缩成功,则中位机将压缩好的升级版本的配置文件发送给上位机,并发送第三通知消息给上位机,以通知上位机升级版本的配置文件已成功发送给上位机;若升级版本的配置文件压缩失败,则中位机发送第四通知消息给上位机,以通知上位机软件升级过程出现错误。
在一些实施例中,客户端发送的各个软件操作命令(例如:软件升级命令、版本获取命令、版本回退命令、查询指令和抓包命令中)均携带有至少一目标机器人的机器人标识信息和目标功能节点的节点标识信息,从而客户端可以将各个软件操作命令发送至相应的目标机器人,目标机器人的中位机也可以在目标机器人的若干功能节点中,确定相应的目标功能节点,并对目标功能节点中的软件进行与各个软件操作命令相应的操作。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种机器人软件远程升级方法,其特征在于,应用于系统,所述系统包括客户端、服务器和至少一机器人,所述机器人包括机器人主体和安装于所述机器人主体的上位机和中位机,其中,所述客户端和所述服务器通信连接,所述服务器和所述上位机通信连接,所述中位机与所述上位机通信连接,所述机器人设置有若干功能节点,所述功能节点设置有初始版本的软件;
所述方法包括:
所述客户端通过所述服务器向所述上位机发送软件升级命令和软件升级包;
所述上位机将接收到的所述软件升级命令和所述软件升级包发送至所述中位机;
若所述中位机接收到软件升级命令,则所述中位机响应于所述软件升级命令,根据所述初始版本的软件和软件升级包生成升级版本的软件,并将执行所述软件升级命令的执行结果发送至所述上位机。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述客户端通过所述服务器将版本获取命令发送至所述上位机;
所述上位机将接收到的所述版本获取命令发送至所述中位机;
若所述中位机接收到所述上位机发送的版本获取命令,则所述中位机响应于所述版本获取命令,以获取所述初始版本的软件的版本信息,并将所述初始版本的软件的版本信息发送至所述上位机。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述客户端通过所述服务器将版本回退命令发送至所述上位机;
所述上位机将接收到的所述版本回退命令发送至所述中位机;
若所述中位机接收到所述版本回退命令,则所述中位机响应于所述版本回退命令,对所述初始版本的软件进行版本回退操作,从而得到目标版本的软件。
4.根据权利要求1所述的方法,其特征在于,所述根据所述初始版本的软件和软件升级包生成升级版本的软件之后,所述方法还包括:
启动所述升级版本的软件。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述客户端通过所述服务器将查询指令发送至所述上位机;
所述上位机接收所述查询指令,并将所述查询指令发送至所述中位机;
若所述中位机接收到所述查询指令,则所述中位机响应于所述查询指令,以获取查询结果,并将所述查询结果反馈至所述上位机;
其中,所述查询指令用于查询所述机器人的机器人标识信息、节点标识信息和软件版本信息中的一项或多项。
6.根据权利要求1所述的方法,其特征在于,所述服务器保存有所述机器人的机器人标识信息,所述中位机保存有所述功能节点的节点标识信息,所述软件升级命令携带有至少一目标机器人的机器人标识信息和目标功能节点的所述节点标识信息;
所述客户端通过所述服务器向所述上位机发送软件升级命令和软件升级包,包括:
所述客户端将软件升级命令发送至服务器;
所述服务器基于所述目标机器人的机器人标识信息,将所述软件升级命令和软件升级包发送至目标机器人的上位机;
所述根据所述初始版本的软件和软件升级包生成升级版本的软件,包括:
所述目标机器人的中位机解析所述软件升级命令,以获得所述目标功能节点的节点标识信息;
所述中位机基于所述目标功能节点的节点标识信息,确定目标功能节点,以获取所述目标功能节点中设置的初始版本的软件;
所述中位机基于所述软件升级包和所述目标功能节点中设置的初始版本的软件生成升级版本的软件;
其中,所述目标机器人为所述至少一机器人中的任一机器人,所述目标功能节点为所述若干功能节点中的任一功能节点。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
所述客户端通过所述服务器将抓包命令发送至所述上位机;
所述上位机将接收到的所述抓包命令发送至所述中位机;
若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令,将所述初始版本的软件发送至所述上位机。
8.根据权利要求7所述的方法,其特征在于,所述中位机将所述初始版本的软件发送至所述上位机的步骤具体包括:
所述中位机在成功生成所述升级版本的软件后,压缩所述升级版本的软件;
若所述升级版本的软件压缩成功,则将压缩后的所述升级版本的软件发送给所述上位机,并发送通知消息给上位机,其中,所述通知消息用于通知所述上位机已将所述压缩后的所述升级版本的软件成功发送至所述上位机。
9.根据权利要求7所述的方法,其特征在于,所述初始版本的软件包括主程序文件和配置文件;
所述若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令将所述初始版本的软件发送至所述上位机,包括:
若所述中位机接收到所述抓包命令,则所述中位机响应于所述抓包命令,将所述初始版本的软件中的所述程序文件和/或所述配置文件发送至所述上位机。
10.一种机器人软件远程升级系统,其特征在于,所述系统包括客户端、服务器和至少一机器人,所述机器人包括机器人主体和安装于所述机器人主体的上位机和中位机,其中,所述客户端与所述服务器通信连接,所述服务器与所述上位机通信连接,所述中位机与所述上位机通信连接,所述系统用于执行如权利要求1-9任一项所述的机器人软件远程升级方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310687989.7A CN116931984A (zh) | 2023-06-09 | 2023-06-09 | 机器人软件远程升级方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310687989.7A CN116931984A (zh) | 2023-06-09 | 2023-06-09 | 机器人软件远程升级方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116931984A true CN116931984A (zh) | 2023-10-24 |
Family
ID=88385350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310687989.7A Pending CN116931984A (zh) | 2023-06-09 | 2023-06-09 | 机器人软件远程升级方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116931984A (zh) |
-
2023
- 2023-06-09 CN CN202310687989.7A patent/CN116931984A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1586966B1 (en) | Control system configuration device | |
CN100391176C (zh) | 用于远端更新家用设备功能的方法和系统 | |
CN100385855C (zh) | 集中远程自动升级软件的系统及其方法 | |
CN118069271A (zh) | 经由单独的客户端设备的自动化助理接口的智能设备配置指导 | |
US20110238188A1 (en) | Engineering tool | |
CN108255127A (zh) | 一种基于工业人机界面的工业现场远程监控管理系统及方法 | |
CN113138794B (zh) | 一种代码版本的管理方法和管理系统 | |
CN108989382A (zh) | 用于更换和/或克隆机器的至少一些设备的方法 | |
CN113064612A (zh) | 一种具有通信单元的电动床的系统程序升级方法、系统和存储介质 | |
EP3765929B1 (en) | Automated system and method for updating firmware on industrial devices | |
CN116931984A (zh) | 机器人软件远程升级方法及系统 | |
JP2001296911A (ja) | コントローラ | |
JP2006113754A (ja) | ソフトウェア更新装置及び方法 | |
JP3712659B2 (ja) | 制御システムのデータ伝送方法、制御システム、並びに、そのプログラムおよび記録媒体 | |
CN113472828B (zh) | 用于远程数据采集和控制的方法、装置及系统 | |
JP2015230649A (ja) | 作業管理システム及び作業管理方法 | |
JP3957970B2 (ja) | 制御用表示装置、および、そのプログラムが記録された記録媒体 | |
JP2004341707A (ja) | コンピュータの保守作業支援システムと方法 | |
CN112320515B (zh) | 电梯控制系统调试方法、电梯控制系统及计算机存储介质 | |
CN116955232A (zh) | 一种基于控制系统的硬件识别方法和装置 | |
CN114520749A (zh) | 基于云平台部署物模型的Modbus数据监控方法及系统 | |
CN115220974A (zh) | 一种操作系统网络信息动态检查系统、方法、装置及介质 | |
CN113424153A (zh) | 一种自动化运维方法和装置 | |
JP2004297285A (ja) | 伝送装置の設定制御管理方式 | |
JP2004054823A (ja) | 建設機械の遠隔管理システムにおける管理部運営サーバ |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Country or region after: China Address after: Unit 7-11, 6th Floor, Building B2, No. 999-8 Gaolang East Road, Wuxi Economic Development Zone, Wuxi City, Jiangsu Province, China 214000 Applicant after: Youdi Robot (Wuxi) Co.,Ltd. Address before: 5D, Building 1, Tingwei Industrial Park, No. 6 Liufang Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen City, Guangdong Province Applicant before: UDITECH Co.,Ltd. Country or region before: China |