Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

MATLAB Simulink. Компьютерное моделирование экономики

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
2.10. Editor — редактор программ
Дважды щелкнув по иконке переменной, вы вызовете редактор цифрового содержания переменной Array Editor (окно справа вверху). Вы можете менять цифры, удалять и добавлять новые.
2.10. Editor — редактор программ
Чтобы моделировать экономику в Simulink, не обязательно знать Matlab, но для автоматизации управления экономическими экспериментами с моделями Simulink полезно написать програм­мы на языке Matlab. Программы (м-файлы) пишутся и отлажива­ются в редакторе/отладчике. Он вызывается, когда из меню ôàéë Matlab мы открываем новый или существующий м-файл.
Для примера окно отладчика с программой управления экспе­риментами над имитационной моделью налогообложения показа­но на рис. 2.8.
Программа пишется как в обычном текстовом процессоре, на­пример, Word. В меню имеется команда для отладки Debug. Äëÿ
Рис. 2.8. Окно редактора с программой управления экспериментами
над имитационной моделью налогообложения
41
2. Введение в MATLAB
выполнения лабораторных работ на отлаженной модели экономи­сту наиболее полезна команда Run èç
раздела Debug. Она запуска-
ет программу на исполнение и манипуляции с моделью Simulink. Этой же программой обрабатываются и отображаются результаты экспериментов.
Breakpoints — точки останова. Ими помечают строки програм­мы для останова и анализа поэтапного исполнения программы при ее отладке.
Язык Matlab прост и похож по конструкциям (рис. 2.8) на боль­шинство языков программирования. Он использует широкий на­бор функций Matlab, но здесь уже надо знать их математический и экономический смысл и синтаксис. Описание любой функции Matlab можно получить в Help (Справка).
В наше программе управления налоговой моделью Simulink все тексты, перед которыми стоит знак процента, не исполняются. Это комментарии — пояснения к исполняемым операторам и функциям программы. В строке 5 функцией path выбирается ра­бочая папка, в которой находится модель. В строке 8 функцией open_system загружается налоговая модель Simulink В строке 9 за­дается вектор налоговых ставок как аргументов эксперимента. В строках с 10 по 15 задан цикл for_end для вычислительных экс­периментов при различной рентабельности предприятий. В строке 10 вектор рентабельностей. В строке 11 функцией sim('TaxRate') запускается вычисление (simulation) модели. Результаты модели­рования в Simulink передаются в рабочую область Matlab в матри­цу ScopeData. Программа функцией plot (строка 12) чертит графи­ки результатов моделирования в Simulink. В строке 13 hold on удерживает график для рисования данных следующего цикла. Функция grid чертит на графике сетку. End завершает цикл по рентабельности. Hold off завершает работу с графиком.
42
3. Знакомство с Simulink
Simulink — это компьютерная програмная система для модели­рования систем управления. Simulink работает под управлением MATLAB и использует для моделирования все его возможности. Им моделируют линейные, нелинейные, непрерывные, дискрет­ные и гибридные системы.
При этом, в отличие от классических способов моделирования, пользователю не нужно досконально изучать язык программиро­вания и численные методы математики, а достаточно общих зна­ний, требующихся при работе на компьютере, и знаний той пред­метной области, в которой он работает.
При работе с Simulink пользователь имеет возможность модер­низировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков.
При моделировании пользователь может выбирать метод реше­ния дифференциальных уравнений, а также способ изменения мо­дельного времени (с фиксированным или переменным шагом). В ходе моделирования имеется возможность следить за процесса­ми, происходящими в системе. Для этого используются специаль­ные устройства наблюдения, входящие в состав библиотеки Simu­link. Результаты моделирования могут быть представлены в виде графиков или таблиц.
Преимущество Simulink заключается также в том, что он позво­ляет пополнять библиотеки блоков с помощью подпрограмм напи­санных как на языке MATLAB, так и на языках С++, Fortran и Ada.
Модель исследуемой системы составляется в виде блок-схемы. Блоки таскаются мышью из библиотеки типовых блоков Simulink, являющихся моделями элементов технических или экономических систем. Каждый типовой блок является объектом с графическим начертанием, графическим и математическим символом, с выпол­няемой программой и числовыми или формульными параметрами. Блоки соединяются линиями, отображающими движение материа­льных, финансовых и информационных потоков между объектами.
Модели могут быть иерархическими, т. е. включать подсистемы в виде одного блока. Двойным щелчком мыши на блоке подсисте­мы открываем содержимое этой подсистемы (более низкий уро­вень иерархии).
43
3. Знакомство с Simulink
После построения модели можно моделировать, используя раз­личные методы интегрирования дифференциальных уравнений, задаваемых в меню Simulink. Используя блок Scope (графопостро­итель) или Display (числовое отображение), можно просмотреть результаты моделирования.
3.1. Запуск Simulink
Simulink запускается из MATLAB. Его лэйбл представлен на рис. 3.1.
Рис. 3.1. Представление Simulink
Есть четыре варианта запуска Simulink:
1. В командном окне MATLAB ввести команду Simulink.
2. В строке инструментов главного окна MATLAB щелкнуть по кнопке Simulink (зеленая с красным пятнышком слева вни­зу, третья слева от знака help «?»).
3. Выполнить команду Open в меню File и открыть файл моде­ли (mdl-файл).
4. В проводнике Windows, дважды щелкнув левой кнопкой мыши, загрузите любой mdl-файл. Запустится MATLAB, Si- mulink и загрузится модель, готовая к исполнению ваших же­ланий. В меню модели щелкните Simulation/Start и получите результаты моделирования.
44
3.1. Запуск Simulink
Последние два варианта удобно использовать для запуска уже готовой и отлаженной модели, когда требуется лишь провести рас­четы и не нужно добавлять новые блоки в модель. Использование первого и второго способов приводит к открытию окна обозрева­теля разделов библиотеки Simulink (ðèñ. 3.2).
Рис. 3.2. Окно обозревателя разделов библиотеки Simulink
Список разделов библиотеки Simulink представлен в виде дере­ва, и правила работы с ним являются общими для списков такого вида. Пиктограмма свернутого узла дерева содержит символ «+», а пиктограмма развернутого содержит символ «–». Для того чтобы развернуть или свернуть узел дерева, достаточно щелкнуть на его пиктограмме левой клавишей мыши (ЛКМ). При выборе соответ­ствующего раздела библиотеки в правой части окна отображается его содержимое.
Для работы с окном используются команды, собранные в меню. Меню обозревателя библиотек содержит следующие пункты:
File (Файл) — работа с файлами библиотек.
45
3. Знакомство с Simulink
Edit (Редактирование) — добавление блоков и их поиск (по на-
званию).
View (Вид) — управление показом элементов интерфейса.
Help (Справка) — вывод окна справки по обозревателю биб-
лиотек.
Для работы с обозревателем можно также использовать кнопки на панели инструментов (рис. 3.3).
Рис. 3.3. Панель инструментов обозревателя разделов библиотек
Кнопки панели инструментов имеют следующее назначение:
1. Создать новую модель (открыть новое окно модели).
2. Открыть одну из существующих моделей.
3. Данная кнопка позволяет установить режим отображения окна обозревателя поверх всех окон. Повторное нажатие от­меняет такой режим.
4. Поиск блока по названию (по первым символам названия). После того как блок будет найден, в окне обозревателя от­кроется соответствующий раздел библиотеки, а блок будет выделен. Если же блок с таким названием отсутствует, то в окне комментария будет выведено сообщение Not found <имя блока> (Блок не найден).
3.2. Окончание сессии Simulink
Традиционными для Windows способами закрываются окна Si-
mulink è MATLAB.
3.3. Библиотеки блоков Simulink
На рис. 3.2 в левом окне библиотеки блоков Simulink показаны имена подбиблиотек. В правом — блоки каждой подбиблиотеки. Окно обозревателя библиотеки блоков содержит следующие эле­менты:
46
3.3. Библиотеки блоков Simulink
Заголовок с названием окна — Simulink Library Browser.
Меню с командами File, Edit, View, Help.
Панель инструментов с ярлыками наиболее часто используе-
мых команд.
Окно комментария для вывода поясняющего сообщения о вы-
бранном блоке.
Строка состояния, содержащая подсказку по выполняемому
действию.
Несколько лет тому назад библиотека содержала ограниченное количество типовых блоков для моделирования систем управле­ния. Ныне библиотека неоправданно разрастается. В ней уже тя­жело ориентироваться. Мы рассмотрим лишь наиболее часто ис­пользуемые для моделирования экономики блоки.
Поясним имена подбиблиотек (разделов библиотеки блоков).
1. Commonly Used Blocks — подбиблитека наиболее часто испо­льзуемых блоков из других библиотек.
2. Continuous — блоки для моделирования линейных систем в непрерывном времени.
3. Discontinuties — нелинейные блоки.
4. Discrete — блоки для моделирования систем в дискретном времени.
5. Logic and Bit Operations — логические и битовые операции.
6. Lookup Tables — операции с таблицами.
7. Math Operations — блоки математических операций.
8. Model Verification — контроль переменных моделирования в заданных границах.
9. Model-Wide Utilities — блоки информации о модели.
10. Ports & Subsystems — блоки для создания подсистем.
11. Signal Attributes — блоки, отражающие характеристики сиг­налов (линий материальных, информационных и денежных потоков).
12. Signal Routing — маршрутизация сигналов (управление по­токами).
13. Sinks — блоки приема и отображения информации.
14. Sources — источники внешних воздействий на модель (эк­зогенных переменных).
15. User Defined Functions — не библиотечные, не стандартные функции, создаваемые пользователем.
47
3. Знакомство с Simulink
3.4. Создание простейшей модели
Для создания новой модели используется традиционная для
Windows команда меню file>new броузера. Для открытия и редак­тирования имеющейся модели — file>open. При этом раскрывается пустое или заполненное моделью окно Simulink модели.
Вначале надо ознакомиться с библиотекой блоков. Нарисовать на бумаге первую редакцию вашей блочной модели. Затем садить­ся за компьютер.
Создадим поэтапно простейшую модель безпроцентного накопи­тельного счета (пенсионного, образовательного, свадебного и др.).
Выполним команду меню file>new. Появляется новое пустое окно модели с именем untitled (ðèñ. 3.4).
Найдем в библиотеке раздел Continuous (системы непрерывного времени) и в нем Inegrator (накопитель). Обычно при слове «ин­теграл» бухгалтерши падают в обморок, а менеджеры хватаются за пистолет. Интеграл — это всего лишь накопитель, аккумулятор ва­ших денежных или материальных средств.
Затащим левой кнопкой мыши блок Inegrator из библиотеки в окно модели.
Подобную процедуру студенты не раз выполняли на младших курсах при изучении информатики и рисовании финансовых, хо­зяйственных и бухгалтерских схем в текстовом процессоре Word и
48
Рис. 3.4. Этапы создания модели
3.4. Создание простейшей модели
табличном процессоре Excel. Стрелка слева указывает на вход ин­тегратора, т. е. возможность подключения входного потока средств. Треугольник справа блока является его выходным сигна­лом и означает запас (сальдо) в накопителе.
Будем ежемесячно вкладывать в фонд рубли (можно тысячи и миллионы).
Для этого из раздела Sources затащим мышью блок
константу (Constant).
Создадим линию потока средств от константы к интегратору. Наведем курсор на выход блока константы. Курсор из стрелки превращается в крест. Протянем мышь до стрелки входа интегра­тора. Крест раздваивается. Отпускаем кнопку мыши. Произошло соединение блоков. Исчезли знаки входных и выходных портов блоков.
Для просмотра динамики денежек на нашем счете из библиоте­ки Sinks вытащим в модель графопостроитель Scope. Соединим с ним линией интегратор.
Запустим модель: меню Simulation > Start.
Просмотрим результаты моделирования. Дважды щелкнем по блоку Scope. Увидим график рис. 3.5.
Рис. 3.5. График накопления средств в интеграторе
Если вы запутались в графике, дважды щелкните по кнопке би­нокля в середине панели кнопок. Выполнится автомасштабирова­ние. График станет наглядным.
Ось времени (10 месяцев) обозначена внизу. Вертикальная ось показывает накопление денег при вкладах по рублю в месяц. За десять месяцев мы накопим 10 рублей.
Вы создали простейшую модель и выполнили моделирование!
Далее будем наращивать знания и умение по технике модели­рования.
49
4. Редактирование модели,
реконструкция и расширение
4.1. Окно модели и меню
Окно модели Simulink — это типовое окно Windows-приложе­ний. Оно содержит следующие элементы (рис. 3.4):
Заголовок с названием окна. Вновь созданному окну присваи-
вается имя Untitled с соответствующим номером.
Меню с командами File, Edit, View и т. д.
Панель инструментов.
Окно для создания схемы модели.
Строка состояния, содержащая информацию о текущем состоя-
нии модели.
Меню окна содержит команды для редактирования модели, ее
настройки и управления процессом расчета, работы файлами и
ò. ï.:
File (Файл) — работа с файлами моделей.
Edit (Редактирование) — изменение модели и поиск блоков.
В меню добавлены команды установки параметров блоков и
маскирования подсистем.
View (Вид) — управление показом элементов интерфейса. Важ-
на команда Library Browser. Вы исполняете ее, когда надо вы-
звать библиотеку блоков, чтобы пополнить модель.
Simulation (Моделирование) — задание настроек для моделиро-
вания и управление процессом расчета.
Format (Форматирование) — изменение шрифта, внешнего
вида блоков и модели в целом.
Tools (Инструментальные средства) — применение специаль-
ных средств для работы с моделью (отладчик, профайлер, гене-
ратор отчетов и др.)
Help (Справка) — вывод окон справочной системы.
Для работы с моделью можно также использовать кнопки на панели инструментов.
В нижней части окна модели находится строка состояния, в ко­торой отображаются краткие комментарии к кнопкам панели ин­струментов, а также к пунктам меню, когда указатель мыши нахо-
50