主要内容

gnssconstellation

卫星位置在指定的时间

描述

例子

satPossatVel) = gnssconstellation (t返回卫星的位置和速度datetimet.该函数返回在以地球为中心的地球固定(ECEF)坐标系中的位置和速度,单位分别为米和米每秒。

例子

全部折叠

从GNSS卫星获取当前卫星的位置和速度。获取轨道参数gps - 200 k接口规范,并计算给定时间在ECEF坐标中的位置和速度。显示卫星位置。

t = datetime (“现在”“时区”“本地”);[satPos, satVel] = gnssconstellation (t);disp (satPos)
1.4400 -2.1598 1.5956 0.6465 -2.0224 -2.1452 1.5560 -0.1765 0.8640 -1.9216 1.6171 -2.3605 0.7396 0.9669 -1.5869 0.606 -1.9893 1.4844 -0.5192 2.4674 0.7058 0.6840 -0.4427 -1.7501 1.9482 -1.1443 -1.8875 -1.4772 1.5098 0.5879 2.10461.7907 -1.6045 -0.6373 -2.0183 -1.6795 1.8525 - 0.8954 0.7697 1.9010 -2.3407 -1.2516 -0.0937 -2.4460 -0.5383 0.8840 1.3565 -0.9463 -2.0782 2.2091 -0.0434 -1.4738

使用lookangles函数用于获取给定卫星和接收机位置的卫星方位角和仰角。指定一个5度的遮罩角度。获取卫星位置,使用gnssconstellation函数。

在大地坐标(纬度、经度、海拔)中指定接收器位置。

recPos = [42 -71 50];

获取当前时间的卫星位置。

t = datetime (“现在”);gpsSatPos = gnssconstellation (t);

指定一个5度的遮罩角度。

maskAngle = 5;

获取卫星位置的方位角和仰角。的输出显示哪些卫星是可见的。得到总使用量nnz

(阿兹、el、vis) = lookangles (recPos、gpsSatPos maskAngle);流('%d卫星在%s.\n可见'nnz (vis), t);
9颗卫星于2021年9月01日14:09:24可见。

输入参数

全部折叠

卫星模拟的当前时间,指定为标量datetime数组中。

a的默认时区datetime数组是UTC。有关指定不同时区的信息,请参见datetime

GPS开始时间是UTC 1980年1月6日午夜。指定任何datetime在此之前将使用GPS开始时间。

例子:datetime(“现在”、“时区”,“当地”);

数据类型:datetime

输出参数

全部折叠

卫星在以地球为中心的地球固定(ECEF)坐标系中的位置,以米为单位,返回为N- × 3标量矩阵。N为星座内卫星的数量。

数据类型:|

卫星在以地球为中心的地球固定(ECEF)坐标系中的速度,单位为米每秒,返回为N- × 3标量矩阵。N为星座内卫星的数量。

数据类型:|

更多关于

全部折叠

轨道参数

卫星初始位置和速度由中表A.2-2中的轨道参数定义GPS SPS性能标准,并给出以地球为中心的地球固定(ECEF)坐标。

位置计算使用表30-II中的公式gps - 200 k接口规范。

速度计算使用方程8.21-8.27英寸[1]

参考文献

保罗·D·格罗夫斯GNSS、惯性和多传感器组合导航系统原理.波士顿:Artech House, 2013年。

扩展功能

介绍了R2021a