автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Разработка системы мониторинга оперативных данных на основе WEB-технологий

кандидата физико-математических наук
Сухов, Сергей Александрович
город
Протвино
год
2007
специальность ВАК РФ
05.13.11
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка системы мониторинга оперативных данных на основе WEB-технологий»

Автореферат диссертации по теме "Разработка системы мониторинга оперативных данных на основе WEB-технологий"

I НЕР

государственный научный центр

российской федерации ИНСТИТУТ ФИЗИКИ ВЫСОКИХ ЭНЕРГИЙ

2007-15 На правах рукописи

Сухов Сергей Александрович

РАЗРАБОТКА СИСТЕМЫ МОНИТОРИНГА ОПЕРАТИВНЫХ ДАННЫХ НА ОСНОВЕ \УЕВ-ТЕХНОЛОГИЙ

05 13 11 - математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

Автореферат диссертации на соискание ученой степени кандидата физико-математических наук

Протвино 2007 003160БВ4

003160664

УДК 62 919, 621 398 92

М-24

Работа выполнена в Институте физики высоких энергий (г Протвино)

Научный руководитель - кандидат физико-математических наук, доцент Гусев Виктор Владимирович (ИФВЭ, г Протвино)

Научный консультант - кандидат физико-математических наук Ухов Владимир Иосифович («Систел», г Протвино)

Официальные оппоненты — доктор физико-математических наук, профессор Сытин Александр Николаевич (ИФВЭ, г Протвино), кандидат физико-математических наук, старший научный сотрудник Трощиев Юрий Витальевич (МГУ, г Москва)

Ведущая организация - Лаборатория информационных технологий Объединенного института ядерных исследований (г Дубна)

Защита диссертации состоится "___" _2007 г в _ часов

на заседании диссертационного совета К 201 004 01 при Институте физики высоких энергий по адресу 142281, Протвино Московской области

С диссертацией можно ознакомиться в библиотеке ИФВЭ

Автореферат разослан "_"_2007 г

Ученый секретарь

диссертационного совета К 201 004 01 В Н Ларин

© Государственный научный центр Российской Федерации Институт физики высоких энергий, 2007

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Технологии Интернет вторгаются во все сферы деятельности человека Не обошли они своим вниманием и производство Сетевые технологии и удаленный обмен данными играют важную роль во многих промышленных отраслях и, в частности, в энергетике Данная работа посвящена применению WEB-техноло-гий в области SCADA для мониторинга оперативных данных Приложения SCADA (Supervisory Control and Data Acquisition System) используются для удаленных измерений, мониторинга критических данных и операций, контроля и защиты, для поддержания надежности и стабильности промышленных систем Усложнение систем контроля, рост потребности в своевременной оперативной информации и числа клиентов, желающих эту информацию получать, приводят к изменению структур информационных систем, к дополнению, а иногда и замене традиционных технологий

Разработка описываемых в данной работе приложений была начата в 2000 году в рамках проекта системы мониторинга ускорительно-накопительного комплекса ИФВЭ Система WEB-мониторинга использовалась для мониторинга технологических данных ускорителя У-70, а также оперативных данных с экспериментальных физических установок ИФВЭ

В дальнейшем разработанное программное обеспечение получило применение в области энергетики Описываемые технологии мониторинга данных через Интернет обеспечивают диспетчерам энергосистем возможность удаленного просмотра оперативных данных Ряд заинтересованных лиц, в том числе дирекция энергопредприятий, может получать оперативную производственную информацию в различных точках сети без установки специальных клиентских программ

Цель работы. Целью данной работы является разработка программного обеспечения для отображения в Интернет оперативной диспетчерской информации, а также архивных данных

В разработанное программное обеспечение входят набор графических JAVA-апплетов, HTML-страниц и функций JavaScript, а также ряд подпрограмм, встроенных в специализированный WEB-сервер "Систел"

Специализированный WEB-сервер обеспечивает доставку клиентам событийно-изменяемых данных, а также обеспечивает ряд стандартных функций WEB-сервера JAVA-апплеты обеспечивают прием и отображение данных, а также навигацию в информационном пространстве

Актуальность работы. SCADA-приложения применяются во многих областях промышленности Часто они являются ключевыми звеньями технологии Допуск программных продуктов, разработанных иностранными фирмами, в область управления стратегическими областями производства, в частности энергетикой, крайне нежелателен Наверное, многим памятны недавние события в Ираке, когда через спутниковую связь была отключена система противовоздушной обороны этой страны Делать страну заложником иностранных технологий очень опасно

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

В связи со всем вышесказанным, следует развивать и всячески поощрять национальные разработки SCADA

Благодаря наличию большого количества WEB-программистов, открытости WEB-технологии и простоте создания пользовательских интерфейсов на ее базе, применение WEB-технологии позволяет существенно удешевить разработку и поддержку подсистем SCADA для удаленного просмотра данных

Научная новизна:

1 Впервые на базе XML-стандарта разработан специализированный язык для описания мнемосхем, отображающих оперативные данные.

Для отображения событийно-изменяемых оперативных данных на мнемосхемах и отображения самих мнемосхем был разработан специальной язык описания мнемосхем на основе стандарта XML Файл описания мнемосхемы содержит полную информацию о внешнем виде мнемосхемы и способах реакции на различные события, случающиеся в результате прихода тех или иных оперативных данных или интерактивных действий пользователя Благодаря единому описанию мнемосхем возникает принципиальная возможность использования мнемосхем разными SCADA

2. Впервые для подобных систем предложено использовать механизм контроля качества доставки оперативных данных

Когда речь идет о просмотре данных через глобальную сеть Интернет, предполагается, что клиент может находиться в произвольной точке мира Глобальная сеть неоднородна по качеству, надежности и скорости передачи данных, поэтому в такой ситуации не может осуществляться передача данных за гарантированное

время Однако на практике ситуация не столь плоха, тем более, что сетевые информационные коммуникации быстро развиваются, скорость и качество передачи информации растет При мониторинге оперативных данных важно обеспечить клиенту уверенность в том, что он получил информацию без потерь и за разумный, наперед заданный промежуток времени Если качество передачи информации в какой-то момент времени упало, клиент должен быть об этом проинформирован Для этого должен осуществляться непрерывный контроль за временем прохождения данных от точки расположения WEB-сервера до точки расположения клиента В данной работе предложен механизм такого контроля Нельзя гарантировать доставку данных за определенный промежуток времени, однако можно контролировать время доставки и сохранность данных, что само по себе крайне важно

На основе опыта эксплуатации системы мониторинга оперативных данных в реальных промышленных системах в энергетике показана возможность передачи данных за приемлемые промежутки времени

3 Решена проблема прохождения оперативных данных через Proxy-сервера и Firewall без специальных разрешений и выполнения дополнительных настроек сети.

Рассмотрен ряд проблем, возникающих при передаче оперативных данных через Интернет, в частности проблема прохождения пакетов с данными через ргоху-серверы Отсутствие дополнительных настроек сети для передачи оперативных данных устраняет административные проблемы при внедрении системы, что существенно облегчает само внедрение

4 Предложены интересные с точки зрения философии WEB-технологий решения для сохранения клиентской информации на стороне сервера в виде конфигурационных файлов.

На основе данной технологии были реализованы механизмы авторизации пользователей системы, механизмы, обеспечивающие индивидуальный доступ пользователей к ресурсам, а также механизмы генерации диспетчерских отчетов Благодаря встроенному в специализированный WEB-сервер механизму, заполненная пользователем в HTML-формах информация может автоматически сохраняться в полях соответствующих конфигурационных файлов

Практическая ценность работы. После завершения периода опытной эксплуатации система мониторинга и отображения оперативных данных через Интернет была успешно сдана в промышленную эксплуатацию как часть SCADA "Систел" на предприятии ЦУС (Центр Управления Сетями) "Белгородэнерго" Ранее система мониторинга была успешно опробована на предприятии "Там-бовэнерго" Кроме того, в настоящий момент времени система находится в опыт-

ной эксплуатации на предприятии "Московские Высоковольтные Кабельные Сети" и Череповецкой ГРЭС

ЦУС "Белгородэнерго" является пилотным проектом для SCADA "Систел" После завершения периода опытной эксплуатации в ЦУС "Белгородэнерго" SCADA "Систел" и, соответственно, система WEB-мониторинга оперативных данных будут ставиться в областных Российских ЦУС, уже сейчас есть договоренности с Ростовским, Воронежским и Саратовским ЦУС

Автор защищает:

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

♦ Разработку на базе XML специализированного языка для описания мнемосхем, отображающих оперативные данные

♦ Механизм контроля качества доставки оперативных данных через Интернет

♦ Решение проблемы прохождения оперативных данных через Ргоху-сер-вера и Firewall без специальных настроек администраторов сетей

Апробация работы Основные результаты диссертационной работы докладывались на научном семинаре отдела математики и вычислительной техники ИФВЭ, на XVIII Конференции по ускорителям заряженных частиц RUPAC-2002, на Международном симпозиуме по проблемам модульных систем и сетей IC-SNET' 2001, на Втором научно-техническом семинаре по современным системам контроля и управления электрических станций и подстанций (АСУ ТП) на базе микропроцессорной техники, проходившем в 2001г в Москве

В основу диссертации положено б публикаций, две из которых опубликованы в журналах, входящих в перечень периодических научных и научно-технических изданий, рекомендованных ВАК

Структура диссертации. Диссертация состоит из введения, трех глав, заключения и списка литературы, содержит 13 рисунков Объем диссертации составляет 89 страниц

Содержание работы

Во введении формулируется цель работы, обосновывается ее актуальность, рассказывается о практическом применении работы и ее научной значимости

В первой главе рассматриваются вопросы, связанные с передачей оперативных данных через Интернет Рассмотрены подходы к удаленному мониторингу данных, реализованные ведущими разработчиками SCADA, такими как

Intellution, Wonder Ware, AdAsira и др. Предложено решение задачи прохождения оперативных данных через ршху-сервсра без специальных настроек сети. Рассмотрена схема передачи оперативных данных через Интернет, а также Предложен механизм контроля качества доставки оперативных данных.

Для того чтобы сделать систему более открытой и не лишиться мощных средств отображения информации в виде HTML, был реализован arm лет "диспетчер", позволяющий привязывать событийно Изменяемые данные к элементам

Классы апплста диспетчер присутствуют в каждом апплсте, получающем событийно-изменяемые данные. Апплет-диспстчер невидим для клиента. Задачей апплста является подписка на данные, получение данных, обработка приходящих данных и выполнение операций, связанных с приходом тех или иных данных. Апплет-диспетчер должен восстанавливать соединение с \УЕВ-сёрвер:№ и случае обрыва связи, а также контролировать время доставки данных. При задержке прихода данных дольше заданного периода времени апплст должен уве-I домлять клиента о плохом качестве связи. На какие данные должен подписываться апплет и какие действия он должен выполнять по приходу соответствующих данных, апплет узнает из списка параметров.

В значении параметра запаковывается сигнатура данных, на которые подписывается апплет, и информация о том, какой элемент НТМЬ-странички апплет

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

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

Контроль за качеством доставки может быть активным и пассивным. Пассивный контроль фиксирует сбои сети и создает архив сбоев п временной загрузки различных участков сети. Активный контроль основан на механизме контрольных запросов (ping). Для мониторинга оперативных данных используется активный контроль. Идея заключается в том, чтобы при получении событийно-изменяемых данных встроить механизм контроля качества связи в механизм доставки данных. Задается контрольный промежуток времени, в течение которого данные должны быть получены. Этот промежуток времени может зависеть от поставленной задачи.

Г

WEB-кшент

Апплет

Л

Подписка

А V

VVEB-сервер

Л

Контрольный запрос

И

Поток данных

Контрольный пакет

V7,

L

Очередь данных

Рис. 2.

Время доставки данных Т представляется

Т = Т, + Т2 + Т3 + Т4 (1)

Здесь ТI - время между событием и получением пакета данных сервером данных,

Т2 - время между получением данных сервером данных и приходом данных на \УЕВ-сервер,

Т3 - время прохождения данных между \¥ЕВ-сервером и клиентом, Т4 - время обработки данных на \\Т2В-сервере

Промежуток времени Тз возникает в результате использования \УЕВ-технологий Именно эта составляющая определяет пригодность \УЕВ-технологий для доставки оперативных данных

С частотой в контрольный промежуток времени Тс на ,\¥ЕВ-сервер посылается команда, после получения которой \¥ЕВ-сервер вставляет контрольный кадр в очередь событий с измененными данными Апплет фиксирует время посылки команды и время получения ответного контрольного кадра Разница во времени отправки команды К и времени получения контрольного кадра Тг апплетом дает оценку времени доставки данных Т3

Тз - (Тг - Тя)/2 (2)

Время Тз может отображаться в окне апплета Если к моменту посылки новой контрольной команды не получен ответ на предыдущую команду (2 Тз > Тс), апплет может выдать тревожное сообщение Поскольку данные посылаются под видом единого WEB-pecypca, ТСРЛР-протокол обеспечивает правильную нумерацию кадров, поэтому получение ответного контрольного кадра дает гарантию доставки всех предыдущих кадров с обновленными данными

Длина очереди с данными на \¥ЕВ-сервере равна

^¿^-¿^ • (?)

1 1

где Р1 — длины пакетов с данными, полученные \УЕВ-сервером, а Р} - длины пакетов, отправленных подписчикам Если количество полученных пакетов будет расти быстрее, чем количество отправленных пакетов (что теоретически возможно, так как \УЕВ-сервер и сервер данных находятся в одной локальной сети), то \¥ЕВ-сервер может израсходовать всю доступную память Чтобы такого не произошло, в случае, если количество пакетов в очереди превышает некое,

наперед заданное число /, каждый новый приходящий пакет с данными проверяется на соответствие пакетам, уже стоящим в очереди Если в очереди существуют пакеты данных с такой же сигнатурой, то последний из этих пакетов заменяется на новый пакет, если пакетов с такой же сигнатурой нет, то новый пакет добавляется в конец очереди Таким образом, длина очереди не может превышать предельное значение

1 м

¿'Zl.P. + I.Pf (4)

1 1

где М — максимально возможное число различных сигналов, на которые может подписаться WEB-сервер

Для поиска нужного пакета в очереди используются таблицы прямого доступа Время нахождения пакета в очереди Т4 удовлетворяет выражению

/ м

1 1

где At — характерное время отправки одного байта Другими словами, если длина очереди ограничена, то и время нахождения пакета в очереди тоже ограничено

Проблема обработки данных может возникнуть и на стороне клиента, если апплет, отображающий данные, не будет успевать их отрисовывать Для того чтобы этого не случилось, обработка приходящих данных и их отрисовка реализована асинхронно в двух потоках

Рассмотрим задачу прохождения оперативных данных через Proxy серверами и FireWall Эти программы следят за тем, чтобы адресату передавались запросы-ответы только разрешенных типов Как правило, разрешенной является информация, относящаяся к стандартным протоколам передачи данных и стандартным номерам портов адресатов Эти программы могут создавать препятствие для прохождения оперативных данных Чтобы решить эту проблему, могут потребоваться дополнительные настройки работы прокси-серверов как на стороне клиента, так и на стороне сервера

За обслуживание и безопасность сети предприятия может отвечать отдельное подразделение предприятия, а в отдельных случаях это подразделение может принадлежать и совсем другому предприятию Согласование вопросов, касающихся безопасности сети, может вызвать серьезные затруднения из-за межведомственных противоречий и распределения ответственности, что в свою очередь осложнит внедрение системы или сделает его вовсе невозможным Поэтому передача данных без специальных настроек и разрешений администраторов сети является очень важным моментом Проблемы могут возникнуть как с админи-

страторами на стороне клиентов, желающих получать данные, так и на стороне сервера, поставляющего данные

Если возникает необходимость передавать информацию по нестандартному порту или протоколу, требуется специальное разрешение администратора сети Такая необходимость возникает, если для передачи событийно-изменяемых данных использовать приложение отличное от WEB-сервера, или использовать механизм сервлетов

К сожалению, старая проверенная технология CGI не может здесь спасти положение, так как она не может растягивать свой ответ и отсылать информацию порциями по мере изменения данных, а лишь может сформировать ответ на запрос и закончить свою работу отсылкой этого ответа Другими словами, она работает по схеме один запрос - один ответ Для механизма событийно-изменяемых данных нам требуется схема один запрос и много ответов Для того чтобы механизм передачи данных мог работать на том же порту, что и WEB-сервер, он должен принадлежать процессу WEB-сервера Поэтому для передачи оперативных данных необходимо встроить этот механизм в ядро стандартного WEB-сервера, либо реализовать собственный специализированный WEB-сервер

Для того чтобы WEB-сервер мог передавать событийно-изменяемые оперативные данные клиентам, он должен уметь принимать эти данные от сервера данных

Во второй главе рассмотрены средства графического отображения оперативных данных Рассмотрен язык описания мнемосхем на базе XML, а также представлены различные способы отображения оперативных данных Пример мнемосхемы показан на рис 3

Различные SCADA, разработанные крупными иностранными фирмами, такими как Intellution, WonderWare, FactoryLink, AdAstra, TraceMode и др , имеют как собственные средства создания мнемосхем, так и собственные средства их отображения Поэтому фирмы-разработчики считают, что способы представления и хранения мнемосхем являются их внутренним делом Форматы хранения мнемосхем, как правило, не описаны и являются закрытыми Мнемосхема, созданная в одной среде разработки, не может быть использована в другой Частично такая ситуация обусловлена жесткой конкуренцией на рынке SCADA, а частично — отсутствием соответствующих стандартов

ЗМДМя&ШЙд • Мкнкой Мяпнйгрйгег

' Файл [£¿»3 од ОЁрЕЙс Фраза

! т ч $ ¿351 ^'поик цизбраж:« Ожденап ^ ЕЕ ' ^ й.

"Н1

: ййрес | у ГШр;//127.0 0.1

^Переход Ссыли '1

Лартзд СиГнлад Со£->1и.ч "Сраыдмчьй; Дв-^тивч'дж^^Р*™ Тгиудяезнг^ния 4ил>зр

21] Сириец?

¡З^Т«*« 3 Бегиород>н«рГ0

Р МеЫи^Ь- .тб0фк4-ги( (ьг

РМ

¡Зеке

Р

Р ЗЗО-БАгчж* Фззо-В^ш.з Р тв^пюстс Р _Т1

Р 53С-Г^(*

Р 330-Гг5|НН_5 Р И0-Гг5«чн_ТС Р ЭЭО-П»Вед»„Э Р ЗЭО-ЛвА^ТС Р ЗЭ0-ЛгСедн;п Р ззо-оэмк Р ЗЗС-ОЭИК^

Р ЗЗО-ШБХЗ Р ЗЗО-ШБХЗ.Э ^ МО-Сирый Осад Р 50С-Слрый Омол.З Ф5МЮ1«1ыййетм.ТС Р'ЖСмсьА 0<1С-1_Т1 Р зэо-бмпюас Р 7{0-Ы»т»ля»рг».ензя_3 Р С»ругглн ОАО' Быгорсдо

Р ЛОДн

ЗРпСЬишто*» И

■ Ж

J

В] Прмло»»1*г зэгмцено

Рис. 3.

Задача четдай спецификации описания мнемосхем встала с расширением технологической базы, разрабатываемой 8САОА "Систсл" в область Интернет. Мнемосхемы, подготовленные в среде специализированного графического редактора, следовало отобразить с помощью новых средств. Для этого необходимо было разработать спецификацию представления мнемосхем, понятную различным приложениям, написанным на различных языках программирования и в различных операционных системах.

Описание мнемосхемы должно содержать графическое изображение и сценарий поведения мнемосхемы в случае тех или иных событий. События могут соз-

никать либо в результате интерактивных действий пользователя, либо в результате получения оперативных данных Растровые изображения могут быть включены в мнемосхему как отдельные элементы, однако брать растровое изображение в качестве основного нежелательно, так как оно занимает большой объем памяти, а нам предстоит передавать описания мнемосхем по сети Поэтому взята ориентация на векторную графику Для описания изображений хотелось бы использовать распространенный стандартизированный формат

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

Существует два принципиально разных подхода к разбору файлов XML, это DOM- и SAX-технологии DOM - объектно-ориентированный подход, позволяющий работать с тэгами XML как с объектами SAX - событийно-ориентированный подход, SAX-napcep вызывает определенные события при чтении тэгов XML DOM - мощная и удобная техника работы, позволяющая модифицировать XML-файл, но требует большой объем памяти компьютера, так как все тэги и атрибуты тэгов реализовываются в виде объектов и хранятся в оперативной памяти SAX требует минимальных ресурсов памяти, но при сложной организации XML-файла требует многократного прохода по нему для его разбора Для разбора описаний мнемосхем было принято решение ориентироваться на SAX-техно-логию Ориентация на SAX накладывает на язык описания мнемосхем требования по удобству и скорости разбора, так как некоторые мнемосхемы могут включать в себя сотни тысяч графических примитивов и их атрибутов

Для обычных графических метафайлов проблем со структурой файла не возникает Все графические элементы метафайла хранятся последовательно Если метафайл создается на базе XML, то естественно графическому элементу метафайла поставить в соответствие XML-тэг, а атрибуты графических элементов записать в виде атрибутов соответствующего XML-тэга Однако описание мнемосхемы отличается от обычного метафайла тем, что кроме графического изображения в нем присутствуют сценарии поведения схемы в случае тех или иных событий, привязка состояния оперативных данных к графическим атрибутам либо координатам графических элементов Для эффективной работы с описаниями

мнемосхем необходимо придумать подходящую систему базовых понятий языка описания

Отправной точкой является метафайл, реализованный на основе XML Первый шаг по оживлению метафайла - это добавление к графическим элементам элемента Action Элементу Action будет соответствовать XML-тэг, описывающий действие сценария мнемосхемы в результате возникновения какого-либо события Действием может быть изменение видимости элемента, цвета, координат, начало или прекращение мерцания одного из графических элементов, переход на другую мнемосхему, масштабирование и тп Элемент Action избавит нас от необходимости использовать JavaScript для обработки событий Ключевыми понятиями становятся ACTION — действие, PRODUCER - элемент, который инициирует действие, TARGET — элемент, на который действие направлено Событие EVENT, в результате которого происходит действие, будет являться атрибутом объекта PRODUCER В результате имеем связку PRODUCER-ACTION-TARGET

<Button position = "-261,228,-446,269" color = "OOfföO" Title = "TEST"> <Producer event = "MouseUp">

<Action type = "change_color" value = "ffOOOO" >

<Target Object = "Rect" ID = "RectJDJ " />

</Action> </Producer> </Button>

Так приведенный фрагмент кода описывает кнопку с названием "TEST", которая перекрашивает прямоугольник с идентификатором "Rect_ID_l" в красный цвет При линейном просмотре файла, для того чтобы установить связь между кнопкой, производящей действие, и прямоугольником, на который это действие направлено, необходимо, чтобы прямоугольник был уже определен выше по файлу Порядок графических элементов определяет порядок их рисования, который влияет на изображение мнемосхемы Поэтому может оказаться, что кнопка расположена выше, чем прямоугольник, и в момент описания кнопки не будет найден идентификатор прямоугольника В этом случае можно изменить связку PRODUCER-ACTION-TARGET на TARGET-ACTION-PRODUCER

<Rectangle position = "-60 0,-50 0,40 0,50 0" color = Mc0c0c0"> <Target>

<Action nick = "change_color" value = "OOOOff" >

<Attach producer = "Button" id="Button_ID_l" event =

"MouseUp" />

</Action>

</Target> </Rectangle>

Таким образом, можно остаться в рамках структуры XML при описании событий и устранить необходимость жесткой привязки идентификаторов к графическим элементам В нашем случае идентификатором может являться обычный порядковый номер элемента, что в свою очередь снимает необходимость отслеживания уникальности идентификаторов и ускоряет разбор и создание описаний мнемосхем Для каждого действия должен существовать элемент PRODUCER и элемент TARGET Такие действия как приход оперативных данных, открытие нового окна или меню, могут не иметь элемента PRODUCER или элемента TARGET, в таком случае будет использоваться в качестве недостающего элемента сама схема, или объект главного окна

Часто возникает потребность производить действия не над одним, а над целым классом графических элементов Например, надо показать на схеме только объекты определенного назначения, все остальные объекты должны быть скрыты, или необходимо выделить объекты определенного типа новым цветом Для этого все графические элементы на схеме должны быть сгруппированы соответственным образом

<Group name ="Layerl" Range = "-67,-360,67,360" Transform ="1,0,0,0,-1,0" Port ="-670,-360,670,360" >

</Group>

Над координатами группы элементов можно выполнять афинные преобразования Параметры матрицы афинного преобразования для группы задаются с помощью атрибута тэга группы Transform= "а1,а2,аз,а4,а3,аб"

м > а1 а2 аз X

— а4 а5 аб У (6)

\lj 1° 0 ч \ч

Структура XML, основанная на вложенности тэгов, не может обеспечить группировку элементов по нескольким признакам, поэтому для группировки по признакам необходимо добавлять признак внутрь тэгов элементов

<Rectangle position = "-60 0,-50 0,40 0,50 0" color = "c0c0c0">

<Feature name="techmcal"> </Rectangle>

Описание мнемосхемы на уровне графических элементов является низкоуровневым Если на мнемосхеме нарисован трансформатор, то ничего нельзя сказать о свойствах этого трансформатора, нельзя выполнять действия с ним как с единым целым, нельзя тиражировать его на мнемосхеме Для этого необходимо ввести объекты более высокого уровня, которые должны иметь свое типовое графическое представление и наборы свойств Приведем пример такого объекта

Object Name = "Lamp" Range="-100,-100,100,100"> <Property name = "Voltage" type="mteger" value-'150"> <Property name = "Type" type-'string" value="daylight"> <Lme position="-80,-80,80,80" color ="000000" /> <Lme position="-80,80,80,-80" color ="000000" /> <Elhpse position="-80,-80,80,80" color="000000" fill="no" /> </Object>

Описание объекта задается в своих собственных координатах и определяет список свойств объекта После определения объекта он может использоваться в файле описания мнемосхемы как графический элемент При рисовании на мнемосхеме объект масштабируется в соответствии с заданными координатами

< Lamp position = "-60 0,-50 0,40 0,50 0" />

К свойствам объекта могут быть привязаны графические действия, таким образом, меняя свойства объекта, можно изменять его изображение на мнемосхеме На базе объектов более высокого уровня могут быть созданы библиотеки стандартных элементов

В третьей главе рассмотрена организация приложения для мониторинга оперативных данных, показано место системы WEB-мониторинга на энергопредприятии Здесь также обсуждаются технические аспекты реализации авторизации и персонального доступа пользователей к информационным ресурсам системы WEB-мониторинга Обсуждается вопрос автоматического сохранения пользовательской информации, заполненной им в виде HTML-форм

Широко распространенным решением для хранения данных между рабочими сессиями клиента стали базы данных Без баз данных сегодня не обходится почти ни один WEB-проект Интернет-магазины, различные форумы, электронные библиотеки, почтовые ящики — все они используют базы данных для хране-

ния своей информации Базы данных удобны для хранения информации, предоставляемой пользователю, а для хранения информации пользователей и о пользователях они удобны только тогда, когда эта информация строго определена Действительно, для каждого элемента пользовательской информации должен быть заведен соответствующий столбец в какой-либо таблице базы данных и приведен в соответствие механизм записи и чтения этих данных В случаях, когда отдельные элементы пользовательской информации имеют значение лишь для одного конкретного пользователя или когда информация разнообразна и часто меняет свое структурное содержание, хранение такой информации в базе данных становится трудоемкой или просто невозможной задачей

Задачу хранения такой разнородной информации можно легко решить, если соединить вместе технологию работы с конфигурационными файлами и подстановку пользовательских переменных в HTML-документ

Например, создается некая HTML-форма с именем MySettmgs html, в которой расположены различные элементы ввода, которые пользователь может заполнить по своему усмотрению Допустим, внутри этой формы расположен текстовый элемент ввода

<mput type = "text" name = "MyColor" value = "<%= MyColor%>">

Расширение файла MySettmgs html меняется с html на frm Это новое расширение будет сообщать WEB-серверу, что с данной формой (перед ее отправкой пользователю) следует проделать предварительную обработку, а именно, необходимо подставить переменные из конфигурационного файла в соответствующие поля формы Имя этого файла состоит из названия формы и имени пользователя, если имя пользователя Guest, то имя конфигурационного файла будет MySet-tings_Guest cfg Внутри этого файла должна найтись строка, которая соответствует переменной подстановки <%= МуСо1ог%>

<MyColor value = "#ffffff">

Соответствующее значение MyColor будет подставлено в файл MySettmgs frm перед его отправкой пользователю То же самое происходит при подтверждении формы (submit), только в обратном порядке При подтверждении формы, согласно протоколу http, на сервер вместе с запросом присылаются в качестве параметров все поля формы Перебираем в цикле все присланные поля и создаем новый конфигурационный файл MySettings_Guest cfg с переменными одноименными полям формы

Используя описанный механизм сохранения форм, можно не заботиться о создании полей в базах данных для хранения пользовательской информации и

о функциях, производящих запись и чтение этой информации Данный механизм достаточно реализовать в WEB-сервере один раз, после чего он сможет работать с произвольными формами, имеющими различные наборы элементов данных

Механизм сохранения форм оказался очень удобным, он используется также для генерации диспетчерских отчетов

В заключении сформулированы основные результаты работы

1 Разработано программное обеспечение для отображения в Интернет оперативной диспетчерской информации, а также архивных данных

2 На базе XML разработан специализированный язык описания мнемосхем, отображающих оперативные данные

3 Предложен механизм контроля качества доставки оперативных данных через Интернет

4 Предложен ряд интересных с точки зрения философии WEB-технологий решений, например, сохранения клиентской информации на стороне сервера в виде конфигурационных XML файлов

5 Решена проблема прохождения оперативных данных через Proxy-сервера и Firewall

6 На основе эксплуатации системы на важных энергопредприятиях России показана пригодность Интернет технологий для мониторинга оперативных данных

Список литературы

1. Публикации в изданиях, рекомендованных ВАК РФ'

[1] С А Сухов, В И Ухов Подходы к созданию АСУТП на основе }¥ЕВ-технологий // Автоматизация и Современные Технологии N10, 2006

[2] С А Сухов Мониторинг оперативных диспетчерских данных средствами Интернет //Автоматизация и Современные Технологии N3,2007

[3] С А Сухов Технологические аспекты передачи оперативных данных в среде Интернет //Вестник университета Дубна N2,2005 с 12-17

[4] С А Сухов, Н Ю Кульман Создание описания мнемосхем на основе XML II Вестник университета Дубна N1,2006, с 52-58

[5] С И Купцов, В Н Пелешко, С А Сухов, В И Ухов Развитие автоматизированной системы радиационного контроля ускорителя ИФВЭ в рамках современных информационных технологий II XVIII Конференция по ускорителям заряженных частиц RUPAC-2002 Сборник докладов том 2 с 636-641

[6] С Н Рыкованов, В И Виноградов, В И Ухов, С А Сухов, Д А Хабибуллин Терминальная система сбора и отображения данных в Интернет Международный симпозиум по проблемам модульных систем и сетей ICSNET1

С А Сухов

Разработка системы мониторинга оперативных данных на основе АУЕВ-техноло-гий

Редактор JI Ф Васильева

Подписано к печати 25 09 2007 Формат 60 х 84/16 Офсетная печать Печл 1,16 Уч-издл 1,3 Тираж 100 Заказ 78 Индекс 3649

ГНЦ РФ Институт физики высоких энергий, 142281, Протвино Московской обл

2. Другие публикации:

2001

Рукопись поступила 24 сентября 2007 г

Индекс 3649

АВТОРЕФЕРАТ 2007-15, ИФВЭ, 2007

Оглавление автор диссертации — кандидата физико-математических наук Сухов, Сергей Александрович

ВВЕДЕНИЕ.

ГЛАВА 1 ТЕХНОЛОГИЯ ПЕРЕДАЧИ ОПЕРАТИВНЫХ ДАННЫХ.

Данные реального времени и оперативные данные.

Связь между функциональностью системы и выбором технических решений.

Подходы к реализации Интернет приложений АСУТП ведущих разработчиков SCADA.

Схема передачи оперативных данных.

Контроль качества доставки оперативных данных.

Возможность телеуправления.

Прохождение оперативных данных через прокси-сервера и firewall.

Использование инструментария Java для получения оперативных данных.

Формирование подписки на оперативные данные.

ГЛАВА 2 ГРАФИЧЕСКОЕ ОТОБРАЖЕНИЕ ДАННЫХ.

Требования к компонентам визуализации.

Отображение данных на мнемонических схемах.

Язык описания мнемосхем.

Попытки использования графических стандартов для описания мнемосхем.

Разработка языка описания мнемосхем на основе XML.

Группирование элементов.

Стандартные объекты и их свойства.

Контроль формата мнемосхем с помощью DTD.

Различные способы отображения оперативных данных.

Апплет для отображения гистограмм.

Апплет таблица.

Живые архивы.

Отображение оперативных данных на графиках.

Отображение оперативных данных при помощи элементов HTML.

ГЛАВА 3 ОРГАНИЗАЦИЯ СИСТЕМЫ WEB-МОНИТОРИНГА.

Место системы WEB-просмотра в SCADA.

Система навигации и авторизации.

Выбор решения поставленной задачи.

Виртуальное дерево.

Привязка иконок в дереве навигации.

Ссылочные файлы в ветвях дерева навигации полученных путем сканирования директорий.

Обработка запроса клиента на дерево навигации.

Исходные технологии и инструментарий.

Разбор виртуального дерева.

Дальнейшее развитие системы навигации.

Администрирование пользователей.

Персональные пользовательские страницы, пользовательские сессии.

Подстановка переменных пользовательской сессии в HTML документ и выполнение встроенных функций.

Вызов встроенных функций WEB-cepbepa.

Механизм конфигурационных файлов.

Хранение форм.

Система генерации диспетчерских отчетов.

Введение 2007 год, диссертация по информатике, вычислительной технике и управлению, Сухов, Сергей Александрович

Технологии Интернет вторгаются во все сферы деятельности человека. Не обошли они своим вниманием и производство. Сетевые технологии и удаленный обмен данными играют важную роль во многих промышленных отраслях и, в частности, в энергетике. Данная работа посвящена применению Интернет технологий в области SCADA для мониторинга оперативных данных. Приложения SCADA (Supervisory Control and Data Acquisition System) используются для удаленных измерений, мониторинга критических данных и операций, контроля и защиты, для поддержания надежности и стабильности промышленных систем. Усложнение систем контроля, рост потребности в своевременной оперативной информации и числа клиентов, желающих эту информацию получать, приводят к изменению структур информационных систем, к дополнению, а иногда и замене традиционных технологий.

Разработка описываемых в данной работе приложений была начата в 2000 году в рамках проекта системы мониторинга ускорительно-накопительного комплекса ИФВЭ. Система WEB-мониторинга использовалась для мониторинга технологических данных ускорителя У-70, а также оперативных данных с экспериментальных установок ИФВЭ.

В дальнейшем разработанное программное обеспечение получило применение в области энергетики. Описываемые технологии мониторинга данных через Интернет обеспечивают диспетчерам энергосистем возможность удаленного просмотра критических данных. Ряд заинтересованных лиц, в том числе дирекция энергопредприятий, может получать оперативную производственную информацию в различных точках сети без установки специальных клиентских программ.

Цель работы. Целью данной работы является разработка программного обеспечения для отображения в Интернет оперативной диспетчерской информации, а также архивных данных.

В разработанное программное обеспечение входят набор графических JAVA-апплетов, HTML-страниц и функций JavaScript, а также ряд подпрограмм, встроенных в специализированный WEB-сервер "Систел".

Специализированный WEB-сервер обеспечивает доставку клиентам событийно-изменяемых данных, а также обеспечивает ряд стандартных функций WEB-сервера. JAVA-апплеты обеспечивают прием и отображение данных, а также навигацию в информационном пространстве.

Научная новизна.

1. Впервые на базе XML стандарта разработан специализированный язык для описания мнемосхем, отображающих оперативные данные.

Для отображения событийно-изменяемых оперативных данных на мнемосхемах и отображения самих мнемосхем был разработан специальной язык описания мнемосхем на основе стандарта XML. Файл описания мнемосхемы содержит полную информацию о внешнем виде мнемосхемы и способах реакции на различные события, случающиеся в результате прихода тех или иных оперативных данных или интерактивных действий пользователя. Благодаря единому описанию мнемосхем возникает принципиальная возможность использования мнемосхем разными SCADA.

2. Впервые для подобных систем предложено использовать механизм контроля качества доставки оперативных данных.

Когда речь идет о просмотре данных через глобальную сеть Интернет, предполагается, что клиент может находиться в произвольной точке мира. Глобальная сеть неоднородна по качеству, надежности и скорости передачи данных, поэтому в такой ситуации не может осуществляться передача данных за гарантированное время. Однако, на практике ситуация не столь уж и плоха, тем более, что сетевые информационные коммуникации быстро развиваются, скорость и качество передачи информации растет. При мониторинге оперативных данных важно обеспечить клиенту уверенность что он получил информацию без потерь и за разумный, наперед заданный промежуток времени. Если качество передачи информации в какой-то момент времени упала, клиент должен быть об этом проинформирован. Для этого должен осуществляться непрерывный контроль за временем прохождения данных от точки расположения WEB-сервера до точки расположения клиента. В данной работе предложен механизм такого контроля. Нельзя гарантировать доставку данных за определенный промежуток времени, однако, можно контролировать время доставки и сохранность данных, что само по себе крайне важно.

На основе опыта эксплуатации системы мониторинга оперативных данных в реальных промышленных системах в энергетике показана возможность передачи данных за приемлемые промежутки времени.

3. Решена проблема прохождения оперативных данных через Proxy-сервера и Firewall без специальных разрешений и выполнения дополнительных настроек сети.

Рассмотрен ряд проблем, возникающих при передаче оперативных данных через Интернет, в частности, рассматривается проблема прохождения пакетов с данными через ргоху-серверы. Отсутствие дополнительных настроек сетевых администраторов для передачи оперативных данных устраняет административные проблемы при внедрении системы, что существенно облегчает само внедрение.

4. Предложены интересные с точки зрения философии WEB-технологий решения для сохранения клиентской информации на стороне сервера в виде конфигурационных файлов.

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

Актуальность работы. SCADA-приложения применяются во многих областях промышленности. Часто они являются ключевыми звеньями технологии. Допуск программных продуктов, разработанных иностранными фирмами, в область управления стратегическими областями производства, в частности энергетикой, крайне нежелателен. Наверное, многим памятны недавние события в Ираке, когда через спутниковую связь была отключена система противовоздушной обороны этой страны. Делать страну заложником иностранных технологий очень опасно.

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

В связи со всем выше сказанным, следует развивать и всячески поощрять национальные разработки SCADA систем.

Благодаря наличию большого количества WEB-программистов, открытости WEB-технологии и простоте создания пользовательских интерфейсов на ее базе, применение WEB-технологии позволяет существенно удешевить разработку и поддержку подсистем SCADA для удаленного просмотра данных.

Практическая ценность работы. После завершения периода опытной эксплуатации система мониторинга и отображения оперативных данных через Интернет была успешно сдана в промышленную эксплуатацию как часть SCADA "Систел" на предприятии ЦУС (Центр Управления Сетями) "Белгородэнерго". Ранее система мониторинга была успешно опробована на предприятии "Тамбовэнерго". Кроме того, в настоящий момент времени система находится в опытной эксплуатации на предприятии "Московские Высоковольтные Кабельные Сети" и Череповецкой ГРЭС.

ЦУС "Белгородэнерго" является пилотным проектом для SCADA "Систел". После завершения периода опытной эксплуатации в ЦУС "Белгородэнерго", SCADA "Систел", и входящая в нее система WEB-мониторинга оперативных данных, будут ставиться в областных Российских ЦУС. Уже сейчас есть договоренности с Ростовским, Воронежским и Саратовским ЦУС. Автор защищает:

1. Разработку программного обеспечения для отображения в Интернет оперативной диспетчерской информации.

2. Разработку на базе XML специализированного языка для описания мнемосхем, отображающих оперативные данные.

3. Механизм контроля качества доставки оперативных данных через Интернет.

4. Решение проблемы прохождения оперативных данных через Proxy-сервера и Firewall без специальных настроек администраторов сетей.

Содержание работы.

Во введении формулируется цель работы, обосновывается ее актуальность, рассказывается о практическом применении работы и ее научной значимости.

В первой главе рассматриваются вопросы, связанные с передачей оперативных данных через Интернет. Рассмотрены подходы к удаленному мониторингу данных, реализованные ведущими разработчиками SCADA, такими как Intellution, WonderWare, AdAstra и др. Рассмотрена общая схема передачи оперативных данных через Интернет, а также предложен механизм контроля качества доставки оперативных данных.

Во второй главе рассмотрены средства графического отображения оперативных данных. Рассмотрен язык описания мнемосхем на базе XML, а также представлены различные способы графического отображения оперативных данных.

В третьей главе рассмотрена организация приложения для мониторинга оперативных данных, показано место системы WEB-мониторинга на энергопредприятии. Здесь также обсуждаются технические аспекты реализации авторизации и персонального доступа пользователей к информационным ресурсам системы WEB-мониторинга. Обсуждается вопрос автоматического сохранения пользовательской информации, заполненной им в виде HTML-форм.

В заключении кратко сформулированы основные результаты работы. Апробация работы. Основные результаты диссертационной работы докладывались на научном семинаре отдела математики и вычислительной техники ИФИЭ, на XVIII Конференции по ускорителям заряженных частиц RUPAC-2002, на Международном симпозиуме по проблемам модульных систем и сетей ICSNET' 2001, на втором научно-техническом семинаре по современным системам контроля и управления электрических станций и подстанций (АСУ ТП) на базе микропроцессорной техники, проходившем в 2001г. в Москве.

В основу диссертации положено 6 публикаций, две из которых [1,2] опубликованы в журналах, входящих в перечень периодических научных и научно-технических изданий, рекомендованных ВАК РФ.

Заключение диссертация на тему "Разработка системы мониторинга оперативных данных на основе WEB-технологий"

Основные результаты, полученные в ходе выполнения данной диссертационной работы, сводятся к следующему:

1. Разработано программное обеспечение для отображения в Интернет оперативной диспетчерской информации, а также архивных данных.

2. На базе XML разработан специализированный язык описания мнемосхем, отображающих оперативные данные.

3. Предложен механизм контроля качества доставки оперативных данных через Интернет.

4. Предложен ряд интересных с точки зрения философии WEB-технологий решений, например, сохранения клиентской информации на стороне сервера в виде конфигурационных XML файлов.

5. Решена проблема прохождения оперативных данных через Proxy-сервера и Firewall.

6. На основе эксплуатации системы WEB-мониторинга на ускорителе заряженных частиц У-70, а так же на важных энергопредприятиях России, показана пригодность Интернет технологий для мониторинга оперативных данных.

В заключение выражаю глубокую благодарность своему научному руководителю кандидату ф.-м. наук Гусеву В.В за постоянную помощь и моральную поддержку, а также кандидату ф.-м. наук Ухову В.И., внесшему значительный вклад в разработку данного программного обеспечения.

Заключение

WEB-технологии привлекательны в первую очередь своей дешевизной, общедоступностью и простотой. Ясно, что Интернет будет широко применяться в промышленных АСУ разного класса и назначения, но представляется также очевидным, что Интернет и WWW позволит выйти за пределы сферы традиционного применения систем АСУТП. Благодаря WEB-технологии в рамках одной системы удается соединить черты информационного WEB-сайта предприятия с чертами системы диспетчерского оперативного контроля данных, собрать разнородную, распределенную по разным подразделениям и серверам информацию.

Библиография Сухов, Сергей Александрович, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

1. С.А. Сухов. "Мониторинг оперативных диспетчерских данных средствами Интернет" Автоматизация и Современные Технологии. N3 2007.

2. С.А. Сухов, В.И. Ухов. "Подходы к созданию АСУТП на основе WEB-технологий", Автоматизация и Современные Технологии. N10 2006.

3. С.А. Сухов. "Технологические аспекты передачи оперативных данных в среде Интернет" Вестник университета Дубна N2 2005.

4. С.А. Сухов, Н.Ю. Кульман. "Создание описания мнемосхем на основе XML" Вестник университета Дубна N1 2006.

5. Mark Wutka, et. al. ISBN: 0-7897-0935-x "JAVA Expert Solutions".12. "Web технологии на службе АСУ ТП" Электронный журнал энергосервисной компании "Экологические системы" ЭСКО N6,2002.

6. Л.В.Анзимиров. "Web технологии TRACE MODE 5" Электронный журнал энергосервисной компании "Экологические системы" ЭСКО N6, 2002.

7. Тимирбаев А., Лангманн Р. "Веб-базированный доступ к технологической информации" Мир компьютерной автоматизации, 5, 2002

8. Paul Hyde. "Java Thread Prjgramming" Sams Publishing 1999 ISBN 06723-1585-8

9. Д.Э.Камер, Д.Л.Стивене. "Сети TCP/IP разработка приложений" Т.З 2002. ISBN 5-8459-0296-7 (рус.)

10. Д.Рихтер. "Windows для профессионалов" 2004 ISBN 5-272-00384-5

11. М.Томас, П.Пател. "Секреты программирования для Internet на Java" ISBN 5-88782-119-1

12. J.Jaworski. "JavaScript and JScript" SYBEX 1999, ISBN 0-7821-2492-5

13. Д.Рихтер, Д.Кларк. "Программирование серверных приложений для Windows2000" 2001, ISBN 5-7502-0137-6

14. D.M.Geary. "Graphic Java2 mastering the JFC" Volume II Sun Microsystems Press 1999, ISBN 0-13-079667-0

15. D.M.Geary. "Graphic Javal.2 mastering the JFC" Volume I Sun Microsystems Press 1999, ISBN 0-13-079666-2

16. R.Eckstein, M.Loy, D.Wood. "Java Swing" O'REILLY 1998, ISBN 1-56592-455-X

17. Ф.Бумфрей, О.Диренцо, Й.Дакетт и др. "XML новые перспективы WWW" ДМК 2000, ISBN 5-93700-007-2

18. Модульная интегрированная SCADA КРУГ-2000, руководство пользователя, WEB-контроль.

19. Андреев Е.Б., Куцевич. Н.А. "SCADA-системы: взгляд изнутри" http://www.scada.rii/piiblication/hook/home.litml

20. Куцевич Н.А. "SCADA-системы. Взгляд со стороны" Промышленные АСУ и контроллеры. 1999. №1.

21. Куцевич Н.А. "Новые технологии и MMI-системы" Мир компьютерной автоматизации. 2000. №3.

22. Незнанов В.Н. "WEB и SCADA. Угроза или приглашение к сотрудничеству?'1 2003 N1-2 ПиКАД