GPS计算主角农村出来吊很大的旋转角很大是什么原因

地址:大连市中山区友好广场六号大连远洋大厦B座2007室
邮编:116001
电话:411--
学术信息所在位置&: >>
GPS归心计算在舰艇真航向动态测量研究中的应用
GPS归心计算在舰艇真航向动态测量研究中的应用
王佳1,王海波2,陈荣娟2,邵承永2
(海军大连舰艇学院)
在实际测量工作中,由于环境条件的限制,往往需要偏心设站测量,而偏心测量的结果,必须归算到实际目标中心,否则,所提供真值的精度将达不到要求。随着GPS技术在导弹(舰炮)火控系统动态精度试验、测控设备外场标校和舰艇航迹测量等任务中的广泛应用,GPS归心改正计算也越来越重要。
在舰艇导航精度试验中,航向真值的动态高精度测量主要采用计算方位和测量舷角相结合的舰艇真航向测量方案,即采用GPS所获取的舰位信息和被观测岸标位置点坐标计算出岸标的大地方位角,并采用电子经纬仪测量岸标的舷角,再利用航向角、方位角和舷角三者之间的关系,解算出舰艇的真航向。但是由于舰艇安装条件有限,舰位测量设备GPS和经纬仪不可能安装在同一位置。因此需要利用归心改正计算理论,将GPS天线中心大地坐标归算到电子经纬仪望远镜旋转中心上,以提高舰艇岸标真方位角的解算精度。
2常用坐标系及其转换
2.1地球坐标系及其转换
地球坐标系有空间直角坐标系和大地坐标系两种表达形式,如图1所示。空间直角坐标系的原点与地球质心重合,轴指向地球北极,轴指向格林尼治子午面与地球赤道的交点,轴垂直于平面构成右手坐标系。而大地坐标系中,某点的位置用表示,大地纬度为过地面点的椭球法线与椭球赤道面的夹角,大地经度为过地面点的椭球子午面与格林尼治子午面的夹角,大地高为。显然,如果点在椭球面上,。
图1 大地坐标系与空间直角坐标系示意图
故任意点的大地坐标与空间直角坐标互换可用下两式表示:
&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&(1)
&&&&&&&&&&&&&&& &&&&&&&&&&(2)
式中,为椭球的卯酉圈曲率半径,为椭球的第一偏心率。若以、分别表示所取椭球的长半径和短半径,则有:
&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(3)
2.2站心坐标系及其转换
站心坐标系分为站心空间直角坐标系和站心极坐标系两种表示形式。如图2所示,站心空间直角坐标系以某站中心为原点,轴的正方向与通过点背向椭球法线方向重合,轴在子午面内,并指北为正方向;正向的轴垂直于子午面并向东。
图2 站心直角坐标系示意图
站心坐标系与地心空间直角坐标系之间的转换关系可用下式表示:
&&&&&&&&& &&&&&&&&&&&&&(4)
式中表示以为原点的站心空间直角坐标;、分别表示点和点的地心空间直角坐标;表示点和点的地心空间直角坐标差值;、 分别为点的大地经纬度;为变换矩阵。
&&&&&&& &&&&&&&&&&&(5)
如图3所示,站心极坐标系以为原点,用坐标表示空间点相对于点的位置。其中,为点至点的极距;、分别为方向的方位角、高度角。
图3站心极坐标系示意图
则空间点的站心极坐标系与站心空间直角坐标系之间的关系可以用下式表示:
&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&(6)
2.3地理坐标系与甲板坐标系及其转换
取地理坐标系为东北天坐标系,其原点为。轴沿地心与的连线并指向天顶,垂直于当地水平面;和轴在当地水平面内,分别水平指北和水平指东。如图4所示。
图4 地理坐标系示意图
甲板坐标系的原点位于舰艇质量中心,轴与艏艉线重合指向舰艏方向,轴与舰艇正横轴重合指向右弦,轴垂直甲板面指向上方,三轴构成右手直角坐标系。如图5所示。
图5甲板坐标系示意图
若用分别表示舰艇的艏向角、纵摇角、横摇角,表示变换矩阵,那么舰艇甲板坐标系到地理坐标系的坐标转换可以用下式表示:
&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&(7)
3 GPS和经纬仪安装位置不同引起的测量误差分析
如图6所示,假设在舰艇上经纬仪、GPS天线分别安装在和点,且两点在艏艉线上;点为岸标位置。由安装示意图可知两点的水平距离为米,相当于GPS水平定位误差增加了米,将引起计算方位角误差。可以通过实地测量精确获取值,再根据舰艇导航设备提供的航向,对GPS定位的平面坐标误差进行修正。
图6 GPS天线和经纬仪平面安装示意图
通过修正GPS位置得到经纬仪的精确坐标后,再进行岸标的真方位解算。因为可以精确量取,舰向的误差也不大,因此剩余误差就可以忽略不计,从而保证测量精度。
图7 GPS天线和经纬仪实际安装示意图
但是,为了保证GPS正常使用,GPS天线一般安装在舰艇的高处,而经纬仪一般安装在舰艇的主甲板上,如图7所示,两者有较大的高程差。这样,在舰艇摇摆的情况下,又另外增加了两者在水平位置上的不重合,从而带来测量误差,这样仅采用上述方法进行误差修正是无法满足要求的。因此,在修正误差时,还需考虑舰艇摇摆的影响。所以在经纬仪和GPS天线安装完好以后,需要首先测量出GPS天线相对于经纬仪望远镜旋转中心在甲板坐标系内横向、纵向和垂向距离,然后利用坐标转换原理和归心改正计算原理,将GPS天线位置归化到经纬仪安装中心位置,从而得到经纬仪安装位置的大地坐标,再进行大地方位角解算,从而提高岸标真方位测量精度。
4误差修正模型
4.1归心元素确定
当GPS偏心测量时,以经纬仪中心为原点建立站心坐标系,如图8所示。为GPS天线中心位置;、分别为、之间的极距和高程差;、分别为、方向的方位角和俯仰角。
图8 GPS偏心测量示意图
因此在以为原点的站心坐标系中可以写出:
&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&(9)
式中,(,,)就是要求的归心元素。
4.2 高程差和斜距求取
在甲板坐标系内,设测量装置测得GPS天线相对于经纬仪中心的三维距离为。根据式(7)、(8)可获得地理坐标系下GPS天线相对于经纬仪中心的三维距离。变换公式如下:
&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(10)
通过计算获得的值如下:
&&&&&&& &&&&&&&(11)
所以根据式(10)和(11)可得到、和的计算公式。
&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&(12)
4.3 航海法求方位角
测定、方向的法界面大地方位角是归心元素测定中的一个较为重要的问题。尤其对于运动目标,是不断变化的,需要实时测量其值。航向法测量的原理如图9所示。假定舰艇的航向(艏艉线方向)为。、方向与舰载艏艉线的夹角为。
图9 航向法测量方位角原理示意图
则由图8可以得出:
&&&&&&&&&&&&&&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(13)
假设甲板坐标系下GPS天线中心和经纬仪中心在甲板平面的投影在艏艉线上,的值就为180°,而是一个变化的量,需要将舰船导航设备(如平台罗经)的航向数据实时记录下来,以便事后数据处理时参与运算。
4.4经纬仪中心的大地坐标计算
当归心元素(,,)确定后,根据式(1)、(4)、(5)和(9)式,可得经纬仪中心点的地心空间直角坐标的值,即:
&&&&&&&&&& &&&&&&&&&&&&&(14)&&&&&&&&&&&&&&&&&&&
式中,为GPS天线中心点的大地纬度和经度,为变换矩阵。
&&&&&&&&&&& &&&&&&&&&&&&&&(15)
设GPS测量数据归算到经纬仪中心后的大地坐标为,则
&&&&&&&&&&&&&& &&&&&&&&&&&&&&&&&&(16)
式中,、可由式(13)至(15)求出。
GPS偏心测量的归心计算理论可以有效解决GPS测站相对实际目标中心位置偏离问题。本文针对舰艇的动态航向高精度测量中,GPS天线与舰载电子经纬仪在舰艇上因安装位置不同而引起的岸标方位角测量误差问题,利用坐标变换和GPS归心计算两大理论,建立了误差修正数学模型,将GPS定位数据归算到舰载电子经纬仪中心,可以提高舰艇位置精度,从而为舰艇岸标真方位角的解算奠定基础。此外为保障GPS偏心测量的归心计算精度,充分注意归心元素的测定精度是非常重要的。
地址:大连市中山区友好广场六号大连远洋大厦B座2007室
电话:411--君,已阅读到文档的结尾了呢~~
【doc】基于布尔萨模型的大旋转角坐标转换参数算法算法,布尔萨模型,大旋转角,坐标转换
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
【doc】基于布尔萨模型的大旋转角坐标转换参数算法
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口同一坐标系中,由任意两点计算地图旋转角度_博客园
当前位置: >
>同一坐标系中,由任意两点计算地图旋转角度
同一坐标系中,由任意两点计算地图旋转角度
& 作者:寒蝉 & 来源: 博客园-hanchan &
同一坐标系中,由任意两点计算地图旋转角度
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&----原创文章,转载请注明出处,谢谢
在各种GIS/GPS应用中,地图旋转是不可或缺的一部分,尤其明显的是用在实时导航,对象跟踪等应用方面。用来计算地图旋转时偏转角的坐标点有动态和静态两种之分。动态在这里指的是在已知当前点的情况下,下一点的具体位置是不确定的;而静态指的是下一点的具体位置是确定的。动态的应用我们常见到的是GPS导航、游戏中的赛车(多赛道、可转弯等)以及调度等中的实时地图旋转,而静态更常见的是作为一种功能的演示,如模拟导航,模拟赛车等。地图旋转只有在同一坐标系中进行才有意义,地图旋转角度的计算才有依据,本文主要着重点在于如何由前后两点计算地图旋转角度,同时主要考虑动态的方式,静态方式的旋转地图原理是一样的,就不分开介绍了。
二、约定和术语
²参考坐标系:本文所依据的坐标系为北京54下的依据高斯克吕格投影所建立的坐标系,即高斯平面坐标系,它的图像如图:
X代表为正北方向,Y代表正东方向,为了使y值都为正,将纵坐标轴西移500km。
²正切函数是直角三角形中,对边与邻边的比值。放在直角坐标系中(如图)即 tanθ=y/x
其中tanθ的定义域为(-∏/2,+∏/2),值域为(-∞,+∞)
²偏转角:约定偏转角为北偏东的角度,将地图按照偏转角进行旋转后将始终朝着运动方向行驶。在高斯平面坐标系中,正北即为X轴,正东即为Y轴,所以tanθ还是为y/x,只是角度的位置有了变化,如图所示。
²反正切:函数y=tanx的反函数叫做反正切函数,记做:y=arctanx. 定义域:R;值域:(-π/2,π/2) 三、计算偏转角
假设存在一起始点pntBegin,并且存在一个原点为pntBegin的平面坐标系,同时约定要旋转的角度为rotateAngle,则下一点pntDest根据方位有几种情此文来自: 马开东博客
转载请注明出处 网址:
况,其示意图如下,我们可以分类进行讨论:
l若pntDest.x1&=pntBegin.x0,则该点在第一和第四象限,具体对应点为pntDest(1)和pntDest(4),分别对应的北偏东角度为α(1)和α(4),根据Y值的不同,我们又可以分两种情况,
n若pntDest.y&=pntBegin.y://在第一象限 rotateAngle=arctan2(fabs(p0.x-p1.x),fabs(p0.y-p1.y));
n若pntDest.y&pntBegin.y://在第四象限 rotateAngle=arctan2(fabs(p0.x-p1.x),fabs(p0.y-p1.y)); rotateAngle=∏-rotateA
l若pntDest.x1&pntBegin.x0,则该点在第二和第三象限,具体对应点为pntDest(2)和pntDest(3),分别对应的北偏东角度为α(2)和α(3),根据Y值的不同,分两种情况进行讨论,
n若pntDest.y&=pntBegin.y://在第二象限 rotateAngle=arctan2(fabs(p0.x-p1.x),fabs(p0.y-p1.y)); rotateAngle= 2*∏-rotateA
n若pntDest.y&pntBegin.y://在第三象限 rotateAngle=arctan2(fabs(p0.x-p1.x),fabs(p0.y-p1.y)); rotateAngle=∏+rotateA
四、在超图平台中实现 注:开发语言为VC6,平台为eSuperM
代码如下:
&CCarNaviView::RotateMap(CPoint&pntBegin,CPoint&pntNext)
{&&&& &4&&&&//计算旋转角度 &5&&&&double&dAngle=CalculateRotateAngle(pntBegin,pntNext); &6&&&&//地图旋转 &7&&&&m_MapWnd.GetDrawParam()-&SetMapRotationAngle(&dAngle&); &8&&&&m_MapWnd.Refresh(); &9}
<span style="color: #
<span style="color: #
///&\brief&由前后两点计算当前地图偏转角并进行地图旋转 <span style="color: #///&\param&pntbegin&起始点 <span style="color: #///&\param&pntbegin&下一点 <span style="color: #///&\return&地图要旋转的角度(北偏东) <span style="color: #///&\remark&为适应习惯用法,点坐标的表示方法为cpoint(x,y),如pntbegin(x,y)代表的含义为: <span style="color: #///&&&&&&&&&&x-&正东,即为高斯投影中的Y,y-&正北,代表高斯投影中的x
<span style="color: #
&CCarNaviView::CalculateRotateAngle(CPoint&pntBegin,CPoint&pntNext)
<span style="color: #
{ <span style="color: #&&&&CPoint&pntFirst(pntBegin); <span style="color: #&&&&CPoint&pntSecond(pntNext); <span style="color: #&&&& <span style="color: #&&&&double&dRotateAngle&=&atan2(fabs(pntBegin.x-pntNext.x),fabs(pntBegin.y-pntNext.y)); <span style="color: #&&&& <span style="color: #&&&&//如果下一点的横坐标大于前一点(在第一和第四象限) <span style="color: #&&&&if&(pntNext.x&=pntFirst.x) <span style="color: #&&&&{ <span style="color: #&&&&&&&&//在第一象限(0&=dRotateAngle&=90) <span style="color: #&&&&&&&&if&(pntNext.y&=pntFirst.y) <span style="color: #&&&&&&&&{ <span style="color: #&&&&&&&&&&&&//不做任何处理 <span style="color: #&&&&&&&&&&&&dRotateAngle=dRotateA <span style="color: #&&&&&&&&} <span style="color: #&&&&&&&&else <span style="color: #&&&&&&&&{ <span style="color: #&&&&&&&&&&&&dRotateAngle=PI-dRotateA <span style="color: #&&&&&&&&} <span style="color: #&&&&} <span style="color: #&&&&else//(在第二和第三象限) <span style="color: #&&&&{ <span style="color: #&&&&&&&&//第二象限 <span style="color: #&&&&&&&&if&(pntNext.y&=pntFirst.y) <span style="color: #&&&&&&&&{ <span style="color: #&&&&&&&&&&&&dRotateAngle=<span style="color: #*PI-dRotateA <span style="color: #&&&&&&&&} <span style="color: #&&&&&&&&else//第三象限 <span style="color: #&&&&&&&&{ <span style="color: #&&&&&&&&&&&&dRotateAngle=PI+dRotateA <span style="color: #&&&&&&&&} <span style="color: #&&&&} <span style="color: #&&&&return&dRotateA <span style="color: #}
五、结束语
整个计算过程并不复杂,甚至相当简单,重要的是要理解这个过程。各个开发平台也许有些出入,但是原理都应该相似,所以思路我相信是可以移植的。同时关于在下一点在坐标系上的情况我也已经考虑进去了,这里就不再说明了。同时,欢迎各位多提宝贵意见,集思广益,共同学习。
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
相关阅读:
来源:(微信/QQ:,微信公众号:makaidong-com) &&&&&& 欢迎分享本文,转载请保留出处!
&&&&&& 【原文阅读】:
上一篇:没有了
【相关文章】
每日最新文章
每日最热文章
本周最热文章
本月最热文章
本年最热文章
Powered by
Copyright &
, All Rights Reserved

我要回帖

更多关于 主角农村出来吊很大 的文章

 

随机推荐