Main Content

Esta página se ha traducido mediante traducción automática. Haga clic aquí para ver la última versión en inglés.

galalmanacread

Leer datos del archivo de almanaque XML de Galileo

Desde R2023b

    Descripción

    ejemplo

    data = galalmanacread(filename) lee datos del archivo de almanaque XML de Galileo especificado por filename y devuelve los parámetros de cada satélite asociado como un horario.

    En formato Almanaque, el número de semana está alineado con la hora del sistema Galileo (GST). La época de inicio del GST es 13 segundos antes de las 00:00 UTC del domingo 22 de agosto de 1999 (medianoche entre el 21 y el 22 de agosto).

    data = galalmanacread(filename,IssueDate=date) especifica la fecha de emisión del archivo de almanaque.

    Ejemplos

    contraer todo

    Leer datos de navegación de un archivo de almanaque Galileo y utilizar los datos de navegación para:

    • Obtenga posiciones, velocidades e identificaciones de satélites en una marca de tiempo determinada.

    • Calcule la visibilidad del satélite y los ángulos de visión para una posición determinada del receptor utilizando las posiciones de los satélites extraídas.

    Primero, lea los datos de los mensajes de navegación GPS de un archivo de almanaque de Galileo.

    filename = "galAlmanac_2019-08-06.xml";
    data = galalmanacread(filename)
    data=22×16 timetable
                Time            SVID    aSqRoot        ecc          deltai       omega0      omegaDot         w           m0            af0            af1        iod       t0a       wna     statusE5a    statusE5b    statusE1B
        ____________________    ____    ________    __________    __________    ________    ___________    ________    _________    ___________    ___________    ___    _________    ____    _________    _________    _________
    
        06-Aug-2019 08:39:42      1     0.011719    0.00022888     0.0030518    -0.11984    -1.8626e-09    -0.81259    -0.053925    -0.00066185     -7.276e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      2     0.017578    0.00010681     0.0030518    -0.11984    -1.8626e-09    -0.50497      0.63766     7.2479e-05              0     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      3     0.042969    0.00036621    -0.0076904    -0.78656    -1.7462e-09     -0.1449      0.94464    -0.00019646     -3.638e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      4     0.039062    0.00027466    -0.0076904    -0.78653    -1.7462e-09    -0.40698    -0.041412    -0.00033951     -7.276e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      5     0.042969    0.00021362    -0.0076904    -0.78656    -1.7462e-09    -0.33777     -0.61145    -0.00045967      3.638e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      7     0.042969    0.00041199    -0.0076904    -0.78656    -1.7462e-09      -0.285      0.58496    -0.00024033     -7.276e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      8     0.039062    0.00036621    -0.0057983      -0.789    -1.7462e-09    -0.19412      0.74414      0.0063114     -7.276e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42      9     0.039062    0.00045776    -0.0057983      -0.789    -1.7462e-09    -0.21506      -0.4855      0.0063572    -1.0914e-11     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     11     0.017578    0.00038147     0.0021973     0.54333    -1.7462e-09     0.28098      -0.3125      0.0056324    -1.0914e-11     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     12     0.015625     0.0002594     0.0021973     0.54333    -1.7462e-09     0.10056      0.12363      0.0062618     -1.819e-11     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     13     0.021484    1.5259e-05     0.0032349     0.54181    -1.7462e-09     0.23178      0.73837     0.00039101              0     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:29:42     15     0.017578    3.0518e-05     0.0032349     0.54178    -1.7462e-09    -0.60843     -0.19565     0.00090027              0     3     2.034e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     19     0.027344    0.00024414    -0.0058594    -0.78732    -1.7462e-09    -0.47565      0.30069    -3.8147e-06              0     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     21     0.021484    0.00022888     0.0029297    -0.12067    -1.8626e-09    -0.91656      0.30164    -0.00054741     -3.638e-12     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     24     0.011719    0.00024414     0.0022583    -0.11884    -1.8626e-09     0.27414      0.35886      0.0059395     -1.819e-11     4      2.04e+05    1041        0            0            0    
        06-Aug-2019 08:39:42     25     0.027344    0.00032043     0.0029297     -0.1207    -1.8626e-09     -0.7215     -0.89252      0.0017204    -1.0914e-11     4      2.04e+05    1041        0            0            0    
          ⋮
    
    

    Especifique la marca de tiempo para buscar las posiciones, velocidades e ID de los satélites.

    t = datetime(2021,06,24,01,59,44)
    t = datetime
       24-Jun-2021 01:59:44
    
    

    Obtenga las posiciones, velocidades e ID de los satélites en la marca de tiempo especificada utilizando la función gnssconstellation .

    [satPos,satVel,satID] = gnssconstellation(t,data,GNSSFileType="galalmanac");

    Especifique una posición del receptor en coordenadas geodésicas (latitud, longitud, altitud) para calcular los ángulos de visión y la visibilidad del satélite.

    recPos = [42.3013162 -71.3782972 0];

    Especifique el ángulo de la máscara de elevación para el receptor.

    maskAngle = 5;

    Calcule los ángulos de visión y las visibilidades de las posiciones de los satélites para la posición del receptor dada. La salida vis indica qué satélites son visibles. Obtenga el total usando nnz.

    [az,el,vis] = lookangles(recPos,satPos,maskAngle);
    fprintf('%d satellites visible at %s.\n',nnz(vis),t)
    10 satellites visible at 24-Jun-2021 01:59:44.
    

    Trazar las posiciones de los satélites visibles con la máscara de elevación.

    figure
    skyplot(az(vis),el(vis),satID(vis),MaskElevation=maskAngle)

    Figure contains an object of type skyplot.

    Argumentos de entrada

    contraer todo

    Nombre de archivo del almanaque XML de Galileo, especificado como una cadena escalar o un vector de caracteres. El nombre del archivo puede incluir una ruta absoluta, una ruta relativa o ninguna ruta, pero debe incluir la extensión del archivo .xml.

    Ejemplo: "galAlmanac_2023-02-17.xml"

    Ejemplo: "mydir/galAlmanac_2023-02-17.xml"

    Ejemplo: "C:/mydir/galAlmanac_2023-02-17.xml"

    Tipos de datos: char | string

    Fecha de emisión del archivo de almanaque, especificada como datetime. Este valor permite el cálculo del número de semana real.

    Ejemplo: IssueDate=datetime("yesterday")

    Tipos de datos: datetime

    Argumentos de salida

    contraer todo

    Parámetros de cada satélite, devueltos como timetable con una fila para cada registro y una columna para cada parámetro en ese registro. Para obtener más información sobre las definiciones de los parámetros del almanaque Galileo, consulte almanac parameters table en el sitio del Centro de servicios GNSS europeo.

    ParámetroTipo de datosDescripción
    Timedatetime

    Hora UTC, calculada utilizando el número de semana real y t0a.

    SVIDdouble

    Identificación de vehículos vía satélite.

    aSqRootdouble

    Diferencia respecto de la raíz cuadrada del semieje mayor nominal (29.600.000 m), en metros1/2.

    eccdouble

    Excentricidad de la órbita.

    deltaidouble

    Ángulo de inclinación desplazado de la inclinación orbital nominal de 56 grados, en semicírculos.

    omega0double

    Longitud del nodo ascendente del plano orbital en la época semanal, en semicírculos.

    omegaDot double

    Tasa de cambio en la medida del ángulo de ascensión recta, en semicírculos por segundo.

    wdouble

    Argumento del perigeo, en semicírculos.

    m0double

    Anomalía media del satélite en el momento de referencia, en semicírculos.

    af0double

    Sesgo de corrección del reloj satelital (truncado), en segundos.

    af1double

    Corrección del reloj satelital lineal (truncada), en segundos por segundo.

    ioddouble

    Emisión de datos del almanaque.

    t0adouble

    Tiempo de referencia del almanaque, en segundos.

    wnadouble

    Número de semana de Galileo, continuo, no mod(4).

    statusE5adouble

    Estado de salud de la señal del satélite E5a.

    statusE5bdouble

    Estado de salud de la señal del satélite E5b.

    statusE1Bdouble

    Estado de salud de la señal del satélite E1-B/C.

    Referencias

    [1] European GNSS Service Centre (GSC). "Galileo Open Service Signal-In-Space Interface Control Document." Accessed March 13, 2023. https://www.gsc-europa.eu/sites/default/files/sites/all/files/Galileo_OS_SIS_ICD_v2.0.pdf.

    [2] European GNSS Service Centre (GSC). "Galileo Almanac." Accessed March 13, 2023. https://www.gsc-europa.eu/gsc-products/almanac.

    Historial de versiones

    Introducido en R2023b