88452

Simulink как подсистема MATLAB

Курсовая

Информатика, кибернетика и программирование

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

Русский

2015-04-30

180 KB

17 чел.

Введение

Любой непрерывный (аналоговый) сигнал может быть подвергнут дискретизации по времени и квантованию по уровню (оцифровке), то есть представлен в цифровой форме. Если частота дискретизации сигнала не меньше, чем удвоенная наивысшая частота в спектре сигнала, то полученный дискретный сигнал эквивалентен сигналу. При помощи математических алгоритмов преобразуется в некоторый другой сигнал имеющий требуемые свойства. Процесс преобразования сигналов называется фильтрацией, а устройство, выполняющее фильтрацию, называется фильтр. Поскольку отсчеты сигналов поступают с постоянной скоростью, фильтр должен успевать обрабатывать текущий отсчет до поступления следующего (чаще – до поступления следующих отсчетов), то есть обрабатывать сигнал в реальном времени. Для обработки сигналов (фильтрации) в реальном времени применяют специальные вычислительные устройства – цифровые сигнальные процессоры. Все это полностью применимо не только к непрерывным сигналам, но и к прерывистым, а так же к сигналам, записанным на запоминающие устройства. В последнем случае скорость обработки не принципиальна, так как при медленной обработке данные не будут потеряны. Обработка сигналов во временной области широко используется в современной электронной осциллографии и в цифровых осциллографах. А для представления сигналов в частной области используются цифровые анализаторы спектра. Для изучения математических аспектов обработки сигналов используются пакеты расширения (чаще всего под именем Signal Processing) систем компьютерной математики MATLAB, Mathcad, Maple и др. В последние годы при обработке сигналов и изображений широко используется новый математический базис представления сигналов с помощью «коротких волночек» - вейвлетов. С его помощью могут обрабатываться нестационарные сигналы, сигналы с разрывами и иными особенностями и сигналы в виде пачек.

  1.  Simulink как подсистема MATLAB

Система MATLAB — это интерактивная система, предназначенная для компьютерного моделирования практически в любой области науки и техники. Она была создана в США компанией The MathWorks, Inc., и ее разработка для персональных компьютеров была представлена в начале 80-х годов.

Мощный программный комплекс MATLAB состоит из четырех компонент: MATLAB, Simulink, Toolbox и Blockset.

Компонент MATLAB представляет собой ядро системы — ядро MATLAB.

Компонент Simulink является подсистемой (расширением) MATLAB, предназначенной для блочного моделирования, однако, благодаря своим уникальным возможностям, этот компонент часто воспринимают как самостоятельную систему и называют  ядром  Simulink. Слово "simulink" образовано из комбинации первых четырех букв слова "simulation" (моделирование) и "link" (соединение).

Компоненты Toolbox (Набор инструментов) и  Blockset (Набор блоков) — это пакеты расширения MATLAB и Simulink соответственно, сгруппированные по специализированным приложениям, назначение которых отображается в их названиях.

  1.  Специфика Simulink

Для моделирования объектов и/или процессов в MATLAB предусмотрены следующие средства:

1.  Программные средства.

Моделирование программными средствами, под которыми понимают средства алгоритмического языка MATLAB, выполняется в режиме прямых вычислений или в программном режиме MATLAB.

2.  Стандартные программы GUI (Graphical User Interface — графический интерфейс пользователя).

Моделирование средствами GUI выполняется в режиме интерактивного общения в среде конкретного GUI.

Средства GUI созданы на основе программных средств MATLAB, но позволяют исключить использование языка MATLAB в явном виде, что существенно упрощает технологию создания моделей, в том числе и с целью их дальнейшего использования в командном или программном режиме MATLAB.

Средства GUI предполагают знакомство с программными средствами MATLAB, по меньшей мере, на концептуальном уровне.

3.  Средства Simulink.

Моделирование в Simulink выполняется средствами блочного моделирования.

Средства Simulink созданы на основе программных средств MATLAB, но позволяют исключить или минимизировать использование языка MATLAB в явном виде, что существенно упрощает технологию моделирования.

Специфика моделирования в Simulink определяется его основным предназначением — моделирование динамических систем (Dynamic Systems).

Технология моделирования в Simulink заключается в построении модели системы из стандартных блоков и позволяет следить за ее работой с помощью стандартных средств наблюдения, поэтому моделирование в Simulink часто называют "визуальным".

В большинстве приложений динамическую систему можно фактически или условно представить, как систему обработки сигналов, полагая, что понятия "сигнал" и "система" имеют широкое толкование, а именно:

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

Компьютерная модель динамической системы строится на основе математических моделей сигналов и систем.

  1.  Краткие сведения, необходимые для работы в MATLAB

MATLAB - это популярная система компьютерной математики, которая предназначена для выполнения инженерных и научных вычислений, таких как:

  •  простейшие расчеты по формулам;
  •  решение нелинейных уравнений и систем;
  •  решение задач линейной алгебры;
  •  решение задач оптимизации;
  •  дифференцирование и интегрирование;
  •  задачи обработки экспериментальных данных (интерполяция и аппроксимация, метод наименьших квадратов);
  •  решение обыкновенных дифференциальных уравнений и систем;
  •  решение дифференциальных уравнений в частных производных.

Кроме того, MATLAB предоставляет широкие возможности по созданию и редактированию различных видов графиков и поверхностей.

После запуска MATLAB на экране появляется основное окно приложения:

Это окно содержит меню, панель инструментов и рабочую область - Command Window. Признаком готовности системы к выполнению команды является наличие знака приглашения », после которого расположен активный курсор. Рабочую область со знаком приглашения обычно называют командной строкой. Ввод команд в MATLAB осуществляется с клавиатуры. Нажатие клавиши Enter заставляет систему выполнить команду и вывести результат.

Клавиши «Стрелка вверх» ↑ и «Стрелка вниз» ↓ управляют курсором, однако в MATLAB они имеют другое назначение. Эти клавиши позволяют вернуть в командную строку ранее введенные команды или другую входную информацию, так как вся эта информация сохраняется в специальной области памяти. Так, если в пустой активной командной строке нажать клавишу ↑, то появится последняя вводимая команда, повторное нажатие вызовет предпоследнюю и так далее. Клавиша ↓ выводит команды в обратном порядке.

Зона редактирования - это фактически командная строка. В ней действуют элементарные приемы редактирования:

  •  → - перемещение курсора вправо на один символ;
  •  ← - перемещение курсора влево на одни символ;
  •  Ноmе - перемещение курсора в начало строки;
  •  End - перемещение курсора в конец строки;
  •  Del - удаление символа после курсора;
  •  Backspace - удаление символа перед курсором.

Кроме того, существуют особенности ввода команд. Если команда заканчивается точкой с запятой «;», то результат ее действия не отображается в командной строке. В противном случае, при отсутствии знака «;», результат действия команды сразу же выводится в рабочую область.

М-файл - это список команд MATLAB, сохраненный на диске. Для подготовки, редактирования и отладки М-файлов служит специальный редактор, который можно вызвать, выполнив команду главного меню File >• New > M-file. В результате работы этой команды будет создан новый М-файл.

Привести операторы М-файла к выполнению можно несколькими способами:

  •  вызвать команду Debug > Run из меню редактора М-файлов;
  •  воспользоваться клавиатурой и нажать на кнопку F5;
  •  набрать имя М-файла в командной строки и нажать ENTER.

Текстовый комментарий в MATLAB – это строка, начинающаяся с символа %.

  1.  Знакомство с Simulink

Matlab - это высокопроизводительный язык для технических расчетов. Он включает в себя вычисления, визуализацию и программирование в удобной среде, где задачи и решения выражаются в форме, близкой к математической. Типичное использование MATLAB - это:

  •  математические вычисления
  •  создание алгоритмов
  •  моделирование
  •  анализ данных, исследования и визуализация
  •  научная и инженерная графика
  •  разработка приложений, включая создание графического интерфейса

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

Simulink является достаточно самостоятельным инструментом MATLAB и при работе с ним совсем не требуется знать сам MATLAB и остальные его приложения. С другой стороны доступ к функциям MATLAB и другим его инструментам остается открытым и их можно использовать в Simulink. Часть входящих в состав пакетов имеет инструменты, встраиваемые в Simulink (например, LTI-Viewer приложения Control System Toolbox – пакета для разработки систем управления). Имеются также дополнительные библиотеки блоков для разных областей применения (например, Power System Blockset – моделирование электротехнических устройств, Digital Signal Processing Blockset – набор блоков для разработки цифровых устройств и т.д).

При работе с Simulink пользователь имеет возможность модернизировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков.

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

Для запуска программы необходимо предварительно запустить пакет MATLAB. Основное окно пакета MATLAB показано на рисунке. Там же показана подсказка, появляющаяся в окне при наведении указателя мыши на ярлык Simulink в панели инструментов. Нажатие на ярлык Simulink в панели инструментов приводит к открытию окна обозревателя разделов библиотеки Simulink. Чтобы создать свою программу необходимо создать новый файл модели, расположить блоки в окне модели. Для этого необходимо открыть соответствующий раздел библиотеки. Далее, указав курсором на требуемый блок и нажав на левую клавишу “мыши” - “перетащить” блок в созданное окно.

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

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

Окно обозревателя библиотеки блоков содержит следующие элементы:

  •  Заголовок, с названием окна – Simulink Library Browser.
  •  Меню, с командами File, Edit, View, Help.
  •  Панель инструментов, с ярлыками наиболее часто используемых команд.
  •  Окно комментария для вывода поясняющего сообщения о выбранном блоке.
  •  Список разделов библиотеки, реализованный в виде дерева.
  •  Окно содержимого раздела библиотеки (список вложенных разделов библиотеки или блоков)
  •  Строка состояния, содержащая подсказку по выполняемому действию.

Библиотека Simulink содержит следующие основные разделы:

Continuous – библиотека непрерывных элементов (интегратор, дифференциатор, линейная система ОДУ и т.д.);

Discrete – библиотека дискретных элементов (интегратор с дискретным временем, дискретный фильтр и т.д.);

Functions & Tables – функции и таблицы (вызов функций Matlab, S-функции, блок, отображающий входной вектор в выходной (с использованием линейной интерполяции значений, определенных в параметрах блока) и т.д.);

Math – математические функции (абсолютное значение, комбинаторная логика, выделение вещественной и мнимой составляющей комплексного числа и т.д.);

Nonlinear – нелинейные элементы (релейное звено, переключатель и т.д. );

Signals & Systems – сигналы и системы (составной блок, входной сигнал, выходной сигнал, мультиплексер, демультиплексер и т.д.);

Sinks – средства отображения (временная диаграмма, вывод результатов в файл, остановка выполнения модели и т.д.);

Sources – источники сигналов (генератор импульсных/синусоидальных сигналов, генератор случайных чисел, генератор пилообразных сигналов, часы и т.д.).

Subsystems – блоки подсистем.

  1.  Дискретные сигналы

Под дискретным сигналом понимается последовательность чисел бесконечной разрядности — последовательность x(nT), где nT — дискретное время и T — период дискретизации, а под цифровым сигналом — последовательность чисел конечной разрядности— квантованная последовательность .

Термины "дискретный сигнал" и "последовательность" в теории ЦОС тождественны.

Случайные (стохастические) дискретные сигналы отождествляются с последовательностями случайных чисел и называются случайными (или стохастическими) последовательностями.

Понятно, что последовательность чисел бесконечной разрядности представить в MATLAB (и Simulink) невозможно, поэтому под дискретным сигналом будем условно понимать последовательность чисел типа double, а под цифровым — квантованную последовательность чисел с фиксированной точкой.

  1.  Раздел Math (математические блоки)

Раздел содержит 20 блоков, реализующих различные математические компоненты. Возможность задания множества математических компонентов с описываемыми пользователями свойствами имеет важное значение для выполнения доступного для пользователя математического моделирования как простых и сложных систем и устройств. Этот раздел позволяет эффективно реализовать многие математические операции, такие как суммирование, произведение и деление, простейшие математические функции, поиск минимума или максимума, решение уравнений, а также имеется возможность определения корней уравнений.

Блок вычисления суммы Sum

Назначение:

Выполняет вычисление суммы текущих значений сигналов.

Параметры:

Icon shape - форма блока (выбирается из списка):

Round - окружность, Rectangular - прямоугольник;

List of sign - список знаков (в списке можно использовать следующие знаки: + (плюс), - (минус);

Saturate on integer overflow (флажок) - подавлять переполнение целого. При установленном флажке ограничение сигналов целого типа выполняется корректно.

Количество входов и операция (сложение или вычитание) определяется списком знаков параметра List of sign, при этом метки входов обозначаются соответствующими знаками. В параметре List of sign можно также указать число входов блока. В этом случае все входы будут суммирующими. Если количество входов блока превышает 3, то удобнее использовать блок Sum прямоугольной формы. Блок может использоваться для суммирования скалярных или векторных сигналов. Типы суммируемых сигналов должны совпадать. Нельзя, например, подать на один и тот же суммирующий блок сигналы целого и действительного типов. Если количество входов блока больше, чем один, то блок выполняет поэлементные операции над векторными сигналами. При этом количество элементов в векторе должно быть одинаковым. Если в качестве списка знаков указать цифру 1 (один вход), то блок можно использовать для определения суммы элементов вектора.

Рис. 1. Примеры использования блока Sum

Литература

  1.  И.В.Черных. Моделирование электротехнических устройств в MATLAB, SimPowerSystems и Simulink. 2007 год.
  2.  В.Дьяконов. Simulink 4. Специальный справочник. Питер. 2001.
  3.  В.Дьяконов, В.Круглов. MATLAB. Анализ, идентификация и моделирование систем. Специальный справочник. Питер. 2001.
  4.  А.Гультяев. Визуальное моделирование в среде Matlab: Учебный курс. Питер. 2000.
  5.  А.Гультяев. MATLAB 5.2. Имитационное моделирование в среде Windows. Корона принт.1999.
  6.  С.Герман-Галкин. Компьютерное моделирование полупроводниковых систем в MATLAB 6.0. Корона принт. 2001.
  7.  Математическое моделирование. Михайлов А., Самарский А., Изд.: Академкнига
  8.  И.Цисарь, М.Крыкин. Matlab_Simulink. Лаборатория экономиста. Анкил. 2001.
  9.  В.Дьяконов, В.Круглов. Математические пакеты расширения MATLAB. Специальный справочник. Питер. 2001.
  10.  В.Дьяконов, И.Абраменкова, В.Круглов. MATLAB с пакетами расширений. Нолидж. 2001.


 

А также другие работы, которые могут Вас заинтересовать

14973. Жамбыл облысындағы тарихи тұлғаларға орнатылған ескерткіштер 583.5 KB
  Тәуелсіздікті жақындатқан тұлғалар Азаттықтың ақ таңы атқалы он бес жылда облысымызда орнатылған ескерткіштер елдік еңсемізді биіктетіп тұр Лесбек Сайлаубеков Тәуелсіз ел атануымыздың арқасында өшкеніміз жанып өлгеніміз тіріліп жлоғымыз түгенделуде. Ш
14974. Қадырғали Жалайыридың зираты 44 KB
  Қадырғали Жалайыри зираты Ресейдің Рязань облысындағы Қасымов қаласында жатыр Қазақ халқы мемлекеттік тәуелсіздігінің арқасында өзінің тарихи рухани және мәдени құндылықтарына ие бола бастады. Елдің бұрынғы атақты батырларына ұлы қайраткерлеріне және ғал...
14975. Қазақстан Республикасы, туризм, туристік нысандар 43 KB
  Қазақстан Республикасы туризм туристік нысандар Туризм. Ұлы Жiбек жолы бойында орналасқандықтан Қазақстан аумағындағы қалалар мен табиғаты ғажайып қорықты жерлер ежелден саяхат және туризм нысандары болып табылған. Қазақстандағы алғашқы туристiк ұйымдар 20 ғд...
14976. Қазақстанның географиялық зерттелу тарихы 223.5 KB
  Қазақстанның географиялық зерттелу тарихы Қазақстан Республикасының аумағы батысында Едiл өз. алабынан шығысында Алтай тауы шыңдарына дейiн солтнде Батыс Сiбiр жазығынан Солт. Қазақстан жазығы оңтнде ТяньШань тауына дейiн созылып жатыр. Еуропа мен Азия ел
14977. Қазақстанның ежелгі қалалары 48 KB
  Қазақстанның ежелгі қалалары ҚАЗАҚСТАННЫҢ ЕЖЕЛГI ҚАЛАЛАРЫ жазба деректемелер мен археологиялық материалдар нәтижесiнде анықталған байырғы қоныс орындары қала жұрттары. 6 9 ғларда Оңт. Қазақстан мен Оңт.Батыс Жетiсуда қала мәдениетi жақсы дамыды. Саяси жағынан бұ
14978. Қазақстанның ең ежелгі қаласы 34.5 KB
  Қазақстанның ең ежелгі қаласы Сонымен жылқы жылының күзінде Тараз қаласының 2000 жылдық мерейтойы өткізіледі. Бұл жөнінде дүниежүзілік құзырлы ұйым ЮНЕСКО шешім қабылдаған болатын. Осыдан екі жыл бұрын түркі дүниесінің қазақ мемлекетінің рухани астанасы Түркістанның 15...
14979. Қазақстанның жеті кереметі 55.5 KB
  Тақырыбы: Қазақстанның жеті кереметі. Мақсаты: оқушыларды Қазақстанның тарихи мұраларымен таныстырып мәдениетке дегн қызығушылығын арттырып тәрбиелеу. 1оқушы:Бүгін маған керек емес ертегі Ертегіні өз басымда шертеді. Та...
14980. Разработка Алкотестера (алкометра) 818.16 KB
  Алкометр— средство измерений, предназначенное для измерения концентрации алкоголя в выдыхаемом человеком воздухе или в крови человека по выдыхаемому воздуху. Его погрешность нормирована, он подлежит метрологической поверке.
14981. Қаратау басындағы Қатынқамал үңгірі 93.5 KB
  ҚАРАТАУ БАСЫНДАҒЫ ҚАТЫНҚАМАЛ ҮҢГІРІ А.С. Тасенова Б.Е. Ерескенова №4 С.Сейфуллин атындағы орта мектебі Қызылорда қ. Қоғамның тарихи дамуы кезеңдерінде көптеген елді мекендермен қалалар өзінің бұрынғы маңызын жоғалтып кейде мүлдем құры...