Пример построения модели в Simulink

В качестве примера использования Simulink для моделирования систем рассмотрим отопление в жилом индивидуальном доме. Пусть для простоты, дом состоит из всего лишь одного помещения, в котором установлено отопление суммарной тепловой мощностью Р. Температура внутри этого дома Т градусов, температура за окном - Т0 градусов. Нас интересует каким образом изменяется температура при изменении мощности Р (рисунок 2.5).

Модель отапливаемого помещения по входу-выходу

Рисунок 2.5. Модель отапливаемого помещения по входу-выходу.

Прежде чем составлять модель, рассмотрим интуитивно некоторые ее свойства. Во-первых, вполне очевидно, что если включить отопление, то сначала температура будет расти, а потом стабилизируется - наступит тепловое равновесие между подводимым теплом и рассеиваемым на улицу через щели в окнах, вентиляцию и т.д. Если печку выключить, то температура будет падать и в конце-концов дома будет также холодно, как и на улице. Существенными параметрами модели является:

  • • температура за окном Т0 - чем меньше она, тем больше тепла уходит из дома и тем больше нужна мощность нагревателя, чтобы достичь заданной температуры внутри Хц
  • • качество теплоизоляции - чем хуже теплоизоляция, тем больше тепла выходит наружу;
  • • масса воздуха внутри дома - чем больше воздуха, тем дольше его нужно нагревать до заданной температуры и тем дольше будет остывать дом при отключении отопления.

В теплотехнике существуют множество моделей, с разной степенью точности моделирующие процессы нагревания и охлаждения тел. Далее мы рассмотрим самый простой из них. Для этого необходимо ввести понятие количества теплоты - энергии, необходимой для изменения термодинамического состояния тела (например, температуры). Из школьной физики хорошо известно, что для того, чтобы нагреть тело массой m и теплоемкостью с от температуры Т до Т2 необходимо затратить количество теплоты Q, равное

Количество теплоты Qi, которое поступает от нагревателя мощностью Р за время т - это просто интеграл по времени:

Для того, чтобы понять сколько тепла ушло на улицу, необходимо воспользоваться понятием теплового потока Q0{t) - количество теплоты, проходящей через поверхность за единицу времени. Если считать, что теплопроводность внутри двух соприкасающихся сред больше, чем теплопроводность между ними, то тепловой поток пропорционален разности их температур:

Запишем уравнение теплового баланса:

продифференцировав обе части по времени, можно записать дифференциальное уравнение, связывающее динамику изменения температуры T{(t) от мощности нагревателя:

Обозначив коэффициент ст = а и разделив переменные для интегрирования, можно записать:

Последнее выражение - есть простейшая модель процесса теплообмена при отоплении помещения. Рассмотрим как осуществить моделирование этой системы с помощью Simulink.

Для создания модели в среде Simulink необходимо последовательно выполнить ряд действий.

Для начала необходимо создать новый файл модели с помощью команды File / New / Model, или используя кнопку на панели инструментов (здесь и далее, с помощью символа /, указаны пункты меню программы, которые необходимо последовательно выбрать для выполнения указанного действия). Вновь созданное окно модели показано на рисунке 2.6.

Пустое окно модели

Рисунок 2.6. Пустое окно модели.

Далее расположим компоненты библиотеки Simulink в окне модели. Для этого необходимо открыть соответствующий раздел библиотеки (например, Sources - Источники). Далее, указав курсором на требуемый блок и, нажав на левую клавишу мыши, перетащить блок в созданное окно модели. Клавишу мыши нужно держать нажатой.

Рассматривая дифференциальное уравнение модели, можно составить следующий список компонентов, которые изменяют сигналы модели:

  • • в модель необходимо ввести параметр То, который в начале будет константой - используем компонент библиотеки Simulink / Commonly Used Blocks / Constant или Simulink / Sources / Constant (это один и тот же компонент);
  • • чтобы получить разность температур Т0 — ТД?) необходимо использовать сумматор (в режиме вычитателя) - компонент библиотеки Simulink / Commonly Used Blocks / Sum или Simulink / Math Operations / Sum (также один и тот же компонент);
  • • для того, чтобы вычислить произведение разности температур на коэффициент к0 — ТД?)), необходимо использовать блок усилитель, поскольку такое произведение равнозначно усилению сигнала разности в к раз - ставим компонент библиотеки Simulink / Commonly Used Blocks / Gain или Simulink / Math Operations / Gain;
  • • чтобы получить сумму мощностей к(Т0 — T[1](t)) + P(t) под интегралом необходимо использовать сумматор - компонент библиотеки Simulink / Commonly Used Blocks / Sum или Simulink / Math Operations / Sum;
  • • чтобы получить количество теплоты из суммы мощностей с помощью интегрирования f (к(Т0 — Ti(t)) + P(t))dt необходимо использовать интегратор - компонент библиотеки Simulink / Commonly Used Blocks / Integrator или Simulink / Continuous / Integrator;

множающий значение интеграла на 1 /а - компонент билиотеки Simulink / Commonly Used Blocks / Gain или Simulink / Math Operations / Gain;

Кроме того, нем необходимо визуализировать зависимость Тф?), для этого мы используем осциллограф - компонент библиотеки Simulink / Commonly Used Blocks / Scope или Simulink / Sinks / Scope. А также мы задаем зависимость мощности от времени P(t) как единичный ступенчатый сигнал с помощью компонента библиотеки Simulink / Sources / Step.

Окно модели, содержащее необходимые блоки

Рисунок 2.7. Окно модели, содержащее необходимые блоки

На рисунке 2.7 показано окно модели, содержащее установленные блоки.

Для удаления блока необходимо выбрать блок (указать курсором на его изображение и нажать левую клавишу мыши), а затем нажать клавишу Delete на клавиатуре.

Для изменения размеров блока требуется выбрать блок, установить курсор в один из углов блока и, нажав левую клавишу мыши, изменить размер блока (курсор при этом превратится в двухстороннюю стрелку).

Блок, моделирующий интегратор и окно редактирования параметров блока

Рисунок 2.8. Блок, моделирующий интегратор и окно редактирования параметров блока

Следующий шаг - настройка параметров каждого блока. Для этого необходимо дважды щелкнуть левой клавишей мыши, указав курсором на изображение блока. Откроется окно редактирования параметров данного блока. При задании численных параметров следует иметь в виду, что в качестве десятичного разделителя должна использоваться точка, а не запятая. После внесения изменений нужно закрыть окно кнопкой ОК. На рисунке 2.8 в качестве примера показаны блок, моделирующий интегратор и окно редактирования параметров данного блока.

В рассматриваемой модели необходимо установить следующие параметры блоков:

  • • блок Integrator: параметр Initial condition = 20 - интегрирование осуществляется с начальной температуры в помещении 20 градусов;
  • • блок Suml (нижний из двух сумматоров): List of signs = |Н---

превращает сумматор в вычитатель;

Параметры а и к модели пока не будем задавать, положив а = 1 и к = 1. Определение парамтров модели рассмотрено в следующем разделе.

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

С целью удобства понимания модели, можно задать имена не только блокам, но и сигналам. Для этого необходимо дважды щелкнуть по сигналу и ввести имя. Обозначим сигналы, соответствующие переменным Р, Т0, Д: Р, То и Ti.

Схема модели, в которой выполнены все соединения между блоками и их настройка, показана на рисунке 2.9.

Окончательная схема модели

Рисунок 2.9. Окончательная схема модели.

После составления модели необходимо сохранить ее в виде файла на диске, выбрав пункт меню File/Save As... в окне схемы и указав папку и имя файла. При последующем редактировании схемы можно пользоваться пунктом меню File/Save. При повторных запусках программы Simulink загрузка схемы осуществляется с помощью меню File/Open... в окне обозревателя библиотеки или из основного окна MATLAB.

Запуск моделирования выполняется с помощью выбора пункта меню Simulation/Start или нажатием кнопки с треугольником (воспроизведение) на панели инструментов. Рядом в поле ввода указана продолжительность моделирования системы, по умолчанию моделирование останавливается при достижении модельного времени tstop = 10. Процесс расчета можно завершить досрочно, выбрав пункт меню

Simulation/Stop или кнопку с квадратом (стоп). Расчет также можно остановить (Simulation/Pause) и затем продолжить (Simulation/Continue).

Запустим моделирование. После окончания, дважды щелкнем на блок осциллографа (Scope). На нем должна отображается зависимость Ti(t) (рисунок 2.10). Если графика не видно, то необходимо щелкнуть правой кнопкой по черной зоне и выбрать из меню Autoscale, что приведет к автоматическому масштабированию осей графика.

Результат моделирования при Р — 1

Рисунок 2.10. Результат моделирования при Р — 1.

Видно, что температура внутри падает от 20 градусов до температуры, которая выше уличной Т0 = 1, моделируемой блоком Constant. Таким образом сказывается действие нагревателя.

Установим в параметрах блока Step, моделирующего зависимость P{t), большую мощность нагрева. Блок Step выдает на своем выходе константное значение, задаваемое его параметром Final value, и происходит это во время, задаваемое параметром Step time. До этого момента значение на выходе компонента Step равно 0. Установив параметр Final value = 10, запустим моделирование еще раз. Получим зависимость Т*(?), показанную на рисунке 2.11.

Результат моделирования при Р = 10

Рисунок 2.11. Результат моделирования при Р = 10.

Отчетливо видно, что температура падает до включения нагревателя при t — 1, после чего растет до достижения постоянного значения, соответствующего термодинамическому равновесию между теплом, подводимым нагревателем и отводимым наружу.

  • [1] для формирования сигнала внутренней температуры Т1(?) из интеграла мощности необходимо использовать блок усилитель, до-
 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >