Для уменьшения числа типов рассматриваемых объектов разделим их на классы.
4.3 Создание диаграммы классов
Каждый класс может быть представлен несколькими объектами представляющими некоторые устройства, обладающими одинаковыми атрибутами и методами. Представим созданные классы и их взаимодействие на диаграмме классов системы управления.
― Main_controller – устройство данного класса представляет собой управляющий контроллер МНУ. Взаимодействует со всеми классами и имеет для этого ряд методов:
― Ontimer
― Get_status
И ряд атрибутов представляющих собой внутренние переменные используемые контроллером при реализации управляющего алгоритма:
― Main_pump_resourse – содержит время наработки главного насоса МНУ;
― Diverter_period – содержит время открытия перепускного клапана;
― Pump1 – Pump3 – содержит сведения о состояние насосов;
― Heating – состояние нагревателя;
― Cooling – состояние охладителя;
― Level1- Level6 – определяют уровень в ГА и сливном баке;
― Pressure – показатели реального и контрольных давлений в ГА;
― Condensation – наличие конденсата в баке;
― Obstructed1- Obstructed3 – засорение фильтров;
Air_valve – состояние пневмоклапана;
― Alarm – флаг аварийного состояния системы;
― Controller_GES – система управления ГЭС. Задает параметры работы контроллера МНУ и собирает сведения о состоянии технологического процесса.
― Timer – устанавливается контроллером и отсчитывает время, вырабатывает тактовый сигнал равный заданному контроллером периоду.
― Period – величина временного промежутка генерации сигнала OnTimer
― Set_timer() – операция управления таймером
― Valve – этот класс объединяет все электромагнитные клапаны системы. Управление объектами этого класса одинаково и сводится к использованию двух методов класса:
― Open()
― Close()
То есть клапан может быть открыт и закрыт.
― Oil_pump – масляные насосы. Все три насоса обладаю имеет одинаковые составные части и порядок запуска и остановки, следовательно, можно отнести их к одному классу. Класс обладает двумя методами – включить и отключить насос.
― SwitchON()
― SwitchOFF()
― Heater – электронагреватель масла в сливном баке. Не имеет атрибутов, но может включаться и отключаться. Следовательно, имеет два соответствующих метода:
― SwitchON()
― SwitchOFF()
Приведенные ниже классы представляют собой устройства сбора сведений о состояние технологического процесса. Каждый подобный класс содержит один атрибут – значение контролируемой величины и один метод – передать значение этой величины. Для контроля состояния МНУ используются датчики представленные следующими классами:
― Pressure_sensor – датчик давления масла в ГА
― Set_timer
― Get_pressure
― Thermometer – датчик температуры в сливном баке
― Temperature
― Get_themperature
― Analogius_level_sensor – аналоговый датчик уровня не используется при управлении технологическим процессом установки, одна сбор данных о состоянии уровня масла в баке и передача ее центральному контроллеру ГЭС осуществляется контроллером МНУ, а значит необходимо реализовать класс и описать метода работы с ним.
― Level
― Get_analogius_level
― Water_sensor – датчик наличия конденсата в сливном баке
― Condensate
― Get_water
― Obstruction_sensor – датчик засорения масляных фильтров
― Obstructed
― Get_obstruction
― Valve_position_sensor – датчик открытия перепускного клапана
― Position
― Get_obstruction
― Discrete_level_sensor – дискретный датчик уровня масла
― Level
― Get_level
Теперь, когда были установлены и описаны все классы, представляющие компоненты системы управления МНУ, необходимо создать объекты представляющие каждый компонент и указать его принадлежность к какому либо из описанных выше классов.
4.4 Взаимодействие компонентов системы
Объекты системы и их взаимодействие удобнее всего описать используя диаграмму взаимодействия изображенную на рисунке. На данной диаграмме изображены все устройства представленные на диаграмме топологии и еще несколько таймеров, которые входят в состав контроллера, но для описания алгоритма работы и улучшения структурирования системы удобнее будет рассматривать, как объекты некого самостоятельного класса Timer. Все объекты системы взаимодействуют только с одним – контроллером. Мы имеем дело с централизованной системой.
Как видно из диаграммы взаимодействия между объектами осуществляются с использованием описанных в предыдущем пункте методов класса, объектом которого является устройство. Порядок взаимодействия компонентов во времени удобнее всего представить на диаграмме последовательности взаимодействия.
4.5 Построение алгоритма работы системы
Создаваемая нами система работает по принципу логического автомата. То есть алгоритм ее работы можно представить как ряд определенных статических состояний в каждом из которых осуществляются какие либо заранее известные действия, описанные программой функционирования МНУ.
Переход из состояния в состояние происходит при наступлении одного из условий перехода, представляющего собой условие математической логики или наступление какого либо события, обработка которого должна осуществляться в другом статическом состояние системы. Возможно и осуществления безусловного перехода, если все действия предусмотренным состоянием были выполнены.
Для рассматриваемой нами системы управления мну можно следующие состояния описывающие весь цикл управления маслонапорной установкой ГЭС:
― Предпусковая проверка системы (Sistem_test);
― Ожидание сигнала таймера (Idle);
― Сбор данных датчиков (Get_sensor_data);
― Обработка данных, выработка управляющих воздействий (Process_Data);
― Остановка рабочего процесса (Stoping_process);
Так как рабочий процесс системы управления МНУ представляет собой последовательный переход между статическими состояниями удобнее всего будет составить диаграмму состояний.
Запуск системы осуществляется в точке Begin_working_circle и сразу же переходит в состояние проверки системы Sistem_test где производится опрос датчиков системы, параметры контролируемые данными датчиками могут не соответствовать начальным условиям запуска и система перейдет в состояние остановки. Контролируется температура масла в баке, его уровень, уровень и давление в ГА. Все действия производятся при входе в состояние. Если давление в гидроаккумуляторе меньше номинального или сработал один из аварийных датчиков уровня система перейдет в состояние остановки. В данном случае необходимо произвести перезапуск системы после корректировки параметров в ручном режиме.
Если не все параметры в норме производится переход в состояние ожидания сигнала таймера. Так как быстродействие процессора контроллера многократно превосходит время изменения состояния МНУ, нет необходимости постоянного контроля параметров техпроцесса, а правильнее осуществлять его периодически, по сигналу системного таймера. Для реализации процедуры ожидания и используется состояние Idle. Как только получен сигнал от системного таймера начинается опрос всех датчиков системы, а затем переход в состояния обработки полученных данных и выработки управляющих воздействий для корректировки технологических параметров.
Внутри этого состояния выделено несколько подсостояний, каждое из которых вводится для удобства восприятия и представляет собой алгоритм управления генерации управляющих сигнал для исполнительных устройств.
Из состояния обработки данных существует несколько условных переходов в режим остановки. Вызвано это необходимостью распознать аварийный режим работы и своевременно остановить МНУ, не допустив ее повреждения. Значения этих параметров рассматривалось при описании контрольных параметров системы при описание установки.
Если же аварийного или инициированного контроллером ГЭС прекращения работы не производится система находится в состоянии обработки данных до окончания проверки всех условий выработки управляющих воздействий.
Первым делом обрабатываются параметры давления и если оно превышает номинальное производится остановка включенных насосов (подпроцесс Pumping). Если же давление ниже уставки включения компенсационного, основного или резервного насоса производится включение соответствующего насоса, или не производится ни каких действий (в случае если насос уже запущен).
Затем после запуска или остановки необходимых насосов переходим в подсостояние управления пневмоклапанном. Пневмоклапан открывается, если он был закрыт, а уровень в ГА достиг наибольшего рабочего значения. Если же уровень упал ниже наименьшего, а клапан был открыт. производится его закрытие.
После окончания подсостояния управления уровнем переходим в подсостояние регулирования температуры в ГА. Если она ниже температуры включения нагревателя, а нагреватель не включен производится посылка сигнала на его включение. Если температура выше уровня включения охладителя и при этом он до сих пор не запущен производится открытие клапана охладителя.
Последним проверяются параметры которые могут позволить своевременно диагностировать неисправность и выявить наступление предаварийного состояния и передача состояния системы центральному контроллеру ГЭС.