УДК 004.42
Л.И. Сучкова, А.Г. Якунин, Р.В. Кунц
РЕАЛИЗАЦИЯ ПРОТОТИПА СИСТЕМЫ КОНТРОЛЯ ПРОЦЕССОВ ЖИЗНЕОБЕСПЕЧЕНИЯ УНИВЕРСИТЕТСКОГО КАМПУСА
На сегодняшний день 1Т-технологии являются неотъемлемой составляющей автоматизированных систем контроля процессов функционирования любых техногенных объектов, в том числе учреждений образования.
Характерной чертой университетского кампуса является наличие нескольких зданий, для каждого из которых имеется своя система приборов учета водо-, электро- и теплоснабжения, причем зачастую она реализована на базе оборудования различных производителей. Актуальной проблемой в этих условиях является организация надежного сбора, хранения и обмена данными при условии использования современных программноаппаратных решений, обеспечивающих легкость масштабирования, кроссплатформенность, удобство работы с различными датчиками и исполнительными механизмами.
В состав системы контроля процессов жизнеобеспечения кампуса должны входить:
- пространственно распределенные периферийные датчики, контроллеры и исполнительные механизмы, обеспечивающие непосредственный контроль и управление;
- конечные пользовательские терминалы и диспетчерские пункты, выполняющие частичный сбор, накопление и обработку информации;
- комплекс технических средств, обеспечивающих обмен информацией с оконечными устройствами и ее передачу через имеющиеся каналы связи и технологические компьютеры на портал университета;
- программное обеспечение системы оперативного мониторинга процессов жизнеобеспечения кампуса образовательного учреждения;
- система анализа и отображения информации с реализацией разграничения прав доступа к информации для пользователей различных групп.
Для реализации системы контроля процессов жизнеобеспечения возможно использовать готовые решения - системы диспетчерского контроля и сбора данных (8САБА-системы) [1,2]. Однако 8САБА, предоставляя широкий набор функциональных возможностей и обеспечивая масштабируемость, зачастую требуют значительных вычислительных ресурсов, накладывают ограничения на аппаратную платформу и операционную систему, не предусматривают работу с оборудованием производителей, не включенных в фиксированный перечень [3].
Кроме того, промышленные 8САБА-системы экономически нецелесообразно применять для контроля относительно небольшого числа пара-
метров в силу избыточности изначально заложенных в них возможностей.
С другой стороны, разноплановое развитие информационной среды в университете на протяжении последних 15-20 лет привело к наличию различных сетевых архитектур и программноаппаратных комплексов, функционирующих под управлением как Windows, так и Linux, причем прослеживается отчетливая тенденция перехода к свободно распространяемому программному обеспечению. Однако имеющиеся на рынке наиболее популярные SCADA - системы ориентированы на работу в среде Windows.
Поэтому для решения задачи оперативного контроля и учета энергоресурсов в Алтайскоом государственном техническом университете было принято решение разработки собственной системы контроля жизнеобеспечения университетского кампуса на кроссплатформенной основе, обеспечивающей интеграцию имеющихся ресурсов, обеспечивающей независимость программного обеспечения системы жизнеобеспечения от клиентской стороны за счет использования WEB-технологий и осуществляющей обмен с программируемыми контроллерами, являющимися, в свою очередь, мастер - устройствами для интеллектуальных датчиков, по уже имеющимся в ИТ - инфраструктуре вуза гетерогенным телекоммуникационным каналам.
В качестве контролируемых параметров в системе жизнеобеспечения университета в прототипе системы были выбраны температура в помещениях здания, температура наружного воздуха, температура и расход тепла и теплоносителя в системе отопления, расход холодной и горячей воды в системе водоснабжения. Для здания университетского кампуса программно-техническое обеспечение включает:
- технологический компьютер (ТК);
- шину устройств 1-Wire;
- температурные датчики DS18S20, подключенные к шине 1-Wire;
- адаптер DS9490R для сопряжения шины температурных датчиков с технологическим компьютером;
- микроконтроллеры (PLC) для сбора данных с тепловычислителей и водосчётчиков, установленных в здании;
- преобразователь интерфейсов RS232/RS485, в качестве которого использовался преобразователь 7520 фирмы ICP CON.
Информация хранится на PLC (programmable logic controller - программируемый логический
Рис. 1. Архитектура прототипа системы
контроллер) и на удаленном сервере баз данных, работающем под управлением СУБД MySQL. На сервере располагается WEB-приложение, обеспечивающее мониторинг процессов, протекающих в системе контроля жизнеобеспечения.
ТК осуществляет сбор данных с PLC, опрашивающих теплосчетчики и водосчетчики, выполня-
ет функцию мастера шины 1-^ге, управляет настройками адаптера и обеспечивает формирование базы данных мониторинга системы жизнеобеспечения.
Для выполнения этих действий разработано кроссплатформенное программное ядро jScada. Оно осуществляет опрос датчиков, обработку по-
Рис. 2. Архитектура jSCADA
лученных показаний и их последующую запись в базу данных. При создании системы особое внимание уделялось достижению независимости от программно-аппаратной платформы и обеспечению масштабируемости, что было достигнуто выбором языка программирования Java в качестве языка разработки jScada.
Архитектура jScada (рис. 2) основана на концепции многопоточности [4], исходя из которой объекты приложения - это потоки, взаимодействие между которыми осуществляется посредством потока-диспетчера, увеличивая тем самым производительность и стабильность системы.
Объект ядра представляет собой набор экземпляров классов, обеспечивающих необходимую функциональность. К объектам ядра относятся:
- конфигуратор, осуществляющий считывание настроек конфигурационных файлов, настройку объектов ядра для работы, создание логических связей между экземплярами подключаемых модулей;
- диспетчер, организующий обмен данными между экземплярами подключаемых модулей и распределение нагрузки между объектами типа «Исполнитель»;
- исполнитель, осуществляющий посредством функций jScadaAPI работу с базами данных, устройствами ввода/вывода, а также сетевыми устройствами;
- таймер, осуществляющий контроль событий
и инициирующий процесс передачи пакетов по времени;
- консоль управления работой системы.
Обмен данными между объектами ядра реализован при помощи блокирующей FIFO очереди LinkedTransferQueue из коллекции классов Java. Единицей обмена данными между потоками является пакет.
Интерфейс программирования приложений jScadaAPI содержит классы, интерфейсы, утилиты для быстрого создания новых модулей. Используя данную библиотеку, разработаны подключаемые модули сбора данных с микроконтроллеров, температурных датчиков, модуль работы с базой данных по технологии JDBC, а также модуль оповещения о нештатных ситуациях.
Доступно соединение с ядром через блокирующее сокет - соединение, дающее возможность реализовать интерфейс в виде отдельного web-приложения. Разработанное программное обеспечение позволяет собирать и ретранслировать данные технологическими компьютерами SCADA-систем, обладая при этом достаточно широкими функциональными возможностями и низкими требованиями к вычислительным ресурсам аппаратной платформы.
Микроконтроллерные устройства в системе контроля процессов жизнеобеспечения университетского кампуса выполняют сбор данных с подключенных устройств (тепловычислителей, водо-
ИнтерфейС
RS-405
Интерфейс
RS-232
Бпок RS-485 —-------------
Блок RS-232
Блок питания
Интерфейс.
I2C
47
sk
Периферийные
/1 N блоки
. 1 управления н
Микроконтроллер индикации
Бпок MicnoLan
1
Блок I2C Блок АЦП
Интерфейс
i-wire
Jt
Аналоговые входы
Рис. З. Основные функциональные блоки PLC
счётчиков, температурных датчиков), обработку полученных данных и дальнейшую их пересылку на технологический компьютер. В результате анализа функциональных особенностей измерительных преобразователей и с целью унификации оборудования для всех точек сбора информации в кампусе был спроектирован собственный программируемый логический контроллер, структурная схема которого представлена на рис. 3.
Микроконтроллер, как центральное звено РЬС, производит вычислительные операции; управляет передачей данных по различным интерфейсам, обрабатывает полученные данные, управляет следующими устройствами и блоками:
- Блок питания - вторичный источник электропитания, предназначенный для снабжения микроконтроллера и остальных функциональных блоков электрической энергией постоянного тока.
- Модуль интерфейса К5-485. Обеспечивает сопряжение универсального асинхронного приё-мо-передатчика микроконтроллера (иАЯТ) и интерфейса RS-485. Используется для подключения контроллера к промышленной сети SCADA-системы.
- Блок интерфейса RS-232. Обеспечивает сопряжение универсального асинхронного приёмопередатчика микроконтроллера и интерфейса RS-232.
- Блок интерфейса 12С. Позволяет подключать дополнительные периферийные устройства по интерфейсу 12С.
- Блок АЦП. Реализует аналоговые входы контроллера для подключения аналоговых устройств, например, таких как фотодатчики и модули типа «сухой контакт» для повышения надежности и достоверности сбора данных с приборов учета с использованием герконов.
- Периферийные блоки управления и индикации реализуют индикацию нормальных и аварийных режимов работы устройства, а также позволяют производить управление устройством.
- Блок сети М1сго1аи. Позволяет подключать устройства (температурные датчики, электронные ключи ШиАоп) с интерфейсом 1-^ге.
В качестве микроконтроллера был выбран Atmega64 фирмы А1ше1, работающий на частотах до 16 МГ ц, обладающий 64 Кб Б^И-памяти.
Для реализации аппаратной поддержки интерфейса RS485 преобразование уровней выполнялось с применением микросхемы-передатчика интерфейса АБМ485АМ [5].
Так как микроконтроллер ATmega64 не имеет возможности напрямую работать с интерфейсом RS-232, требуемым для обмена с теплосчетчиками, то для преобразования интерфейсов UART/RS-232 использовалось типовое решение на базе микросхемы - передатчика МАХ232М фирмы TexasInstruments.
Для реализации возможности подключения контроллера к вузовской локальной сети Ethernet
дополнительно был разработан преобразователь интерфейсов Ethernet/UART, который можно подключать к PLC как дополнительный блок через встроенный в контроллер и не показанный на рисунке интерфейс SPI.
Основу преобразователя составляет микросхема ENC28J60 фирмы Microchip, поддерживающая протокол приема/передачи данных, физический уровень (PHY) и канальный уровень (MAC) Ethernet.
Связь с управляющим контроллером осуществляется через интерфейс SPI с тактовой частотой до 20 МГц.
Для обеспечения связи и управления работой ENC28J60 на канальном уровне был разработан драйвер, который включает в себя следующие элементы.
1 Описание адресного и регистрового пространства;
2 Функции чтения/записи на шине SPI;
3 Функции чтения/записи регистров;
4 Функции чтения/записи буфера;
5 Функции пакетного чтения/записи;
6 Функция программный сброс;
7 Функция инициализации ENC28J60.
Для обеспечения работы канального, сетевого транспортного и прикладного уровней стека протокола TCP/IP в состав программного обеспечения PLC была внедрена и адаптирована под Atmega64 свободно распространяемая библиотека стека протоколов TCP/IP. Она представляет реализацию ARP, IP, ICMP, UDP, DHCP и TCP протоколов. Стек построен модульно, позволяя не подключать ненужные протоколы, чтобы снизить системные требования.
Для обмена данными с серверным уровнем SCADA-системы необходимо было разработать протокол, обеспечивающий надежную и быструю передачу данных. В качестве основы был взят промышленный протокол MODBUS ASCII. К его преимуществам можно отнести простоту реализации, универсальность и возможность работы поверх сети RS485 и TCP/IP [6].
Для хранения данных системы контроля жизнеобеспечения университетского кампуса была также спроектирована база данных под управлением СУБД MySQL, размещенная на виртуальной машине, находящейся в ЦОД (центр обработки данных) вуза.
В качестве гостевой операционной системы виртуальной машины применялся клон ОС SUSI семейства Linux. Такое решение позволило повысить уровень информационной безопасности системы контроля за счет дополнительного разделения доступа к СУБД со стороны ТК (локальная сеть) и клиентских мест, находящихся в пространстве WLAN.
Разработанные программно-аппаратные решения системы контроля жизнеобеспечения в настоящее время используются для оперативного
12:20:« 12 Л2.12-15:47:35 12,02.12
1- уличная температура. 2 - температура в центре одного из помещений учебного корпуса Рис. 4. Температурный мониторинг здания
контроля потребления энергоресурсов в нескольких зданиях университетского кампуса. Доступ к системе контроля из внешней сети Интернет осуществляется по адресу http://abc.altstu.ru. В качестве примера на рис. 4 показаны графики температурного мониторинга уличной среды и температуры помещения. В дальнейшем планируется развитие системы как в сторону совершенствования интерфейсных решений, так и в сторону расшире-
ния ее функциональных возможностей путем подключения к ней дополнительных аналитических модулей, осуществляющих обработку регистрируемых информационных потоков.
Предложенное комплексное программно-
техническое решение легко расширяемо и позволит в дальнейшем осуществлять подключение любого требуемого количества приборов учета без внесения изменений в программный код.
СПИСОК ЛИТЕРАТУРЫ
1. Втюрин, В.А. Автоматизированные системы управления технологическими процессами. Основы АСУТП. - Санкт-Петербург, 2006. - 152 с.
2. Сусарев, С.В. 8СЛЭЛ-системы в автоматизации и управлении технологическими процессами / С.В. Сусарев, Ю.И. Стеблев. - Самара: Самарский государственный технический университет, 2006. -106 с.
3. Воронов, А.С. Современное программное обеспечение встраиваемых систем // Ползуновский альманах, 2011. - № 1. - С.60-62.
4. Грегори, Э. Основы многопоточного, параллельного и распределённого программирования. - М. : Вильямс, 2003. - 512 с.
5. Агуров, П.В. Последовательные интерфейсы ПК. Практика программирования. - Спб. : БХВ-Петербург, 2005. - 496 с.
6. Карначёв, А.С. Микролокальные сети: интеллектуальные датчики, однопроводный интерфейс, системы сбора информации / А.С. Карначёв, В.А. Белошенко, В.И. Титиевский. - Донецк: ДонФТИ НАНУ Украины, 2000. - 199 с.
I Авторы статьи:
Сучкова Лариса Иннокентьевна, канд.техн.наук, доцент, проф.каф. вычислительных систем и информационной безопасности (Алтайский государственный технический университет им. И.И. Ползунова), Email: lis@agtu.secna.ru
Якунин Алексей Григорьевич, докт.техн. наук, профессор, зав. каф. вычислительных систем и информационной безопасности (Алтайский государственный технический университет им. И.И. Ползунова), Email: yakunin@agtu.secna.ru
Кунц
Роман Викторович, аспирант каф. вычислительных систем и информационной безопасности (Алтайский государственный технический университет им. И.И. Ползунова), Email: r.v.kunc@yandex.ru