scada 2000 пособие. SCADA КРУГ-2000_ Быстрый старт. Руководство Пользователя. Модульная интегрированная scada круг2000 б ы с т р ы й с та
Скачать 5.44 Mb.
|
Приложение B. Программа учебнаяПрограмма Учебная Начало: получаем текущее время (час: мин: сек) (пц1,пц2,пц3)=stime() : получаем текущую дату (год: месяц: день) (пц11,пц12,пц13)=sdate():Состояние насоса Если дв1=1 : Если команда "Пуск"{ вд1=1 : состояние насоса "Включен"} Иначе{ вд1=0 : состояние насоса "Отключен"} :Состояние задвижкиЕсли дв2=1 : Если команда "Открыть" задвижку {вд3=0 : состояние задвижки "Закрыта" = ложь вкл тс1 : включить таймер Если тс1>3{ вд2=1 : состояние задвижки "Открыта" = истина дв2=0 : "сбросить" команду "Открыть задвижку" выкл тс1 : выключить таймертс1=0 : обнулить таймер }} Если дв3=1 : Если команда "Закрыть задвижку"{ вд2=0 : состояние задвижки "Открыта" = ложь вкл тс2 : включить таймерЕсли тс2>3 {вд3=1 : состояние задвижки "Закрыта" = истина дв3=0 : "сбросить" команду "Закрыть задвижку" выкл тс2 : выключить таймер тс2=0 : обнулить таймер} }122 Приложение А :Уровень в колоннеЕсли вд1=1 : Если состояние насоса "Включен" { : уровень растёт ва1.a28=ва1.а28+1} Если вд2=1 : Если состояние задвижки "Открыта"{ : уровень падает ва1.a28=ва1.а28-2 }:Имитация температуры в баке ва2=20+cos(ва2) :Имитация давления на выходе насоса Если вд1=1 : Если насос включен{ ва3=cos(ва3): есть давление} Иначе{ ва3=0 : давления нет} Защиты : вызов процедуры ПД : вызов процедуры ВыходКонец Процедура Защиты Началопв1=цв(пц1) :час пв2=цв(пц2) :минутыпв3=цв(пц3) :секунды пв11=цв(пц11-2000) :год пв12=цв(пц12) :месяц пв13=цв(пц13) :деньЕсли ва1>ва1.а16 : Если уровень превысил уставку, отключить насос и открыть задвижку {дв1=0 дв2=1 Если тс11<1{ рв2=пв1*10000+пв2*100+пв3 : Время возникновения аварии (ЧЧММСС)рв2.а9=пв13*10000+пв12*100+пв11 : Дата возникновения аварии (ДДММГГ) |