WO2022242080A1 - 一种无人机软件远程升级及回滚的方法 - Google Patents
一种无人机软件远程升级及回滚的方法 Download PDFInfo
- Publication number
- WO2022242080A1 WO2022242080A1 PCT/CN2021/132531 CN2021132531W WO2022242080A1 WO 2022242080 A1 WO2022242080 A1 WO 2022242080A1 CN 2021132531 W CN2021132531 W CN 2021132531W WO 2022242080 A1 WO2022242080 A1 WO 2022242080A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- upgrade
- software
- area
- storage area
- uav
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012360 testing method Methods 0.000 claims description 41
- 238000012795 verification Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 16
- 238000005192 partition Methods 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 8
- 238000013524 data verification Methods 0.000 claims description 6
- 238000013024 troubleshooting Methods 0.000 claims description 6
- 238000012790 confirmation Methods 0.000 claims description 5
- 238000005096 rolling process Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 3
- 206010033799 Paralysis Diseases 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical compound C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- 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
- 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
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/865—Monitoring of software
Definitions
- the application belongs to the technical field of unmanned aerial vehicles, relates to software upgrades, and in particular relates to a method for remote upgrade and rollback of unmanned aerial vehicle software.
- unmanned aerial vehicles also commonly referred to as unmanned aerial vehicles or remotely piloted aircraft, have achieved widespread adoption over the past few decades.
- the purpose of this application is to provide a method for remote upgrade and rollback of UAV software, so as to solve the technical problem of relatively low cost-effectiveness of UAV software upgrade in the prior art.
- a method for remote upgrade and rollback of unmanned aerial vehicle software comprising the following steps:
- the drone includes a storage area and a software upgrade module for the drone; the storage area is divided into a main storage area, a backup storage area and a data area;
- Both the main storage area and the backup storage area are used to store the software required for the normal operation of the UAV and store the same version of the software.
- the UAV software upgrade module only upgrades the software in the backup storage area;
- the data area is used to store various data generated during the UAV upgrade mission, and any process can perform read and write operations;
- the upgrade operation in the backup storage area specifically includes the following steps:
- Step 1 the UAV software upgrade module receives the ground station upgrade command, confirms the upgrade software version information and the current backup area software version information, and sends the confirmation result to the ground station; if the upgrade is confirmed, a temporary version is divided from the data area Area;
- the temporary version area is used to store updated software versions and old version software, and this partition can be revoked after the upgrade task is completed;
- Step 2 the UAV software upgrade module receives the upgrade software version sent by the ground station, and stores it in the temporary version area for data verification; if the verification result is wrong, delete the upgrade software version, and feedback the result to the ground station; If the verification result is correct, the upgrade module will write the old version software in the backup storage area into the temporary version area, write the upgraded software version into the backup storage area and overwrite the old version software, change the main storage area to the backup storage area, and Change to the main storage area;
- Step 3 The UAV is powered on again, and the power-on BIT test is performed. If the test is wrong, the rollback operation is performed. If the test is correct, repeat steps 1-2 to upgrade the old version of the software in the current backup storage area. Test, and feed back the correct test results to the ground station, delete the temporary version area, and the upgrade is complete.
- the application also has the following technical features:
- the rollback operation includes the following steps:
- the UAV software upgrade module changes the main storage area of the current upgrade program to the backup storage area, changes the backup storage area to the main storage area, and re-powers the UAV to perform a power-on BIT test. If the test is correct, Then the UAV software upgrade module writes the old program version in the temporary version area into the backup storage area corresponding to the current upgrade program. If the test is wrong, it means that the UAV is malfunctioning, and UAV troubleshooting is required;
- the UAV software upgrade module modifies the main and standby flags of the current upgrade program storage area, changes the current upgrade program corresponding to the main storage area to the backup storage area, and the backup storage area to the main storage area, and re-powers the UAV. Perform power-on BIT test. If the test is correct, the temporary version area will be deleted, and the current software upgrade process will end. If the test is wrong, it means that the current drone is faulty, and troubleshooting of the drone is required.
- the upgrade instruction includes the UAV identification code, upgrade software type, software version information, and storage space required by the software.
- the data verification is to perform CRC verification first, and compare the calculated CRC verification value with the CRC verification value in the upgrade file. If the two are consistent, it is judged that the upgrade file is correct, and the ground station Send the upgrade file to confirm whether the reception is successful or not.
- the ground station includes one or more processors and UAV software upgrade programs.
- the main storage area includes the main boot program area, the main operating system area, the main control law area and the main control and management software area;
- the backup storage area includes the standby boot program area, the standby operating system area, the backup control law area and the backup Control and management software area.
- the new control and management software stored in the temporary version area is used to store the old control and management software at the end of the upgrade, and the temporary version area is deleted after the upgrade operation is completed.
- the temporary version area is used to store old control and management software, and the temporary version area is deleted after the rollback operation is completed.
- the storage area is divided by function, the main storage area includes the main operating system, the main user software and the main driver; the backup storage area includes the backup operating system, the backup user software and the backup driver.
- This application partitions the storage area so that the UAV can not only perform the upgrade task, but also maintain normal work without interrupting the current task of the UAV. Compared with the traditional disassembly and upgrade method, it effectively avoids dismantling The cumbersome operation of the solution equipment avoids the risk of damage to the UAV equipment. In addition, the UAV passes the The rollback operation can still use the old version of the software to work again without causing equipment paralysis, which effectively ensures the robustness of the upgrade process and solves the technical problem of relatively low cost-effectiveness in UAV software upgrades in the prior art
- Fig. 1 is a block diagram of the upgrade system of the present application
- Fig. 2 is a flow chart of ground station work in the present application
- FIG. 3 is a schematic diagram of the division of the UAV storage area of the present application.
- Fig. 4 is the flowchart of UAV software upgrade in this application.
- Fig. 5 is a diagram of the software version change of the drone in the present application.
- Fig. 6 is the flow chart of UAV software rollback in this application.
- Fig. 7 is a software version change diagram when the UAV software rolls back in the present application.
- Fig. 8 is another schematic diagram of division of the UAV storage area of the present application.
- CRC Cyclic Redundancy Check
- cost-benefit ratio in this application is the ratio of input costs to output benefits.
- This embodiment provides a method for remote upgrade and rollback of UAV software, as shown in Figure 2, the method includes the following steps:
- the UAV includes storage area and UAV software upgrade module; the storage area is divided into main storage area, backup storage area and data area;
- Both the main storage area and the backup storage area are used to store the software required for the normal operation of the UAV and store the same version of the software.
- the UAV software upgrade module only upgrades the software in the backup storage area;
- the data area is used to store various data generated during the UAV upgrade mission, and any process can perform read and write operations;
- the upgrade operation in the backup storage area specifically includes the following steps:
- Step 1 the UAV software upgrade module receives the ground station upgrade command, confirms the upgrade software version information and the current backup area software version information, and sends the confirmation result to the ground station; if the upgrade is confirmed, a temporary version is divided from the data area Area;
- the temporary version area is used to store updated software versions and old version software, and this partition can be revoked after the upgrade task is completed;
- the UAV software needs to be upgraded, and maintenance personnel remotely control the ground station through the network to remotely upgrade the software.
- the maintenance personnel send the software upgrade version to the ground station through the network, and the ground station sends an upgrade task to the target UAV.
- the data area is divided into a temporary version area.
- the design storage area is divided into 10 areas, namely the main boot program area, backup boot program area, main operating system area, backup operating system area, main control law area, backup control law area, and main control law area.
- management software area, backup control and management software area, temporary version area, data area as shown in Figure 3.
- the main boot program area and the backup boot program area store the system boot program, and the version of the boot program stored in the main and backup boot program areas is the same, and the main and backup programs are determined by the partition mark.
- the storage space meets the storage and upgrade requirements (for example, if the boot program is 1M, the storage area is divided slightly larger, which is 1.5M). Except for the upgrade module, other processes in the active and standby boot program areas cannot perform write operations;
- the main operating system area and the backup operating system area store operating system files. Among them, the main and standby operating system areas store the same version of the operating system, and the storage space meets the storage requirements.
- the main and backup are determined by the partition mark. Except for the upgrade module, other processes cannot perform write operations;
- the main control law area and the backup control law area store the UAV control law.
- the main and backup control law areas store the same control law version, and the storage space meets the storage requirements.
- the main and backup are determined by the partition mark. Any process (including the software upgrade module) cannot perform write operations;
- the main control and management software area and the backup control and management software area store control and management software.
- the master and backup control and management software versions are consistent, and the storage space meets the storage requirements.
- the master and backup are determined by the partition mark. Except for the upgrade module, other processes cannot perform write operations;
- the temporary version area is used to temporarily store the upgrade and rollback version.
- the storage space is allocated according to the size of the upgraded software version, which is three times or more than the storage space of the version (for example, if the upgrade program is 1M, the size of the temporary version area is 3M). It is a temporary area, which is temporarily divided in the data area by the upgrade module, and will be revoked after the version upgrade is completed. During the version upgrade, only the upgrade module can read and write to the temporary version area.
- the data area is used to store various data generated during the mission of the UAV, and any process can perform read and write operations.
- Step 2 the UAV software upgrade module receives the upgrade software version sent by the ground station, and stores it in the temporary version area for data verification; if the verification result is wrong, delete the upgrade software version, and feedback the result to the ground station; If the verification result is correct, the upgrade module will write the old version software in the backup storage area into the temporary version area, write the upgraded software version into the backup storage area and overwrite the old version software, change the main storage area to the backup storage area, and Change to the main storage area;
- the ground station receives the upgrade feedback and sends the upgrade version to the UAV
- the UAV upgrade module stores the received version in the temporary version area, calculates the check value after receiving the upgrade version, and calculates the The check value of the file is compared with the file check value in the upgrade version to determine whether the upgrade version transmission is correct.
- the version verification result is sent to the ground station.
- the ground station will resend the upgraded version and repeat the previous step. If the upload verification fails for many times ( ⁇ 3), the upgrade operation will be suspended to troubleshoot related problems.
- the version verification is correct, and the UAV software upgrade module writes the version in the backup version area into the temporary version area (different from the new version), and writes the new version in the temporary version area into the backup control and management software area.
- the upgrade module modifies the area marking, the main storage area is marked as backup, the backup storage area is marked as main, and the drone is powered on again
- Step 3 The UAV is powered on again, and the power-on BIT test is performed. If the test is wrong, the rollback operation is performed. If the test is correct, repeat steps 1-2 to upgrade the old version of the software in the current backup storage area. Test, and feed back the correct test results to the ground station, delete the temporary version area, and the upgrade is complete.
- the software is called from the main storage area to run, and the power-on BIT test is started. If the BIT is correct, the UAV software upgrade module repeats the above steps, and continues to upgrade the version in the backup area. After the test is completed and the test is correct, the temporary version area will be canceled and an upgrade success confirmation will be sent to the ground station. The ground station will mark that the current UAV has been upgraded successfully and upgrade the next UAV.
- the UAV software upgrade module will send a message that the version upgrade is unsuccessful to the ground station, and automatically perform a rollback operation.
- the software upgrade module modifies the partition logo, the flight control computer is powered on again, and the BIT test is performed. If the test result is correct, the partition logo is modified and the current backup storage area is rolled back; if the test is incorrect, an error message is returned to the ground station. Troubleshoot.
- This application is a method for upgrading UAV software by means of remote upgrade, which improves the efficiency of UAV software upgrade, saves the upgrade cost, and the upgrade process will not affect the operation of the current UAV.
- Mechanism if the upgrade is unsuccessful, it can also be rolled back to the original version, which will not cause the drone to be unusable due to the upgrade.
- the rollback operation includes the following steps:
- the UAV software upgrade module changes the main storage area of the current upgrade program to the backup storage area, changes the backup storage area to the main storage area, and re-powers the UAV to perform a power-on BIT test. If the test is correct, Then the UAV software upgrade module writes the old program version in the temporary version area into the backup storage area corresponding to the current upgrade program. If the test is wrong, it means that the UAV is malfunctioning, and UAV troubleshooting is required;
- the UAV software upgrade module modifies the main and standby flags of the current upgrade program storage area, changes the current upgrade program corresponding to the main storage area to the backup storage area, and the backup storage area to the main storage area, and re-powers the UAV. Perform power-on BIT test. If the test is correct, the temporary version area will be deleted, and the current software upgrade process will end. If the test is wrong, it means that the current drone is faulty, and troubleshooting of the drone is required.
- the upgrade instruction includes the UAV identification code, upgrade software type, software version information, and storage space required by the software.
- the data verification is to first perform CRC verification, and compare the calculated CRC verification value with the CRC verification value in the upgrade file. If the two are consistent, then judge the upgrade file Correct, and send the upgrade file to the ground station to confirm whether the reception is successful or not.
- the ground station includes one or more processors and a UAV software upgrade program.
- the main storage area includes a main boot program area, a main operating system area, a main control law area, and a main control and management software area;
- the backup storage area includes a backup boot program area, a backup operating system area, Standby control law area and standby control and management software area.
- the new control and management software used for storage in the temporary version area is used to store the old control and management software at the end of the upgrade, and the temporary version area is deleted after the upgrade operation. version area.
- the temporary version area is used to store old control and management software, and the temporary version area is deleted after the rollback operation is completed.
- the storage area is divided by function, the main storage area includes the main operating system, the main user software and the main driver; the backup storage area includes the backup operating system, the backup user software and the backup driver.
- This application can be applied to the field of UAV control.
- the UAV by partitioning the storage area, the UAV can not only perform the upgrade task, but also maintain normal work without interrupting the current task of the UAV.
- the drone Compared with the traditional disassembly and upgrade method, it effectively avoids the cumbersome operation of dismantling the equipment and avoids the risk of damaging the drone equipment.
- the drone is affected by external uncontrollable factors (such as sudden power failure, etc.) during the upgrade process.
- the old version of the software can still be used to re-work through the rollback operation without causing equipment paralysis, which effectively ensures the robustness of the upgrade process and solves the problem of unmanned aerial vehicle software in the prior art. Upgrade technical issues with relatively low cost-efficiency.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
本申请给出了一种无人机软件远程升级及回滚的方法,无人机包括存储区和无人机软件升级模块;对存储区进行划分,划分为主存储区、备存储区和数据区。
Description
本申请要求于2021年05月19日提交中国专利局、申请号为202110543036.4、发明名称“一种无人机软件远程升级及回滚的方法”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请属于无人机技术领域,涉及软件升级,具体涉及一种无人机软件远程升级及回滚的方法。
由于具有高机动性和低成本,无人驾驶空中飞行器(unmanned aerial vehicle,UAV),也通常称为无人驾驶飞机或远程驾驶飞机,在过去几十年取得了广泛的应用。
由于无人机使用环境的多变,以及提高无人机控制功能的多样性,不断完善用户体验,均需要升级无人机软件。
现有无人机软件升级时,需无人机厂家人员现场进行无人机拆卸,使用线缆连接相关硬件设备后进行升级,升级效率低下,维护成本高昂。远程升级技术可以通过远程推送软件版本的形式完成软件版本更新,最大限度的不影响无人机的正常使用。避免了现场升级的风险和费用的不可控。
现有技术虽然对软件远程升级有较多研究,但针对无人机软件远程升级研究较少,另外当传输出现错误、文件拷贝出现错误或者升级过程中出现突发事 件时,并无保证无人机仍能正常工作的解决方案。因此设计一种无人机软件远程升级及回滚的方法势在必行。
发明内容
针对现有技术存在的不足,本申请的目的在于,提供一种无人机软件远程升级及回滚的方法,解决现有技术中无人机软件升级费效比较低的技术问题。
为了解决上述技术问题,本申请采用如下技术方案予以实现:
一种无人机软件远程升级及回滚的方法,所述的方法包括以下步骤:
无人机包括存储区和无人机软件升级模块;对存储区进行划分,划分为主存储区、备存储区和数据区;
主存储区和备存储区均用于存放无人机正常工作所需软件且存储相同版本软件,无人机软件升级模块仅对备份存储区软件进行升级操作;
数据区用于存放无人机升级任务过程中产生的各种数据,任何进程均可进行读写操作;
备存储区中的升级操作具体包括以下步骤:
步骤1,无人机软件升级模块接收到地面站升级指令,确认升级软件版本信息和当前备份区软件版本信息,并向地面站发送确认结果;若确定升级,则从数据区中划分一个临时版本区;
临时版本区用于存放更新软件版本和旧版本软件,升级任务完成后可撤销此分区;
步骤2,无人机软件升级模块接收地面站发送的升级软件版本,并存入临时版本区,进行数据校验;若校验结果错误,则删除升级软件版本,向地面站反馈结果;若校验结果正确,则升级模块将备存储区旧版本软件写入临时版本 区,将升级软件版本写入备存储区并覆盖旧版本软件,并将主存储区改为备存储区,将备存储区改为主存储区;
步骤3,无人机重新上电启动,进行上电BIT测试,若测试错误,则进行回滚操作,若测试正确,则重复步骤1~2,对当前备存储区中旧版本软件进行升级并测试,并将测试正确后的结果反馈至地面站,删除临时版本区,升级完成。
本申请还具有以下技术特征:
具体的,回滚操作包括以下步骤:
S1,无人机软件升级模块将当前升级程序的主存储区改为备存储区,将备存储区改为主存储区,并给无人机重新上电进行上电BIT测试,若测试正确,则无人机软件升级模块将临时版本区中的旧程序版本写入当前升级程序对应备存储区中,若测试错误,则说明无人机发生故障,需进行无人机故障排查;
S2,无人机软件升级模块修改当前升级程序存储区主备标志,将当前升级程序对应主存储区改为备存储区,备存储区改为主存储区,并给无人机重新上电,进行上电BIT测试,测试正确,则删除临时版本区,结束当前软件升级流程,测试错误,则说明当前无人机发生故障,需进行无人机故障排查。
可选的,升级指令包括无人机识别码、升级软件类型,软件版本信息,软件所需存储空间。
可选的,数据校验是首先进行CRC校验,将计算出的CRC校验值与升级文件中的CRC校验值进行比对,如果两者一致,则判断升级文件正确,并向地面站发送升级文件接收是否成功确认结果。
可选的,地面站包括一个或多个处理器和无人机软件升级程序。
可选的,主存储区包括主引导程序区、主操作系统区、主控制律区和主控制及管理软件区;备存储区包括备引导程序区、备操作系统区、备控制律区和备控制及管理软件区。
可选的,升级操作过程中,临时版本区中用于存储的新控制及管理软件,在升级结束时用于存储旧控制及管理软件,并在升级操作结束后删除临时版本区。
可选的,回滚操作过程中,临时版本区用于存储旧控制及管理软件,并在回滚操作结束后删除临时版本区。
可选的,存储区按功能划分,主存储区包括主操作系统、主用户软件和主驱动程序;备存储区包括备操作系统、备用户软件和备驱动程序。
本申请与现有技术相比,有益的技术效果是:
(Ⅰ)本申请通过对存储区进行分区,使得无人机既可以进行升级任务,也可以保持正常工作,无需中断无人机当前任务,相比传统的拆机升级方式,有效地避免了拆解设备的繁琐操作,规避了损坏无人机设备的风险,此外,无人机在升级过程在由外界不可控因素(例如突然掉电等)导致的非正常升级或升级失败的情况下,通过回滚操作仍可使用旧版本软件重新工作而不造成设备瘫痪,有效保证了升级过程的鲁棒性,解决了现有技术中无人机软件升级费效比较低的技术问题
(Ⅱ)本申请中在进行升级任务时,所有升级操作全部由软件完成,无需人工干预,更无需对无人机进行硬件或结构上改造,可应用于所有种类无人机,此外,并为载人飞机的软件升级提供了新思路。
图1是本申请升级系统组成框图;
图2是本申请中地面站工作流程图;
图3是本申请无人机存储区划分示意图;
图4是本申请中无人机软件升级流程图;
图5是本申请中无人机软件版本变化图;
图6是本申请中无人机软件回滚流程图;
图7是本申请中无人机软件回滚时软件版本变化图;
图8是本申请无人机存储区的另一种划分示意图;
以下结合实施例对本申请的具体内容作进一步详细解释说明。
需要说明的是,本申请中的CRC的英文全称是Cyclic Redundancy Check,即表示循环冗余校验。
需要说明的是,本申请中的BIT的英文全称是built in test,即表示机内测试。
需要说明的是,本申请中费效比就是投入费用和产出效益的比值。
需要说明的是,本申请中的所有零部件,在没有特殊说明的情况下,均采用本领域已知的零部件。
以下给出本申请的具体实施例,需要说明的是本申请并不局限于以下具体实施例,凡在本申请技术方案基础上做的等同变换均落入本申请的保护范围。
实施例:
本实施例给出了一种无人机软件远程升级及回滚的方法,如图2所示,方法包括以下步骤:
无人机包括存储区和无人机软件升级模块;对存储区进行划分,划分为主 存储区、备存储区和数据区;
主存储区和备存储区均用于存放无人机正常工作所需软件且存储相同版本软件,无人机软件升级模块仅对备份存储区软件进行升级操作;
数据区用于存放无人机升级任务过程中产生的各种数据,任何进程均可进行读写操作;
备存储区中的升级操作具体包括以下步骤:
步骤1,无人机软件升级模块接收到地面站升级指令,确认升级软件版本信息和当前备份区软件版本信息,并向地面站发送确认结果;若确定升级,则从数据区中划分一个临时版本区;
临时版本区用于存放更新软件版本和旧版本软件,升级任务完成后可撤销此分区;
在本实施例中,因客户需求更改,需对无人机软件进行升级,维护人员通过网络远程操控地面站,对软件进行远程升级。
维护人员通过网络将软件升级版本下发至地面站,地面站向目标无人机发送升级任务,无人机软件升级模块接收任务并对比版本,确认是否升级并将结果向地面站反馈,并在数据区划分临时版本区。
以目前常用无人机为例,设计存储区分为10区,分别为主引导程序区、备份引导程序区、主操作系统区、备份操作系统区、主控制律区、备份控制律区、主控制及管理软件区、备份控制及管理软件区、临时版本区、数据区,如图3所示。
主引导程序区、备份引导程序区存放系统引导程序,其中主备引导程序区存放引导程序版本一致,通过分区标志确定主备。存储空间满足存储及升级需 求(例如引导程序为1M,则存储区划分稍大,为1.5M),主备引导程序区除升级模块外,其余进程无法进行写操作;
主操作系统区、备份操作系统区存放操作系统文件,其中主备操作系统区存放操作系统版本一致,存储空间满足存储需求,通过分区标志确定主备。除升级模块外,其余进程无法进行写操作;
主控制律区、备份控制律区存放无人机控制律,其中主备控制律区存放控制律版本一致,存储空间满足存储需求,通过分区标志确定主备。任何进程(包括软件升级模块)不能进行写操作;
主控制及管理软件区、备份控制及管理软件区存放控制及管理软件,其中主备控制及管理软件版本一致,存储空间满足存储需求,通过分区标志确定主备。除升级模块外,其余进程无法进行写操作;
临时版本区用于临时存放升级及回滚版本,存储空间根据升级软件版本的大小进行分配,为版本三倍或以上存储空间(例如升级程序为1M,则临时版本区大小为3M),此区域为临时区域,由升级模块在数据区临时划分,版本升级完成后即撤销,在版本升级期间,只有升级模块可以对临时版本区进行读写操作。
数据区,用于存放无人机任务过程中产生的各种数据,任何进程均可进行读写操作。
步骤2,无人机软件升级模块接收地面站发送的升级软件版本,并存入临时版本区,进行数据校验;若校验结果错误,则删除升级软件版本,向地面站反馈结果;若校验结果正确,则升级模块将备存储区旧版本软件写入临时版本区,将升级软件版本写入备存储区并覆盖旧版本软件,并将主存储区改为备存 储区,将备存储区改为主存储区;
在本实施例中,地面站收到升级反馈,向无人机发送升级版本,无人机升级模块将接收版本存入临时版本区,接收完升级版本后计算出校验值,并将计算出的校验值与升级版本中的文件校验值进行比对,以判断升级版本传输是否正确。版本校验结果发地面站。
版本校验错误,则地面站重新发送升级版本,重复上一步骤,如多次(≤3)上传校验不成功,则暂停升级操作,排查相关问题。
版本校验正确,无人机软件升级模块将备份版本区的版本写入临时版本区(与新版本不同的位置),将临时版本区的新版本写入备份控制及管理软件区。升级模块对区域标记进行修改,主存储区标记为备,备存储区标记为主,无人机重新上电
步骤3,无人机重新上电启动,进行上电BIT测试,若测试错误,则进行回滚操作,若测试正确,则重复步骤1~2,对当前备存储区中旧版本软件进行升级并测试,并将测试正确后的结果反馈至地面站,删除临时版本区,升级完成。
在本实施例中,无人机上电后,从主存储区调用软件运行,开始进行上电BIT测试,如BIT正确,则无人机软件升级模块重复以上步骤,继续进行备份区版本升级,升级完成进行测试,测试正确,则撤销临时版本区,向地面站发送升级成功确认,地面站标记当前无人机升级成功,并对下一台无人机进行升级。
软件升级后如BIT不正确,无人机软件升级模块向地面站发送版本升级不成功信息,并自动进行回滚操作。软件升级模块修改分区标志,飞控计算机重新上电,进行BIT测试,测试结果正确,则修改分区标志,对当前备份存储区 进行回滚操作;如测试不正确,则向地面站返回错误信息,进行排故。
本申请是使用远程升级的方式对无人机软件进行升级的方法,提高了无人机软件升级的效率,节约了升级成本,升级过程不会对当前无人机的运行产生影响,同时拥有保障机制,升级不成功亦可回退至原版本,不会造成无人机因升级而无法使用。
作为本实施例的一种优选方案,回滚操作包括以下步骤:
S1,无人机软件升级模块将当前升级程序的主存储区改为备存储区,将备存储区改为主存储区,并给无人机重新上电进行上电BIT测试,若测试正确,则无人机软件升级模块将临时版本区中的旧程序版本写入当前升级程序对应备存储区中,若测试错误,则说明无人机发生故障,需进行无人机故障排查;
S2,无人机软件升级模块修改当前升级程序存储区主备标志,将当前升级程序对应主存储区改为备存储区,备存储区改为主存储区,并给无人机重新上电,进行上电BIT测试,测试正确,则删除临时版本区,结束当前软件升级流程,测试错误,则说明当前无人机发生故障,需进行无人机故障排查。
作为本实施例的一种优选方案,升级指令包括无人机识别码、升级软件类型,软件版本信息,软件所需存储空间。
作为本实施例的一种优选方案,数据校验是首先进行CRC校验,将计算出的CRC校验值与升级文件中的CRC校验值进行比对,如果两者一致,则判断升级文件正确,并向地面站发送升级文件接收是否成功确认结果。
作为本实施例的一种优选方案,地面站包括一个或多个处理器和无人机软件升级程序。
作为本实施例的一种优选方案,主存储区包括主引导程序区、主操作系统区、主控制律区和主控制及管理软件区;备存储区包括备引导程序区、备操作系统区、备控制律区和备控制及管理软件区。
作为本实施例的一种优选方案,升级操作过程中,临时版本区中用于存储的新控制及管理软件,在升级结束时用于存储旧控制及管理软件,并在升级操作结束后删除临时版本区。
作为本实施例的一种优选方案,回滚操作过程中,临时版本区用于存储旧控制及管理软件,并在回滚操作结束后删除临时版本区。
作为本实施例的一种优选方案,存储区按功能划分,主存储区包括主操作系统、主用户软件和主驱动程序;备存储区包括备操作系统、备用户软件和备驱动程序。
在本实施中,如图8所示,为存储区的另一种划分方式。
本申请可应用于无人机控制领域,在本申请实施例中,通过对存储区进行分区,使得无人机既可以进行升级任务,也可以保持正常工作,无需中断无人机当前任务,相比传统的拆机升级方式,有效地避免了拆解设备的繁琐操作,规避了损坏无人机设备的风险,此外,无人机在升级过程在由外界不可控因素(例如突然掉电等)导致的非正常升级或升级失败的情况下,通过回滚操作仍可使用旧版本软件重新工作而不造成设备瘫痪,有效保证了升级过程的鲁棒性,解决了现有技术中无人机软件升级费效比较低的技术问题。
Claims (10)
- 一种无人机软件远程升级及回滚的方法,所述方法包括以下步骤:无人机包括存储区和无人机软件升级模块;对存储区进行划分,划分为主存储区、备存储区和数据区;其中,所述主存储区和备存储区均用于存放无人机正常工作所需软件且存储相同版本软件,无人机软件升级模块仅对备份存储区软件进行升级操作,所述数据区用于存放无人机升级任务过程中产生的各种数据,任何进程均可进行读写操作。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述回滚操作包括以下步骤:S1,无人机软件升级模块将当前升级程序的主存储区改为备存储区,将备存储区改为主存储区,并给无人机重新上电进行上电BIT测试,若测试正确,则无人机软件升级模块将临时版本区中的旧程序版本写入当前升级程序对应备存储区中,若测试错误,则说明无人机发生故障,需进行无人机故障排查;S2,无人机软件升级模块修改当前升级程序存储区主备标志,将当前升级程序对应主存储区改为备存储区,备存储区改为主存储区,并给无人机重新上电,进行上电BIT测试,测试正确,则删除临时版本区,结束当前软件升级流程,测试错误,则说明当前无人机发生故障,需进行无人机故障排查。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述升级指令包括无人机识别码、升级软件类型,软件版本信息,软件所需存储空间。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述数据校验是首先进行CRC校验,将计算出的CRC校验值与升级文件中的 CRC校验值进行比对,如果两者一致,则判断升级文件正确,并向地面站发送升级文件接收是否成功确认结果。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述地面站包括一个或多个处理器和无人机软件升级程序。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述的主存储区包括主引导程序区、主操作系统区、主控制律区和主控制及管理软件区;所述的备存储区包括备引导程序区、备操作系统区、备控制律区和备控制及管理软件区。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述的升级操作过程中,临时版本区中用于存储的新控制及管理软件,在升级结束时用于存储旧控制及管理软件,并在升级操作结束后删除临时版本区。
- 根据权利要求2所述的无人机软件远程升级及回滚的方法,其中,所述的回滚操作过程中,临时版本区用于存储旧控制及管理软件,并在回滚操作结束后删除临时版本区。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述的存储区按功能划分,主存储区包括主操作系统、主用户软件和主驱动程序;所述的备存储区包括备操作系统、备用户软件和备驱动程序。
- 根据权利要求1所述的无人机软件远程升级及回滚的方法,其中,所述备存储区中的升级操作具体包括以下步骤:步骤1,无人机软件升级模块接收到地面站升级指令,确认升级软件版本信息和当前备份区软件版本信息,并向地面站发送确认结果;若确定升级,则从数据区中划分一个临时版本区;所述的临时版本区用于存放更新软件版本和旧版本软件,升级任务完成后可撤销此分区;步骤2,无人机软件升级模块接收地面站发送的升级软件版本,并存入临时版本区,进行数据校验;若校验结果错误,则删除升级软件版本,向地面站反馈结果;若校验结果正确,则升级模块将备存储区旧版本软件写入临时版本区,将升级软件版本写入备存储区并覆盖旧版本软件,并将主存储区改为备存储区,将备存储区改为主存储区;步骤3,无人机重新上电启动,进行上电BIT测试,若测试错误,则进行回滚操作,若测试正确,则重复步骤1~2,对当前备存储区中旧版本软件进行升级并测试,并将测试正确后的结果反馈至地面站,删除临时版本区,升级完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/623,587 US12019517B2 (en) | 2021-05-19 | 2021-11-23 | Method for remote upgrade and rollback of unmanned aerial vehicle (UAV) software |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110543036.4A CN112988204B (zh) | 2021-05-19 | 2021-05-19 | 一种无人机软件远程升级及回滚的方法 |
CN202110543036.4 | 2021-05-19 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022242080A1 true WO2022242080A1 (zh) | 2022-11-24 |
Family
ID=76336803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2021/132531 WO2022242080A1 (zh) | 2021-05-19 | 2021-11-23 | 一种无人机软件远程升级及回滚的方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US12019517B2 (zh) |
CN (1) | CN112988204B (zh) |
WO (1) | WO2022242080A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118210536A (zh) * | 2024-05-21 | 2024-06-18 | 中国电子科技集团公司第十研究所 | 一种面向无人机机载软件的在线增量更新系统及方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988204B (zh) * | 2021-05-19 | 2021-08-31 | 西安羚控电子科技有限公司 | 一种无人机软件远程升级及回滚的方法 |
CN113407377B (zh) * | 2021-06-21 | 2023-09-08 | 英博超算(南京)科技有限公司 | 一种ota升级失败回退版本方法 |
US11453511B1 (en) * | 2021-07-13 | 2022-09-27 | Beta Air, Llc | Systems and methods for data verification at start up |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1719413A (zh) * | 2004-07-07 | 2006-01-11 | 华为技术有限公司 | 通信设备的升级方法 |
CN1889041A (zh) * | 2006-08-02 | 2007-01-03 | 华为技术有限公司 | 一种软件升级及回退方法 |
CN102023876A (zh) * | 2009-09-14 | 2011-04-20 | 漳州科能电器有限公司 | 一种可软件在线升级的嵌入式系统及在线升级方法 |
US20170212746A1 (en) * | 2016-01-22 | 2017-07-27 | 2236008 Ontario Inc. | Updating a controller unit in a vehicle |
CN111417926A (zh) * | 2018-12-13 | 2020-07-14 | 深圳市大疆软件科技有限公司 | 无人飞行器及其固件升级方法 |
CN112988204A (zh) * | 2021-05-19 | 2021-06-18 | 西安羚控电子科技有限公司 | 一种无人机软件远程升级及回滚的方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI259977B (en) * | 2005-05-03 | 2006-08-11 | Novatek Microelectronics Corp | Structure of embedded memory unit with loader and system structure and operation method for the embedded memory apparatus |
CN101697133A (zh) * | 2009-10-26 | 2010-04-21 | 中兴通讯股份有限公司 | 软件升级方法、软件升级系统以及客户端 |
CN102880495A (zh) * | 2012-10-15 | 2013-01-16 | 华为终端有限公司 | 移动终端及其软件升级方法 |
CN103473099B (zh) * | 2013-09-13 | 2017-02-01 | 惠州Tcl移动通信有限公司 | 一种移动终端的软件升级方法和系统 |
CN105094875A (zh) * | 2014-05-19 | 2015-11-25 | 中兴通讯股份有限公司 | 一种软件升级方法及装置 |
CN104156249A (zh) * | 2014-08-18 | 2014-11-19 | 四川九成信息技术有限公司 | 嵌入式软件升级方法 |
US10399706B1 (en) * | 2016-06-22 | 2019-09-03 | Amazon Technologies, Inc. | Unmanned aerial vehicle maintenance troubleshooting decision tree |
WO2018006262A1 (zh) * | 2016-07-05 | 2018-01-11 | 深圳市大疆创新科技有限公司 | 一种联网验证的方法及装置 |
CN106569847B (zh) * | 2016-10-14 | 2020-03-31 | 数源科技股份有限公司 | 一种用于车载系统基于移动网络实现iap远程升级的方法 |
US10768921B2 (en) * | 2017-08-02 | 2020-09-08 | Intel Corporation | Methods and apparatus for providing over-the-air updates to internet-of-things sensor nodes |
WO2019103669A1 (en) * | 2017-11-24 | 2019-05-31 | Telefonaktiebolaget Lm Ericsson (Publ) | Upgrade of network equipment |
CN109992282A (zh) * | 2018-01-03 | 2019-07-09 | 台达电子企业管理(上海)有限公司 | 逆变器软件升级方法及系统、电子设备 |
CN108549539A (zh) * | 2018-01-23 | 2018-09-18 | 青岛海尔科技有限公司 | 一种进行设备远程升级的方法及装置 |
CN108958774A (zh) * | 2018-07-13 | 2018-12-07 | 深圳市道通智能航空技术有限公司 | 无人机系统中的模块升级方法及待升级模块 |
CN110764807B (zh) * | 2019-10-29 | 2021-10-29 | 京东方科技集团股份有限公司 | 一种升级方法、系统、服务器及终端设备 |
US11281449B2 (en) * | 2020-04-21 | 2022-03-22 | Dish Network L.L.C. | Unmanned aerial vehicle updater |
-
2021
- 2021-05-19 CN CN202110543036.4A patent/CN112988204B/zh active Active
- 2021-11-23 US US17/623,587 patent/US12019517B2/en active Active
- 2021-11-23 WO PCT/CN2021/132531 patent/WO2022242080A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1719413A (zh) * | 2004-07-07 | 2006-01-11 | 华为技术有限公司 | 通信设备的升级方法 |
CN1889041A (zh) * | 2006-08-02 | 2007-01-03 | 华为技术有限公司 | 一种软件升级及回退方法 |
CN102023876A (zh) * | 2009-09-14 | 2011-04-20 | 漳州科能电器有限公司 | 一种可软件在线升级的嵌入式系统及在线升级方法 |
US20170212746A1 (en) * | 2016-01-22 | 2017-07-27 | 2236008 Ontario Inc. | Updating a controller unit in a vehicle |
CN111417926A (zh) * | 2018-12-13 | 2020-07-14 | 深圳市大疆软件科技有限公司 | 无人飞行器及其固件升级方法 |
CN112988204A (zh) * | 2021-05-19 | 2021-06-18 | 西安羚控电子科技有限公司 | 一种无人机软件远程升级及回滚的方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118210536A (zh) * | 2024-05-21 | 2024-06-18 | 中国电子科技集团公司第十研究所 | 一种面向无人机机载软件的在线增量更新系统及方法 |
CN118210536B (zh) * | 2024-05-21 | 2024-08-02 | 中国电子科技集团公司第十研究所 | 一种面向无人机机载软件的在线增量更新系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
US20240070026A1 (en) | 2024-02-29 |
CN112988204B (zh) | 2021-08-31 |
CN112988204A (zh) | 2021-06-18 |
US12019517B2 (en) | 2024-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2022242080A1 (zh) | 一种无人机软件远程升级及回滚的方法 | |
US8631399B2 (en) | Information processing apparatus and firmware updating method | |
CN113946358B (zh) | 一种基于车辆管理系统的自动驾驶车辆软件远程升级方法 | |
CN103345470A (zh) | 一种数据库容灾方法、系统及服务器 | |
CN103488494A (zh) | 一种刀片服务器多固件同步更新升级方法 | |
US20110138374A1 (en) | Downtime reduction for enterprise manager patching | |
CN102271057B (zh) | 参数更新方法和设备 | |
CN101950254B (zh) | 一种软件更新方法和系统 | |
US8745445B1 (en) | Mirrored database upgrade using state machine | |
CN101739314A (zh) | 列车运行监控装置地面基础数据存储更新方法及系统 | |
CN103347048A (zh) | 一种城市轨道交通信号系统的自动升级方法 | |
CN103577214A (zh) | 应用程序更新方法和装置 | |
CN101442688A (zh) | 智能网平台的升级方法和系统、控制器和智能网平台设备 | |
CN109445809A (zh) | 列车自动监控ats子系统软件自动升级方法及系统 | |
CN100530159C (zh) | 机台自动化程序更新系统及方法 | |
US8689048B1 (en) | Non-logging resumable distributed cluster | |
CN112148328A (zh) | 一种目标元件远程升级时程序回滚方法及系统 | |
CN105472005B (zh) | 一种地面atp设备远程更新方法及系统 | |
US7502899B2 (en) | Write set boundary management in support of asynchronous update of secondary storage | |
US8707307B2 (en) | Creating jobs by replacing execution attributes within job definition when a job activation request is received with execution attributes based on predetermined conditions being satisfied | |
US8296532B2 (en) | Write set boundary management for heterogeneous storage controllers in support of asynchronous update of secondary storage | |
CN110377332B (zh) | 安全计算机平台软件程序在线换装方法 | |
US20030126159A1 (en) | Method and system for rollback of software system upgrade | |
CN118132450B (zh) | 一种面向Windows集成测试环境的管理方法和系统 | |
CN108415721A (zh) | 一种节点设备程序升级方法及相关装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 17623587 Country of ref document: US |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21940524 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21940524 Country of ref document: EP Kind code of ref document: A1 |