replace_block

Замените блоки в модели Simulink

Описание

пример

replBlks = replace_block(sys,current,new) заменяет блоки current в sys модели с блоками типа new. Можно использовать блок из Simulink® библиотека или из другой модели в качестве блока замены.

Загрузите модель sys перед использованием этой функции. Функция предлагает вам выбрать блоки, которые вы хотите заменить, из списка блоков, которые соответствуют current аргумент.

Совет

Сохраните модель перед использованием этой команды.

пример

replBlks = replace_block(sys,Name,Value,new) заменяет блоки, которые соответствуют параметрам блоков, заданным в Name,Value аргументы в виде пар. Вы также можете использовать find_system Name,Value пар для проверки поиска заменяемых блоков.

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

С replace_block функция, можно использовать параметры блоков и значений. Список всех параметров блоков см. в разделах «Общие свойства блоков» и «Специфичные для блоков параметры».

Чтобы задать дополнительную информацию о поиске блоков для замены, вы используете find_system Name,Value пар перед параметрами блоков. Для примера можно использовать 'CaseSensitive','off' чтобы сделать поиск по корпусу блоков нечувствительным или 'FollowLinks','on' для перехода по ссылкам в библиотечные ссылки. Посмотрите find_system для этого списка Name,Value пар.

пример

replBlks = replace_block(___,'noprompt') заменяет блоки, не предлагая выбрать их из диалогового окна.

Примеры

свернуть все

Замените блоки в 'vdp' модель.

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

load_system('vdp');

Замените Gain блоки на Integrator блоки.

RepNames = replace_block('vdp','Gain','Integrator');

В диалоговом окне предлагается выбрать блоки, которые необходимо заменить.

С vdp/Mu в диалоговом окне нажмите кнопку OK.

Замените Scope блоки на To Workspace блоки.

RepNames = replace_block('vdp','Scope','simulink/Sinks/To Workspace');

В диалоговом окне предлагается выбрать блоки, которые необходимо заменить.

С vdp/Scope в диалоговом окне нажмите кнопку OK.

Замените блоки в Unlocked подсистема sldemo_clutch модель. Замените блоки, чьи Gain параметру задано значение bv.

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

openExample('sldemo_clutch');

В 'Unlocked' подсистема, замените блоки, чьи Gain значение bv с Integrator блоками.

replace_block('sldemo_clutch/Unlocked','Gain','bv','Integrator');

В диалоговом окне предлагается выбрать блоки для замены.

С sldemo_clutch/Unlocked/VehicleDamping в диалоговом окне нажмите кнопку OK.

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

load_system('f14')

Замените блоки Gain на блоки Integrator. Команда возвращает блоки, которые она нашла для замены, и заменяет блоки.

repl = replace_block('f14','Gain','Integrator','noprompt')
repl = 13x1 cell
    {'f14/Aircraft...'     }
    {'f14/Aircraft...'     }
    {'f14/Aircraft...'     }
    {'f14/Aircraft...'     }
    {'f14/Controller/Gain' }
    {'f14/Controller/Gain2'}
    {'f14/Controller/Gain3'}
    {'f14/Gain'            }
    {'f14/Gain1'           }
    {'f14/Gain2'           }
    {'f14/Gain5'           }
    {'f14/Nz pilot...'     }
    {'f14/Nz pilot...'     }

Выберите блок, являющийся библиотечной ссылкой. Следуйте библиотечным ссылкам и заменяйте Gain блоки на Integrator блоки в них.

 replace_block(gcb, 'FollowLinks', 'on', 'BlockType', 'Gain', 'Integrator', 'noprompt')

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

свернуть все

Имя модели, блоки которой нужно заменить, заданное как вектор символов. Если вы задаете модель, команда заменяет все блоки, которые совпадают в модели. Если вы задаете подсистему, команда заменяет блоки в этой подсистеме и ниже.

Пример: 'vdp', 'sldemo_fuelsys/fuel_rate_control'

Тип заменяемого блока, заданный как BlockType или MaskType значение. Чтобы узнать тип блока, выберите блок и в командной строке введите:

get_param(gcb,'BlockType')

Для маскированных блоков, чтобы узнать тип маски, выберите блок и введите:

get_param(gcb,'MaskType')

Блок для замены текущего блока, заданный в одной из следующих форм:

  • BlockType значение блока замены. Установка этого значения использует библиотечный блок в качестве блока замены.

  • MaskType значение блока замены. Установка этого значения использует библиотечный блок в качестве блока замены.

  • Путь к библиотеке блока замены, для примера, 'simulink/Sinks/To Workspace'. Наведите на блок в библиотеке, чтобы увидеть путь к библиотеке.

  • Имя пути блока из другой модели, например 'vdp/Mu'. Используйте это значение, чтобы повторно использовать образец блока из другой модели в вашей модели.

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

свернуть все

Блоки, возвращенные current аргумент, возвращенный как массив ячеек из векторов символов. Функция возвращает значения независимо от того, завершите ли вы замену.

Представлено до R2006a