Лаб2 МаятникОтрыв
.docФедеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Омский государственный технический университет»
Кафедра «Автоматизация и робототехника»
Отчет по лабораторной работе №2
по дисциплине: Моделирование систем
«Отрывающийся Маятник»
Выполнил: ст. гр. А-410 Перепечко Станислав Александрович
________________________
Проверила:
Лагутина Татьяна Андреевна
________________________
Омск, 2014
Цель: создать гибридную модель отрывающегося маятника.
Ход работы
1. Создание гибридной модели
Новый проект будет создаваться на основе математического маятника из лабораторной работы №1. Это модель изолированной системы с несколькими качественными состояниями. Поэтому класс, создаваемый по умолчанию, для нее подходит не вполне. Потребуется изменение «Поведения».
2. Создание карты поведения
В секции «Локальные карты поведения» правой кнопкой мыши вызываем всплывающее меню и выполняем команду «Добавить». Методом «drag-and-drop» приписываем новую локальную карту узлу Init главной карты поведения.
Рисунок 1. Главная карта поведения
В локальной карте создаем три узла «Колебания», «Свободный_полет» и «Останов». Методом «drag-and-drop» присваиваем уже имеющуюся систему уравнений узлу «Колебания» (рис.2).
Рисунок 2. Система уравнений узла «Колебания»
Для узла «Свободный_полет» необходимо добавить две переменные Vx и Vy (рис.3)
Рисунок 3. Внутренние переменные
А так же создать еще одну систему уравнений (рис.4), а затем присвоить ее узлу.
Рисунок 4. Система уравнений узла «Свободный_полет»
Для узла «Останов» зададим входные действия с помощью соответствующей команды. Нам потребуется оператор Stop. Теперь карта поведения имеет вид:
Рисунок 5. Локальная карта поведения
Далее выделим переход «Колебания» «Свободный_полет» и с помощью команды «Условие срабатывания перехода» введем условие (рис.6). Предварительно добавим параметр AlphaMax = pi/4.
Рисунок 6. Условие срабатывания перехода «Колебания» «Свободный_полет»
Еще раз выделим данный переход, с помощью команды «Действия перехода» добавим вычисление начальных значений скоростей (рис.7):
Рисунок 7. Действия в переходе «Колебания» --> «Свободный_полет»
Добавляем параметр Ymin. Получаем (рис.8):
Рисунок 8. Параметры
Вышеприведенным способом вводим условие срабатывания «when y<=Ymin» для перехода «Свободный_полет» «Останов». Получаем локальную карту поведения (рис.9):
Рисунок 9. Локальная карта поведения
3. Визуальная модель
Запускаем созданную модель. Строим фазовую диаграмму по координатам x(y):
Рисунок 10. Фазовая диаграмма
Для наблюдения смены состояний в динамике выполняем команду «Поведение»:
Рисунок 11. Карта поведения
Перед созданием 3D-анимации возвращаемся в интегрированную оболочку. В класс добавляем две переменные xL и yL, а в систему уравнений для узла «Колебания» добавляем формулы xL = x; yL = y.
Создаем 3D-модель, как в лабораторной работе №1. Координатам свободного конца стержня сопоставляем переменные xL и yL. Наблюдаем отрывающийся маятник (рис.12).
Рисунок 12. 3D-анимация отрывающегося маятника
Заключение
В ходе выполнения данной работы была создана модель отрывающегося маятника, построена фазовая диаграммы для нее, произведена 3D-анимация.