Автоматизированная система управления автономным водоснабжением
Подпрограмма «Chlorine_System» отвечает за управление насосами подачи хлора 42-CIP-41, 42-CIP-42, 42-CIP-43, а также обрабатывает аварийные сигналы реле низкого и высокого уровней в резервуаре хранения хлора, передавая их в подпрограмму «Alarms».
Подпрограмма «Train_A» и подпрограмма «Train_B» реализуют алгоритм работы двух линий очистки воды, а именно: управление режимом работы линии, упра
вление клапанами в автоматическом и ручном режимах, обработку аналоговых сигналов датчиков давления, расходомеров. Данные подпрограммы работают раздельно, что обеспечивает параллельную независимую работу линий очистки воды.
Подпрограмма «P_Regulator» обеспечивает управление бесступенчатых клапанов на входах резервуаров питьевой воды, реализует ПИД-регулятор, поддерживающий уровень в резервуарах питьевой воды на заданном уровне посредством управления клапанами, а также, обрабатывает аварийные сигналы реле низкого уровня резервуаров питьевой воды. Данные сигналы передаются в подпрограмму «Alarms».
Таким образом, можно отметить, что в указанном алгоритме отсутствует подпрограмма управления ультрафиолетовой дезинфекционной установкой. Существующий общий алгоритм управления системой водоснабжения представлен на рисунке 1.9.
Рисунок 1.9 – Существующий алгоритм управления системой водоснабжения
В соответствии с поставленной задачей необходимо обеспечить управление подсистемой управления ультрафиолетовой дезинфекционной установкой, т.е. обеспечить управление как в ручном, так и автоматическом режиме. На рисунке 1.10 представлен общий алгоритм управления системой водоснабжения, включающий подпрограмму управления ультрафиолетовой дезинфекционной установкой.
Рисунок 1.10 – Доработанный алгоритм управления системой водоснабжения
Рассмотрим алгоритм управления ультрафиолетовой дезинфекционной установкой. Данный алгоритм представлен на рисунке 1.11.
Рисунок 1.11 – Алгоритм управления ультрафиолетовой дезинфекционной установки
Данный алгоритм обеспечивает управление ультрафиолетовой дезинфекционной установкой в двух режимах: автоматическом и ручном. Оператор переводит установку в автоматический или ручной режим посредством разработанного программного интерфейса. При переводе оператором управления в автоматический режим, программируемый логический контроллер анализирует информацию с расходомера на выходе блочной установки подготовки воды FS7743 и, при наличии, потока воды, включает установку. При отсутствии выходного потока программируемый логический контроллер отключает установку. В случае неисправности расходомера, а также, по требованию оператора система управления может быть переведена в ручной режим. В данном режиме управление установкой обеспечивается посредством разработанного программного интерфейса автоматизированной системы управления автономным водоснабжением. Программная реализация алгоритма представлена в следующем пункте.
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.
Другие рефераты на тему «Программирование, компьютеры и кибернетика»:
Поиск рефератов
Последние рефераты раздела
- Основные этапы объектно-ориентированного проектирования
- Основные структуры языка Java
- Основные принципы разработки графического пользовательского интерфейса
- Основы дискретной математики
- Программное обеспечение системы принятия решений адаптивного робота
- Программное обеспечение
- Проблемы сохранности информации в процессе предпринимательской деятельности