Команда add_block


Назначение: Добавление нового блока в модель

 

Синтаксис:

add_block('src', 'dest')

Команда добавляет блок, полный путь которого задан параметром 'src', в модель в соответствии с путем назначения 'dest'.

 

add_block('src', 'dest', 'parameter1', value1, ...)

Команда добавляет блок, полный путь которого задан параметром 'src', в модель в соответствии с путем назначения 'dest' и устанавливает значения параметров блока.

 

Пример 1:

Команда add_block('built-in/Gain', 'EX_add_block/Gain') добавляет в модель EX_add_block.mdl усилитель Gain из встроенной библиотеки.

 

Пример 2:

Команда add_block('EX_add_block / In1', 'EX_add_block/My_Subsystem / In1')

копирует блок входного порта In1 измодели EX_add_block.mdl вподсистему My_Subsystem той же самой модели.

 

Пример 3:

Команда add_block('built-in/Constant', 'EX_add_block/Constant','Value','150') добавляет в модель EX_add_block.mdl блок Constant и устанавливает параметр Value этого блока равным 150.

 




Команда add_line




Назначение: Добавление новой линии связи в модель

Синтаксис:

h = add_line('sys','oport','iport')

Команда добавляет новую линию связи в модели sys от выходного порта oport ко входному порту iport. Параметры oport и iport задают полные пути блоков.

 

h = add_line('sys','oport','iport', 'autorouting','on')

Команда аналогична предыдущей. Дополнительный параметр autorouting (автоматическая трассировка), значение которого равно on, обеспечивает создание линии без пересечения пиктограмм блоков. По “умолчанию” значение этого параметра равно off.

 

h = add_line('sys', points)

Команда добавляет новую линию связи в модели sys в соответствии с координатами, заданными матрицей points. Началом системы координат окна модели считается левый верхнийугол окна.

 

Пример 1. Команда add_line('EX_add_line','Step/1','Sum/2') добавляет новую линию связи в модели EX_add_line.mdl между выходом блока Step (блок имеет один выход) и вторым входом блока Sum.

 

Пример 2. Команда add_line ('EX_add_line', 'Step1/1', 'Sum/2', 'autorouting','on') добавляет новую линию связи в модели EX_add_line.mdl между выходом блока Step1 и вторым входом блока Sum, при включенном режиме авто трассировки.

 

Пример 3. Команда add_line('EX_add_line',[20 55; 40 10; 60 60]) добавляет новую линию связи в модели EX_add_line.mdl в соответствии с координатами, заданными матрицей [20 55;40 10;60 60]) .

 




Команда add_param


Назначение: Добавление нового параметра в модель.

 

Синтаксис:

Команда add_param('sys', ,value1, ,value2,...) добавляет в модель sys новые параметры parameter1, parameter2…и присваивает им значения value1, ,value2,... Новые параметры доступны командам get_param, set_param и ничем не отличаются от стандартных параметров Simulink-модели. Имена параметров не чувствительны к регистру символов. Значения параметров чувствительны к регистру символов.

 

Пример. Команда add_param ('EX_add_param', 'data', '01

december 2002', 'time','21.00') добавляет вмодель EX_add _param. mdl новые параметры data и time и присваивает им значения '01 december 2002' и '21.00', соответственно.




Команда bdclose


Назначение: Команда закрывает Simulink-модель (все модели) без сохранения изменений.

Синтаксис:

bdclose

Команда закрывает активную модель.

 

bdclose('sys') Команда закрывает модель sys. bdclose('all')

Команда закрывает все открытые модели.

 

Пример. Команда bdclose('my_model') закрывает модель my_model.mdl .




Команда bdroot


Назначение: Возвращает имя модели (подсистемы верхнего уровня).

 

Синтаксис:

bdroot

Команда возвращает имя активной модели.

 

bdroot('obj')

Команда возвращает имя модели содержащей объект obj.

 

Пример. Команда bdroot(gcb) возвращает имя модели содержащей выделенный в данный момент блок.




Команда close_system


Назначение: Команда закрывает модель с возможностью сохранения изменений.

Синтаксис:

close_system

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

 

close_system('sys')

Команда закрывает модель или подсистему с указанным именем sys.

 

close_system('sys', saveflag)

Команда закрывает модель или подсистему и, в зависимости, от параметра saveflag выполняет или не выполняет сохранение изменений. В случае, если параметр saveflag равен 0 изменения не сохраняются. Если же значение данного параметра равно 1, то внесенные в модель или подсистему изменения сохраняются.

 

close_system('sys', 'newname')

Команда сохраняет модель sys под новым именем

 

newname. close_system('blk')

Команда закрывает окно диалога блока, полный путь которого задан параметром blk, или вызывает CloseFcn функцию, если данная функция для блокаопределена.

 

Пример 1. Команда close_system('my_model', 'new_model') сохраняет модель my_model.mdl под новым именем new_model.mdl .

Пример 2. Команда close_system('my_model', 1) сохраняет модель my_model.mdl со всеми изменениями.




Команда delete_block


Назначение: Удаление блока из модели.

 

Синтаксис:

delete_block('blk')

Команда удаляет блок в соответствии с параметром blk, задающим полный путь к блоку.

 

Пример 1:

Команда delete_block('EX_delete_block/My_Subsystem/In1') удаляет входной порт In1 из подсистемы My_Subsystem модели EX_delete_block.mdl .




Команда delete_line


Назначение: Удаление линии связи

Синтаксис:

delete_line('sys', 'oport', 'iport')

Команда удаляет линию связи в модели sys от выходного порта oport ко входному порту iport. Параметры oport и iport задают полные пути блоков.

 

delete_line('sys', [x y])

Команда удаляет линию связи, которой принадлежит точка с координатами [x y].

 

Пример 1. Команда delete_line('EX_delete_line', 'Step/1', 'Sum/2') удаляет линию связи в модели EX_delete_line.mdl между выходом блока Step (блок имеет один выход) и вторым входом блока Sum.

 

Пример 2. Команда delete_line('EX_delete_line',[20 55]) удаляет линию связи, которой принадлежит точка с координатами [20 55].




Команда delete_param


Назначение: Удаление параметра модели, добавленного командой add_param .

 

Синтаксис:

delete_param('sys','parameter1','parameter2',...)

Команда удаляет из модели sys параметры parameter1, parameter2…, добавленные ранее командой add_param .

 

Пример. Команда delete_param('EX_delete_param', 'data', 'time') удаляет из модели EX_delete_param.mdl параметры data и time , добавленные ранее командой add_param .




Команда find_system


Назначение: Поиск моделей (подсистем), блоков, линий, портов и текстовых описаний.

 

Синтаксис:

find_system (sys, 'c1', cv1, 'c2', cv2,...'p1', v1, 'p2', v2,...)

Команда выполняет поиск моделей (подсистем), блоков, линий, портов и их описаний, полный путь которых задан параметром sys, с использованием ограничений, заданных параметрами c1, c2 и имеющих значения параметров v1, v2 .

 

Виды ограничений приведены в следующей таблице.

 

Ограничение

Значение

Описание

'SearchDepth'

scalar

Устанавливает глубину поиска (0 – только для открытых систем, 1 – для блоков и подсистем верхнего уровня, 2 – для системы верхнего уровня и ее дочерних подсистем, и т.д.) Значение по умолчанию all – все уровни.

 

'none'

Пропуск маскированных блоков.

'LookUnderMasks'

{'graphical'}

Поиск внутри маскированных блоков, не имеющих окон диалога и рабочей области маски. Этот параметр используется “по умолчанию”.

 

'functional'

Поиск внутри маскированных блоков, не имеющих окон диалога.

 

'all'

Поиск внутри всех маскированных блоков.

'FollowLinks'

'on'| {'off'}

Если параметр имеет значение 'on', то отслеживаются связи с библиотечными блоками. Значение по умолчанию 'off' .

'FindAll'

'on'| {'off'}

Если параметр имеет значение 'on', то поиск распространяется на линии, порты и текстовые описания в пределах текущей модели. Значение по умолчанию 'off' .

'CaseSensitive'

{'on'}| 'off'

Поиск с учетом регистра символов (при поиске строковых параметров). Значение по умолчанию 'on' .

'RegExp'

'on'| {'off'}

Если параметр имеет значение 'on', то допускается проводить поиск с использованием шаблонов. Значение по умолчанию 'off' .




Пример 1. Команда find_system возвращает



В таблице значения используемых “по умолчанию” параметров приведены в фигурных скобках.

 

Пример 1. Команда find_system возвращает массив ячеек содержащих имена всех открытых подсистем и блоков.

 

Пример 2. Команда find_system('type', 'block_diagram') возвращает массив ячеек содержащих имена всех открытых моделей.

 

Пример 3. Команда find_system('my_model','SearchDepth', 2,'BlockType','Product') выполняет поиск блоков умножения Product в модели my_model.mdl и вее вложенных подсистемах.

 

Пример 4. Команда find_system('my_model', 'BlockType', 'Constant','Value', '100') выполняет поиск блоков Constant у которых значение параметра Value равно 100.

 

Для поиска с использованием шаблонов можно применять специальные символы приведенные в следующей таблице.

Символ

Описание

.

Заменяет любой символ. Например, шаблону 'a.' соответствуют выражения 'aa', 'ab', 'ac' и т.п.

*

Заменяет любую последовательность символов (включая пустую). Например, шаблону 'a*' соответствуют выражения 'a', 'ab', 'abc' и т.п. Шаблону '.*' соответствует любая строка, в том числе и пустая.

+

Заменяет любое количество предшествующих символов. Например, шаблону 'ab+' соответствуют выражения 'ab', 'abb', 'abbb' и т.п

^

Отмечает начало последовательности символов. Например, шаблону '^a' соответствует любая строка начинающаяся на символ 'a'.

$

Отмечает последний символ строки символов. Например, шаблону '$a' соответствует любая строка, оканчивающаяся на символ 'a'.

\

Предписывает считать следующий символ




обычным текстовым символом. Например, шаблон


 

 

обычным текстовым символом. Например, шаблон '\\' соответствует строке содержащей символ '\'.

[ ]

Определяет набор символов в выражении поиска. Например, шаблон 'f[oa]r' соответствует выражениям 'for' и 'far'. Символ (-) задает диапазон символов. Например, шаблон '[a-zA-Z1-9]' соответствует любому алфавитно-цифровому символу. Символ (^) определяет исключаемые символы при поиске. Например, шаблон 'f[^i]r' соответствует строкам 'far' and 'for', но не соответствует строке 'fir'.

\w

Задает поиск строк, содержащих только алфавитно-цифровые символы. Например, шаблон '^\w' соответствует строке 'mu', но не соответствует строке '&mu'.

\d

Задает поиск строк, содержащих только цифровые символы. Например, шаблон '\d+’ задает поиск любого целого числа.

\D

Задает поиск строк, не содержащих цифровые символы (аналог шаблона [^0-9]).

\s

Задает пробел в выражении поиска (аналог шаблона [ \t\r\n\f]).

\S

Исключает пробелы из выражения поиска (аналог шаблона [^ \t\r\n\f]).

\<WORD\>

Задает поиск слова (последовательности символов отделенных с обеих сторон пробелами). Например, шаблону '\<to\>' соответствует слово 'to', но не соответствует слово 'today'.

 

Пример5. Команда find_system('my_model', 'regexp', 'on', 'blocktype', 'port') задает поиск входных и выходных портов в модели my_model.mdl.




Команда gcb


Назначение: Получение пути текущего блока.

Синтаксис:

gcb

Команда возвращает полный путь текущего блока.

 

gcb('sys')

Команда возвращает полный путь текущего блока в модели

 

sys.

Под текущим блоком понимается выделенный в окне модели блок, блок который выполняется в данный момент времени под управлением S-функции, блок callback-функция которого выполняется в данный момент времени или маскированный блок для которого выполняется функция инициализации.

Команду удобно использовать при получении пути блока для команд get_param и set_param.

 

Пример. Команда get_param(gcb,'Gain') для текущего блока Gain возвращает значение параметра Gain.

Команда  gcs

Назначение: Получение пути текущей модели.

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




Команда get_param


Назначение: Получение значения параметров модели или блока.

Синтаксис:

get_param('obj', 'parameter')

Команда возвращает значение параметра parameter, для объекта, полный путь которого задан выражением obj.

 

Пример 1: Команда get_param('EX_get_param/Constant','Value') определяет значение параметра Value блока Constant модели EX_get_param.mdl .

 

Пример 2: Команда get_param('EX_get_param/Constant', 'ObjectParameters') определяет все атрибуты блока Constant модели EX_get_param.mdl .

 

Пример 3: Команда get_param('EX_get_param/Constant', 'DialogParameters') определяет параметры задаваемые в окне диалога блока Constant модели EX_get_param.mdl .

 

Пример 4: Команда get_param('EX_get_param', 'MaxStep') определяет значение параметра MaxStep (максимальный шаг расчета) модели EX_get_param.mdl .




Команда new_system


Назначение: Создание новой модели.

 

Синтаксис:

new_system('sys')

Команда создает новую модель sys . При этом окно модели не открывается. Для открытия окна следует использовать команду open_system('sys') .

 

Пример: Команда new_system('my_model') создает модель my_model.mdl .




Команда open_system


Назначение: Команда открывает окно модели, подсистемы, окно диалога блока.

Синтаксис:

open_system('sys')

Команда открывает модель sys.mdl .

 

open_system('blk')

Команда открывает окно диалога блока blk модели sys.mdl .

 

open_system('sys/Subsystem','force')

Команда открывает маскированную подсистему Subsystem модели sys.mdl . Команда аналогична пункту меню Look Under Mask.

 

Пример 1. Команда open_system('my_model') открывает модель my_model.mdl .

Пример 2. Команда open_system('my_model/Constant') открывает окно диалога блока Constant модели my_model.mdl .

Пример 3. Команда open_system('my_model/Subsystem') открывает окно маскированной подсистемы Subsystem модели my_model.mdl .




Команда replace_block


Назначение: Команда выполняет замену одного блока на другой.

 

Синтаксис:

replace_block('sys', 'blk1', 'blk2', 'noprompt')

Команда заменяет все блоки типа blk1 на блоки blk2 модели sys без запроса на подтверждение операции. Если blk2 не является библиотечным блоком, то требуется указать полный путь к блоку.

 

replace_block('sys', 'Parameter', 'value', 'blk', ...)

Команда заменяет все блоки, параметр которых Parameter равен value на блоки blk модели sys .

 

Пример 1. Команда replace_block('EX_replace_block', 'Step', 'Inport', 'noprompt') заменяет в модели EX_replace_block.mdl блок Step на блок Inport без запроса на подтверждение операции.

 

Пример 2. Команда replace_block('EX_replace_block', 'Value','100','Gain', 'noprompt') заменяет в модели EX_replace_block.mdl блоки, параметр которых равен 100 на блоки Gain без запроса на подтверждение операции.




Команда save_system


Назначение: Сохранение файла модели.

Синтаксис:

save_system

Сохранение открытой модели под текущим именем.

 

save_system('sys')

Сохранение модели sys под текущим именем.

 

save_system('sys', 'newname')

Сохранение модели sys под новым именем newname.

 

Пример 1. Команда save_system('my_model') сохраняет модель в файле my_model.mdl .

Пример 2. Команда save_system('my_model,'new_model') сохраняет модель в файле new_model.mdl .




Команда set_param


Назначение: Установка параметров модели или блока.

 

Синтаксис:

set_param('obj', 'parameter1', value1, 'parameter2', value2, ...)

Команда выполняет присваивание новых значений value1, value2… параметрам parameter1, parameter2… модели (блока) obj. Имена параметров не чувствительны к регистру символов. Значения параметров чувствительны к регистру символов.

 

Пример 1. Команда set_param ('EX_set_param', 'Solver', 'ode15s', 'StopTime', '100') устанавливает метод решения (параметр Solver) ode15s и время окончания расчета (параметр StopTime) 100 для модели EX_set_param.mdl.

 

Пример 2. Команда set_param('EX_set_param/Step', 'After', '1.5') устанавливает параметр Final Value блока Step модели EX_set _ param.mdl равным 1.5.

 

Пример 3. Команда set_param('EX_set_param/TransferFcn', 'Numerator', '[5 7 9]', 'Denominator', '[2 3 0]') устанавливает параметры блока Transfer Fcn

 

Команда может использоваться для изменения параметров модели или блока в процессе расчета. Однако не все параметры блоков могут быть изменены в этом случае. Например, нельзя изменить в процессе расчета размерности входных и выходных портов подсистемы или блока. Параметры блоков библиотеки Power System Blockset также нельзя изменять в процессе расчета. Следует иметь в виду еще и то, что иногда название параметра, данное в окне диалога, отличается от фактического названия параметра (имени переменной, которой присваивается значение параметра). Так, например, для блока Step, фактическое имя параметра Initial Value есть Before, а фактическое имя параметра Final Value есть After. Для выяснения фактических имен параметров можно открыть файл модели в каком-либо текстовом редакторе и просмотреть секцию, в которой описан данный блок.

 

Ниже приведен пример текстового описания блока Step в файле модели:

 

Block { BlockType Step Name "Step" Position [125, 75, 155, 105] Time "0.1" Before "10" After "20" SampleTime "0" VectorParams1D on } .

 

Из приведенного фрагмента хорошо видно, какие фактические имена имеют параметры данного блока.

Команда simulink

Назначение: Команда открывает окно библиотеки блоков simulink.

 

Синтаксис:

simulink.




Отладчик Simulink моделей


Отладчик Simulink является инструментом для поиска и диагностирования ошибок в моделях Simulink. Он дает возможность точно определить проблемы, выполняя моделирование постепенно с отображением значений входных и выходных сигналов любого из интересующих блоков модели. Simulink-отладчик имеет и графический, и интерфейс пользователя командной строки. Графический интерфейс позволяет наиболее удобно использовать основные возможности отладчика. Интерфейс командной строки дает способ обращаться ко всем возможностям отладчика. Пользователь, как правило, работает с графическим интерфейсом отладчика и обращается к интерфейсу командной строки по мере необходимости.