无人机固件升级装置、方法及终端与流程

文档序号:12946631阅读:241来源:国知局
无人机固件升级装置、方法及终端与流程

本发明涉及固件升级技术领域,具体而言,涉及一种无人机固件升级装置、方法及终端。



背景技术:

无人机是一种以无线电遥控或自身程序控制为主的、具有自动导航和执行特殊任务的无人飞行器。无论是无线电遥控或自身程序控制类型的无人机,都必须在无人机内安装有飞行控制器,飞行控制器主要的工作就是读取预设的参数或接收外部遥控装置的遥控命令以对无人机的飞行进行控制,以及接收无人机中的各个记录装置和传感装置所监测的数据。无人机出厂后,厂家后续还可能会对无人机进行性能提升、修复bug或者添加功能等维护,一般是通过升级固件的方式进行升级维护。

现有技术中,一般是通过usb连线将pc与无人机进行连接以进行固件升级,或者通过pc端将所要升级的固件放入无人机的sd卡中,重启无人机来对无人机的固件进行升级。然而,上述现有的固件升级方法很不友好,用户经常需要在执行飞行任务的时候还需要带上沉重的pc和多种接口的usb线作为技术上的支持,此种升级方式为用户带来了很大的不便,用户体验不佳。



技术实现要素:

本发明的目的在于提供一种无人机固件升级装置、方法及终端,以使无人机固件的升级过程简单方便,提高用户体验度。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提供了一种无人机固件升级装置,应用于无人机固件升级终端,所述无人机固件升级装置包括:获取模块,用于响应 第一控件的被点击操作而获取最新版本固件;推送模块,用于响应第二控件的被点击操作而向无人机推送所述最新版本固件;发送模块,用于在最新版本固件推送完成后向无人机发送升级指令;校验模块,用于在无人机固件升级完成之后对升级结果进行校验,若升级失败,则所述无人机不执行起飞动作。

第二方面,本发明实施例还提供了一种无人机固件升级方法,应用于无人机固件升级终端,所述无人机固件升级方法包括:响应第一控件的被点击操作而获取最新版本固件;响应第二控件的被点击操作而向无人机推送所述最新版本固件;在最新版本固件推送完成后向无人机发送升级指令;在无人机固件升级完成之后对升级结果进行校验,若升级失败,则所述无人机不执行起飞动作。

第三方面,本发明实施例还提供了一种无人机固件升级终端,所述无人机固件升级终端包括:存储器;处理器;以及无人机固件升级装置,所述无人机固件升级装置安装于所述存储器中并包括一个或多个由所述处理器执行的软件功能模组,所述无人机固件升级装置包括:获取模块,用于响应第一控件的被点击操作而获取最新版本固件;推送模块,用于响应第二控件的被点击操作而向无人机推送所述最新版本固件;发送模块,用于在最新版本固件推送完成后向无人机发送升级指令;校验模块,用于在无人机固件升级完成之后对升级结果进行校验,若升级失败,则所述无人机不执行起飞动作。

本发明实施例提供的一种无人机固件升级装置、方法及终端,通过响应第一控件的被点击操作而获取最新版本固件;响应第二控件的被点击操作而向无人机推送所述最新版本固件;在最新版本固件推送完成后向无人机发送升级指令;在无人机固件升级完成之后对升级结果进行校验,若升级失败,则所述无人机不执行起飞动作。如此,本发明实施例不需要usb连线将pc与无人机进行连接,而直接通过无线网络即可实现无人机固件升级,使得无人机固件的升级过程简单方便,提高用户体验度。并且,本发明实施例在进行固件升级时,只修改相关的应用程序,对系统的其它部 分则不做修改,即使升级失败,用户也能通过再次升级来解决问题,完全避免了因为固件升级失败而造成系统无法启动或者无法使用的风险。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例提供的无人机固件升级装置及方法的应用环境示意图;

图2示出了本发明实施例提供的无人机固件升级装置及方法的应用环境示意图;

图3示出了本发明实施例提供的无人机固件升级终端的结构框图;

图4示出了本发明实施例提供的无人机固件升级装置的结构框图;

图5示出了本发明实施例提供的无人机固件升级方法的步骤图;

图6示出了本发明实施例提供的无人机固件升级方法的详细流程图;

图7示出了本发明实施例提供的无人机固件升级方法的升级进度示意图。

具体实施方式

本发明实施例所提供的无人机固件升级装置、方法及终端可应用于如图1所示的应用环境中。如图1所示,无人机固件升级终端100通过该无线网络300服务器200进行数据交互。所述无人机固件升级终端100通过所述网络300访问所述服务器200后,所述服务器200可以提供最新版本固件供所述无人机固件升级终端100下载。无人机固件升级装置400可以存储于无人机固件升级终端100,以用于对无人机的固件进行升级。

在本实施例中,所述无人机固件升级终端100可以是,但不限于智能 手机、个人电脑(personalcomputer,pc)、平板电脑、个人数字助理(personaldigitalassistant,pda)、移动上网设备(mobileinternetdevice,mid)等。所述服务器200可以是,但不限于,web(网站)服务器、ftp(filetransferprotocol,文件传输协议)服务器等。所述无人机固件升级终端100的操作系统可以是,但不限于,安卓(android)系统、ios(iphoneoperatingsystem)系统、windowsphone系统、windows系统等。优选地,本实施例中,所述无人机固件升级终端100的操作系统为ios系统。

图2示出了本发明实施例所提供的无人机固件升级装置、方法及终端的另一应用环境。在本发明实施例中,无人机固件升级终端100可以通过无线网络300对无人机500的固件进行升级。

图3示出了一种可应用本发明实施例的无人机固件升级装置及方法的无人机固件升级终端100的结构框图。如图3所示,无人机固件升级终端100包括存储器102、存储控制器104,一个或多个(图中仅示出一个)处理器106、外设接口108、射频单元110、音频单元112、以及触控屏幕114。

所述存储器102、存储控制器104、一个或多个处理器106、外设接口108、射频单元110、音频单元112以及触控屏幕114各元件相互之间直接或间接地电性连接,以实现数据的传输或交互,例如,这些组件通过一条或多条通讯总线/信号线116相互通讯。所述无人机固件升级装置400包括至少一个可以软件或固件(firmware)的形式存储于所述存储器102中或固化在所述无人机固件升级终端100的操作系统(operatingsystem,os)中的软件功能模块。

存储器102存储有所述无人机固件升级终端100从所述服务器200中下载的固件。所述处理器106用于执行所述存储器102中存储的可执行模块,例如无人机固件升级装置400所包括的软件功能模块及计算机程序等。

存储器102可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。处理器 106以及其他可能的组件对存储器102的访问可在存储控制器104的控制下进行。

外设接口108将各种输入/输出装置耦合至处理器106以及存储器102。在一些实施例中,外设接口108、处理器106以及存储控制器104可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

射频单元110用于接收以及发送无线电波信号(如电磁波),实现无线电波与电信号的相互转换,从而实现所述无人机固件升级终端100与所述网络300或者无人机500之间的无线通信。

音频单元112向用户提供音频接口,其可包括一个或多个麦克风、一个或者多个扬声器以及音频电路。

触控屏幕114在无人机固件升级终端100与用户之间同时提供一个输出及输入界面。在本实施例中,所述触控屏幕114支持单点和多点触控操作,例如,该触控屏幕114可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作使触控屏幕114能感应到来自该触控屏幕114上一个或多个位置处同时产生的触控操作,并将该感应到的多点触控操作交由处理器106进行处理。例如,触控屏幕114可以设有控制固件下载及推送的控件,用户通过点击该控件,可以将固件从服务器200下载至无人机固件升级终端100,或者将固件从无人机固件升级终端100推送至无人机500。

可以理解,图3所示的结构仅为示意,无人机固件升级终端100还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅 仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

第一实施例

请参阅图4,本发明实施例提供的一种无人机固件升级装置400包括:获取模块410、比较模块420、切换模块430、推送模块440、发送模块450以及校验模块460。

该获取模块410用于响应第一控件的被点击操作而获取最新版本固件。

在本发明实施例中,无人机固件升级终端100每次在连接一个无人机500时,首先要获取该无人机500的基本信息,其中包括了该无人机500的固件版本,固件版本的格式为主版本号.副版本号,然后将该无人机500的固件版本记录于无人机固件升级终端100,例如,可以记录于无人机固件升级终端100的存储器102,无人机固件升级终端100只记录最近一次连接的无人机的固件版本。通过比较版本号的大小可以得知该版本的固件是否是最新版本固件。

当用户需要对一待升级的无人机500进行固件升级时,开启无人机固件升级终端100,通过wifi与无人机500进行连接,获取该无人机500的固件版本,并记录于无人机固件升级终端100的存储器102。然后,无人机固件升级终端100与无人机500断开连接,此时,无人机固件升级终端100可以通过语音或文字的方式提示用户无人机固件升级终端100需连接无线网络300,通过无线网络300与服务器200建立连接。需要说明的是,若无人机固件升级终端100最近一次连接的是待升级的无人机500,那么,无人机固件升级终端100已经记录有待升级的无人机500的固件版 本,在开启无人机固件升级终端100后,可以不用再次连接无人机500以获取其固件版本。

无人机固件升级终端100的触控屏幕114可以设有第一控件,第一控件的显示状态可以为“下载新版升级包”,并且该第一控件对应下载指令。当用户点击第一控件时,无人机固件升级装置400向服务器200发出查询请求,以查询服务器200中存储的最新版本固件的版本。另外,服务器200也可以向无人机固件升级终端100主动推送有最新版本固件的消息。当然,上述的第一控件也可为实体按键。

比较模块420用于将无人机固件升级终端100记录的固件版本与服务器200的最新版本固件的版本进行比较,如果版本不同,则说明无人机固件升级终端100记录的固件版本不是最新的固件版本,获取模块410开始从服务器200下载并获取最新版本固件,如果版本相同,则说明无人机固件升级终端100记录的固件版本已经是最新的固件版本,亦即,该待升级的无人机500是最新的固件版本,因而不需要再下载服务器200中的最新版本固件,此时,无人机固件升级终端100可以通过语音或文字的方式提示用户最新版本固件已经下载过。

当该最新版本固件下载至无人机固件升级终端100之后,校验模块460可以对该最新版本固件进行校验,例如校验最新版本固件的标识位、数据校验位、数据长度与预设的值是否相同,若不同,则说明无人机固件升级终端100获取的该最新版本固件不是完整有效的,获取模块410再次向服务器200获取该最新版本固件;若相同,则说明无人机固件升级终端100获取的该最新版本固件是完整有效的。

该切换模块430可以在无人机固件升级终端100获取到最新版本固件之后,将第一控件切换为第二控件,该第二控件的显示状态可以为“升级无人机固件”,并且该第二控件对应升级指令。当然,第二控件也可为实体按键,对应的切换模块430可以被省略。

该推送模块440用于响应第二控件的被点击操作而向无人机500推送所述最新版本固件。

在本发明实施例中,当最新版本固件下载完成后,第一控件切换为第二控件,用户点击第二控件,如果此时无人机固件升级终端100没有连接到无人机500,则无人机固件升级终端100可以通过播放语音或者通过触控屏幕114显示文字的方式提示用户该无人机固件升级终端100需连接无人机500。无人机固件升级终端100可以通过wifi与无人机500进行连接,然后,无人机固件升级装置400查询无人机500当前的固件版本,并通过比较模块420将查询到的无人机500当前的固件版本与获取模块410获取的最新版本固件的版本进行比较,如果版本不同,则说明无人机500当前的固件版本不是最新的固件版本,推送模块440可以通过文件传输协议(filetransferprotocol,ftp)将获取模块410获取的最新版本固件向无人机500推送,并由无人机500上的ftp服务器进行接收。如果版本相同,则说明无人机500当前的固件版本已经是最新的固件版本,因而不需要再向无人机500推送最新版本固件。

发送模块450用于在最新版本固件推送完成后向无人机500发送升级指令。

在本发明实施例中,最新版本固件推送完成之后,发送模块450即向无人机500发送升级指令。无人机500接收到升级指令之后,从ftp服务器中读取最新版本固件并进行数据校验,例如校验最新版本固件的标识位、数据校验位、数据长度与预设的值是否相同,若不同,则说明无人机500接收到的该最新版本固件不是完整有效的,推送模块440再次向无人机500推送该最新版本固件;若相同,则说明无人机500接收到的该最新版本固件是完整有效的。该最新版本固件是以压缩包的形式存储的,当校验结果为该最新版本固件完整有效时,无人机500进行固件升级,将该最新版本固件进行解压,执行里面的脚本程序,用新版的程序覆盖旧版的程序。在固件升级的过程中,可以有进度条以显示固件的升级进度。升级完成之后,无人机500通知无人机固件升级终端100升级已经完成,无人机固件升级终端100通过灯光和声音提示用户升级已经完成,并重启无人机500。

该校验模块460用于在无人机500升级完成之后对升级结果进行校验,若升级失败,则无人机500不执行起飞动作。

在本发明实施例中,当无人机500的固件升级完成之后,重启无人机500,以对升级结果进行校验。无人机固件升级终端100重新连接无人机500,查询无人机500当前的固件版本,如果与最新版本固件的版本一致,则校验结果为升级成功,提示用户升级成功。如果版本不一致,则校验结果为升级失败,提示用户是否继续升级。

在无人机500的固件升级失败时,无人机固件升级装置400可以向所述无人机500发送升级失败的指令,无人机500上的飞行控制器接收到该升级失败的指令,则不发出起飞指令,从而不允许无人机500执行起飞动作,以免因为功能不完善或因为bug而导致用户的财产和人身安全受到威胁。

需要说明的是,本发明实施例所讲的升级不包含无人机500的操作系统升级,在进行固件升级时,只修改相关的应用程序,对系统的其它部分则不做修改。并且,在本发明的无人机500固件升级的过程中,无人机500中的ftp服务器以及负责升级的应用程序本身并不会被修改,以免造成这些程序升级失败,从而使用户无法通过再次升级来解决问题。在本发明实施例中,即使升级失败,用户也能通过再次升级来解决问题,完全避免了因为固件升级而造成系统无法启动或者无法使用的风险。

第二实施例

请参阅图5和图6,是本发明实施例提供的无人机固件升级方法的步骤图和详细流程图。本发明实施例提供的无人机固件升级方法包括以下步骤:

步骤s1,响应第一控件的被点击操作而获取最新版本固件。

在本发明实施例中,步骤s1可以由获取模块410执行。在本发明实施例中,无人机固件升级终端100每次在连接一个无人机500时,首先要获取该无人机500的基本信息,其中包括了该无人机500的固件版本,固 件版本的格式为主版本号.副版本号,然后将该无人机500的固件版本记录于无人机固件升级终端100,例如,可以记录于无人机固件升级终端100的存储器102,无人机固件升级终端100只记录最近一次连接的无人机的固件版本。通过比较版本号的大小可以得知该版本的固件是否是最新版本固件。

当用户需要对一无人机500进行固件升级时,开启无人机固件升级终端100,通过wifi与无人机500进行连接,获取该无人机500的固件版本,并记录于无人机固件升级终端100的存储器102。然后,无人机固件升级终端100与无人机500断开连接,此时,无人机固件升级终端100可以通过语音或文字的方式提示用户无人机固件升级终端100需连接无线网络300,通过无线网络300与服务器200建立连接。需要说明的是,若无人机固件升级终端100最近一次连接的是待升级的无人机500,那么,无人机固件升级终端100已经记录有待升级的无人机500的固件版本,在开启无人机固件升级终端100后,可以不用再次连接无人机500以获取其固件版本。

无人机固件升级终端100的触控屏幕114可以设有第一控件,第一控件的显示状态可以为“下载新版升级包”,并且该第一控件对应下载指令。当用户点击第一控件时,无人机固件升级装置400向服务器200发出查询请求,以查询服务器200中存储的最新版本固件的版本。另外,服务器200也可以向无人机固件升级终端100主动推送有最新版本固件的消息。

然后,通过比较模块420将无人机固件升级终端100记录的固件版本与服务器200的最新版本固件的版本进行比较,如果版本不同,则说明无人机固件升级终端100记录的固件版本不是最新的固件版本,获取模块410开始从服务器200下载并获取最新版本固件,如果版本相同,则说明无人机固件升级终端100记录的固件版本已经是最新的固件版本,亦即,该待升级的无人机500是最新的固件版本,因而不需要再下载服务器200中的最新版本固件,此时,无人机固件升级终端100可以通过语音或文字的方式提示用户最新版本固件已经下载过。

当该最新版本固件下载至无人机固件升级终端100之后,校验模块460可以对该最新版本固件进行校验,例如校验最新版本固件的标识位、数据校验位、数据长度与预设的值是否相同,若不同,则说明无人机固件升级终端100获取的该最新版本固件不是完整有效的,获取模块410再次向服务器200获取该最新版本固件;若相同,则说明无人机固件升级终端100获取的该最新版本固件是完整有效的,无人机固件升级终端100可以提示用户是否需要升级。

然后,切换模块430可以在无人机固件升级终端100获取到最新版本固件之后,将第一控件切换为第二控件,该第二控件的显示状态可以为“升级无人机固件”,并且该第二控件对应升级指令。

步骤s2,响应第二控件的被点击操作而向无人机500推送所述最新版本固件。

在本发明实施例中,步骤s2可以由推送模块440执行。当最新版本固件下载完成后,第一控件切换为第二控件,用户点击第二控件,如果此时无人机固件升级终端100没有连接到无人机500,则无人机固件升级终端100可以通过播放语音或者通过触控屏幕114显示文字的方式提示用户该无人机固件升级终端100需连接无人机500。无人机固件升级终端100可以通过wifi与无人机500进行连接,然后,无人机固件升级装置400查询无人机500当前的固件版本,并通过比较模块420将查询到的无人机500当前的固件版本与获取模块410获取的最新版本固件的版本进行比较,如果版本不同,则说明无人机500当前的固件版本不是最新的固件版本,推送模块440可以通过文件传输协议(filetransferprotocol,ftp)将获取模块410获取的最新版本固件向无人机500推送,并由无人机500上的ftp服务器进行接收。如果版本相同,则说明无人机500当前的固件版本已经是最新的固件版本,因而不需要再向无人机500推送最新版本固件。

步骤s3,在最新版本固件推送完成后向无人机500发送升级指令。

在本发明实施例中,步骤s3可以由发送模块450执行。在最新版本 固件推送完成之后,发送模块450即向无人机500发送升级指令。无人机500接收到升级指令之后,从ftp服务器中读取最新版本固件并进行数据校验,例如校验最新版本固件的标识位、数据校验位、数据长度与预设的值是否相同,若不同,则说明无人机500接收到的该最新版本固件不是完整有效的,推送模块440再次向无人机500推送该最新版本固件;若相同,则说明无人机500接收到的该最新版本固件是完整有效的。该最新版本固件是以压缩包的形式存储的,当校验结果为该最新版本固件完整有效时,无人机500进行固件升级,将该最新版本固件进行解压,执行里面的脚本程序,用新版的程序覆盖旧版的程序。如图7所示,在固件升级的过程中,可以有进度条以显示固件的升级进度。升级完成之后,无人机500通知无人机固件升级终端100升级已经完成,无人机固件升级终端100通过灯光和声音提示用户升级已经完成,并重启无人机500。

步骤s4,在无人机500升级完成之后对升级结果进行校验,若升级失败,则所述无人机500不执行起飞动作。

在本发明实施例中,步骤s4可以由校验模块460执行。当无人机500升级完成之后,重启无人机500,以对升级结果进行校验。无人机固件升级终端100重新连接无人机500,查询无人机500当前的固件版本,如果与最新版本固件的版本一致,则校验结果为升级成功,提示用户升级成功,升级结束。如果版本不一致,则校验结果为升级失败,提示用户是否继续升级,若用户选择继续升级,则无人机固件升级终端100再次将最新版本固件上传至无人机500进行升级。

在无人机的固件升级失败时,无人机固件升级装置400可以向所述无人机500发送升级失败的指令,无人机500上的飞行控制器接收到该升级失败的指令,则不发出起飞指令,从而不允许无人机500执行起飞动作,以免因为功能不完善或因为bug而导致用户的财产和人身安全受到威胁。

需要说明的是,本发明实施例所讲的升级不包含无人机500的操作系统升级,在进行固件升级时,只修改相关的应用程序,对系统的其它部分 则不做修改。并且,在本发明的无人机500固件升级的过程中,无人机500中的ftp服务器以及负责升级的应用程序本身并不会被修改,即使固件升级失败,用户也能通过再次升级来解决问题,完全避免了因为固件失败升级而造成系统无法启动或者无法使用的风险。并且,本发明实施例不需要usb连线将pc与无人机500进行连接,而直接通过无线网络300即可实现无人机500的固件升级,使得无人机固件的升级过程简单方便,提高用户体验度。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1