Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lab2.doc
Скачиваний:
12
Добавлен:
13.11.2019
Размер:
3.69 Mб
Скачать

3. Соединение и дублирование блоков

Для объединения блоков в систему необходимо соединить их входные и выходные порты, которые на пиктограммах блоков отмечены значком «>» (рис.2.12).

Рисунок 2.12 – Блок Constant

Допустим, в модели необходимо использовать несколько экземпляров одного блока. Конечно, можно многократно повторять процедуру перемещения одного и того же блока из библиотеки в окно создаваемой модели, однако Simulink позволяет создавать копии (дубликаты) блоков из имеющихся в окне модели. Для создания копии блока надо установить курсор на требуемый блок в окне модели, нажать на клавиатуре клавишу «Ctrl» и затем левую клавишу мыши. В результате, слева от курсора появится знак «+». Затем, удерживая клавиши в нажатом положении, переместить в нужное место курсор и отпустить нажатые клавиши.

При построении модели часто требуется не только соединять блоки между собой, но и делать ответвления от существующих соединительных линий. Проведение линии, соединяющей входной порт какого-либо блока с существующей линией, выполняется аналогично дублированию блоков, то есть при нажатой клавише «Ctrl». Разница лишь в том, что в этом случае курсор мыши устанавливается на линию, от которой проводится ответвление, и перемещается к входному порту соединяемого блока. Если же вести ответвление от блока к линии, то даже нажатие «Ctrl» не обязательно.

4. Объединение блок-диаграмм в составные блоки

Как уже говорилось ранее, блок-диаграммы Simulink могут быть объединены в составные блоки, что позволяет использовать иерархическое представление структуры модели.

Для того, чтобы выделить часть системы в составной блок, можно пойти стандартным путем: перенести из библиотеки блоков блок «Подсистема» Subsystem (как раз и представляющий собой составной блок) и, раскрыв его окно, сформировать его структуру в этом отдельном окне. Но в пакете Simulink предусмотрен и другой способ: выстроив блок-диаграмму в основном окне создаваемой модели, можно выделить ее часть (ту, что необходимо объединить в составной блок) и, пойдя в меню, выбрать пункт «Edit/Create Subsystem». В результате в основном окне автоматически образуется составной блок, в котором будет заключена та часть блок-диаграммы, что была выделена. Выделение необходимой части блок-диаграммы можно произвести, нажав левую кнопку мышки в одном из углов предполагаемой рамки (которой необходимо обвести выделяемую часть диаграммы) и, удерживая левую кнопку мышки, растянуть появившуюся рамку до необходимых размеров. После этого кнопку необходимо отпустить.

5. Непрерывное и дискретное время

В пакете Simulink различают два «времени»: непрерывное и дискретное. Увидеть различие между этими двумя способами задания времени можно на простейшем примере: взяв блок «Часы» (Clock) и блок «Дискретные часы» (Digital Clock), подадим их выходы на входы мультиплексора, а выход мультиплексора соединим с входом «осциллографа» (Scope).

Рисунок 2.13 – Модель для сравнения «непрерывного» и «дискретного» времени

Рисунок 2.14 – Сравнение сигналов «непрерывного» и «дискретного» времени на экране блока Scope

Как видно из рис.2.14, непрерывное время задается линейной функцией y = t, дискретное время представляет собой ступенчатую возрастающую функцию. В пакете Simulink дискретное время задается скалярной величиной, определяющей величину «ступеньки». Так как в данной работе основным предметом рассмотрения является гибридная система, то встает вопрос о том, каким образом происходит совмещение работы непрерывных и дискретных блоков в рамках одной модели?

В пакете Simulink с точки зрения задания времени существует несколько типов блоков:

 Непрерывные блоки (такие как «Integrator», «Derivative», «Transfer Fcn» и т.д.) работают в непрерывном времени.

 Блок «Константа» (Const) подддерживает на выходе заданное постоянное значение и является нейтральным.

 Дискретные блоки (такие как «Zero-Order Hold», «Unit Delay», «Discrete Transfer Fcn» и т.д.) работают в дискретном времени, параметры которого задаются в диалоговом окне блоков.

 Остальные блоки (такие как «Gain».) имеют неявную установку на работу в дискретном времени. Но если блок «Gain» следует за интегратором, он работает в непрерывном времени (так как интегратор является блоком с непрерывным временем), хотя если этот же самый блок «Gain» следует за блоком «Zero-Order Hold», он работает как дискретный блок, причем в том же дискретном времени, что и блок «Zero-Order Hold».

Если на входы блока подаются сигналы с различными установками дискретного времени, то блок автоматически выбирает из них дискретное время с минимальным шагом и работает именно в его режиме. Важно отметить, что блоки «Mux» и «Demux» просто группируют операторы - сигналы, проходящие через них сохраняют свою информацию о синхронизации дискретного времени.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]