- •Міністерство освіти і науки України
- •Практична робота №1 Вивчення будови пеом
- •Теоретичні питання
- •Практична робота №2 Вивчення будови процесора і організації пам’яті
- •Теоретичні питання
- •Практична робота №3 Дослідження логічних елементів
- •Теоретичні питання
- •Практична робота №4 Основи роботи з matlab
- •Теоретичні питання
- •Завдання до практичної роботи:
- •Практична робота №5 Написання програм з використанням умовних операторів
- •Теоретичні питання
- •Практична робота №6 Написання програм з використанням циклічних операторів
- •Теоретичні питання
- •Практична робота №7 Побудова графіків функцій
- •Теоретичні питання
- •Завдання до практичної роботи:
- •Практична робота №8 Рішення алгебраїчних і трансцендентних рівнянь в середовищі matlab
- •Теоретичні питання
- •Варіанти алгебраїчних та трансцендентних рівнянь
- •Практична робота №9 Рішення систем рівнянь в середовищі matlab
- •Теоретичні питання
- •Варіанти систем алгебраїчних рівнянь
- •Практична робота №10 Загальні відомості про програмний комплекс simulink. Побудова простих моделей
- •Теоретичні питання
- •Варіанти завдань
- •Порядок роботи над завданнями:
- •Практична робота №11 Моделі алгебраїчних об'єктів. Форматування об’єктів моделей
- •Теоретичні питання
- •Варіанти завдань.
- •Практична робота №12 Маскування підсистем в Matlab/Simulink
- •Теоретичні питання
- •Варіанти завдань.
- •Список літератури
- •Для нотаток навчально-методичне видання
- •Тир.__ прим. Зам.______
- •43018, М. Луцьк, вул. Львівська, 75
Варіанти систем алгебраїчних рівнянь
Таблиця 9.1 – системи лінійних алгебраїчних рівняннь
№ п/п |
Рівняння |
№ п/п |
Рівняння |
|
Таблиця 9.2 – системи нелінійних алгебраїчних рівнянь
№ п/п |
Рівняння |
№ п/п |
Рівняння |
|
Практична робота №10 Загальні відомості про програмний комплекс simulink. Побудова простих моделей
Мета: Ознайомлення з додатком до пакету MATLAB – SIMULINK
Теоретичні питання
Програма SIMULINK є додатком до пакету MATLAB. У певному значенні SIMULINK можна розглядати як самостійний продукт фірми MathWorks, проте він працює тільки за наявності ядра MATLAB і використовує багато функцій, що входять в його склад.
Слід зазначити, що пакет MATLAB орієнтований насамперед на обробку масивів даних (матриць, векторів і т.д.). Це дозволяє істотно підвищити ефективність процедур, що працюють з вказаними типами даних, в порівнянні з мовами програмування «загального призначення» (Pascal, С і т.д.), і істотно відрізняє MATLAB від інших систем, таких, як MAPLE, MATHCAD, Mathematica. Векторна обробка даних забезпечує високу швидкість обчислень, в більшості випадків позбавляє користувача від написання циклів і гарантує необхідну точність.
Додаток SIMULINK є інструментом, за допомогою якого можна об'єднувати блоки, відповідні окремим елементам динамічної системи в єдине ціле і вивчати їх поведінку в часі.
Розробка моделей засобами SIMULINK (S-моделі) заснована на технології drag-and-drop («перетягни і залиш»). Для побудови S-моделі використовуються модулі (або блоки), що зберігаються в бібліотеці SIMULINK.
Бібліотека SIMULINK хороша тим, що, з одного боку, забезпечує користувачеві доступ до всіх основних можливостей пакету MATLAB, а з іншого – є достатньо самостійною його компонентою, в тому сенсі, що при роботі з нею не обов'язково мати навики у використанні інших інструментів, що входять до складу пакету.
Блоки, що включаються в створювану модель, можуть бути зв'язані один з одним як за інформацією, так і по управлінню. Вид зв'язку залежить від типу блоку і логіки роботи моделі. Дані, якими обмінюються блоки, можуть бути скалярними величинами, векторами або матрицями довільної розмірності.
Будь-яка S-модель може мати ієрархічну структуру, тобто складатися з моделей нижчого рівня, причому число рівнів ієрархії практично не обмежене. Разом з іншими параметрами моделювання користувач може задавати спосіб зміни модельного часу (з постійним або змінним кроком), а також умови закінчення моделювання.
В ході моделювання є можливість спостерігати за процесами, що відбуваються в системі. Для цього використовуються спеціальні «оглядові вікна», що входять до складу бібліотеки SIMULINK. Характеристики, що цікавлять користувача, можуть бути представлені як в числовій, так і в графічній формі.
Застосування принципів структурного і модульного програмування дозволяє представляти різні алгоритми у вигляді набору уніфікованих програмних модулів, що покращує осяжність програми, полегшує її відладку і кінець кінцем зменшує загальний об'єм програмного забезпечення, що підлягає розробці. Окрім цього склад бібліотеки SIMULINK може бути поповнений користувачем за рахунок розробки власних блоків.
У подальших практичних роботах будуть розглянуті типові виконувані елементи, приведені структурні схеми поширених систем базисних функцій, основні блоки, що реалізовують методи апроксимації сигналів і моделювання динамічних систем.
Слід зазначити, що у складі MATLAB є безліч інших додатків, заснованих на методах графічного (візуального) програмування, що допускають спільну роботу із додатком SIMULINK.
Aerospace Blockset – містить спеціальні інструменти для моделювання авіаційних, космічних, реактивних і турбореактивних систем.
DSP Blockset – призначений для проектування систем і моделювання завдань цифрової обробки сигналів (DSP). Дані бібліотеки включають такі ключові операції, як класична, багатоступінчата і адаптивна фільтрація, перетворення, матричні операції і лінійна алгебра, статистика і спектральний аналіз.
Nonlinear Control Design Blockset – надає в розпорядження користувача графічний інтерфейс для налаштування параметрів динамічних об'єктів.
SimPowerSystems – призначений для моделювання електротехнічних і електроенергетичних пристроїв і систем.
SimMechanics – дозволяє моделювати системи управління за допомогою ненапрямлених сигнальних графів, об'єднувати їх з фізичними моделями і моделями з інших бібліотек.
Виконавчі елементи. Пакет SIMULINK запускається з програмного середовища MatLab. Відповідна піктограма розташована на панелі інструментів.
Для початку роботи необхідно створити новий файл *.mdl (Simulink model), у який можна за допомогою миші перетягувати блоки з бібліотеки SIMULINK. Необхідно відзначити, що набори інструментів в бібліотеці вибираються користувачем при установці програми.
У головному меню знаходиться вкладка Simulation/Configuration Parameters, де можна міняти параметри процесу моделювання, такі як час початку і кінця моделювання, вибір виконавця, крок з яким відбувається розрахунок і т.д.
Розглянемо блоки SIMULINK, що часто зустрічаютьсяі.
Для будь-якого блоку по подвійному клацанню миші відкривається вікно параметрів Function Block Parameters, де можна міняти установки.
Джерело сигналів (Sources). На рис. 10.1 представлені деякі джерела сигналів.
Рисунок 10.1 – Джерело сигналів
Constant – задає постійний по рівню сигнал;
From Workspace – блок зчитування даних з робочої області;
From File – блок зчитування даних з файлу;
Sine Wave – формує синусоїдальний сигнал із заданою частотою, амплітудою, фазою і зсувом;
Signal Generator – формує один з чотирьох видів періодичних сигналів (синусоїдальний, прямокутний, пилоподібний, випадковий сигнали);
Ramp – формує лінійний сигнал;
Step – формує ступінчастий сигнал;
Random Number – формує випадковий сигнал з нормальним розподілом рівня сигналу.
Приймачі сигналів (Sinks). На рис. 10.2 представлені блоки-приймачі сигналів
Рисунок 10.2 – Приймачі сигналів
Цифровий дисплей (Display) – відображає значення сигналу у вигляді числа;
Віртуальний осцилограф (Scope) – будує графік сигналу від функції часу;
Віртуальний графічний пристрій (ХУ Graph) – будує графік одного сигналу залежно від іншого (графік виду Y(X));
Блок «То File» - записує дані, що поступають на його вхід, в файл;
Блок «То Workspace» - записує дані, що поступають на його вхід, в робочу область MATLAB.
Блоки математичних операцій.
Рисунок 10.3 – Блоки математичних операцій
Блок Gain – множить вхідний сигнал на заданий коефіцієнт.
Блок Product – перемножує два (або більше) сигналів.
Блок Sum – підсумовує два (або більше) сигналів.
Блок Math Function – перетворює вхідний сигнал по заданій із списку функції (наприклад, зведення в квадрат, корінь квадратний, логарифм і так далі).
Відзначимо ще деякі блоки, що часто зустрічаються (рис. 10.4).
Рисунок 10.4 – Приклади функцій, що часто зустрічаються
Блок Mux (мультиплексор) – об'єднує сигнали. Піктограма мультиплексора показана першою зліва на рис. 9.4.
Блок Integrator – інтегрує сигнал.
Блок MATLAB Fcn – формує функцію, задану користувачем на мові MatLab.
Побудова простих моделей. Розглянемо приклад, на якому покажемо, як будується модель сигналу виду x(t)= 0,5*sinπt + t2 на інтервалі [0;2], і відобразимо його на віртуальному осцилографі. На рис. 10.5 приведений один з варіантів побудови сигналу.
Рисунок 10.5 – Модель сигналу x(t)= 0,5*sinπt + t2
Сигнал 0,5*sinπt заданий в параметрах блоку Sine Wave (рис. 10.6).
Для сигналу t2 використовувалися два блоки – блок лінійного сигналу і блок математичної функції, де була вибрана функція зведення в квадрат.
Результати роботи виведені на екран віртуального осцилографа (рис. 10.7).
Рисунок 10.6 – Параметри блоку Sine Wave.
Інтервал моделювання заданий в межах від 0 до 2 у вікні меню Simulation/Configuration Parameters.
Рисунок 10.7 – Сигнал x(t)= 0,5*sinπt + t2 на екрані віртуального осцилографа.
Нижче приведені структурні схеми віртуальних генераторів систем базисних функцій, які використовуватимуться надалі для поліноміальної апроксимації методами найменших квадратів і рівних площ. Для побудови таких структурних схем можуть бути використані різні підходи. На рис. 10.8, 10.9 зображено дві альтернативні схеми віртуальних генераторів системи степеневих функцій вигляду: .
Перша з них використовує каскадне з'єднання інтеграторів, на вхід першого з яких подається сигнал константи. Вихідні сигнали інтеграторів масштабуються за допомогою масштабних ланок і подаються разом з сигналом константи (1) на входи змішувача (mux) для відображення на екрані віртуального осцилографа (scope). У другій схемі використовуються система множників, що послідовно формує сигнали степеневих функцій. На рис. 10.10 показаний вид сформованої системи функцій.
Рисунок 10.8 – Перший варіант структурної схеми віртуального генератора системи степеневих базисних функцій.
Рисунок 10.9 – Другий варіант структурної схеми віртуального генератора системи степеневих базисних функцій.
Рисунок 10.10 – Зображення системи степеневих функцій на екрані віртуального осцилографа.
На рис. 10.11 приведена структурна схема віртуального генератора системи експоненціальних функцій вигляду: .
У цій схемі використовуються 4 ідентичних послідовно сполучених блоки джерела лінійного сигналу (Ramp) і блоку математичної функції (Math Function). За допомогою меню параметрів виконавчих блоків задаються різні нахили лінійних сигналів (аргументів експоненціальних функцій) і вибирається тип функції блоків математичної функції (в даному випадку – ехр). Вихідні сигнали блоків математичної функції через змішувач подаються на вхід блоку віртуального осцилографа. До одного з входів змішувача підключений сигнал константи (1), що зображає першу з експоненціальних функцій (е0). Альтернативний варіант цієї структурної схеми приведений на рис. 10.12. Тут експоненціальні функції кратного аргументу формуються за допомогою множників. Параметри виконавчих елементів як і раніше задаються за допомогою меню параметрів. На рис. 10.13 зображений вид системи експоненціальних функцій на екрані віртуального осцилографа.
Рисунок 10.11 – Структурна схема віртуального генератора системи експоненціальних функцій (варіант 1)
Рисунок 10.12 – Структурна схема віртуального генератора системи експоненціальних функцій (варіант 2)
Рисунок 10.13 – Зображення системи експоненціальних функцій на віртуальному осцилографі.