Лабораторная работа №6
Моделирование в системе STRATUM-2000.
Задание1: предположим, что в сосуде находится лед при температуре -10°С. Сосуд начинает нагреваться, постепенно лед тает и образуется вода, которая с течением времени закипает и полностью испаряется. Необходимо смоделировать этот процесс. Нагревание льда описывается по формуле: Q=m*cl, где Q – количество теплоты, m – масса льда, cl – удельная теплоемкость льда – 2400 Дж/кг*К. Плавление льда описывается по формуле: Q=m*l, где l – удельная теплота плавления – 3.35*105 Дж/кг. Нагревание воды описывается по следующей формуле:
Q=m*с,
где с – удельная теплоемкость воды – 4190 Дж/кг*К.
Переход воды из жидкого состояния в парообразное
описывается по сле-
дующей формуле:
Q=m*r,
где r – удельная теплота парообразования – 2.26*106 Дж/кг.
Порядок выполнения работы.
Для моделирования нагревания льда , превращения его в
воду, а затем в
пар соберем экспериментальную установку:
В центре схемы расположен имидж сосуда. Его математическая
модель следующая:
Начальные значения переменных, которые используются в модели сосуда:
Из библиотеки UNIT.LIB выберите
имидж GRAPHICSPACE и установите его на поле схемы.
Из библиотеки CONTROLS.LIB
выберите имидж NUMBERVIEW и
установите его на поле схемы 3 раза для отображения значений трех
переменных:
температуры, общей массы воды и льда, а также массы льда. Другими
словами,
переменные Value этих 3 имиджей связаны
соответственно с переменными T, m
и ice модели сосуда.
Из этой же библиотеки установите имидж VSLIDER ,
с помощью которого будет
осуществляться регулировка подводимого тепла, а также имидж LAMP , который
позволит реализовать сигнализацию о полном испарении воды.
Переменная Value имиджа VSLIDER связана с переменной Q модели сосуда. Начальные значения переменных этого имиджа: min=0, max=40, Height=100.
Лампочка имиджа LAMP включается с помощью
переменной light, которая связана с переменной s имиджа Lighter (расположен слева от LAMP). Математическая
модель имиджа Lighter:
S:=ed(0.01-value), а начальные значения переменных: S=0, value=1.
Переменная Value имиджа Lighter
связана с переменной Value имиджа NumberView,
служащего для наблюдения за общей массой воды и льда.
На схеме расположены также 2 осциллографа OSCSpace2D, служащие для наблюдения
за изменением во времени температуры содержимого сосуда и количеством льда
в нем. Имидж OSCSpace2D находится
в библиотеке UNIT.LIB.
Снизу схемы проекта расположен
имидж CurrentTime. Он содержит встроенную
функцию Gettime(~hour,~min,~sec,~hund), которая считывает
показания компьютерных часов и возвращает переменные, содержащие
текущее время. Имидж CurrentTime
связан по переменной ~sec с имиджем СoordX. Этот имидж с помощью переменной
~sec формирует ось времени для осциллографов. То
есть координаты оси Х осциллографа - это секунды реального времени.
Предлагается следующая математическая модель имиджа CoordX:
if(flag+~sec)
if(~sec)
x:=m+~sec
flag:=1
else
m:=m+60
flag:=0
endif
else
x:=m+~sec
endif
Haчальные значения всех переменных имиджа CoordX равны 0.
Имидж CoordX связан по переменной Х с
первым (левым) осциллографом, который также по переменной Х связан со
вторым. Переменной Y для левого осциллографа является
переменная Т модели сосуда ( то есть переменные Т и Y этих имиджей связаны между собой). Для правого осциллографа
переменная Y связана с переменной ice модели сосуда .
Haчальные значения всех переменных левого
осциллографа:
Если переменная _enable=1, то осциллограф
включен. То есть, измения значение
переменной _enable, можно включать нужный
осциллограф.
Haчальные значения всех переменных правого
осциллографа:
Результат работы правого осциллографа:
Результат работы левого осциллографа:
Задание 2: построение круговой двухмерной диаграммы
Постройте схему, отображающую двухмерную круговую диаграмму из 4 секторов (красный, зеленый, синий и желтый). С помощью управляторов проверьте работоспособность диаграммы.
Создайте новый проект. Поместите на главную схему имидж GraphicSpace. Создайте новый имидж (например Diagram_2D) с текстом:
a := a1 + a2 + a3 + a4 if(a) x1 := (a1*2*PI) / ~a x2 := (a2*2*PI) / ~a x3 := (a3*2*PI) / ~a x4 := (a4*2*PI) / ~a b1 := x1 b2 := x1 + x2 b3 := x1 + x2 + x3 b4 := 2*pi if (x1+x2+x3+x4) c1 := "красный " + String(x1*100 / (x1 + x2 + x3 + x4)) + "%" c2 := "синий " + String(x2*100 / (x1 + x2 + x3 + x4 )) + "%" c3 := "зеленый " + String(x3*100 / (x1 + x2 + x3 + x4 )) + "%" c4 := "желтый " + String(x4*100 / (x1 + x2 + x3 + x4 )) + "%" endif endif
Назначение переменных :
a1,a2,a3,a4 |
входные величины, |
a |
сумма входных величин, |
x1,x2,x3,x4 |
относительные углы поворота секторов в радианах, |
b1,b2,b3,b4 |
абсолютные углы поворота секторов в радианах, |
с1,c2,c3,c4 |
текстовые переменные, содержащие величины секторов в процентах. |
Установите на схему четыре имиджа Pie (сектор) для отображения секторов диаграммы. Соедините между собой переменные x,y,r1,r2 во всех имиджах для согласования центров. Установите переменные имиджей Pie: x,y - координаты диаграммы (например 100,100), r1,r2 - радиусы (например 60,60) и в BrushColor - цвет каждого сектора. Соедините переменные b1,b2,b3,b4 имиджа Diagram_2D c переменными angle1
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.