Динамічна модель реального часу парового котлоагрегату металургійного комбінату
Засновано: Січень 2007
wget http://oscada.org/svn/trunk/OpenSCADA/data/ModelsDB/Boiler/Model.sql
sqlite3 -init Model.sql Model.db .exit
|
Об'єктом моделювання цього проєкту зі створення повної динамічної моделі реального часу є багатопаливний паровий котлоагрегат Дніпровського Металургійного Комбінату (ДМК) №9. Відмінною особливістю цього котлоагрегату є саме його багатопаливна сутність та, як наслідок — особливості у оптимізації керування його паливним навантаженням.
Contents
- 1 Призначення
- 2 Розробка
- 3 Інтерфейс користувача
- 3.1 Об'єкт сигналізації "Пускова"
- 3.2 Об'єкт сигналізації "Розпал"
- 3.3 Об'єкт сигналізації "Дим.гази"
- 3.4 Об'єкт сигналізації "Дренажі"
- 3.5 Об'єкт сигналізації "ГД"
- 3.6 Об'єкт сигналізації "ГП"
- 3.7 Об'єкт сигналізації "ГК"
- 3.8 Об'єкт сигналізації "ПАР"
- 3.9 Об'єкт сигналізації "ВП"
- 3.10 Об'єкт сигналізації "Економайзер"
- 3.11 Об'єкт сигналізації "ВЗП"
- 4 Результати
- 5 Посилання
1 Призначення
Функціонально, розробка призначена для створення динамічної моделі реального часу багатопаливного котлоагрегату металургійного комбінату.
Експлуатаційним призначенням розробки є:
- тестування алгоритмів керування АСУ ТП;
- тестування адекватності функціювання SCADA-системи;
- навчання технологічного персоналу;
- "жива" демонстрація функцій та приклад проєкту у SCADA-системі OpenSCADA, як фактична, та наразі кінцева, мета.
2 Розробка
З метою прискорення, використання досвіду попередніх розробок, а також для удосконалення технології та інструментарію розробки повних динамічних моделей реального часу, прийнято рішення будувати модель у середовищі відкритої SCADA-системи OpenSCADA. OpenSCADA має достатньо потужний механізм користувацького програмування, а також напрацювання для створення повних динамічних моделей реального часу, які дозволяють швидко створювати великі динамічні моделі реального часу. Більше дивіться у концепції-бібліотеці моделей апаратів технологічних процесів.
Концептуально, комплексні моделі технологічних процесів поділяються та складаються з трьох чітко-визначених структурних одиниць, які так само чітко окреслені у практичному застосуванні та можуть використовуватися незалежно, після спільного відпрацювання, а саме це (з низу на гору):
- технологічний процес — математична модель реального часу, що описує роботу технологічного процесу у динаміці;
- Програмований Логічний Контролер (ПЛК) — фактично це алгоритми та регулятори, призначені для здійснення контролю за стабільністю технологічного процесу у межах режимів визначених технологічним регламентом, та такі що відтворюються комплексною моделлю;
- Supervisory Control And Data Acquisition (SCADA) — диспетчерська система збору даних, що безпосередньо є вікном до технологічного процесу, отримуючи дані від ПЛК та видаючи керуючі дії.
2.1 Технологічний процес
Перед створенням моделі котлоагрегату було сформовано принципову схему моделі його технологічного процесу, засновану на принциповій схемі реального технологічного процесу. Отриману схему зображено на рисунку 1.
2.2 Моделювання
Для побудови моделі технологічного процесу, на основі доступних моделей апаратів, була безпосередньо використана початкова принципова схема та блоковий обчислювач (BlockCalc) OpenSCADA. Моделі апаратів технологічної схеми додавалися до блокової схему відповідно до принципової. Частину блоків було додано для допоміжного обладнання, а також вузлів потоків. Номери блоків вузлів на принциповій схемі вказано номерами біля вузлів потоків.
Модель реалізовано у вигляді двох блокових схем блокового обчислювача. Склад та властивості блокових схем наведено у таблиці 1.
Таблиця 1. Блокові схеми моделі
Ідентифікатор | Ім'я | Призначення | Період виконання, секунди |
---|---|---|---|
boiler9 | ДМК Котел9 | Містить модель котлоагрегату №9 Дніпровського Металургійного Комбінату. | 0.005 |
boiler9_cntr | ДМК Котел9 Контролер | Містить модель системи керування котлоагрегату №9 Дніпровського Металургійного Комбінату. | 1 |
У таблиці 2 наведено перелік використаних моделей апаратів, відповідно до принципової схеми.
Таблиця 2. Моделі використаних технологічних апаратів
Модель технологічного апарату | Апарати (блоки моделі) |
---|---|
Бібліотека "Технологічні апарати" | |
Котел: барабан (boilerBarrel) | boiler9.Drum |
Котел: топка (boilerBurner) | boiler9.FireChamber |
Компресор газовий (compressor) | boiler9.SEA, boiler9.SEB, boiler9.BFA, boiler9.BFB |
Теплообмінник (heatExch) | boiler9.OhS, boiler9.AH1, boiler9.AH2, boiler9.DS, boiler9.EC1, boiler9.EC2 |
Клапан (klap) | boiler9.3FW, boiler9.5FW, boiler9.7FW, boiler9.5GBF, boiler9.6GBF, boiler9.7GBF, boiler9.8GBF, boiler9.9GBF, boiler9.10GBF, boiler9.3GC, boiler9.4GC, boiler9.6GC, boiler9.5GC, boiler9.3GN, boiler9.4GN, boiler9.5GN, boiler9.6GN, boiler9.4GN3, boiler9.1G, boiler9.2G, boiler9.11G, boiler9.13G |
Мережа (навантаження) (net) | boiler9.ParNet, boiler9.Atmosph |
Труба 1->2 (pipe1_2) | boiler9.Node3, boiler9.Node5, boiler9.Node6, boiler9.Node7, boiler9.Node10 |
Труба 2->1 (pipe2_1) | boiler9.Node1, boiler9.Node2, boiler9.Node9, boiler9.Node12 |
Труба 3->1 (pipe3_1) | boiler9.Node8 |
Джерело (тиск) (src_press) | boiler9.SrcGBF, boiler9.SrcGC, boiler9.SrcWater, boiler9.SrcNG, boiler9.SrcAir |
Бібліотека "Функції Complex1" | |
ПІД регулятор (pid) | boiler9_cntr.TCA1, boiler9_cntr.F_air_gas, boiler9_cntr.QAC151, boiler9_cntr.LC121, boiler9_cntr.PCA51, boiler9_cntr.FC101, boiler9_cntr.FC102, boiler9_cntr.FC103, boiler9_cntr.FC104, boiler9_cntr.FC105, boiler9_cntr.PSA76 |
Бібліотека "Котел К9" (JavaLikeCalc.lib_boiler9, з цим проєктом) | |
Дільник (Divider) | boiler9_cntr.Air_Gas |
Сумарні витрати палива у котлі (Fsum) | boiler9_cntr.Fsum |
Інверсія (Inversion) | boiler9_cntr.5FW_inv |
Завдяки використанню бібліотеки моделей апаратів та концепції побудови динамічних моделей була отримана динамічна модель, з якої можна взяти параметри у будь-якому місті принципової схеми як для вивчення, так і для відпрацювання алгоритмів керування.
Для отримання інформації про технологічний процес були створені параметри (таблиця 3), які представляють дані з окремих вузлів моделі.
Таблиця 3. Параметри технологічного процесу
Шифр | Опис | Властивості | Джерело |
---|---|---|---|
ДМК Котел9 (BlockCalc.boiler9) | |||
LC121 | Рівень води у барабані котла | Drum.Lo | |
LСA122, LSA124 | Рівень води у чистому відсіку барабану, праворуч | %, (0;100), Точність 0 | Drum.Lo |
LSA123 | Рівень води у чистому відсіку барабану, ліворуч | %, (0;100), Точність 0 | Drum.Lo |
LCVG121 | Положення 3ВПл | %, (0;100), Точність 0 | 3FW.l_kl1 |
LCVG122 | Положення 3ВПп | %, (0;100), Точність 0 | 3FW.l_kl1 |
G_11SH | Положення 11Ш | 11G.l_kl1 | |
G_12SH | Положення 12Ш | 11G.l_kl2 | |
G_13SH | Положення 13Ш | 13G.l_kl1 | |
G_14SH | Положення 14Ш | 13G.l_kl2 | |
l_5FW | Положення 5ВП(1) | 5FW.l_kl1 | |
l_5FW_2 | Положення 5ВП(2) | 5FW.l_kl2 | |
l_7FW | Положення 7ВП | 7FW.l_kl1 | |
l_4GN | Положення 4ГП | 4GN.l_kl1 | |
l_5GN | Положення 5ГП | 5GN.l_kl1 | |
l_7GBF | Положення 7ГД | 7GBF.l_kl1 | |
l_8GBF | Положення 8ГД | 8GBF.l_kl1 | |
FCVG102 | Положення 5ГП | 5GN.l_kl1 | |
FCVG103 | Положення 7ГД | 7GBF.l_kl1 | |
FCVG104 | Положення 8ГД | 8GBF.l_kl1 | |
FCVG105 | Положення 4ГК | 4GC.l_kl1 | |
TCVG1_1 | Положення 7ВП | 7FW.l_kl1 | |
TCVG1_2 | Положення 5ВПл | 5FW.l_kl1 | |
PCVG76 | Продуктивність ДСА | об/хвил, (0;100), Точність 1 | SEA.N |
PCVG77 | Продуктивність ДСБ | об/хвил, (0;100), Точність 1 | SEB.N |
FCV106 | Продуктивність ДВА | об/хвил, (0;100), Точність 1 | BFA.N |
FCV107 | Продуктивність ДВБ | об/хвил, (0;100), Точність 1 | BFB.N |
PCA51 | Тиск пару після ГПЗ | ат, (0;50), Точність 2 | 4GN3.Po |
PSA52 | Тиск пару у барабані котла | ат, (0;40), Точність 2 | Drum.Po1 |
PCA52 | Тиск пару у барабані котла | ат, (0;50), Точність 2 | Drum.Po1 |
PSA52_1 | Тиск пару у барабані котла | ат, (0;40), Точність 2 | Drum.Po1 |
PSA53 | Тиск ГП до регулюючої засувки | ат, (0;40), Точність 2 | 3GN.Po |
PSA53_1 | Тиск ГП перед діафрагмою | ат, (0;40), Точність 2 | 3GN.Po |
PSA53_2 | Тиск ГП перед діафрагмою | ат, (0;40), Точність 2 | 3GN.Po |
PSA54 | Тиск ГП після регулюючої засувки | ат, (0;1.5), Точність 3 | 5GN.Po |
PA55 | Тиск ГП перед лівою горелкою | ат, (0;40), Точність 2 | 6GN.Po |
PA56 | Тиск ГП перед правою горелкою | ат, (0;40), Точність 2 | 6GN.Po |
PSA57_1, PSA57_2 | Тиск ГД на загальному трубопроводі | ат, (0;2), Точність 2 | Node3.Pi |
PSA59 | Тиск ГД після засувки на лівому газопроводі | ат, (1;2), Точність 3 | 10GBF.Po |
PSA60 | Тиск ГД після засувки на правому газопроводі | ат, (1;2), Точність 3 | 9GBF.Po |
P61 | Тиск ГД перед лівою горелкою | ат, (0;1.6), Точність 2 | 9GBF.Po |
P62 | Тиск ГД перед правою горелкою | ат, (0;1.6), Точність 2 | 10GBF.Po |
PSA63_1 | Тиск ГК після 5ГК | ат, (0;2), Точність 2 | 5GC.Po |
PSA63_2 | Тиск ГК після 3ГК | ат, (0;2), Точність 2 | 3GC.Po |
PSA64 | Тиск ГК після регулюючого клапану | ат, (0;2), Точність 3 | 4GC.Po |
P65 | Тиск ГК перед лівою горелкою | ат, (0;1.6), Точність 2 | 6GC.Po |
P66 | Тиск ГК перед правою горелкою | ат, (0;1.6), Точність 2 | 6GC.Po |
P67 | Тиск повітря перед першим ступенем В/П ліворуч. | ат, (0;1.2), Точність 2 | Node9.Po |
P68 | Тиск повітря перед першим ступенем В/П праворуч | ат, (0;1.2), Точність 2 | Node9.Po |
PSA70 | Тиск повітря після другого ступеня повітря-підігрівача | ат, (0;1.2), Точність 2 | AH2.Po2 |
PSA71 | Тиск повітря після другого ступеня повітря-підігрівача | ат, (0;1.2), Точність 2 | AH2.Po2 |
P72 | Тиск повітря на верхньому ярусі лівої горелки | ат, (0;1.2), Точність 2 | Node2.Po |
P73, PSA73 | Тиск повітря на верхньому ярусі правої горелки | ат, (0;1.16), Точність 2 | Node2.Po |
P74 | Тиск повітря на нижньому ярусі лівої горелки | ат, (0;1.16), Точність 2 | Node2.Po |
P75, PSA75 | Тиск повітря на нижньому ярусі правої горелки | ат, (0;1.16), Точність 2 | Node2.Po |
PCSA76 | Розрідження у топці ліворуч | ат, (0.9;1), Точність 3 | FireChamber.Po |
PCSA77 | Розрідження у топці праворуч | ат, (0.9;1), Точність 3 | FireChamber.Po |
P78 | Розрідження перед "ДС-А" | ат, (0.9;1), Точність 2 | 1G.Po |
P79 | Розрідження перед "ДС-Б" | ат, (0.9;1), Точність 2 | 2G.Po |
PSA80 | Тиск ВП по лівій лінії живлення | ат, (0;60), Точність 2 | SrcWater.Po |
PSA81 | Тиск ВП по правій лінії живлення | ат, (0;60), Точність 2 | SrcWater.Po |
PSA85 | Тиск повітря після повітря-підігрівача | ат, (0;2), Точність 3 | AH2.Po2 |
P103 | Тиск ГД на діафрагмі ліворуч | ат, (0;2), Точність 2 | Node3.Po2 |
P104 | Тиск ГД на діафрагмі праворуч | ат, (0;2), Точність 2 | Node3.Po1 |
Src_GN_Pi | Вхідний тиск на джерелі ГП | SrcNG.Pi | |
P_GN_S | Тиск ГП після джерела | SrcNG.Po | |
P_4GN | Тиск ГП після 4ГП | 4GN.Po | |
l_3FW_1 | Положення 3ВП(1) | 3FW.l_kl1 | |
l_3GN | Положення 3ГП | 3GN.l_kl1 | |
l_6GN_1 | Положення 6ГП_1 | 6GN.l_kl1 | |
l_6GN_2 | Положення 6ГП_2 | 6GN.l_kl2 | |
l_5GC | Положення 5ГК | 5GC.l_kl1 | |
Pdrum | Тиск у барабані котла | Drum.Po1 | |
TCA1 | Температура пару після ГПЗ | 4GN3.To | |
F_3FW | Витрати води після 3ВП | 3FW.Fo | |
F_5FW | Витрати води після 5ВП | 5FW.Fo | |
F_7FW | Витрати води після 7ВП | 7FW.Fo | |
Fdrum | Витрати води до барабану | Drum.Fi1 | |
F_Node8 | Витрати води після Вуз8 | Node8.Fo | |
FC101 | Витрати пару з котла | т/год, (0;100), Точність 2 | 4GN3.Fo |
FC102 | Витрати природного газу | 3GN.Fo | |
FC102_0 | Витрати природного газу після джерела | SrcNG.Fo | |
FC102_1 | Витрати природного газу після 4ГП | 4GN.Fo | |
FC102_2 | Витрати природного газу після 5ГП | 5GN.Fo | |
FC102_3 | Витрати природного газу після 6ГП | 6GN.Fo | |
FC103 | Витрати ГД по лівому газопроводу | 5GBF.Fi | |
FC104 | Витрати ГД по правому газопроводу | 6GBF.Fi | |
FC105 | Витрати коксового газу після 5ГК | 5GC.Fo | |
FC106 | Витрати повітря на ліву горелку | т/год, (0;100), Точність 1 | Node2.Fi1 |
FC107 | Витрати повітря на праву горелку | т/год, (0;100), Точність 1 | Node2.Fi2 |
FA108 | Витрати повітря-перегрівача по правій лінії живлення | т/год, (0;200), Точність 2 | SrcWater.Fo |
F109 | Витрати води на терморегулятор | т/год, (0;200), Точність 2 | 7FW.Fo |
FA110 | Витрати повітря-перегрівача по лівій лінії живлення | т/год, (0;200), Точність 2 | SrcWater.Fo |
QA151 | Вміст кисню у ДГ після пароперегрівача | %, (0;20), Точність 2 | FireChamber.O2 |
QA152 | Вміст CO у ДГ після пароперегрівача | %, (0;20), Точність 2 | FireChamber.CO |
QA153 | Вміст кисню у відхідних ДГ | %, (0;20), Точність 2 | FireChamber.O2 |
T2 | Температура природного газу | град.К, (223;323), Точність 2 | 3GN.To |
T3 | Температура ГД | град.К, (273;373), Точність 2 | 5GBF.Ti |
T5 | Температура ГК на котел | град.К, (273;373), Точність 2 | 4GC.To |
T7 | Температура повітря після другого ступеню повітря-перегрівача ліворуч | град.К, (273;773), Точність 2 | AH2.To2 |
T8 | Температура повітря після другого ступеню повітря-перегрівача праворуч | град.К, (273;773), Точність 2 | AH2.To2 |
T13 | Температура ДГ перед пароперегрівачем ліворуч | град.К, (273;1027), Точність 2 | Drum.To2 |
T14 | Температура ДГ перед пароперегрівачем праворуч | град.К, (273;1027), Точність 2 | Drum.To2 |
T15 | Температура ДГ перед другим ступенем економайзеру ліворуч | град.К, (273;873), Точність 2 | OhS.To1 |
T16 | Температура ДГ перед другим ступенем економайзеру праворуч | град.К, (273;873), Точність 2 | OhS.To1 |
T17 | Температура ДГ після другого ступеня економайзеру ліворуч | град.К, (273;873), Точність 2 | EC2.To1 |
T18 | Температура ДГ після другого ступеня економайзеру праворуч | град.К, (273;873), Точність 2 | EC2.To1 |
T19 | Температура ДГ перед першим ступенем повітря-перегрівача ліворуч | град.К, (273;873), Точність 2 | EC1.To1 |
T20 | Температура ДГ перед першим ступенем повітря-перегрівача праворуч | град.К, (273;873), Точність 2 | EC1.To1 |
T21 | Температура ДГ перед другим ступенем повітря-перегрівача ліворуч | град.К, (273;873), Точність 2 | EC2.To1 |
T22 | Температура ДГ перед другим ступенем повітря-перегрівача праворуч | град.К, (273;873), Точність 2 | EC2.To1 |
T23 | Температура ДГ перед першим ступенем економайзеру ліворуч | град.К, (273;873), Точність 2 | AH2.To1 |
T24 | Температура ДГ перед першим ступенем економайзеру праворуч | град.К, (273;873), Точність 2 | AH2.To1 |
TA25 | Температура ДГ перед "ДС-А" | град.К, (273;673), Точність 2 | 1G.To |
TA26 | Температура ДГ перед "ДС-Б" | град.К, (273;673), Точність 2 | 1G.To |
T35 | Температура повітря-перегрівача по лівій лінії живлення | град.К, (273;473), Точність 2 | 3FW.To |
T36 | Температура повітря-перегрівача по правій лінії живлення | град.К, (273;473), Точність 2 | 3FW.To |
T37 | Температура води після економайзеру ліворуч | град.К, (273;673), Точність 2 | EC2.To2 |
T38 | Температура води після економайзеру праворуч | град.К, (273;673), Точність 2 | EC2.To2 |
ДМК Котел9 Контролер (BlockCalc.boiler9_cntr) | |||
TCA1 | Температура пару на виході | К, (273;800), Точність 0 | TCA1.* |
QAC151 | Відсоток кисню у димових газах | %, (0;15), Точність 1 | QAC151.* |
LC121 | Рівень у барабані котла | %, (0;100), Точність 1 | LC121.* |
5FW | %, (0;100), Точність 1 | 5FW_inv.OVar | |
FC101 | Витрати пару з котла | т/год, (0;150), Точність 0 | FC101.* |
FC102 | Витрати природного газу | т/год, (0;6), Точність 1 | FC102.* |
FC103 | Витрати доменного газу по лівому газопроводу | т/год, (0;70), Точність 1 | FC103.* |
FC104 | Витрати доменного газу по правому газопроводу | т/год, (0;70), Точність 1 | FC104.* |
FC105 | Витрати коксового газу | т/год, (0;10), Точність 1 | FC105.* |
PSA76 | Розрідження у топці | ат, (0.9;1), Точність 3 | PSA76.* |
2.3 Регулювання
Сама по собі динамічна модель без регулювання може бути нестійкою. Наприклад, параметр рівня у барабані не має саморегуляції та уходить до крайніх позицій, у випадку відсутності балансу керуючих параметрів, що є типовим для чистого інтегралу. З цієї причини, а також для створення самодостатньої моделі, спроможної працювати автономно та без ПЛК у ролі регулятору, було створено об'єкт контролеру регуляторів для моделі котла відповідно до схем регулювання на рисунку 2-4.
3 Інтерфейс користувача
Користувацький інтерфейс моделі містить одинадцять об'єктів сигналізацій (рис.5). Кожен об'єкт сигналізації містить по декілька мнемосхем, груп графіків, груп контурів та оглядових груп.
3.1 Об'єкт сигналізації "Пускова"
3.2 Об'єкт сигналізації "Розпал"
3.3 Об'єкт сигналізації "Дим.гази"
3.4 Об'єкт сигналізації "Дренажі"
3.5 Об'єкт сигналізації "ГД"
3.6 Об'єкт сигналізації "ГП"
3.7 Об'єкт сигналізації "ГК"
3.8 Об'єкт сигналізації "ПАР"
3.9 Об'єкт сигналізації "ВП"
3.10 Об'єкт сигналізації "Економайзер"
3.11 Об'єкт сигналізації "ВЗП"
4 Результати
Результатом розробки стала повноцінна динамічна модель технологічного процесу багатопаливного парового котлоагрегату на високий тиск та велику продуктивність. Ця модель доступна на трьох мовах та включена до дистрибутивів OpenSCADA для демонстрації функцій та можливостей.
Модель передбачає можливість керування ТП від особи оператору, включаючи операції:
- керування регуляторами:
- зміна режиму регулятора: "Автомат", "Ручний" або "Каскад";
- встановлення потрібного значення завдання або ручного виходу виконавчого механізму;
- налаштування параметрів ПІД-регулятору.
В цілому, у схемі керування, повноцінно приймають участь наступні регулятори:
- LC121 — рівень води у барабані котла;
- PSA76 — розрідження у топці котла;
- FC101 — витрати пару у паровий колектор;
- FC102 — витрати природного газу;
- FC103, FC104 — витрати доменного газу;
- FC105 — витрати коксового газу;
- QAC151 — відсоток кисню у димових газах;
- TCA1 — температура пару.
У прикладному сенсі модель дозволила відпрацювати алгоритми керування подачею декількох родів палива.
Ресурсомісткість моделі загалом, до центрального процесору Athlon 64 3000+ (2000МГц) складає 22%, до центрального процесору 800 МГц складає 70%.