read
Leer datos del receptor GPS
Sintaxis
Descripción
[ devuelve las lecturas GPS en formato tt,overrun] = read(gps)timetable. Esta es una lectura no bloqueante que devuelve puntos de datos N en formato de horario, donde N se especifica mediante la propiedad SamplesPerRead y timetable se especifica utilizando la propiedad OutputFormat del objeto gpsdev.
[ devuelve matrices de mediciones del GPS. Esta es una lectura no bloqueante que devuelve puntos de datos N en formato de matriz, donde N se especifica mediante la propiedad lla,groundSpeed,course,dops,gpsReceiverTime,timestamp,overrun] = read(gps)SamplesPerRead y matrix se especifica mediante la propiedad OutputFormat del objeto gpsdev.
Ejemplos
Lea los datos del receptor GPS conectado a la computadora host en un puerto serie específico.
Hardware requerido
Para ejecutar este ejemplo, necesita:
Módulo GPS UBlox Neo-6M
antena gps
Módulo USB a UART
cable USB
Cables de conexión
Conexión de hardware

Conecte los pines del módulo GPS UBlox Neo-6M a los pines de su módulo USB a UART. Las conexiones son:
VCC - +5V
RX-TXO
TX-RXI
Tierra - Tierra
Conecte la antena GPS al módulo GPS. Conecte el módulo USB a UART a la computadora host con un cable USB. GPS Fix se puede adquirir fácilmente en lugares que tengan una vista despejada del cielo. Espere a que el módulo GPS adquiera señales de satélite (Reparación). Esto se puede verificar verificando el LED Fix (D1) de su módulo GPS.
Crear objeto GPS
Crea un objeto gpsdev para el receptor GPS conectado a un puerto específico. Especifique el formato de salida de los datos como un calendario.
gps = gpsdev('COM4','OutputFormat',"timetable")
gps =
gpsdev with properties:
SerialPort: COM4
BaudRate: 9600 (bits/s)
SamplesPerRead: 1
ReadMode: "latest"
SamplesRead: 0
Show all properties all functions
Leer los datos del GPS
Leer los datos del GPS y devolverlos como horario.
[tt,overruns] = read(gps)
tt=1×5 timetable
Time LLA GroundSpeed Course DOPs GPSReceiverTime
________________________ _________________________ ___________ ______ ____________________ ________________________
22-Mar-2021 15:31:15.190 17.47 78.343 449.6 0.25619 NaN 9.31 1.48 9.19 22-Mar-2021 10:01:14.000
overruns = 0
Muestra el número de muestras leídas y las muestras disponibles en el búfer del host.
gps.SamplesRead
ans = 1
gps.SamplesAvailable
ans = 0
Suelte el objeto GPS para configurar las propiedades no ajustables. La función de liberación también borra el búfer y restablece las propiedades SamplesRead y SamplesAvailable.
release(gps)
Especifique el número de muestras por lectura en 2. Leer los datos del GPS.
gps.SamplesPerRead = 2; read(gps)
ans=2×5 timetable
Time LLA GroundSpeed Course DOPs GPSReceiverTime
________________________ _________________________ ___________ ______ ____________________ ________________________
22-Mar-2021 15:31:17.178 17.47 78.343 450 0.063791 NaN 9.32 1.48 9.2 22-Mar-2021 10:01:16.000
22-Mar-2021 15:31:17.178 17.47 78.343 450 0.063791 NaN 9.32 1.48 9.2 22-Mar-2021 10:01:16.000
Muestra el número de muestras leídas y las muestras disponibles en el búfer del host.
gps.SamplesRead
ans = 1
gps.SamplesAvailable
ans = 0
Limpiar
Cuando la conexión ya no sea necesaria, borre el objeto asociado.
delete(gps);
clear gps;Leer datos del receptor GPS conectado a la computadora host usando el objeto serialport.
Hardware requerido
Para ejecutar este ejemplo, necesita:
Módulo GPS UBlox Neo-6M
antena gps
Módulo USB a UART
cable USB
Cables de conexión
Conexión de hardware

Conecte los pines del módulo GPS UBlox Neo-6M a los pines de su módulo USB a UART. Las conexiones son:
VCC - +5V
RX-TXO
TX-RXI
Tierra - Tierra
Conecte la antena GPS al módulo GPS. Conecte el módulo USB a UART a la computadora host con un cable USB. GPS Fix se puede adquirir fácilmente en lugares que tengan una vista despejada del cielo. Espere a que el módulo GPS adquiera señales de satélite (Reparación). Esto se puede verificar verificando el LED Fix (D1) de su módulo GPS.
Crear objeto GPS
Conéctese al receptor GPS utilizando el objeto serialport. Especifique el nombre del puerto y la velocidad en baudios. Especifique el formato de salida de los datos como matriz.
s = serialport('COM4',9600); gps = gpsdev(s,'OutputFormat',"matrix")
gps =
gpsdev with properties:
SerialPort: COM4
BaudRate: 9600 (bits/s)
SamplesPerRead: 1
ReadMode: "latest"
SamplesRead: 0
Show all properties all functions
Leer los datos del GPS
Lea los datos del GPS y devuélvalos como matrices.
[lla,speed,course,dops,gpsReceiverTime,timestamp,overruns] = read(gps)
lla = 1×3
NaN NaN NaN
speed = NaN
course = NaN
dops = 1×3
NaN NaN NaN
gpsReceiverTime = datetime
NaT
timestamp = datetime
22-Mar-2021 03:41:00.274
overruns = 1
Muestra el número de muestras leídas y las muestras disponibles en el búfer del host.
gps.SamplesRead
ans = 1
gps.SamplesAvailable
ans = 0
Limpia todos los datos GPS acumulados en los buffers y restablece las propiedades SamplesRead y SamplesAvailable.
flush(gps)
Muestra el número de muestras leídas y las muestras disponibles en el búfer del host.
gps.SamplesRead
ans = 0
gps.SamplesAvailable
ans = 0
Limpiar
Cuando la conexión ya no sea necesaria, borre el objeto asociado.
delete(gps); clear gps; clear s;
Argumentos de entrada
El sensor GPS, especificado como un objeto gpsdev.
Argumentos de salida
Datos GPS, devueltos como timetable. El timetable devuelto tiene los siguientes campos:
LLA (Latitud, Longitud, Altitud)
Pista de velocidad
Curso sobre tierra
Dilución de precisiones (DOP), VDOP, HDOP, PDOP
Hora del receptor GPS
Hora: hora del sistema cuando se leen los datos, en formato
datetimeoduration
Tipos de datos: timetable
Posición del receptor GPS en la latitud, longitud y altitud geodésicas (LLA), devuelta como una matriz finita real N por 3. La latitud y la longitud están en grados, siendo el norte y el este positivos. La altitud está en metros.
Tipos de datos: double
Velocidad sobre el suelo, devuelta como un vector real finito N por 1.
Tipos de datos: double
Curso sobre el suelo en relación con el norte verdadero, devuelto como un vector real finito N-por-1 de valores entre 0 y 2pi radianes.
Tipos de datos: double
Dilución de precisiones, devuelta como una matriz real finita N por 3 con la forma [PDOP,HDOP,VDOP].
Tipos de datos: double
Hora UTC, devuelta como un vector N por 1.
Tipos de datos: datetime
Hora en la que se leen los datos del GPS, devueltos como un vector real finito N-por-1. Esta es la hora del sistema. Si TimeFormat es datetime, la marca de tiempo será datetime. Si TimeFormat es un duration, la marca de tiempo será duration
datetime— Muestra la fecha y hora en que se leen los datos.duration— Muestra el tiempo transcurrido en segundos después de la primera llamada de la funciónreado la última ejecución de la funciónrelease.
Nota
Si SamplesPerRead es mayor que 1, se realiza una extrapolación sobre el valor del tiempo. Por tanto, puede que no sea preciso.
Tipos de datos: datetime | duration
La cantidad de muestras perdidas entre llamadas consecutivas a read. El desbordamiento es cero cuando ReadMode se establece en oldest.
Tipos de datos: double
Más acerca de
El objeto gpsdev espera sentencias GPRMC, GPGGA y GPGSA como salidas del receptor GPS para obtener los valores requeridos. La función read genera un error si estas oraciones no están disponibles.
La función read genera NaN y NaT en las siguientes situaciones:
Si el módulo GPS no recibe datos válidos porque no hay bloqueo de satélite o cuando el GPS no da un valor particular.
Si hay una fallo en la suma de comprobación, los puntos de datos correspondientes serán
NaNpara las salidas numéricas (lla,speed,course,dops) yNaTparagpsRecieverTime.llase toma de la sentencia GPGGA,speed,courseygpsRecieverTimese toman de la sentencia GPRMC ydopsse toman de la sentencia GPGSA.
Dado que la función read no es bloqueante, se espera lo siguiente:
Si no hay datos nuevos disponibles, la salida de
readson los datos anteriores. Por ejemplo, si el retraso entre lecturas posteriores es menor que elUpdateRatedel receptor GPS.
Dado que los datos del GPS se validan en la primera operación read, podría llevar más tiempo en comparación con las operaciones read posteriores.
Historial de versiones
Introducido en R2020b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)