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

книги / Моделирование электротехнических систем и систем автоматики

..pdf
Скачиваний:
1
Добавлен:
12.11.2023
Размер:
7.89 Mб
Скачать

НАЧАЛО

X1, X2, Y1, Y2, R1

line ( X1 ,Y1 , X 2 ,Y2 )

R =

1

X22 +Y22

2

 

 

X2=1 to 10

line( X1,Y1, X2 ,Y2 )

Y2 = Y2 + 1

α = 45 to 180°

X 2 = R + R cos α Y2 = R + R sin α

X1 = R + R cos(180 − α) Y1 = R + R sin(180 − α) line( X1,Y1, X2 ,Y2 )

 

β = 0° to 360°

КОНЕЦ

 

 

 

 

 

 

Y1 = R1 sin β

 

 

α = arcsin(Y1 / R)

 

 

X1 = R R sin α

 

 

X2 = −X1

 

 

Y2 = −Y1

 

 

 

 

 

 

 

 

 

Рис. 33. Схема алгоритма последовательных анимационных изменений прямой линии

71

На последнем этапе анимации происходит циклическое вращение этой прямой, наклоненной к оси Х под углом α. Значение параметров (X1,Y1,X2,Y2) этой прямой вычисляется по формулам (57). При этом торцы этой прямой совершают вращательное движение по кругу с радиусом R1. Полный оборот этого процесса завершается в цикле за 360°, после чего программа завершается.

Пример 3. Составить алгоритм для анимационного изо-

бражения процесса перемещения прямоугольника по полю

(плоскости) носителя информации.

Анимационное изображение прямоугольника на поле носителя информации в программном пакете «ПАСКАЛЬ» выполняется командой rectangle (x1,y1,x2,y2), в которой координаты точек x1, y1 и x2, y2 это крайние точки диагонали прямоугольника. Как и в предыдущем случае, цвет линии предварительно задается командой setcolr(f). Одновременное изменение параметров x1, y1, x2, y2 в команде rectangle (x1,y1,x2,y2) вызывает изменение размера фигуры прямоугольника. Графическое изображение этого процесса представлено на следующей схеме.

При одновременном изменении параметров Х2 и Y2 на величину изменяются координаты верхней части диагонали этого прямоугольника, поэтому его размеры одновременно увеличиваются как вверх, так и в ширину.

72

Если же на величину одновременно изменяются параметры x1, x2 или y1, y2, то происходит перемещение фигуры соответственно в направлении x или y на эту же величину без изменения ее размера.

Вращение прямоугольника относительно осей симметрии по направлению x или y осуществляется в соответствии с принципом, показанным на следующей схеме:

Радиус вращения этой фигуры относительно оси симметрии x равен R = Y2, а проекция этого радиуса (Y1 и Y2) на ось Y при повороте прямоугольника на угол «α» определяется системой уравнений

Y1

= R R cosα,

(58)

Y2 = R + R cosα.

 

Все вышеописанные анимационные перемещения прямоугольника последовательно описываются алгоритмом, представлены на рис. 34.

После ввода исходных координат прямоугольника в этом алгоритме задается цикл в 100 шагов его перемещения в направлении оси x. Следующим циклом за 25 шагов прямоугольник меняет свои размеры как по параметру x так и по y. В последнем цикле этого алгоритма плоскость прямоугольника поворачивается на угол 180° с шагом в 1 градус.

73

НАЧАЛО

X1,X2,Y1,Y2

X1=1 to 100

rectangle (x1,y1,x2,y2) X2=X2+1

X2=1 to 25

Y2=Y2+1 rectangle (x1,y1,x2,y2)

α = 0 to 180

КОНЕЦ

rectangle (x1,y1,x2,y2) y2 = R + R cosα y1 = R R cosα

Рис. 34. Схема алгоритма анимационных перемещений прямоугольника

Пример 4. Составить алгоритм для анимационного изо-

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

В этом примере анимационная модель колеса (рис. 33) состоит из окружности и трех ребер, равномерно наклоненных относительно друг друга под углом в 60 град. Изображение обода

74

на модели этого колеса обеспечивается командой circle (x,y,r), в которой параметры x, y определяют положение центра окружности, а параметр r соответствует размеру ее диаметра. Ребра этого колеса изображаются командой line(x1,y1,x2,y2), в которой параметры x1, y1, x2, y2 определяются по формулам (56).

Рис. 35. Схема вращения колеса

Имитация только вращения неподвижного колеса может быть обеспечена одновременным последовательно-циклическим угловым перемещением всех ребер на одну и ту же величину (на 20 град). Направление этого сдвига определяет направление вращения колеса. В этом примере обод колеса остается неподвижным, поэтому контур окружности не участвует в процессе анимации.

Скорость вращения колеса определяется величиной углового сдвига и временем выдержки положения фигуры между приращениями сдвига ребер колеса. Вращение линии (ребра колеса) вокруг своего центра симметрии рассмотрено нами в примере 2. Если необходимо имитировать вращение колеса с его перемещением по опорной поверхности, то в этом процессе одновременно используются две графические команды. Первая из них это команда circle (x,y,r), которая обеспечивает имитацию движения обода колеса. В этой команде изменение параметра x на величину δ обеспечивает перемещение центра вращения обода

75

по опорной поверхности. Второй командой line(x1,y1,x2,y2) с учетом формул (55) и (56) отображается угловое и линейное перемещение ребер колеса. При этом оси симметрии ребер дискретно перемещаются по горизонтали с приращением δ. В этом случае значения параметров Х1 и Х2 для каждого из ребер вычисляется по формулам

X2

= R + R cosα+δ,

(59)

X1 = R + R cos(180 −α) ,

 

где δ приращение параметров Х1 и Х2 при горизонтальном движении центра вращения колеса.

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

7.2. Принципы создания анимационных (функциональных) блоков в имитационных моделях

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

Организация функциональных блоков в имитационных моделях осуществляется по следующим принципам:

1.Задание контура блока имитационной модели и его внутренней структуры.

2.Определение логики взаимодействия внутренних элементов блока имитационной модели.

3.Присвоение уникального имени каждому элементу блока имитационной модели.

4. Выбор основных параметров блока и его элементов в имитационной модели.

76

5.Выбор закона изменения параметров и взаимодействия элементов внутри блока имитационной модели.

6.Составление программы (подпрограммы) работы имитационного блока с учетом законов внутреннего взаимодействия его структурных элементов.

Рассмотрим последовательность построения имитационной модели на примере построения модели заполнения водой бас-

сейна.

Задача: «Построить имитационную модель процесса заполнения водой бассейна от источника с постоянным водопри-

током». Контур анимационной модели бассейна представлен на рис. 36.

Рис. 36. Контур анимационной модели бассейна

В этой модели переменные имеют следующий смысл: H – высота бассейна; L – длина и ширина бассейна; V – уровень воды в бассейне. Кроме того, вводим дополнительно следующие переменные: Q – приток воды в бассейне; T – время наполнения бассейна.

Входным переменным параметром этой модели является параметр Q. Уровень воды V в бассейне принимаем в качестве выходного параметра этой модели. Этот уровень меняется по следующему закону:

V =

Q T

.

(60)

2

 

L

 

Алгоритм изменения уровня воды в бассейне в зависимости от величины водопритока представлен на рис. 37.

77

Рис. 37. Алгоритм задачи изменения уровня воды в бассейне

После запуска этого алгоритма вводятся исходные параметры H и L, а остальным параметрам присваиваются нулевые значения. После этого открывается цикл вычисления уровня воды в бассейне. В этом цикле вводится значение параметра Q после чего по формуле 60 вычисляется значение V, которое затем командой Round(V) округляется до целого значения и затем присваивается параметру у2. В этом же цикле происходит приращение значения параметра времени Т. За каждый цикл приращения параметра времени Т командой Rectangle(x1,y1,x2,y2) производится вывод контура прямоугольника, эквивалентного величине уровня V воды в бассейне. Циклическое изменение значения параметра V создает анимационный эффект наполне-

78

ния бассейна. В процессе этого наполнения значение параметра Q может меняться, при этом меняется скорость этого наполнения. Анимационный процесс наполнения бассейна закончится только тогда, когда уровень параметра V будет равен или выше уровня заданного параметром H.

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

С переходом ЭВМ на операционную систему Windows объ- ектно-модульное программирование стало обычным методом написания программ. Это позволило в специальных программных пакетах, предназначенных для моделирования, создавать объектные анимационные блоки, предназначенные для выполнения определенных имитационных действий. Эти блоки были названы объектными модулями, каждый из которых по собственной программе (подпрограмме) мог выполнять в имитационной модели заданную функцию.

Такой принцип моделирования был назван объектно-мо- дульным. В настоящее время объектно-модульное моделирование используется как в имитационных, так и в аналитических моделях.

7.3.Принципы применения объектных модулей

вимитационных моделях

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

Задача. Создать в программном пакете «InTouch» имитационную модель системы управления шахтной водоотливной

79

установкой, состоящей из регулируемого источника водопритока, водосборника и управляемого шахтного насоса.

Контуры этой имитационной модели, выполненные с помощью инструментальных средств пакета «InTouch», показаны на рис. 38.

Рис. 38. Имитационная модель шахтного водолива: 1 – шахтный водосборник, наполняемый до определенного уровня; 2 – элемент подачи внешнего водопритока; 3 – рабочая насосная установка; 4 – лампа контроля верхнего уровня воды в водосборнике; 5 –лампа контроля нижнего уровня воды в водосборнике; 6 – элемент задания уровня водопритока; 7 – элемент задания производительности насоса; 8 – элемент слежения за уровнем заполнения водосборника; 9 – прибор контроля

производительности насоса

В рабочей программе этой модели каждый из этих объектов является объектом ввода или вывода. К объектам ввода в нашей задаче относятся такие элементы, которые задают следующие параметры: уровень водопритока и производительность насо-

са, а к объектам вывода относятся соответственно элементы,

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

дого из этих объектов обеспечивается подпрограммами, описы-

80

Соседние файлы в папке книги