【MAVROS血泪避坑】egm96-5解压报错、镜像404、文件损坏终极解决(附可用egm96/emm2015完整资源)

前言

最近在Jetson设备上折腾MAVROS无人机环境,被网上各种老旧教程坑惨了。光是egm96相关的地理数据配置,就卡了很久,遇到一堆无解报错。网上90%的教程链接失效、资源残缺、步骤错误,没人讲清楚真实踩坑点。我亲自实测排错,整理出这篇纯干货避坑指南,专门解决 egm96-5、egm96、emm2015 三类MAVROS必备地理数据的所有问题,同时附上自己实测完好的完整资源包,大家直接抄作业就行。

主要踩坑点集中在这4个:

1. 官方源无科学上网下载速度极慢,基本下载失败;

2. 各大国内镜像站资源全部404,根本下不到完整文件;

3. 网上流传的压缩包大多是残缺文件,解压必报错;

4. 新手容易被误导,多余执行安装脚本,完全白费功夫。

一、实际踩坑报错汇总

坑点1:官方源下载巨慢,无科学上网几乎下不动

GeographicLib官方自带数据源服务器在境外,国内裸连状态下,下载速度几十KB甚至直接超时中断。很多人用官方脚本自动下载,要么等几个小时下不完,要么下载一半断开,最后得到残缺文件,为后续解压报错、MAVROS缺数据埋下隐患。这也是我做这篇教程、分享完整离线资源的核心原因,直接绕过官方源,全程本地部署,彻底解决网速问题。

坑点2:国内镜像全部失效,照搬教程必404

之前跟着各路教程,尝试中科大、中科院的GeographicLib镜像链接,全部打不开、404报错。

这也是绝大多数人后续解压报错、MAVROS缺数据的根本原因:从源头就下不到完整资源

下面这些旧链接直接放弃,不用再试,纯浪费时间:

  • 中科大 geographiclib 旧镜像路径

  • 中科院iscas 旧资源路径

坑点3:残缺压缩包,解压直接报错

很多人下载的 egm96-5.tar.bz2 文件不完整,解压时会弹出经典错误:

zip2: Compressed file ends unexpectedly; 
perhaps it is corrupted? 
tar: 归档文件中异常的 EOF 
tar: Error is not recoverable: exiting now

这里重点说一句:不是你命令输错了,是文件本身坏了/没下完。网上很多网盘、老旧博客的资源都是残缺版,根本用不了。

坑点4:最大误区:地理数据不需要安装

很多新手跟着教程,解压完就跑去执行 ./install.sh,完全没必要!

egm96、egm96-5、emm2015 全部都是纯静态资源文件,不是程序,不需要编译、不需要安装、不需要配置环境。

唯一需要做的:放到MAVROS认可的固定路径即可。

二、实测可行的正确部署方案

2.1 我的运行环境

设备:NVIDIA Xavier NX 16G(本人实测设备)

系统:Ubuntu 20.04

ROS:Noetic

MAVROS:官方最新编译版

2.2 前置准备:清理旧残缺文件(必看)

很多小伙伴之前跟着其他教程下载过残缺、损坏的资源包,残留文件会导致后续部署依旧报错。所以在使用我提供的完整资源前,建议先清理本地旧文件,保证部署纯净无冲突。没有下载过旧文件的新手,可跳过这一步。

通过网盘分享的文件:Mov地理信息三剑客.7z
链接: https://pan.baidu.com/s/1TW83d3HdH9pxvLxmEoZThQ?pwd=7i6i 提取码: 7i6i

cd ~/Downloads 
rm -rf egm96-5.tar.bz2 egm96.zip emm2015.zip

2.3 核心部署:附件包解压+放置规范(新手必看)

本次部署全程使用我提供的三套完整无损附件资源,彻底规避官方源下载慢、镜像404、文件残缺所有问题。MAVROS 识别地理数据有唯一固定路径/usr/share/GeographicLib/,只有放到这个系统目录,软件才能自动识别、正常加载,无需修改任何配置文件。

所有地理数据必须放在这个目录,软件才能自动识别,不用改任何配置文件。

我整理的三份可用资源(文章附件可直接下载):

  • egm96-5.tar.bz2:大地水准面高程数据,解决无人机高度定位异常

  • egm96.zip:重力场校准数据

  • emm2015.zip:地球磁场校准数据

大家将文章附件下载完成后,默认保存到电脑 Downloads 文件夹即可,无需手动改路径。直接复制下方一键命令,完成解压、自动归类部署,全程无多余操作、无需联网下载:

# 创建识别目录
sudo mkdir -p /usr/share/GeographicLib
# 解压高程数据到系统目录 
sudo tar -xjf ~/Downloads/egm96-5.tar.bz2 -C /usr/share/GeographicLib 
# 解压重力、磁场数据 
sudo unzip -o ~/Downloads/egm96.zip -d /usr/share/GeographicLib 
sudo unzip -o ~/Downloads/emm2015.zip -d /usr/share/GeographicLib

2.4 检查是否部署成功

执行下面命令,不报错、能查到文件,就说明部署完成:

最终正确目录结构如下:

/usr/share/GeographicLib/
├── geoids/ # 高程数据
├── gravity/ # 重力数据 
└── magnetic/ # 磁场数据

三、部署完成运行效果

三套数据全部部署完成后,重新启动 MAVROS,不会再弹出地理数据缺失、文件损坏相关报错,所有定位、解算相关插件正常加载。

看到以下日志,就代表环境完全没问题,可以正常用于无人机真机、仿真开发:

[INFO] MAVROS started. MY ID 1.240, TARGET ID 1.1

此时无人机高度定位、重力磁场校准、姿态解算功能全部正常,无任何资源报错。

四、附件资源说明(亲测可用)

为了让大家不再到处找资源踩坑,彻底摆脱官方源慢速下载、镜像失效的问题,我上传了自己调试通过的全套完整资源,全部本地校验无误、解压零报错、大小正常:

1. egm96-5.tar.bz2(完整2.2MB,无损坏、解压一次性成功)

2. egm96.zip(完整重力场数据)

3. emm2015.zip(完整2015版磁场校准数据)

优势:彻底避开全网失效镜像、官方源下载慢、文件残缺问题,适配 NVIDIA Xavier NX 16G + Ubuntu20.04 + Noetic + MAVROS 全套环境,下载后直接离线解压部署,零报错、零调试成本。

五、最终避坑总结

1. 境外官方源国内裸连下载极慢、易中断,不推荐使用,优先用离线完整资源;

2. 网上老旧国内镜像链接全部失效,不要盲目照搬旧教程下载资源;

3. egm96-5解压报错,百分百是文件残缺/损坏,不是操作命令问题;

4. 这三类都是纯资源文件,只解压不安装、不编译,别做无用功;

5. 资源必须放入固定路径 /usr/share/GeographicLib/,否则MAVROS无法识别。

结语

其实MAVROS地理定位的报错,大多不是环境配置问题,而是官方源下载困难、资源老旧残缺、路径错误导致的。这三套数据是无人机ROS开发的必备文件,网上靠谱资源极少。

本次分享的全套资源和操作步骤,均是本人在 NVIDIA Xavier NX 16G、Ubuntu20.04、ROS Noetic 环境下实测通关,适配绝大多数Jetson设备ROS无人机开发场景,直接离线部署,完美解决下载慢、下载失败、解压报错等问题,希望能帮各位开发小伙伴少走弯路!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值