linqueryIsBlockType

Объект запроса для нахождения блоков заданного типа

Описание

linqueryIsBlockType создает объект пользовательского запроса для нахождения всех блоков заданного типа в результате линеаризации.

Когда вы линеаризуете модель Simulink®, можно создать объект LinearizationAdvisor, который содержит диагностическую информацию об отдельной линеаризации блока. Чтобы найти линеаризацию блока, которая удовлетворяет определенные критерии, можно использовать функцию find с объектами пользовательского запроса. Также можно анализировать диагностику линеаризации с помощью Советника по вопросам Линеаризации в Linear Analysis Tool. Для получения дополнительной информации о нахождении определенных блоков в результатах линеаризации смотрите, Находят Блоки в Результатах Линеаризации, Совпадающих с Определенными Критериями.

Создание

Синтаксис

query = linqueryIsBlockType(Type)

Описание

пример

query = linqueryIsBlockType(Type) создает объект запроса для нахождения всех блоков в объекте LinearizationAdvisor, которые имеют тип Type.

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

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

Тип блока, заданный как вектор символов или строка. Чтобы задать тип блока, используйте соответствующий параметр blocktype блока. Чтобы получить параметр blocktype для в настоящее время выбранного блока в модели Simulink, в командной строке MATLAB®, введите:

get_param(gcb,'blocktype')

Кроме того, чтобы найти:

  • Блоки MATLAB function, задайте Type как 'matlab function'.

  • Диаграммы Stateflow, задайте Type как 'chart'.

  • Сети Simscape, задайте Type как 'simscape'. Объект LinearizationAdvisor не предоставляет диагностическую информацию на основе уровня компонента для сетей Simscape™. Вместо этого это собирает в группу диагностическую информацию для нескольких компонентов Simscape, соединенных с одним Блоком Configuration Решателя.

Свойства

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

Тип запроса, заданный как вектор символов формы '<type> Blocks', где <type> равен тип блока, заданный в Type.

Запросите описание, заданное как вектор символов формы 'Blocks with <type> Block types', где <type> равен Type. Можно добавить собственное описание в объект запроса, использующий это свойство.

Использование

После создания linqueryIsBlockType запрашивают объект, вы можете:

  • Найдите все блоки заданного типа в объекте LinearizationAdvisor при помощи запроса linqueryIsBlockType непосредственно с командой find.

  • Создайте объект CompoundQuery путем логического объединения запроса linqueryIsBlockType с другими объектами запроса.

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

findНайдите блоки в результатах линеаризации, которые совпадают с определенными критериями

Примеры

свернуть все

Загрузите модель Simulink.

mdl = 'scdspeed';
load_system(mdl)

Линеаризуйте модель и получите объект LinearizationAdvisor.

opts = linearizeOptions('StoreAdvisor',true);
io(1) = linio('scdspeed/throttle (degrees)',1,'input');
io(2) = linio('scdspeed/rad//s to rpm',1,'output');
[sys,op,info] = linearize(mdl,io,opts);
advisor = info.Advisor;

Создайте объект запроса и найдите все блоки интегратора.

qInteg = linqueryIsBlockType('Integrator');
advInteg = find(advisor,qInteg)
advInteg = 
  LinearizationAdvisor with properties:

               Model: 'scdspeed'
      OperatingPoint: [1x1 opcond.OperatingPoint]
    BlockDiagnostics: [1x2 linearize.advisor.BlockDiagnostic]
           QueryType: 'Integrator Blocks'

Альтернативная функциональность

Приложение

Можно также создать пользовательские запросы для нахождения определенных блоков в результатах линеаризации с помощью Советника по вопросам Линеаризации в Linear Analysis Tool. Для получения дополнительной информации смотрите, Находят Блоки в Результатах Линеаризации, Совпадающих с Определенными Критериями.

Введенный в R2017b