Рефераты. Автоматизированная система управления автономным водоснабжением

1.5 Программная реализация алгоритма системы водоснабжения

Разработав алгоритм управления ультрафиолетовой дезинфекционной установкой, необходимо реализовать его в программной среде и доработанный алгоритм загрузить в программируемый логический контроллер. Прежде чем перейти к программной реализации алгоритма подсистемы управления ультрафиолетовой дезинфекционной установкой, необходимо описать язык программирования, посредством которого реализуется данный алгоритм. При программировании промышленных логических контроллеров используется стандартный язык контактно-релейной логики или функциональных схем [1]. Разработанный алгоритм управления ультрафиолетовой дезинфекционной установкой реализован посредством релейной логики в программной среде RSLogix 17. Опишем состояние цепочки релейной логики для того, чтобы описать данный язык программирования. Контроллер анализирует инструкции релейной логики, исходя из состояния цепочки перед данной инструкцией (входного условия цепочки). На основе инструкции и входного условия цепочки контроллер устанавливает условие после инструкции (выходное условие цепочки), которое, в свою очередь, влияет на всякую последующую инструкцию. Если условие цепочки перед инструкцией - «истина», контроллер анализирует инструкцию и устанавливает выходное состояние цепочки на основе результатов ее выполнения. Если результатом инструкции является «истина», то выходное состояние цепочки - «истина», если же результатом инструкции является «ложь», то выходное состояние цепочки - «ложь». Также контроллер выполняет предварительное сканирование инструкций. Предварительное сканирование - это специальное сканирование всех процедур в контроллере. В процессе предварительного сканирования контроллер сканирует все главные процедуры и подпрограммы, но игнорирует переходы, при которых может быть пропущено выполнение инструкций. Контроллер выполняет все циклы и вызовы подпрограмм. Если какая-либо подпрограмма вызывается более одного раза, она выполняется при каждом вызове. Контроллер использует предварительное сканирование инструкций релейной логики для сброса не сохраняемого ввода/вывода и внутренних значений. При предварительном сканировании входные значения не являются текущими, а выходные данные не записываются. На рисунке 1.12 представлена структура релейной логики.

Рисунок 1.12 - Структура релейной логики

Перейдем к непосредственной программной реализации алгоритма управления подсистемой ультрафиолетовой дезинфекционной установки. На рисунке 1.13 представлена программная реализация алгоритма управления ультрафиолетовой дезинфекционной установкой.

Рисунок 1.13 - Программная реализация алгоритма управления ультрафиолетовой дезинфекционной установки

Рассмотрим инструкции и тэги, использованные при реализации данного алгоритма. В данном алгоритме использованы следующие инструкции:

· Инструкция XIC (Examine if Closed) - проверить на состояние «вкл».

· Инструкция XIO (Examine if Open) - проверить на состояние «откл».

· Инструкция OTL (Output Latch) - фиксация выхода.

· Инструкция OUT (Output Unlatch) - расфиксация выхода.

Рассмотрим данные инструкции подробнее. Инструкция программно подсвечена зеленым цветом в случае установки «истины». Инструкция XIC проверяет, установлен ли бит данных. Пример данной инструкции представлен на рисунке 1.14.

Рисунок 1.14 - Программная реализация инструкции XIC.

Если установлен нулевой бит тэга данных PV_UV_AUTO_MAN, то это разрешает следующую по порядку инструкцию (выходное условие цепочки - «истина»). Если входное условие цепочки - «ложь», то выходное условие цепочки устанавливается на «ложь». Алгоритм данной инструкции представлен на рисунке 1.15.

Рисунок 1.15 - Алгоритм инструкции XIC.

Инструкция XIO проверяет, сброшен ли бит данных. Пример данной инструкции представлен на рисунке 1.16.

Рисунок 1.16 - Программная реализация инструкции XIO.

Если сброшен нулевой бит тэга данных PV_UV_AUTO_MAN, то это разрешает следующую по порядку инструкцию (выходное условие цепочки - «истина»). Если входное условие цепочки - «ложь», то выходное условие цепочки устанавливается на «ложь». Алгоритм данной инструкции представлен на рисунке 1.17.

Рисунок 1.17 - Алгоритм инструкции XIO.

Инструкция OTL устанавливает (фиксирует) бит данных в логическую единицу - «истина». Пример данной инструкции представлен на рисунке 1.18.

Рисунок 1.18 - Программная реализация инструкции OTL.

Когда инструкция OTL разрешена, она устанавливает нулевой бит тэга данных UV_ON в логическую единицу. Данный бит тэга использован для управления ультрафиолетовой дезинфекционной установкой и отображения ее текущего состояния. Этот бит остается установленным пока он не будет сброшен, как правило с помощью инструкции OUT. Инструкция OTU сбрасывает бит данных (снимает фиксацию) в логический нуль - «ложь». Пример данной инструкции представлен на рисунке 1.19.

Рисунок 1.19 - Программная реализация инструкции OUT.

Обращаясь к рисунку 1.13 разберем на основании тэгов данных и инструкций программную реализацию алгоритма управления ультрафиолетовой дезинфекционной установкой. Нулевой бит тэга данных PV_UV_AUTO_MAN определяет режим работы ультрафиолетовой дезинфекционной установки. Данный бит устанавливается в логическую единицу при переходе в автоматический режим, и устанавливается в логический нуль при переходе в ручной режим. Инструкция XIC и инструкция XIO проверяют данный бит. Если данный бит установлен в логическую единицу, что представлено на рисунке 1.20, тогда выходное значения инструкции XIC устанавливается в логическую единицу и происходит переход к следующей инструкции XIC, которая проверяет наличие потока воды на выходном расходомере FS7743.

Рисунок 1.20 - Программная реализация алгоритма в автоматическом режиме работы установки и при наличии потока воды на выходном расходомере.

Данному расходомеру соответствует тэг данных A_41_FS7743. Поскольку в нашем примере данный бит также установлен, то выходное значение данной инструкции устанавливается в «истина», и инструкция OTL устанавливает нулевой бит тэга данных UV_ON, таким образом, запустив ультрафиолетовую дезинфекционную установку. При отсутствии потока на выходном расходомере FS7743 произойдет переход к нижней части цепочки и инструкция OTU сбросит нулевой бит тэга данных UV_ON, таким образом, остановив ультрафиолетовую дезинфекционную установку. Данная цепочка представлена на рисунке 1.21.

Рисунок 1.21 - Программная реализация алгоритма в автоматическом режиме работы установки и при отсутствии потока воды на выходном расходомере.

При переходе данной подсистемы в ручной режим происходит переход на цепочку, представленную на рисунке 1.22.

Рисунок 1.22 - Программная реализация алгоритма в ручном режиме запуска установки.

Если нулевой бит тэга данных PV_UV_AUTO_MAN установлен в логический нуль, что соответствует ручному режиму работы установки, и определяется инструкцией XIO, то инструкция XIC определяет значение нулевого бита тэга данных PV_UV_ON. Данный бит тэга установлен в логическую единицу при поступлении команды запуска данной установки с HMI. Для отключения установки используется цепочка, представленная на рисунке 1.23.

Рисунок 1.23 - Программная реализация алгоритма в ручном режиме отключения установки.

Если нулевой бит тэга данных PV_UV_AUTO_MAN установлен в логический нуль, что соответствует ручному режиму работы установки, и определяется инструкцией XIO, то инструкция XIC определяет значение нулевого бита тэга данных PV_UV_OFF. Данный бит тэга установлен в логическую единицу при поступлении команды отключения данной установки с HMI.

1.6 Разработка программного интерфейса для удаленного управления системой водоснабжения

В данном разделе представим описание существующего и разработанного программного интерфейса оператора для удаленного управления системой водоснабжения. В начале рассмотрим существующий интерфейс. Для локального управления системой автономного водоснабжения требуется присутствие оператора на объекте вне административного здания. Это создает большое неудобство в эксплуатации системы. Для визуализации технологического процесса используется дисплей с диагональю 8 дюймов. Визуализация выполнена на низком уровне, а интерфейс имеет недостатки, выявленные на этапе анализа. На рисунках 1.24 и 1.25 представлены примеры существующего операторского интерфейса.

Рисунок 1.24 - Главное окно существующего интерфейса

Рисунок 1.25 - Окно управления режимом работы линий очистки воды

Перейдем к рассмотрению разработанного в рамках дипломного проекта программного интерфейса. Программный интерфейс разработан с использованием прикладного программного обеспечения визуализации технологических процессов Wonderware InTouch 7.1 [2]. Насосы водяных скважин, блочная установка подготовки питьевой воды, а также исполнительные устройства и КИП резервуаров питьевой воды управляются выделенным ПЛК с дисплеем для операторского интерфейса. Данный дисплей используется для доступа ко всем зонам операторского интерфейса. Представим основные функции, которые предоставляет оператору разработанный программный интерфейс.

Работа оператора начинается с входа в меню авторизации, который обеспечивает работу оператора на двух языках: русском и английском. Программный интерфейс обеспечивает гибкое управление предоставлением прав доступа к разным типам оборудования. Данное окно позволяет изменять права доступа пользователей в пределах от 0000 (минимальные права) до 9999 (максимальные права), изменять пароли доступа, а также обеспечивает завершение работы пользователя. На рисунке 1.26 представлено окно, обеспечивающее авторизацию пользователя.

Рисунок 1.26 - Окно авторизации пользователя

При успешной авторизации пользователь переходит в основное окно, обеспечивающее визуализации системы водоснабжения. На рисунке 1.27 представлено главное окно программного интерфейса.

Рисунок 1.27 - Главное окно программного интерфейса

Данное окно обеспечивает возможность оператору следить за текущим состоянием системы в целом. Из данного окна предусмотрена возможность перехода в подсистемы управления водяными скважинами, блочной установкой подготовки воды, а также резервуарами питьевой воды. Переход осуществляется по наведению курсора на подсистему. В нижней части окна отображается текущие событие, с возможности просмотра всех событий посредством перехода в окно журнала событий. Журнал событий регистрирует аварийные события и обеспечивает хранение данных сроком 30 дней. К аварийным сигналов относятся аварийные сигналы клапанов, датчиков давления, реле низкого и высокого уровней, реле низкого и высокого давления, сбоев различных подсистем. Неподтвержденные аварийные сигналы отмечаются красным цветом. Возле каждого аварийного сигнала указываются дата и время. Для навигации в аварийных событиях используются клавиши со стрелками. Для стирания журнала используется клавиша стирания предыстории аварийных сигналов. Данное окно представлно на рисунке 1.28.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.