SimulinkRealTime.hostScope

Отобразите данные временного интервала по экрану компьютера разработчика

Описание

Средства управления и свойства доступов осциллографов хоста.

Ядро получает блок данных и отправляет его в осциллограф на целевом компьютере. Осциллограф ожидает команды загрузки от компьютера разработчика, и затем загружает данные. Компьютер разработчика отображает данные при помощи Проводника Simulink® Real-Time™ или других функций MATLAB®.

Следующие правила существуют:

  • Имена функций являются чувствительными к регистру. Введите целое имя.

  • Имена свойства не являются чувствительными к регистру. Вы не должны вводить целое имя, пока символы, которые вы вводите, уникальны для свойства.

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

Создание

addscope

Свойства

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

Используйте свойства объектов осциллографа, чтобы выбрать сигналы, что вы хотите получить, установите режимы инициирования и информацию о сигнале доступа из приложения реального времени.

Получить значение читаемого свойства объекта осциллографа от объекта scope:

scope_object = getscope(target_object, scope_number);
value = scope_object.scope_object_property

Получить Decimation осциллографа 3:

scope_object = getscope(tg, 3);
value = scope_object.Decimation

Устанавливать значение перезаписываемого свойства scope от объекта scope:

scope_object = getscope(target_object, scope_number);
scope_object.scope_object_property = new_value

Установить Decimation осциллографа 3:

scope_object = getscope(tg, 3);
scope_object.Decimation = 10

Не все свойства перезаписываемы пользователем. Например, после того, как вы создаете осциллограф, свойство Type не перезаписываемо.

Разместите свойства осциллографа

Содержит выходные данные только для чтения для одного блока данных от осциллографа.

Содержит данные времени только для чтения для одного блока данных от осциллографа.

Общие свойства осциллографа

Имя только для чтения приложения реального времени сопоставлено с этим объектом scope.

Числовой индекс только для чтения, уникальный для каждого осциллографа.

Значение состояния только для чтения:

  • 'Acquiring' — Осциллограф получает данные.

  • 'Ready for being Triggered' — Осциллограф ожидает триггера.

  • 'Interrupted' — Осциллограф не запускается (прерванный).

  • 'Finished' — Осциллограф закончил получать данные.

Свойство только для чтения, которое определяет, как осциллограф собирает и отображает свои данные:

  • 'Host' — Осциллограф собирает данные по целевому компьютеру и отображает его на компьютере разработчика.

  • 'Target' — Осциллограф собирает данные по целевому компьютеру и отображает его на мониторе целевого компьютера.

  • 'File' — Осциллограф собирает и хранит данные на целевом компьютере.

Количество непрерывных выборок получено во время приобретения блока данных.

Осциллограф записывает данные выборки в буфер памяти размера NumSamples. Если осциллограф останавливается прежде, чем получить это количество выборок, записи осциллографа обнуляет после собранных данных в конец буфера. Знайте, какие данные вы собираете, потому что возможно, что ваши данные содержат, обнуляет.

Количество выборок, собранных прежде или после триггерного события. Ввод отрицательной величины собирает выборки перед триггерным событием. Ввод положительного значения собирает выборки после триггерного события. Если вы устанавливаете TriggerMode на 'FreeRun', это свойство не имеет никакого эффекта на сбор данных.

Если 1, осциллограф получает каждую выборку. Если больше, чем 1, осциллограф получает каждый Decimation th выборка.

Инициируйте режим для осциллографа:

  • 'freerun' — Осциллограф включает каждый шаг расчета.

  • 'software' — Осциллограф инициировал из Командного окна.

  • 'signal' — Осциллограф инициировал, когда обозначенный сигнал изменяет состояние.

  • Осциллограф Осциллограф инициировал, когда обозначенный осциллограф инициировал.

Если TriggerMode является 'Signal', этот параметр идентифицирует выходной сигнал блока, чтобы использовать для инициирования осциллографа. Идентифицируйте сигнал с индексом сигнала из свойства Signal целевого объекта.

Если TriggerMode является 'Signal', этот параметр указывает на значение, которое сигнал должен пересечь, чтобы инициировать осциллограф и начать получать данные. Пороговый уровень может быть пересечен или с повышением или с падающим сигналом.

Если TriggerMode является 'Signal', TriggerSlope указывает на поведение сигнала, которое инициировало осциллограф.

  • 'Either' — Сигнал инициировал осциллограф, когда это пересекает TriggerLevel или в повышении или в падающих направлениях.

  • 'Rising' — Сигнал инициировал осциллограф, когда это пересекает TriggerLevel в возрастающем направлении.

  • 'Falling' — Сигнал инициировал осциллограф, когда это пересекает TriggerLevel в падающем направлении.

Если TriggerMode является 'Scope', этот параметр идентифицирует осциллограф, чтобы использовать для триггера. Чтобы инициировать осциллограф, когда другой осциллограф инициирован, устанавливает ведомое свойство scope TriggerScope на индекс осциллографа основного осциллографа.

Если TriggerMode является 'Scope', то TriggerSample задает, на которой выборке инициирования определяют объем текущих триггеров осциллографа.

Например, если TriggerSample является 0 (значение по умолчанию), текущий осциллограф включает демонстрационный 0 (первая полученная выборка) осциллографа инициирования. В этом случае два осциллографа синхронизируются друг с другом.

Если TriggerSample является 1, текущий осциллограф включает демонстрационный 1 (вторая полученная выборка) осциллографа инициирования. В этом случае два осциллографа имеют смещение с одной выборкой.

Установка TriggerSample к -1 означает, что текущий осциллограф инициировал в конце цикла приобретения осциллографа инициирования. В этом случае инициированный осциллограф получает свою первую выборку одна выборка после последней выборки осциллографа инициирования.

Выберите минимум оси Y и максимальные пределы для осциллографа как Auto или с вектором, содержащим минимальные и максимальные значения (например, [-10, 10]).

Список индексов сигнала от целевого объекта, чтобы отобразиться на осциллографе.

Функции объекта

addsignal (hostScope,signal)Добавьте сигналы разместить осциллограф, представленный объектом scope
remsignal (hostScope,signal)Удалите сигналы из осциллографа хоста, представленного объектом scope
start (hostScope)Запустите выполнение осциллографа хоста на целевом компьютере
stop (hostScope)Остановите выполнение осциллографа хоста на целевом компьютере
trigger (hostScope)Триггер программного обеспечения запускается сбора данных для осциллографа хоста

Примеры

свернуть все

Создайте и загрузите xpcosc и выполните приложение реального времени с осциллографом хоста.

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

ex_model = 'xpcosc';
open_system(ex_model);
rtwbuild(ex_model);
tg = SimulinkRealTime.target
Target: TargetPC1
   Connected            = Yes
   Application          = xpcosc
   Mode                 = Real-Time Single-Tasking
   Status               = stopped
   CPUOverload          = none

   ExecTime             = 0.0000
   SessionTime          = 7746.0916
   StopTime             = 0.200000
   SampleTime           = 0.000250
   AvgTET               = NaN
   MinTET               = Inf
   MaxTET               = 0.000000
   ViewMode             = 0

   TimeLog              = Vector(0) 
   StateLog             = Matrix (0 x 2)
   OutputLog            = Matrix (0 x 2)
   TETLog               = Vector(0) 
   MaxLogSamples        = 16666
   NumLogWraps          = 0
   LogMode              = Normal
   ProfilerStatus       = Ready

   Scopes               = No Scopes defined  
   NumSignals           = 7
   ShowSignals          = off

   NumParameters        = 7
   ShowParameters       = off

Добавьте и сконфигурируйте осциллограф хоста 1.

sc1 = addscope(tg, 'host', 1);
addsignal(sc1, 4);
addsignal(sc1, 5)
ans = 

Simulink Real-Time Scope
   Application          = xpcosc
   ScopeId              = 1
   Status               = Interrupted
   Type                 = Host
   NumSamples           = 250
   NumPrePostSamples    = 0
   Decimation           = 1
   TriggerMode          = FreeRun
   TriggerSignal        = 4  : Integrator1
   TriggerLevel         = 0.000000
   TriggerSlope         = Either
   TriggerScope         = 1
   TriggerSample        = 0
   StartTime            = -1.000000
   Data                 = Matrix (250 x 2)
   Time                 = Matrix (250 x 1)
   Signals              = 4  : Integrator1
                          5  : Signal Generator

Запустите приложение реального времени в течение 10 секунд.

tg.StopTime = 10;
start(sc1);
start(tg);
pause(10);
stop(tg);
stop(sc1);

Постройте результат.

plot(sc1.Time,sc1.Data);

Разгрузите приложение реального времени.

unload(tg)
Target: TargetPC1
   Connected            = Yes
   Application          = loader

Введенный в R2014a