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 функция, можно использовать пары значения и параметры блоков. Для списка всех параметров блоков смотрите Common Block Properties и Специфичные для блока Параметры.

Чтобы указать дополнительную информацию о поиске блоков, чтобы заменить, вы используете 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')

Замените блоки Усиления на блоки Интегратора. Команда возвращает блоки, которые она нашла, чтобы заменить и заменяет блоки.

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