Установите в карданном подвесе объект, принадлежащий спутниковому сценарию
Gimbal
задает объект карданова подвеса, принадлежащий спутниковому сценарию.
Можно создать Gimbal
объект с помощью gimbal
объектная функция Satellite
или GroundStation
.
Name
— Установите в карданном подвесе имя"Gimbal idx"
(значение по умолчанию) | строковый скаляр | представляет вектор в виде строки | вектор символов | массив ячеек из символьных векторовМожно установить это свойство только при вызове Карданова подвеса. После того, как вы вызовете Карданов подвес, это свойство только для чтения.
Установите в карданном подвесе имя в виде разделенной запятой пары, состоящей из 'Name'
и строковый скаляр, представьте в виде строки вектор, вектор символов или массив ячеек из символьных векторов.
Если только один Карданов подвес добавляется, задайте Name
как строковый скаляр или вектор символов.
Если несколько Карданова подвеса добавляются, задают Name
как вектор строки или массив ячеек из символьных векторов. Число элементов в векторном массиве строки или массиве ячеек должно быть равно количеству добавляемых спутников.
В значении по умолчанию idx является количеством Карданова подвеса, добавленного Gimbal
объектная функция. Если другой Карданов подвес того же имени существует, суффиксный _idx2 добавляется, где idx2 является целым числом, которое постепенно увеличивается 1 запуском от 1, пока дублирование имени не разрешено.
Типы данных: char |
string
ID
— Установите в карданном подвесе ID, присвоенный средством моделированияЭто свойство установлено внутренне средством моделирования и только для чтения.
Установите в карданном подвесе ID, присвоенный средством моделирования в виде положительной скалярной величины.
MountingLocation
— Монтирование местоположения относительно родительского элемента
(значение по умолчанию) | трехэлементный вектор-строка из положительных чиселМонтирование местоположения относительно родительского объекта в виде трехэлементного вектора-строки из положительных чисел в метрах. Радиус-вектор задан в системе координат тела входа parent
.
MountingAngles
— Монтирование ориентации относительно родительского объекта
(значение по умолчанию) | трехэлементный вектор-строка из положительных чиселМонтирование ориентации относительно родительского объекта в виде трехэлементного вектора-строки из положительных чисел в градусах. Элементы вектора соответствуют рысканию, тангажу, и сыплют тот порядок. Отклоняйтесь от курса, сделайте подачу, и крен является положительными вращениями вокруг z родительского элемента - осью, промежуточным y - осью и промежуточным x - ось родительского элемента.
Пример: [0; 30; 60]
ConicalSensors
— Конические датчикиМожно установить это свойство только при вызове conicalSensor
. После того, как вы вызываете conicalSensor
Это свойство доступно только для чтения.
Конические датчики, присоединенные к Карданову подвесу в виде вектора-строки из конических датчиков.
Receivers
— Приемники присоединяются к Карданову подвесуReceiver
объектыTransmitters
— Передатчики присоединяются к Карданову подвесуTransmitter
объектыМожно установить это свойство только при вызове transmitter
. После того, как вы вызываете transmitter
Это свойство доступно только для чтения.
Передатчики, присоединенные к Карданову подвесу в виде вектора-строки из Transmitter
объекты.
transmitter | Добавьте передатчик в спутниковый сценарий |
receiver | Добавьте приемник в спутниковый сценарий |
conicalSensor | Добавьте конический датчик в спутниковый сценарий |
pointAt | Цель, на которую должна быть указана сущность |
gimbalAngles | Регулирование углов карданова подвеса |
Создайте спутниковый сценарий со временем начала от 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);
show
| play
| hide
| satellite
| access
| groundStation
| conicalSensor
| transmitter
| receiver
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.