×

为什么GPS 的海拔数据精度无法支撑无人机高度定位?资料下载

消耗积分:2 | 格式:pdf | 大小:201.56KB | 2021-04-14

分享资料个

GPS 经常是我们谈起无人机系统时首先想到的功能模块,而能够按照预先规划的飞行路线进行自动飞行,也是无人机在功能上与航模的主要区别之一。 不管是天上飞的,地上跑的,还是海里游的交通工具或仪器设备,如果我们希望能引导它们到期望的目标位置,就需要获得被控对象在某个坐标系中的具体坐标,无人机导航也是如此。我们期望无人机从 A 点飞到 B 点,就要不断通过 GPS 或其它导航仪器获取无人机当下的位置坐标,并根据无人机的位置调整无人机的姿态,最终到达目的地。 在无人机导航中,对 GPS 的数据经常出现一些误解,比如 GPS 输出的高度坐标是相对于海平面,所以应该像经纬度一样可以直接使用;通过 GPS 获得的速度信息可以直接使用;IMU 输出的飞行器加速度是平面加速度…… 中学物理知识告诉我们,当我们描述物体运动时,一定是相对于特定坐标系的, GPS 和 IMU 等设备在输出运动和位置数据时也是如此,这些问题所涉及的正是无人机导航中的基础概念——无人机坐标系——这也是无人机导航中最容易让人混乱的概念之一。 无人机导航中常见的坐标系包括: 地球中心坐标系(ECEF)(Earth Centered Earth Fixed Coordinate System, ECEF) WGS-84 大地坐标系(World Geodetic Coordinate System 1984) 当地水平坐标系(North-East-Down Coordinate System, NED) 机体坐标系(Body Frame) 机体水平坐标系(Vehicle-carried NED Coordinate System) 接下来我们就来简单说明一下这些坐标系在无人机导航中的应用。 地球中心坐标系(ECEF) ECEF 坐标系与地球固联,且随着地球转动。图中 O 即为坐标原点,位置在地球质心。X 轴通过格林尼治线和赤道线的交点,正方向为原点指向交点方向。Z 轴通过原点指向北极。Y 轴与 X、Z 轴构成右手坐标系。 右手坐标系即符合「右手法则」的坐标系的统称,这个法则大家会经常见到,它的目的是为了以最简单的方式确定坐标轴以及正方向。如图,右手拇指,食指,中指「痉挛」状,其中任意两个手指与已确定的两个坐标轴及正方向重合,第三个手指的方向就是剩下坐标轴的正方向。 WGS-84 坐标系 GPS 输出的就是这个坐标系下的坐标数据! 完整一点解释是,GPS 单点定位的坐标以及相对定位中解算的基线向量属于 WGS-84 大地坐标系。 WGS-84 坐标系的 X 轴指向 BIH(国际时间服务机构)1984.0 定义的零子午面(Greenwich)和协议地球极(CTP)赤道的交点。Z 轴指向 CTP 方向。Y 轴与 X、Z 轴构成右手坐标系。 什么「BIH1984.0」听来很复杂有没有!一句话解释就是:把前面提到的 ECEF 坐标系用在 GPS 中,就是 WGS-84 坐标系。 上面图中大家很容易看出 GPS 输出的常见定位数据:经度(longitude),纬度(latitude),海拔(altitude)。不知大家有没有觉得奇怪,为什么有了 GPS 输出的海拔高度,我们还是要用气压计等其它设备来辅助定高呢?GPS 的海拔数据精度没有办法支撑无人机高度定位吗? 这是因为 GPS 输出的信息是相对于 WGS-84 坐标系的。我们可以把它看做一个参考椭球体,GPS 输出的高度是垂直于椭球表面的高度而非海平面高度,然而地球可不是一个标准的「椭球体」。 图中 h 是 GPS 测得的相对于椭球表面的高度;H 表示正高;N 表示大地水准偏差,即地球实际形状与参考椭球体的偏差,范围在正负 100m 之间,它随着地球重力分布变化,没有唯一的确定数值。所以,GPS 直接输出的海拔数据也就会始终存在一个「误差」了。 NED 坐标系 上图清晰地表明了 ECEF 坐标系(蓝色)和 NED 坐标系(绿色)之间的关系。NED 坐标系是在导航计算时使用的坐标系,向量分别指向北,东,地,因此 NED 坐标系也经常称为「北东地坐标系」。 我们有了经纬度为什么还需要 NED 坐标系呢?GPS 可以获得在 WGS-84 中的速度向量,为了方便使用速度向量进行无人机控制,我们还要把它转换在无人机所在位置的「平面坐标系」下,也就是 Local NED。 机体坐标系 机体坐标系与飞行器固联,坐标系符合右手法则,原点在飞行器重心处,X 轴指向飞行器机头前进方向,Y 轴由原点指向飞行器右侧,Z 轴方向根据 X、Y 轴由右手法则确定。 机体坐标系是无人机惯性导航的基础坐标系,IMU 中获得的加速度状态信息就是该坐标系下的数值。当我们获取 IMU 输出的 X 轴加速度信息时,是基于机体坐标系的,不能直接应用在 NED 坐标系下。 所以,如果想要对无人机进行导航控制,就必须能够正确处理 GPS、IMU 等硬件输出的信息,并将这些信信息转化到正确的坐标系下。 本文转载自 (mbbeetchina)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !

'+ '

'+ '

'+ ''+ '
'+ ''+ ''+ '
'+ ''+ '' ); $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code ==5){ $(pop_this).attr('href',"/login/index.html"); return false } if(data.code == 2){ //跳转到VIP升级页面 window.location.href="//m.lene-v.com/vip/index?aid=" + webid return false } //是会员 if (data.code > 0) { $('body').append(htmlSetNormalDownload); var getWidth=$("#poplayer").width(); $("#poplayer").css("margin-left","-"+getWidth/2+"px"); $('#tips').html(data.msg) $('.download_confirm').click(function(){ $('#dialog').remove(); }) } else { var down_url = $('#vipdownload').attr('data-url'); isBindAnalysisForm(pop_this, down_url, 1) } }); }); //是否开通VIP $.get('/article/vipdownload/aid/'+webid,function(data){ if(data.code == 2 || data.code ==5){ //跳转到VIP升级页面 $('#vipdownload>span').text("开通VIP 免费下载") return false }else{ // 待续费 if(data.code == 3) { vipExpiredInfo.ifVipExpired = true vipExpiredInfo.vipExpiredDate = data.data.endoftime } $('#vipdownload .icon-vip-tips').remove() $('#vipdownload>span').text("VIP免积分下载") } }); }).on("click",".download_cancel",function(){ $('#dialog').remove(); }) var setWeixinShare={};//定义默认的微信分享信息,页面如果要自定义分享,直接更改此变量即可 if(window.navigator.userAgent.toLowerCase().match(/MicroMessenger/i) == 'micromessenger'){ var d={ title:'为什么GPS 的海拔数据精度无法支撑无人机高度定位?资料下载',//标题 desc:$('[name=description]').attr("content"), //描述 imgUrl:'https://'+location.host+'/static/images/ele-logo.png',// 分享图标,默认是logo link:'',//链接 type:'',// 分享类型,music、video或link,不填默认为link dataUrl:'',//如果type是music或video,则要提供数据链接,默认为空 success:'', // 用户确认分享后执行的回调函数 cancel:''// 用户取消分享后执行的回调函数 } setWeixinShare=$.extend(d,setWeixinShare); $.ajax({ url:"//www.lene-v.com/app/wechat/index.php?s=Home/ShareConfig/index", data:"share_url="+encodeURIComponent(location.href)+"&format=jsonp&domain=m", type:'get', dataType:'jsonp', success:function(res){ if(res.status!="successed"){ return false; } $.getScript('https://res.wx.qq.com/open/js/jweixin-1.0.0.js',function(result,status){ if(status!="success"){ return false; } var getWxCfg=res.data; wx.config({ //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId:getWxCfg.appId, // 必填,公众号的唯一标识 timestamp:getWxCfg.timestamp, // 必填,生成签名的时间戳 nonceStr:getWxCfg.nonceStr, // 必填,生成签名的随机串 signature:getWxCfg.signature,// 必填,签名,见附录1 jsApiList:['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function(){ //获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 wx.onMenuShareTimeline({ title: setWeixinShare.title, // 分享标题 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享给朋友”按钮点击状态及自定义分享内容接口 wx.onMenuShareAppMessage({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 type: setWeixinShare.type, // 分享类型,music、video或link,不填默认为link dataUrl: setWeixinShare.dataUrl, // 如果type是music或video,则要提供数据链接,默认为空 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ”按钮点击状态及自定义分享内容接口 wx.onMenuShareQQ({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 wx.onMenuShareWeibo({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); //获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 wx.onMenuShareQZone({ title: setWeixinShare.title, // 分享标题 desc: setWeixinShare.desc, // 分享描述 link: setWeixinShare.link, // 分享链接 imgUrl: setWeixinShare.imgUrl, // 分享图标 success: function () { setWeixinShare.success; // 用户确认分享后执行的回调函数 }, cancel: function () { setWeixinShare.cancel; // 用户取消分享后执行的回调函数 } }); }); }); } }); } function openX_ad(posterid, htmlid, width, height) { if ($(htmlid).length > 0) { var randomnumber = Math.random(); var now_url = encodeURIComponent(window.location.href); var ga = document.createElement('iframe'); ga.src = 'https://www1.elecfans.com/www/delivery/myafr.php?target=_blank&cb=' + randomnumber + '&zoneid=' + posterid+'&prefer='+now_url; ga.width = width; ga.height = height; ga.frameBorder = 0; ga.scrolling = 'no'; var s = $(htmlid).append(ga); } } openX_ad(828, '#berry-300', 300, 250);