主要内容

semread

从SEM年鉴文件中读取数据

    描述

    例子

    数据标题= semread(文件名从SEM(系统有效性模型)年鉴文件中读取指定日期的数据文件名,并返回每个相关卫星的参数作为时间表,以及年历标题。

    数据标题= semread(文件名GPSWeekEpoch =refdate指定从SEM年鉴文件开始计算GPS(全球定位系统)周号的参考日期。

    例子

    全部折叠

    下载SEM年鉴文件NAVCEN网站并解析它。指定要下载文件的日期。

    D = datetime(“今天”) - 2个;

    创建URL。

    baseURL =“https://www.navcen.uscg.gov/sites/default/files/gps/almanac/”;almanacType =“/ sem /”;almanacExtension =“.al3”;url = baseURL + d. year + almanacType + day(d,“dayofyear”) +...almanacExtension;

    指定文件名。

    文件名=“semalmanac”+“_”+ d.年+"-"+...d.Month +"-"d.Day +“.al3”

    保存文件。

    websave(文件名、url);

    从下载的SEM年鉴文件中获取轨道参数。

    [data,title] = semread(filename)
    data =31日×16时间表时间GPSWeekNumber GPSTimeOfApplicability PRNNumber SVN AverageURANumber偏心InclinationOffset RateOfRightAscension SqrtOfSemiMajorAxis GeographicLongitudeOfOrbitalPlane ArgumentOfPerigee MeanAnomaly ZerothOrderClockCorrection FirstOrderClockCorrection SatelliteHealth SatelliteConfiguration  ____________________ _____________ ______________________ _________ ___ ________________ ____________________ ____________________ _____________________ ____________________________________________________ __________________ __________________ __________________________ _________________________ _______________ ______________________ 17 - 61440年7月- 2022年17:03:42 2219 1 63 0 0.0120391845703125 0.0144615173339844 -2.48837750405073 e-09 5153.61865234375 0.51555073261261 0.297461271286011 0.881654858589172 0.000319480895996094 -7.27595761418343 e-12 0 11 17 - 61440年7月- 2022年17:03:42 2219 2 61年1 0.0199451446533203 0.007476806640625 -2.53567122854292 5154.81982421875 e-090.486109972000122 -0.446799159049988 0.925528883934021 -0.000651359558105469 0 0 9 17——61440年7月- 2022年17:03:42 2219 3 69 0 0.00439071655273438 0.0102882385253906 -2.56841303780675 e-09 5153.53857421875 0.844612836837769 0.320030331611633 0.529847264289856 -0.000309944152832031 -1.09139364212751 e-11 0 11 17 - 61440年7月- 2022年17:03:42 2219 4 74 0 0.00190067291259766 0.00612449645996094 -2.46654963120818 e-09 5153.54736328125 -0.811291694641113 -0.953091979026794 -0.536049604415894 -0.000144958496093753.63797880709171 e-12 0 12 17 - 61440年7月- 2022年17:03:42 2219 5 50 0 0.00610446929931641 5153.70166015625 0.831113338470459 0.338927388191223 -0.287315726280212 -8.96453857421875 0.00614738464355469 - -2.61570676229894 e-09 e-05 0 0 10 17 - 61440年7月- 2022年17:03:42 2219 6 67 0 0.00243806838989258 0.0142459869384766 -2.48473952524364 e-09 5153.71875 0.512914299964905 -0.275499105453491 0.955711841583252 0.00038909912109375 1.45519152283669 e-11 0 11 17 - 61440年7月- 2022年17:03:42 2219 7 48 0.0163321495056152 05153.59375 -0.487354755401611 -0.716959476470947 0.676499962806702 0.000318527221679688 0.00248146057128906 - -2.53567122854292 e-09 0 0 10 17 - 7月2022 17:03:42 2219 61440 8 72 0 0.00738525390625 5153.515625 0.170664310455322 0.0531282424926758 -0.420778274536133 -7.62939453125 0.00658035278320312 - -2.48110154643655 e-09 e-05 0 0 11 17 - 7月2022 17:03:42 2219 61440 9 68 0 e-09 5153.74755859375 -0.828534364700317 0.607595086097717 0.00224971771240234 0.00393486022949219 -2.49565346166492-0.25430428981781 -0.000318527221679688 3.63797880709171 e-12 0 17 - 7月11日- 2022年17:03:42 2219 61440 73 0 0.00771760940551758 0.0102214813232422 -2.56841303780675 e-09 5153.63232421875 0.843742370605469 -0.797283291816711 0.24565315246582 -0.000494956970214844 -1.45519152283669 e-11 0 11 17——61440年7月- 2022年17:03:42 2219 11 78 0 0.000565528869628906 5153.5556640625 0.528360724449158 0.913978695869446 -0.423171401023865 -1.04904174804688 0.0065765380859375 - -2.57205101661384 e-09 e-05 0 0 12 17 - 7 - 202217:03:42 2219 61440 12 58 0 0.00853252410888672 0.00836372375488281 -2.53567122854292e-09 5153.7099609375 -0.132869362831116 0.417471408843994 0.468230128288269 -0.000247955322265625 -7.27595761418343e-12 0 10 17-Jul-2022 17:03:42 2219 61440 13 43 0 0.00612878799438477 0.00843238830566406 -2.43380782194436e-09 5153.63427734375 -0.779114127159119 0.291950225830078 -0.548626184463501 0.000349998474121094 7.27595761418343e-12 0 9 17-Jul-2022 17:03:42 2219 61440 14 77 0 0.00212907791137695 0.0030670166015625 -2.58660293184221e-09 5153.5986328125 -0.143590927124023 -0.983529925346375 0.45069146156311 -0.000111579895019531 0 0 12 17-Jul-2022 17:03:42 2219 61440 15 55 0 0.0142536163330078 -0.00369071960449219 -2.57205101661384e-09 5153.53564453125 -0.863561153411865 0.352016925811768 -0.718587875366211 -4.48226928710938e-05 3.63797880709171e-12 0 10 17-Jul-2022 17:03:42 2219 61440 16 56 0 0.0127029418945312 0.00832366943359375 -2.53567122854292e-09 5153.6240234375 -0.126978635787964 0.232561111450195 -0.108456969261169 -0.000515937805175781 -3.63797880709171e-12 0 9 ⋮
    title = '当前。ALM的

    从SEM年鉴文件中读取GPS导航信息数据。

    gpsData = semread(“semalmanac_2022 - 4 - 10. -与“);

    获取第一时间步的卫星位置,速度和id。

    t = gpsData.Time(1);[satPos,satVel, sads] = gnssconstellation(t,gpsData,GNSSFileType= .“SEM”);

    指定GNSS接收器在大地坐标(纬度、经度和高度)中的位置。

    recPos = [42 -71 50];纳蒂克,麻州

    获取指定接收器位置的卫星位置的方位角和仰角。的isVis输出显示哪些卫星可见。通过使用找到可见卫星的总数nnz

    [az,el,isVis] = lookangles(recPos,satPos);流('在%s可见的%d个卫星。\n'nnz (isVis), t);
    9颗卫星在2022年4月12日16:50:54可见。

    想象所有可见的卫星。

    skyplot(阿兹(isVis),埃尔(isVis) satID (isVis))

    图中包含一个skyplot类型的对象。

    从SEM年鉴文件中读取GPS导航信息数据。

    gpsData = semread(“semalmanac_2022 - 4 - 10. -与“);

    指定相关的时间步进信息。

    startTime = gpsData.Time(1);numHours = 12;secondsPerHour = 3600;Dt = 60;timeElapsed = 0:dt:(numHours*secondsPerHour);t = startTime + seconds(timeElapsed);

    指定GNSS接收器在大地坐标(纬度、经度和高度)中的位置。

    recPos = [42 -71 50];纳蒂克,麻州

    获取指定接收器位置的所有卫星位置的方位角和仰角。

    numSats = numel(gpsData.PRNNumber);卫星数量%[allAz, allAz] = deal(NaN(numel(t),numSats));i = 1:numel(t) [satPos,~, sads] = gnssconstellation(t(i),gpsData,GNSSFileType= . 0“SEM”);[az,el,vis] = lookangles(recPos,satPos);allAz(i,:) = az;lien (i,:) = el;结束

    把地平线以下的卫星标为因为没有能见度。

    列(列< 0)= NaN;

    想象卫星的轨迹。

    图skyplot(等位基因,allAz satID)

    图中包含一个skyplot类型的对象。

    将卫星的轨迹动画化。

    图sp = skyplot(allAz(1,:),列列(1,:),satID);i = 1:size(allAz, 1) set(sp,AzimuthData=allAz(1:i,:),ElevationData=列(1:i,:));drawnow结束

    图中包含一个skyplot类型的对象。

    输入参数

    全部折叠

    SEM年鉴文件名,指定为字符串标量或字符向量。文件名可以包含绝对路径、相对路径或不包含路径。您必须指定(.al3)扩展。

    例子:“semalmanac_2022 - 1 - 18.与“

    例子:“mydir / semalmanac_2022 - 1 - 18. -与“

    例子:“C: / mydir / semalmanac_2022 - 1 - 18. -与“

    数据类型:字符|字符串

    参考日期,指定为其中一个有效日期datetime与GPS周号滚动日期一致的字符串:

    • “06 - 1月- 1980”

    • “21 - 8月- 1999”

    • “06 - 4月- 2019

    这些日期每1024周出现一次,从1980年1月6日00:00 (UTC)开始。缺省值为adatetime字符串,该字符串与当前日期之前最近的GPS周号滚动日期一致。

    例子:GPSWeekEpoch = " 21 - 8月- 1999 "

    数据类型:字符|字符串

    输出参数

    全部折叠

    每个卫星的参数,返回为时间表每个记录都有一行,记录中的每个参数都有一列。找到更多关于SEM年鉴参数定义的信息,见表40-IIicd - gps - 240 d[2]

    参数 数据类型 描述
    时间 datetime

    GPS时钟时间,计算使用GPSWeekNumber而且GPSTimeOfApplicability

    GPSWeekNumber

    GPS周数,连续,不国防部(1024)

    GPSTimeOfApplicability

    从GPS周数开始的秒数。

    PRNNumber

    卫星伪随机噪声数。

    SVN

    卫星的空间飞行器参考号。

    AverageURANumber

    卫星的平均市建局编号。

    偏心

    卫星的偏心率。

    InclinationOffset

    倾斜角度从54度偏移,在半圆。

    RateOfRightAscension

    测量赤经角时的变化率,以半圆/秒为单位。

    SqrtOfSemiMajorAxis

    半长轴的平方根,单位是米1/2

    GeographicLongitudeOfOrbitalPlane

    以半圆为单位的周历轨道平面的地理经度。

    ArgumentOfPerigee

    从赤道到近地点的角,以半圆为单位。

    MeanAnomaly

    卫星在其轨道上相对近地点的位置角,以半圆为单位。

    ZerothOrderClockCorrection

    卫星历书零阶时钟校正期限,单位为秒。

    FirstOrderClockCorrection

    卫星历书一阶时钟校正期限,单位为秒/秒。

    SatelliteHealth

    卫星飞行器健康数据代码。

    SatelliteConfiguration

    卫星飞行器配置代码。

    年历标题,作为字符向量返回。

    提示

    参考文献

    科学应用国际公司。GPS空间段/导航用户界面。gps - 200 m。加利福尼亚州洛杉矶:美国太空部队空间系统司令部,2021年5月21日批准。https://www.navcen.uscg.gov/sites/default/files/pdf/gps/IS_GPS_200M.pdf

    科学应用国际公司。GPS空间段/导航用户界面。icd - gps - 240 d。加利福尼亚州洛杉矶:美国太空部队空间系统司令部,2021年5月21日批准。https://www.navcen.uscg.gov/sites/default/files/pdf/gps/ICD_GPS_240D.pdf

    [3]美国海岸警卫队。"GPS年鉴,NANUs,和OPS报告档案"美国海岸警卫队导航中心。2022年5月6日访问。https://www.navcen.uscg.gov/archives

    版本历史

    在R2022b中引入

    Baidu
    map