gimbal

Добавьте карданов подвес в спутник или наземную станцию

Описание

пример

gimbal(parent) добавляет Gimbal по умолчанию возразите против parent, который может быть спутником, наземной станцией или кардановым подвесом. Карданов подвес может динамически изменить ориентацию, независимую от родительского элемента. Передатчики, приемники и конические датчики могут быть смонтированы на кардановом подвесе.

gimbal(parent,Name,Value) задает опции с помощью одних или нескольких аргументов name-value.

gim = gimbal(___) возвращает указатель на добавленный карданов подвес. Задайте любую комбинацию входных аргументов от предыдущих синтаксисов.

Примеры

развернуть все

Создайте спутниковый сценарий со временем начала от 15 июня 2021 8:55:00 UTC и время остановки пять дней спустя. Установите шаг расчета симуляции на 60 секунды.

startTime = datetime(2021,6,21,8,55,0);
stopTime = startTime + days(5);
sampleTime = 60;                                      % seconds
sc = satelliteScenario(startTime,stopTime,sampleTime)
sc = 
  satelliteScenario with properties:

         StartTime: 21-Jun-2021 08:55:00
          StopTime: 26-Jun-2021 08:55:00
        SampleTime: 60
           Viewers: [0x0 matlabshared.satellitescenario.Viewer]
        Satellites: [1x0 matlabshared.satellitescenario.Satellite]
    GroundStations: [1x0 matlabshared.satellitescenario.GroundStation]
          AutoShow: 1

Добавьте спутник в сценарий с помощью Кеплеровских орбитальных элементов.

semiMajorAxis = 7878137;                                                                    % meters
eccentricity = 0;
inclination = 50;                                                                           % degrees
rightAscensionOfAscendingNode = 0;                                                          % degrees
argumentOfPeriapsis = 0;                                                                    % degrees
trueAnomaly = 50;                                                                           % degrees
sat = satellite(sc,semiMajorAxis,eccentricity,inclination,rightAscensionOfAscendingNode, ...
    argumentOfPeriapsis,trueAnomaly)
sat = 
  Satellite with properties:

               Name:  Satellite 1
                 ID:  1
     ConicalSensors:  [1x0 matlabshared.satellitescenario.ConicalSensor]
            Gimbals:  [1x0 matlabshared.satellitescenario.Gimbal]
       Transmitters:  [1x0 satcom.satellitescenario.Transmitter]
          Receivers:  [1x0 satcom.satellitescenario.Receiver]
           Accesses:  [1x0 matlabshared.satellitescenario.Access]
        GroundTrack:  [1x1 matlabshared.satellitescenario.GroundTrack]
              Orbit:  [1x1 matlabshared.satellitescenario.Orbit]
    OrbitPropagator:  sgp4
        MarkerColor:  [1 0 0]
         MarkerSize:  10
          ShowLabel:  true
     LabelFontColor:  [1 0 0]
      LabelFontSize:  15

Добавьте наземную станцию, которая представляет местоположение, которое будет сфотографировано к сценарию.

gs = groundStation(sc,"Name","Location To Photograph", ...
    "Latitude",42.3001,"Longitude",-71.3504)               % degrees
gs = 
  GroundStation with properties:

                 Name:  Location To Photograph
                   ID:  2
             Latitude:  42.3 degrees
            Longitude:  -71.35 degrees
             Altitude:  0 meters
    MinElevationAngle:  0 degrees
       ConicalSensors:  [1x0 matlabshared.satellitescenario.ConicalSensor]
              Gimbals:  [1x0 matlabshared.satellitescenario.Gimbal]
         Transmitters:  [1x0 satcom.satellitescenario.Transmitter]
            Receivers:  [1x0 satcom.satellitescenario.Receiver]
             Accesses:  [1x0 matlabshared.satellitescenario.Access]
          MarkerColor:  [0 1 1]
           MarkerSize:  10
            ShowLabel:  true
       LabelFontColor:  [0 1 1]
        LabelFontSize:  15

Добавьте карданов подвес в спутник. Можно регулировать этот карданов подвес независимо от спутника.

g = gimbal(sat)
g = 
  Gimbal with properties:

                Name:  Gimbal 3
                  ID:  3
    MountingLocation:  [0; 0; 0] meters
      MountingAngles:  [0; 0; 0] degrees
      ConicalSensors:  [1x0 matlabshared.satellitescenario.ConicalSensor]
        Transmitters:  [1x0 satcom.satellitescenario.Transmitter]
           Receivers:  [1x0 satcom.satellitescenario.Receiver]

Отследите местоположение, которое будет сфотографировано с помощью карданова подвеса.

pointAt(g,gs);

Добавьте конический датчик в карданов подвес. Этот датчик представляет камеру. Установите поле зрения на 60 градусов.

camSensor = conicalSensor(g,"MaxViewAngle",60)
camSensor = 
  ConicalSensor with properties:

                Name:  Conical sensor 4
                  ID:  4
    MountingLocation:  [0; 0; 0] meters
      MountingAngles:  [0; 0; 0] degrees
        MaxViewAngle:  60 degrees
            Accesses:  [1x0 matlabshared.satellitescenario.Access]
         FieldOfView:  [0x0 matlabshared.satellitescenario.FieldOfView]

Добавьте анализ доступа между камерой и местоположением, которое будет сфотографировано. Доступ добавляется к коническому датчику.

ac = access(camSensor,gs)
ac = 
  Access with properties:

    Sequence:  [4 2]
    LineWidth:  1
    LineColor:  [0.5 0 1]

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

v = satelliteScenarioViewer(sc);
fieldOfView(camSensor);

Определите интервалы, во время которых камера видит географический сайт.

t = accessIntervals(ac)
t=35×8 table
          Source                   Target             IntervalNumber         StartTime                EndTime           Duration    StartOrbit    EndOrbit
    __________________    ________________________    ______________    ____________________    ____________________    ________    __________    ________

    "Conical sensor 4"    "Location To Photograph"           1          21-Jun-2021 10:38:00    21-Jun-2021 10:55:00      1020           1            2   
    "Conical sensor 4"    "Location To Photograph"           2          21-Jun-2021 12:36:00    21-Jun-2021 12:58:00      1320           2            3   
    "Conical sensor 4"    "Location To Photograph"           3          21-Jun-2021 14:37:00    21-Jun-2021 15:01:00      1440           3            4   
    "Conical sensor 4"    "Location To Photograph"           4          21-Jun-2021 16:41:00    21-Jun-2021 17:04:00      1380           5            5   
    "Conical sensor 4"    "Location To Photograph"           5          21-Jun-2021 18:44:00    21-Jun-2021 19:07:00      1380           6            6   
    "Conical sensor 4"    "Location To Photograph"           6          21-Jun-2021 20:46:00    21-Jun-2021 21:08:00      1320           7            7   
    "Conical sensor 4"    "Location To Photograph"           7          21-Jun-2021 22:50:00    21-Jun-2021 23:04:00       840           8            8   
    "Conical sensor 4"    "Location To Photograph"           8          22-Jun-2021 09:51:00    22-Jun-2021 10:02:00       660          13           13   
    "Conical sensor 4"    "Location To Photograph"           9          22-Jun-2021 11:46:00    22-Jun-2021 12:07:00      1260          14           15   
    "Conical sensor 4"    "Location To Photograph"          10          22-Jun-2021 13:46:00    22-Jun-2021 14:10:00      1440          15           16   
    "Conical sensor 4"    "Location To Photograph"          11          22-Jun-2021 15:50:00    22-Jun-2021 16:13:00      1380          16           17   
    "Conical sensor 4"    "Location To Photograph"          12          22-Jun-2021 17:53:00    22-Jun-2021 18:16:00      1380          18           18   
    "Conical sensor 4"    "Location To Photograph"          13          22-Jun-2021 19:55:00    22-Jun-2021 20:18:00      1380          19           19   
    "Conical sensor 4"    "Location To Photograph"          14          22-Jun-2021 21:58:00    22-Jun-2021 22:16:00      1080          20           20   
    "Conical sensor 4"    "Location To Photograph"          15          23-Jun-2021 10:56:00    23-Jun-2021 11:16:00      1200          26           27   
    "Conical sensor 4"    "Location To Photograph"          16          23-Jun-2021 12:56:00    23-Jun-2021 13:19:00      1380          27           28   
      ⋮

Вычислите максимум пересматривают время в часах.

startTimes = t.StartTime;
endTimes = t.EndTime;
revisitTimes = hours(startTimes(2:end) - endTimes(1:end-1));
maxRevisitTime = max(revisitTimes)                             % hours
maxRevisitTime = 12.6667

Визуализируйте пересмотреть времена, который фотографирует местоположение.

play(sc);

Входные параметры

развернуть все

Элемент сценария, к которому карданов подвес добавляется в виде Satellite, GroundStation, или Gimbal объект.

Аргументы name-value

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'MountingAngle',[20; 35; 10] устанавливает рыскание, тангаж и крен карданова подвеса к 20, 35, и 10 градусов, соответственно.

Можно установить это свойство только при вызове карданова подвеса. После того, как вы вызовете карданов подвес, это свойство только для чтения.

установите в карданном подвесе имя в виде разделенной запятой пары, состоящей из 'Name' и строковый скаляр, представьте в виде строки вектор, вектор символов или массив ячеек из символьных векторов.

  • Если только один карданов подвес добавляется, задайте Name как строковый скаляр или вектор символов.

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

В значении по умолчанию idx является количеством карданова подвеса, добавленного gimbal объектная функция. Если другой карданов подвес того же имени существует, суффиксный _idx2 добавляется, где idx2 является целым числом, которое постепенно увеличивается 1 запуском от 1, пока дублирование имени не разрешено.

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

Монтирование местоположения относительно родительского объекта в виде трехэлементного вектора-строки из положительных чисел в метрах. Радиус-вектор задан в системе координат тела входа parent.

Монтирование ориентации относительно родительского объекта в виде трехэлементного вектора-строки из положительных чисел в градусах. Элементы вектора соответствуют рысканию, тангажу, и сыплют тот порядок. Отклоняйтесь от курса, сделайте подачу, и крен является положительными вращениями вокруг z родительского элемента - осью, промежуточным y - осью и промежуточным x - ось родительского элемента.

Пример: [0; 30; 60]

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

развернуть все

Карданов подвес присоединяется к parent, возвращенный как Gimbal объект.

Введенный в R2021a