Удалите сигнал в Инспекторе Данных моделирования
В этом примере показано, как использовать Simulink.sdi.copyRun
и Simulink.sdi.deleteSignal
создать копию запуска, который содержит подмножество сигналов от исходного запуска. Можно использовать копию, чтобы анализировать и запустить сравнения на подмножестве сигналов при тихом содержании на исходный запуск, который имеет все сигналы. Например, модель sldemo_fuelsys
сконфигурирован, чтобы регистрировать десять сигналов. Чтобы сравнить ответы системы на различные типы отказов, вы не должны запускать сравнение на всех регистрируемых сигналах. Удаление сигналов, которые не представляют ответ системы прежде, чем запустить сравнение, сохраняет время вычислений и упрощает представление результатов.
Создайте запуски
Загрузите модель sldemo_fuelsys
и запустите симуляции, чтобы создать запуски в Инспекторе Данных моделирования. Первый показ симулирует отказ углового датчика дросселя, и второй запуск симулирует отказ кислородного датчика выхлопного газа.
load_system('sldemo_fuelsys') modelWorkspace = get_param('sldemo_fuelsys','modelworkspace'); modelWorkspace.assignin('throttle_sw',0) modelWorkspace.assignin('ego_sw',1) sim('sldemo_fuelsys') modelWorkspace.assignin('throttle_sw',1) modelWorkspace.assignin('ego_sw',0) sim('sldemo_fuelsys')
Скопируйте запуск
Используйте программируемый интерфейс Инспектора Данных моделирования, чтобы получить Simulink.sdi.Run
объекты для симуляций, и затем создают копии запусков.
% Get runs runIDs = Simulink.sdi.getAllRunIDs; runID1 = runIDs(end-1); runID2 = runIDs(end); run1 = Simulink.sdi.getRun(runID1); run2 = Simulink.sdi.getRun(runID2); % Create a copy of each run, truncRun [truncRun1,runIndex1,signalIDs1] = Simulink.sdi.copyRun(runID1); [truncRun2,runIndex2,signalIDs2] = Simulink.sdi.copyRun(runID2);
Удалите сигналы в запущенной копии
sldemo_fuelsys
модель сконфигурирована, чтобы регистрировать значения переключателей отказа наряду с несколькими сигналами, представляющими ответ системы. Когда вы сравниваете ответ системы, когда угловой датчик дросселя перестал работать к его ответу, когда кислородный датчик выхлопного газа перестал работать, сравнение состояний переключателя отказа не предоставляет новую информацию. Поэтому удалите сигналы переключателя прежде, чем запустить сравнение, чтобы устранить ненужные расчеты.
Simulink.sdi.deleteSignal(signalIDs1(1)) Simulink.sdi.deleteSignal(signalIDs1(3)) Simulink.sdi.deleteSignal(signalIDs1(5)) Simulink.sdi.deleteSignal(signalIDs1(8)) Simulink.sdi.deleteSignal(signalIDs2(1)) Simulink.sdi.deleteSignal(signalIDs2(3)) Simulink.sdi.deleteSignal(signalIDs2(5)) Simulink.sdi.deleteSignal(signalIDs2(8))
Сравните усеченные запуски
Можно использовать усеченные запуски, которые вы создали с Simulink.sdi.copyRun
и Simulink.sdi.deleteSignal
выполнять сравнение ответа системы на различные типы отказов. Затем откройте Инспектора Данных моделирования, чтобы просмотреть результаты сравнения.
truncRunDiff = Simulink.sdi.compareRuns(truncRun1,truncRun2); Simulink.sdi.view
sigID
— Сигнал или сигналы удалитьСигнал удалить в виде скалярного ID сигнала или вектора из идентификаторов сигнала. Инспектор Данных моделирования присваивает уникальный числовой ID сигнала каждому сигналу, когда запуск создается для регистрируемых или импортированных данных.
Можно получить ID сигнала для сигнала с помощью одной из этих функций:
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.