Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
4
Добавлен:
13.02.2015
Размер:
302.08 Кб
Скачать

РОССИЙСКИЙ ХИМИКО-ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

им. Д.И.Менделеева

Кафедра информатики и компьютерного моделирования

Моделирование гидравлической системы, динамический режим.

выполнил

Студент группы И-4

Проверил

Преподаватель

Тамбовцев И.И.

Москва 2008

Принятые допущения.

  1. Режим динамический, рассматривается только движение жидкости.

  2. Жидкость идеальна.

  3. Движение жидкости описывается уравнением Бернулли (жидкость не сжимаема).

  4. Сопротивление в вентилях много больше всех местных сопротивлений и сопротивления трению, т.е. на участках, где нет вентилей, давление постоянно.

  5. Газ в емкостях идеален.

  6. Процесс изотермичен.

  7. Все трубопроводы находятся на одном уровне.

  8. В пустой емкости давление равно атмосферному.

Схема трубопровода.

Система уравнений.

Дано: P1-P3; P5-P7; , Pa, H1, H2, S1,S2, ρ

Найти: P8, P9, P10, P11, .

1)

2)

3)

4)

5)

6)

7)

8)

9)

10)

11)

12)

13)

14)

15)

Информационная матрица.

V1

V2

V3

V4

V5

V6

V7

P7

P8

P9

P10

h1

h2

h1

h2

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Блок схема.

Программа.

Option Explicit

Option Base 1

Public culc As Integer

Const m As Byte = 2 'Количество решаемых ОДУ

Const np% = 10, nk% = 7, nv% = 7, g! = 9.8

Public del! 'шаг

Private k!

Private y0!(m), x0! 'Начальное значение

Private n% 'Число шагов

Private kv% 'Кратность вывода

Private x1!, y1!(m), i%

Private ki!, ki1!, ki2!, vm!(nk), v!(nk), ak!(nk), p!(np)

Private hg!(m), h!(m), s!(m), pr!(m), ro!, pn!, x!, ipr%, ipr1%

' Используем стандартную функцию sgn(a), которая возвращает (-1)a<0 (1)a>0 (0)=0

Sub dydx(x As Single, y() As Single, pr!())

'Расчет производных для текущих(pr) x,y

Dim j%

For j = 1 To m: h(j) = y(j): Next j

p(9) = pn * hg(1) / (hg(1) - h(1)): p(10) = pn * hg(2) / (hg(2) - h(2))

p(7) = p(9) + ro * g * h(1) * 0.000001: p(8) = p(10) + ro * g * h(2) * 0.000001

v(1) = ak(1) * Sgn(p(1) - p(7)) * Sqr(Abs(p(1) - p(7)))

v(2) = ak(2) * Sgn(p(2) - p(7)) * Sqr(Abs(p(2) - p(7)))

v(3) = ak(3) * Sgn(p(3) - p(7)) * Sqr(Abs(p(3) - p(7)))

v(4) = ak(4) * Sgn(p(4) - p(7)) * Sqr(Abs(p(4) - p(7)))

v(5) = ak(5) * Sgn(p(5) - p(7)) * Sqr(Abs(p(5) - p(7)))

v(6) = ak(6) * Sgn(p(7) - p(8)) * Sqr(Abs(p(7) - p(8)))

v(7) = ak(7) * Sgn(p(8) - p(6)) * Sqr(Abs(p(8) - p(6)))

pr(1) = (v(1) + v(2) + v(3) + v(4) + v(5) - v(6)) / s(1): pr(2) = (v(6) - v(7)) / s(2)

For j = 1 To 7: vm(j) = v(j) * ro: Next j

With Worksheets("Лист2")

If ki > 0 And ki < 3 Then

If ki = 2 Then

.Cells(ipr, 1) = i: .Cells(ipr, 2) = "p(5-7)": .Cells(ipr, 6) = "vm"

.Cells(ipr, 3) = p(5): .Cells(ipr, 4) = p(6): .Cells(ipr, 5) = p(7)

.Cells(ipr, 7) = vm(1): .Cells(ipr, 8) = vm(2): .Cells(ipr, 9) = vm(3)

.Cells(ipr, 10) = vm(4): .Cells(ipr, 11) = vm(5): ipr = ipr + 1

End If

.Cells(ipr, 2) = "x": .Cells(ipr, 4) = "y(1-2)": .Cells(ipr, 7) = "pr(1-2)"

.Cells(ipr, 3) = x: .Cells(ipr, 5) = y(1): .Cells(ipr, 6) = y(2)

.Cells(ipr, 8) = pr(1): .Cells(ipr, 9) = pr(2): ipr = ipr + 1

End If

If ipr = 180 Then ipr = 1

End With

End Sub

Sub step(x As Single, y() As Single, del As Single, x1 As Single, y1() As Single)

'Шаг интегрирования по X и Y расчет X1 и Y1

Dim y12!(m), j%

Call dydx(x, y, pr)

For j = 1 To m: y12(j) = y(j) + del * pr(j) / 2: Next j

Call dydx(x + del / 2, y12, pr): x1 = x + del

For j = 1 To m: y1(j) = y(j) + del * pr(j): Next j

End Sub

Public Sub gidra()

Dim j%, contr As String

Static x0s!, y0s!(2)

ipr = 1: ipr1 = 1

With Worksheets("Лист1")

hg(1) = .Cells(4, 5): hg(2) = .Cells(5, 5): s(1) = .Cells(4, 9): s(2) = .Cells(5, 9)

ro = .Cells(6, 5): pn = .Cells(6, 9)

' Давление (1-6) /Мпа/

For i = 1 To 6: p(i) = .Cells(8, i + 4): Next i

' Коэф. пpопускной способности (1-7)

For i = 1 To 7: ak(i) = .Cells(9, i + 4): Next i

' Начальные условия x0,y0(1),y0(2)

x0 = .Cells(10, 5): y0(1) = .Cells(10, 6): y0(2) = .Cells(10, 7)

If culc = 4 Then x0 = x0s: y0(1) = y0s(1): y0(2) = y0s(2)

'Число шагов, шаг, кратность вывода

n = .Cells(11, 5): del = .Cells(11, 6): kv = .Cells(11, 7)

' Относительная локальная погpешность ( % ) и Кpатность шагов на вывод

ki1 = .Cells(12, 5): ki2 = .Cells(13, 5)

End With

Worksheets("Лист2").Activate

Cells.Select

Selection.Clear

Range("a1").Select

Worksheets("Лист3").Activate

Cells.Select

Selection.Clear

Range("a1").Select

For i = 1 To n

ki = ki1: Call step(x0, y0, del, x1, y1): x0 = x1: x0s = x0

For j = 1 To m: y0(j) = y1(j): y0s(j) = y0(j): Next j

If (i \ kv) = (i / kv) Then

If ki2 = 1 Then

If ipr1 = 1 Then

Worksheets("Лист3").Cells(ipr1, 1) = "x0"

Worksheets("Лист3").Cells(ipr1, 2) = "y0(1)"

Worksheets("Лист3").Cells(ipr1, 3) = "y0(2)": ipr1 = ipr1 + 1

End If

Worksheets("Лист3").Cells(ipr1, 1) = x0

Worksheets("Лист3").Cells(ipr1, 2) = y0(1)

Worksheets("Лист3").Cells(ipr1, 3) = y0(2)

ipr1 = ipr1 + 1

End If

If ki2 = 2 Then ki = ki2: Call dydx(x0, y0, pr)

End If

Next i

End Sub

Исследование динамических характеристик гидравлической системы

Изменения высот жидкости в емкостях 1 и 2 в зависимости от времени

при их заполнении

t

H1

H2

100

7,914976

4,015484

200

14,16279

5,980472

300

14,37382

6,163493

400

14,37386

6,176462

500

14,37386

6,177369

600

14,37386

6,177429

700

14,37386

6,177429

800

14,37386

6,177429

900

14,37386

6,177429

1000

14,37386

6,177429

Начальные условия

t=0

H1=0.0м

H2=0.0м

Геометрические размеры цилиндрических емкостей

HG1=15м

HG2=10м

S1=1м2

S2=1м2

Изменения высот жидкости в емкостях 1 и 2 в зависимости от времени

при возмущениях в системе(H1=10 и H2=9.9) на 1000-ом шаге интегрирования

t

H1

H2

100

14,37269

5,845321

200

14,37381

6,16002

300

14,37386

6,176221

400

14,37386

6,177351

500

14,37386

6,177429

600

14,37386

6,177429

700

14,37386

6,177429

800

14,37386

6,177429

900

14,37386

6,177429

1000

14,37386

6,177429

1100

14,38918

8,636032

1200

14,38918

8,636032

1300

14,38918

8,636032

1400

14,38918

8,636032

1500

14,38918

8,636032

1600

14,38918

8,636032

1700

14,38918

8,636032

1800

14,38918

8,636032

1900

14,38918

8,636032

2000

14,38918

8,636032

Начальные условия

Геометрические размеры цилиндрических емкостей

t=0

H1=14.5м

H2=1.5м

HG1=15м

HG2=10м

S1=1м2

S2=1м2

Изменения высот жидкости в емкостях 1 и 2 в зависимости от времени

при аварийном спуске

t

H1

H2

100

13,30927

0,823166

200

12,45672

0,248914

300

11,72626

-0,08077

400

11,06925

-0,23835

500

10,46479

-0,30909

600

9,90121

-0,34498

700

9,371097

-0,36753

800

8,869319

-0,38413

900

8,392185

-0,39741

1000

7,936933

-0,40847

1100

7,501435

-0,41794

1200

7,084003

-0,42619

1300

6,683281

-0,43348

1400

6,29815

-0,44001

1500

5,927683

-0,44589

1600

5,571089

-0,45124

1700

5,227701

-0,45614

1800

4,89694

-0,46065

1900

4,578306

-0,46481

2000

4,271359

-0,46868

2100

3,975716

-0,47228

2200

3,691035

-0,47564

Геометрические размеры цилиндрических емкостей

2300

3,417009

-0,47878

HG1=15м

HG2=10м

2400

3,153369

-0,48173

S1=1м2

S2=1м2

2500

2,899871

-0,48449

2600

2,656295

-0,48709

Начальные условия

2700

2,422443

-0,48954

t=0

H1=14,5м

H2=1,5м

2800

2,198137

-0,49184

2900

1,983211

-0,49401

3000

1,777518

-0,49606

3100

1,580923

-0,49798

3200

1,393302

-0,49979

3300

1,214542

-0,5015

3400

1,04454

-0,5031

3500

0,883201

-0,50461

3600

0,730439

-0,50602

3700

0,586174

-0,50734

3800

0,450334

-0,50857

3900

0,322851

-0,50972

4000

0,203667

-0,51078

4100

0,092724

-0,51177

4200

-0,01003

-0,51267

Соседние файлы в папке Работа 2 - Вариант 5 - Тамбовцев - 2008