Начальное состояние -вывод «Главное меню» “din_dr+” = + ? (означает проверку активного состояния ) “din_dr-“ =+ ? -неустранимая ошибка №1 -иначе (“din_dr+” = -) “din_dr-“ = - ? (дверь в среднем положении) - запускается процедура «Открыть дверь» (дверь закрыта) “k6+” =+ ? (кран вентиляции открыт?) -запускается процедура «напуск воздуха в камеру» -ожидание конца процедуры -запускается задача «калибровка К1, К2» “ain_tmp2” < const_t_kam ? (рабочая температура камеры 30-50град) - запускается задача «ожидание нагрева камеры» (до этого момента кнопки не доступны) Нажата «Открыть/закрыть дверь» ? (если “din_dr-“ = + дверь закрыта, “din_dr+” = + открыта) - запускается процедура «Открыть дверь» или «Закрыть дверь» Нажата «Режим 1» - вывод меню «Режим1» - в поле - (xx,x град) вывести сигнал – (“ain_pir”* const_air_k + const_air_b) - в поле – (xxx,xx торр) вывести сигнал – (“ain_pres2”*const_pres2_k+ const_pres2_b) Нажата «Пуск» -переход в меню цикла В поле текущей температуры (“ain_pir”* const_air_k + const_air_b) В поле текущее давление: Вычислять по алгоритму: (“ain_pres2”*const_pres2_k+ const_pres2_b) >2торр Использовать (“ain_pres2”*const_pres2_k+ const_pres2_b+walue_pres2_b) При сбросе walue_pres2_b=0 иначе (“ain_pres1” табличное значение) – таблица 20 пар значений График: -ось х время в минутах (начальная точка-0, конечная точка - расчетное время до окончания процесса) -ось y шкала давление синего цвета(0-30торр), шкала температуры красного цвета (2060 град) График продолжается на протяжении всего цикла. Давление выводится в виде синей гистограммы Температура в виде красной линии Стадия «Вакуум1» “pur” + (включение ротационного насоса) “k1+“ + (открытие крана откачки) “k6-” + (закрытие крана вентиляции камеры) Ожидать const_tim1 “k1+“ - (открытие крана откачки) “k6-” - (закрытие крана вентиляции камеры) время = «Максимальное время Вакуум1» и (“ain_pres1” табличное значение) > «Давление включения плазмы» ?) -ошибка №2 «Давление не понизилось до нужного уровня» - Выполнение процедуры «Сбой» (“ain_pres1” табличное значение) <= «Давление включения плазмы» ? “pl”+ (включения плазмы) -проверка на плазмообразование: “din_pl”- ? (датчик плазмы не сработал , проверяется через не раньше 100мс после включения) -Ошибка №3 «Нет плазмообразования» - Выполнение процедуры «Сбой» Условие выключения плазмы: время = «Максимальное время Вакуум1» время включение = « Ограничение времени включения » - (“ain_pir”* const_air_k + const_air_b) >=« Температура выключения» “pl”- (выключение плазмы) - вычисление фактического времени стадии: Фактическое время стадии = «Максимальное время Вакуум1»- текущее время стадии «Вакуум1» -корректировка расчетного времени «Расчетное время до окончания процесса» = «Расчетное время до окончания процесса»фактическое время стадии - сохранить в отчет: - максимальную температуру в стадии - давление в конце стадии (текущее на данный момент) - фактическое время стадии Корректировка нуля датчика давления pres2: Сравнить (“ain_pres2”*const_pres2_k+ const_pres2_b+walue_pres2_b И (“ain_pres1” табличное значение) Вычислить новое значение walue_pres2_b Стадия «Диффузия1» - задание температуры нагрева печки Температура печки = const_t_pech2 (в задаче «Термостатирование печки») - напуск перекиси “k3”+ (клапан напуска перекиси) Ожидать = «Время включения клапана» (в меню напуска перекиси) “k3”- (клапан напуска перекиси - выпаривание Ожидать = «Время выпаривания» “k1-“ + (закрытие крана откачки) Ожидать const_tim1 “k1-“ - (закрытие крана откачки) “k5” + (клапан вентиляции насоса) Ожидать const_tim2 (30 - 240 сек, шаг 30 сек) “pur”- (выключение ротационного насоса) Ожидать const_tim3 (1-10сек) “k5” - (клапан вентиляции насоса) Ожидать = «Длительность Диффузии1» - «Длительность напуска» -сохранение в отчет - проверка на давление диффузии (“ain_pres2”*const_pres2_k+ const_pres2_b+walue_pres2_b) < “Минимальное давление диффузии» Ошибка «Низкое давление диффузии» Выход в процедуру «Сбой» - задание температуры нагрева печки Температура печки = const_t_pech1 (в задаче «Термостатирование печки») - напуск воздуха в камеру “k6+” + (открытие крана вентиляции камеры) Ожидать const_tim1 (шаг 1сек) “k6+” (открытие крана вентиляции камеры) - ожидать = «Длительность напуска» - 2* const_tim1 “k6-” + (закрытие крана вентиляции камеры) Ожидать const_tim1 “k6-”- (закрытие крана вентиляции камеры) -переход на стадию «Вакуум2» «Вакуум2 “pur” + (включение ротационного насоса) “k1+“ + (открытие крана откачки) Ожидать const_tim1 “k1+“ - (открытие крана откачки) время = «Максимальная длительность Вакуум2» -ошибка №2 «Давление не понизилось до нужного уровня» - Выполнение процедуры «Сбой» (“ain_pres1” табличное значение) <= «Давление включения плазмы» ? - сохранение в отчет -переход на стадию «Плазма1» «Плазма1» «Диффузия 2» Аналогично «диффузии 1» кроме процедуры «Напуск воздуха в камеру» -переход на стадию «Вентиляция» «Вентиляция» - включение насоса -открытие крана вентиляции -проверка на время стадии -сохранение в отчет «Режим2» Аналогично режиму 1 Должно отображаться: - номер цикла - расчетное время до окончания процесса (убывает в процессе выполнения) - текущая стадия - время до окончания стадии (убывает в процессе выполнения) - текущее давление - текущая температура - график зависимости давление от времени (в пределах 0- 30 торр) - график зависимости температуры от времени (в пределах 20 – 60 град) - кнопка «Отмена» (при ее нажатии начинается процедура отмены) Меню установки параметров Режима1 «установка параметров стадий режима1» - информационное поле «Максимальное время Вакуум1» xx мин - поле ввода «Длительность Диффузии1» 0- 20мин, шаг 1мин - поле ввода «Длительность Плазмы1» 0-10мин, шаг 1мин - поле ввода «Максимальная длительность Вакуум2» 0-20мин, шаг 1мин - поле ввода «Длительность Диффузии2» 0-20мин, шаг 1мин - информационное поле «Вентиляция» xx мин - Информационное поле «Максимальная длительность цикла» xxx мин «Параметры выпаривания» - поле ввода «Время выпаривания» 0-10мин, шаг 0,5мин - поле ввода « Начальная температура» 0- 100град, шаг 0,1 - поле ввода «Конечная температура» 0- 100град, шаг 0,1 - поле ввода «Мощность печки» 0- 100Вт, шаг 1 - поле ввода «Использовать откачку» да/нет - поле ввода «Глубина откачки» 0- 5 торр, шаг 0,1 - поле ввода «Время откачки» 0- 10мин, шаг 1мин DD0 DD1 DD2 DD3 DD4 DD5 DD6 DD7 DD8 DD9 DD10 DD11 DD12 DD13 DD14 DD15 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 IN8 IN9 IN10 IN11 IN12 - “m1-“ (открытие двери ) “m1+” (закрытие двери) “k2-“ (закрытие крана печки) “k2+” (открытие крана печки) “k1-“ (закрытие крана откачки) “k1+” (открытие крана откачки) “k3” (клапан напуска перекиси) “k5” (клапан вентиляции насоса) “k6-” (закрытие крана вентиляции камеры) “k6+” (открытие крана вентиляции камеры) “pl” (включения плазмы) “pur” (включение ротационного насоса) “hep” (включение нагрева печки» “pum” (включение мембранного насоса) “k10” (открытие клапана дозирующего устройства) “k11” (включение источников света денситометров) “din_dr-“ (дверь закрыта) “din_dr+” (дверь открыта) “din_pl” (датчик плазмы) “din_lev1” (датчик уровня 1) “din_lev2” (датчик уровня 2) “din_lev3” (датчик уровня 3) “din_lev4” (датчик уровня 4) “din_lev5 (датчик уровня 5) “din_lev6 (датчик уровня 6) “din_k1on (датчик открытого положения К1) “din_k1off (датчик закрытого положения К1) “din_k2on (датчик открытого положения К2) “din_k2off (датчик закрытого положения К2)