exponenta event banner

skyplot

Печать данных по азимуту и отметке спутника

Описание

пример

skyplot(azdata,eldata) создает график неба с использованием данных по азимуту и отметке, указанных как векторы в градусах. Азимутальные углы измеряются в градусах, по часовой стрелке-положительно от северного направления. Углы возвышения измеряются от линии горизонта с углом 90 градусов непосредственно вверх. Дополнительные сведения об элементах фигуры графика неба см. в разделе Основные элементы графика неба.

skyplot(azdata,eldata,labeldata) задает метки данных в виде строкового массива с элементами, соответствующими каждой точке данных в azdata и eldata входные данные.

skyplot(status) задает данные по азимуту и отметке в структуре с полями SatelliteAzimuth и SatelliteElevation.

пример

skyplot(___,Name,Value) указывает параметры, использующие один или несколько аргументов «имя-значение» в дополнение к входным аргументам в предыдущих синтаксисах. Аргументы «имя-значение» являются свойствами SkyPlotChart объект. Список свойств см. в разделе Свойства SkyPlotChart.

skyplot(parent,___) создает небесный график на рисунке, панели или вкладке, указанной parent.

h = skyplot(___) возвращает небесный график как SkyPlotChart объект, h. Использовать h для изменения свойств диаграммы после ее создания. Список свойств см. в разделе Свойства SkyPlotChart.

Примеры

свернуть все

Создание модели датчика ГНСС в качестве gnssSensor Object™ системы.

gnss = gnssSensor; 

Укажите положение и скорость датчика. Моделирование показаний датчиков и получение статуса от видимых спутников. Храните азимут и углы места в виде векторов.

pos = [0 0 0]; 
vel = [0 0 0]; 
[~, ~, status] = gnss(pos, vel); 
satAz = status.SatelliteAzimuth; 
satEl = status.SatelliteElevation; 

Постройте график положения спутника.

skyplot(satAz,satEl) 

Figure contains an object of type skyplot.

Анимация траектории положения спутника с помощью датчика GNSS.

Инициализируйте фигуру графика неба. Укажите соответствующую информацию о шаге времени.

skyplotHandle = skyplot(0,0); 

Figure contains an object of type skyplot.

numHours = 12; 
dt = 100; 
numSeconds = numHours * 60 * 60; 
numSimSteps = numSeconds/dt;

Создание модели датчика ГНСС в качестве gnssSensor(Панель инструментов навигации) Системные Object™.

gnss = gnssSensor('SampleRate', 1/dt); 

Выполните итерацию по временным шагам и выполните следующие действия.

  • Смоделировать показания датчика. Укажите нулевое положение и скорость стационарного датчика.

  • Храните азимут и углы места в виде векторов.

  • Установите AzimuthData и ElevationData свойства SkyPlotChart непосредственно ручка.

for i = 1:numSimSteps 

    [~, ~, status] = gnss([0 0 0],[0 0 0]); 

    satAz = status.SatelliteAzimuth; 
    satEl = status.SatelliteElevation; 

    set(skyplotHandle,'AzimuthData',satAz,'ElevationData',satEl);
    
    drawnow 
end 

Figure contains an object of type skyplot.

Загрузите данные по азимуту и высоте из файла регистрации, сгенерированного спутниковым датчиком Adafruit ® GPS. Данные, представленные в этом примере, содержат азимут и отметку каждого спутника и коды псевдослучайного шума (PRN). Сохраните эти значения в виде векторов .

load('gpsHWInfo','hwInfo') 
satAz = hwInfo.SatelliteAzimuths; 
satEl = hwInfo.SatelliteElevations; 
prn = hwInfo.SatellitePRNs; 

Разделите спутники на основе кодов PRN. Чтобы соотнести каждую позицию с группой, создайте categorical массив. PRN больше 32 являются частью глобальной системы увеличения площади (WAAS).

isWAAS = (prn > 32); 
constellationGroup = categorical(isWAAS,[false,true],{'GPS','WAAS'}); 

Визуализация спутников и определение категориальных групп в GroupData аргумент «имя-значение». Укажите PRN в качестве метки для каждой точки. Показать легенду.

skyplot(satAz,satEl,prn,'GroupData',constellationGroup) 
legend('GPS','WAAS')

Figure contains an object of type skyplot.

Входные аргументы

свернуть все

Азимутальные углы для видимых положений спутника, определяемые как n-элементный вектор углов. n - количество видимых положений спутника на графике. Азимутальные углы измеряются в градусах, по часовой стрелке-положительно от северного направления.

Пример: [25 45 182 356]

Типы данных: double

Углы возвышения для видимых положений спутника, заданные в виде n-элементного вектора углов. n - количество видимых положений спутника на графике. Углы возвышения измеряются от линии горизонта с углом 90 градусов непосредственно вверх.

Пример: [45 90 27 74]

Типы данных: double

Метки для видимых положений спутника, заданные как строковый массив n-элементов. n - количество видимых положений спутника на графике.

Пример: ["G1" "G11" "G7" "G3"]

Типы данных: string

Состояние спутника, указанное как структурный массив с полями SatelliteAzimuth и SatelliteElevation. Как правило, эта структура статуса происходит от gnssSensorОбъект (Панель инструментов навигации), моделирующий положения и скорости спутника.

Пример: gnss = gnssSensor; [~,~,status] = gnss(position,velocity)

Типы данных: struct

Родительский контейнер, указанный как Figure, Panel, Tab, TiledChartLayout, или GridLayout объект.

Выходные аргументы

свернуть все

Небесный график, возвращенный как SkyplotChart объект, представляющий собой автономную визуализацию. Использовать h для установки свойств на графике неба. Дополнительные сведения см. в разделе Свойства SkyPlotChart (Панель инструментов навигации).

Подробнее

свернуть все

Элементы графика главного неба

Figure showing a circular plot for satellite positions based on azimuth and elevation angles. Zero degrees for Azimuth is directly North with positive values going clockwise. Elevation angles are shown with circular axes with the outer-circle being the horizon line or zero degrees. 90 degrees elevation is directly up or the center point of the circular plot. Positions are colored by group and have specified labels

Основными элементами рисунка являются:

  • Азимутальные оси - Задается azdata входной аргумент, измеряют по часовой стрелке азимутальные угловые положения от северного направления.

  • Оси отметок - задается eldata входной аргумент, измеряют положение угла места от линии горизонта, при этом 90 градусов непосредственно вверх.

  • Метки - указаны labeldata входной аргумент как строковый массив с элементом для каждой точки в azdata и eldata векторы.

  • Группы - задается свойством GroupData (панель инструментов навигации), a categorical массив определяет группу для каждой позиции спутника.

Автономная визуализация

Автономная визуализация - это диаграмма, предназначенная для специального назначения, работающая независимо от других диаграмм. В отличие от других диаграмм, таких как plot и surf, автономная визуализация имеет встроенный в нее предварительно настроенный объект оси, и некоторые настройки недоступны. Автономная визуализация также имеет следующие характеристики:

  • Его нельзя комбинировать с другими графическими элементами, такими как линии, фрагменты или поверхности. Таким образом, hold команда не поддерживается.

  • gca функция может возвращать объект диаграммы в качестве текущих осей.

  • Объект диаграммы можно передать во многие функции MATLAB ®, которые принимают объект axes в качестве входного аргумента. Например, можно передать объект диаграммы вtitle функция.

См. также

Функции

Свойства

Объекты

  • (Панель инструментов навигации) | (Панель инструментов навигации)
Представлен в R2021a