МАТЕМАТИЧНЕ ТА КОМП’ЮТЕРНЕ МОДЕЛЮВАННЯ
МАТЕМАТИЧЕСКОЕ И КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ
MATHEMATICAL AND COMPUTER MODELLING
УДК 681.5.015 Агибалов А. П.1, Поляков М. А.2
Магистрант Запорожского национального технического университета 2Канд. техн. наук, доцент Запорожского национального технического университета
ТРАНСЛЯТОР ПАРАМЕТРОВ МОДЕЛИ КОНЕЧНОГО АВТОМАТА ИЗ СРЕДЫ МДТЬДБ В ПРИЛОЖЕНИЕ ЧЕЛОВЕКО-МАШИННОГО __________________________________ИНТЕРФЕЙСА______________________________________________
Предложена технология и средства автоматического переноса параметров модели конечного автомата из приложения МаАаЬ в приложение человеко-машинного интерфейса.
Рассмотрен пример применения технологии к модели электрического аппарата.
Ключевые слова: з1а1ейо^', конечный автомат, ББЕ-диалог, человеко-машинный интерфейс, тег.
ВВЕДЕНИЕ
В настоящее время приложения, созданные с помощью программных средств человеко-машинного интерфейса (HMI, англ. - Human Machine Interface), являются неотъемлемой частью SCADA-систем и контроллерных систем управления техническими объектами и процессами [1, 2]. В среде этих приложений выполняется часть логики пользователя, которая формализуется с помощью конечных автоматов [3, 4].
В ряде случаев, в процессе проектирования этих автоматов, прибегают к их моделированию в среде универсальных пакетов моделирования, например приложения Simulink пакета MATLAB [5]. Библиотека Stateflow этого пакета позволяет графически интерпретировать конечный автомат проектируемой системы управления как событийно-управляемую модель.
В существующей технологии проектирования операция переноса результатов моделирования логики управления пользователя в приложение HMI выполняется вручную, является трудоемкой, требующей высокой квалификации исполнителя.
Целью данной работы является сокращение трудоемкости проектирования приложений HMI путем созда-
ния технологии и средств автоматического переноса параметров модели конечного автомата из приложения Matlab в приложение HMI.
ТЕХНОГОЛИЯ И СРЕДСТВА ПЕРЕНОСА
Предлагаемая технология автоматического переноса параметров модели включает анализ файла модели Simulink и создание матричных эквивалентов элементов модели; инициацию DDE-диалога между приложениями Matlab и HMI; перенос созданных матричных эквивалентов в приложение HMI. Для реализации этой технологии созданы скрипты и функции Matlab, а также VBA-модули, встроенные в проект приложения HMI. Совокупность разработанных средств будем называть транслятором параметров модели конечного автомата из среды MATLAB в приложение человеко-машинного интерфейса, далее - транслятор. Транслятор предназначен для приложений HMI, созданных с помощью программного пакета RSVIEW32 компании Rockwell Automation (США) [2], но предлагаемая технология трансляции может быть использована при разработке трансляторов в другие пакеты HMI.
Программная структура транслятора представлена на рис. 1. Ядро транслятора - скрипт analysis.m. В процес-
© Агибалов А. П., Поляков М. А., 2011
Рис. 1. Программная структура транслятора
се его выполнения вводится имя анализируемой Simulink-модели и имя проекта RSVIEW32, выбранного для генерации параметров модели, вызываются функции и скрипты для осуществления процесса трансляции.
Скрипт mdlsearch.m предназначен для поиска координат описания элементов модели. Скрипт define.m создан для формирования массивов элементов модели. Скрипт parsearch.m служит для поиска вышеназванных параметров в сформированных массивах. Скрипт stateevent.m создан для анализа меток состояний. Скрипт formatlabel.m отвечает за форматирование анализируемых данных для использования в SCADA-проекте. Скрипт dde.m инициализирует DDE-диалог с программой RSVIEW32 и посылает данные в проект; при этом VBA-модуль EventStart осуществляет процесс генерации тегов проекта при помощи пар модулей DataTag_Value Change, CreateAnalogMemory и StateTag_ValueChange,CreateDigitalMemory. Скрипт ddeexcel.m служит для переноса результатов анализа в таблицу MS Excel для наглядного отображения структуры всей модели Simulink.
В результате работы программы создается база данных тегов SCADA-проекта, наиболее точно отвечающая параметрам элементов Simulink-модели.
ПРИМЕНЕНИЕ ТРАНСЛЯТОРА ДЛЯ ОБРАБОТКИ МОДЕЛИ
Рассмотрим использование транслятора на примере моделирования повторно-кратковременного режима работы электрического аппарата, при котором температура его частей за время нагрузки не достигает установившегося значения, а за время паузы не достигает температуры холодного состояния [6].
Ставится задача трансляции модели электрического аппарата из приложения моделирования в приложение мониторинга RSView3 2.
Simulink-модель электрического аппарата изображена на рис. 2. Параметрами модели являются время нагрузки tw и паузы tp, постоянные времени нагрева и охлаждения tay и tay1 соответственно, температура окружающей среды T и граничная температура нагрева аппарата T1. В примере приняты следующие значения констант: tw = 1 с, tp = 2 с, tay = 7 с, tay1 = 15 с, T = 20 град., T = 120 град. Наблюдаемыми величинами являются мгновенная температура нагрева аппарата Th и режим его работы mode.
Блок Stateflow Chart реализует функцию конечного автомата. Диаграмма его состояний и переходов изображена на рис. 3.
Рис. 2. Simulink-модель электрического аппарата
Рис. 3. Диаграмма состояний автомата и переходов блока Stateflow Chart
Автомат находится в одном из двух состояний: SO (под нагрузкой) и S1 (без нагрузки). Каждое состояние характеризуется действием при входе в него (entry:), а именно - изменением температуры частей аппарата в зависимости от времени симуляции.
Действие при входе описывается графическими функциями SOexpon и Slexpon. Входными переменными функций являются константы модели.
Состояния модели связаны системой переходов, описываемых условиями и действиями, а также соединительных узлов для упрощения диаграммы Stateflow (рис. 3). В процессе симулирования температура аппарата образует экспоненциально нарастающий и спадающий процесс.
Результатами работы транслятора являются:
1) матричные эквиваленты элементов модели в рабочей области Matlab (рис. 4);
2) база данных тегов в HMI-проекте (рис. 5);
3) таблица на листе Excel с параметрами модели автомата (рис. 6).
Array Editor: trans11 |_|[п][х|
File Edit View Web Window Help
& Щі fe I Size: |24 by 1 X
1
' vw-1 transition {
2 id 22
3 labelString "{Th=T start+(T 1 +0.5)*( 1 -exp(-(t-timestart)/tay));\n"
4 "mode=1}"
5 labelPosition [67.429 28.589 289.984 34.449]
6 fontSize 14
7 5ГС {
8 intersection [0 0.6637 0.748 0 42.5 27.75 0 0)
9 }
10 dst {
11 id 10
12 intersection [7-0.6637-0.748-1 81.1787 71.3389 0 0]
13 }
14 midPoint [59.8523 47.3051]
15 chart 2
i Array Editor: state 2 Array E d ito r: tra n s 11 Array E d ito г: с о n sta nt6
Рис. 4. Массив, отвечающий переходу диаграммы
Untilled -Tag Monitor
И Tag Name Value State Description HI
1 Y transitionl |[t-timestartl<twl valid Event description 1
2 y~1 transition? {timestart=t;Tstart=Th} valid Event description ii
3 Y transition3 {timestart=t;Tstart=Th} valid Event description
A Y transition^ |[t-timestart|<tpl valid Event description
5 Y~1 transition5 (Th=0;timestart=0} valid Event description
Б Y tay 7 valid Input data
7 Y tayl IE valid Input data
В Y T1 21 valid Input data
9 Y T 20 valid Input data
10 Y so On valid State tag jpj
<JJ ±П
Рис. 5. Монитор тегов RSView32
Ж A В С n F F
1 2 3 State label SO id 3 SI 4 SOexpon 'Slexpon Tstart timestart.tayl 5 Є
4 entry: SQexponfTsta S1expon(Tstart,timestart,tay1):
5 during:
6 exit:
7 8 on_event:
9 10 11 id 12 13 Condition t-timestart <tw 14 15 t-timestart Transition 16 <tp 17 t-timestar
12 Action timestart=t:Tst и TO IT TO Th=0:timestart=0
13 14 Source 3 Destinatior 9 8 4 7 4 3 4 SIMULINK 3 3 3
Рис. б. Отчет по трансляции на листе Excel
ВЫВОДЫ
Для создания HMI-проектов с клиент-серверной или распределенной архитектурой используются SCADA-системы. Логика пользователя приложений HMI формализуется в виде конечного автомата и может быть смоделирована в программе Simulink пакета Matlab. Основными элементами модели являются входные и выходные параметры, состояния автомата и переходы между ними.
Разработанный транслятор параметров модели является комплексом программ, выполняемых в среде Matlab и VBA-надстройке RSView32. Трансляция основана на механизме DDE. Трансляции подвергаются:
1) параметры состояний: название, id-номер, действия при входе, выходе, во время активности состояния и при совершении установленного события;
2) параметры переходов: id-номер, условие совершения, параллельное действие, начальная и конечная точка;
3) входные и выходные данные: id-номер, имя переменной, тип данных, тип переменной, величина.
Автоматическое отображение результатов анализа модели на листе Excel упрощает восприятие сложных систем. Разработанный инструмент удачно прошел тестирование на demo-примерах приложения Simulink, в частности, на модели нагревателя, инфракрасной системы наведения ракеты, системы подачи топлива в автомобиле. В то же время предложенная технология имеет ограниченную функциональность, поскольку не генерирует автоматически события проекта RSView32, не создает дисплеи и сигналы тревоги для мониторинга контролируемых величин, и потому имеет перспективу улучшения.
СПИСОК ЛИТЕРАТУРЫ
1. Олсон, Г. Цифровые системы автоматизации и управления / Г. Олсон , Д. Пиани. - С. Пб. : Невский Диалект, 2001. -557 с. : ил.
2. RSView32 : руководство пользователя [Електронний ресурс] / Rockwell Software Inc. - Электрон. дан. - М., [2000]. — Режим доступу: www.eskovostok.ru/_docs/9399-2se32ug-ru.pdf, вільний. - Загл. с экрана.
3. Поляков, М. А. Теоретико-множественная модель интегрированной контроллерной системы управления / М. А. Поляков // Системні технології. - 2009. - № 4. - С. 131-137.
4. Поляков, М. А. Логическое управление объектами электрических систем в среде приложения человеко-машинного интерфейса / М. А. Поляков // Наукові праці Донецького національного технічного університету. - 2009. -№ 9(158). - С. 197-201.
5. Дэбни, Д. Simulink 4. Секреты мастерства / Д. Дэбни , Т. Харман. - М. : БИНОМ. Лаборатория знаний, 2003. -404 с.
6. Электрические и электронные аппараты : учебник для вузов / под ред. Ю. К. Розанова. - 2-е изд., испр. и доп. -М. : Информэлектро, 2001. - 420 с. : ил.
Стаття надійшла до редакції 1б.12.2010.
Після доробки 01.02.2011.
3б
Агібалов О. П., Поляков М. О.
ТРАНСЛЯТОР ПАРАМЕТРІВ МОДЕЛІ КІНЦЕВОГО АВТОМАТА ІЗ СЕРЕДОВИЩА MATLAB У ДОДАТОК ЛЮДИНО-МАШИННОГО ІНТЕРФЕЙСУ
Запропоновано технологію та засоби автоматичного переносу параметрів моделі кінцевого автомату з додатку Matlab до додатку людино-машинного інтерфейсу. Розглянуто приклад застосування технології до моделі електричного апарата.
Ключові слова: stateflow, кінцевий автомат, DDE-діалог, людино-машинний інтерфейс, тег.
Agibalov A. P., Polyakov M. A.
TRANSLATOR OF FINITE STATE MACHINE MODEL PARAMETERS FROM MATLAB ENVIRONMENT INTO HUMAN-MACHINE INTERFACE APPLICATION
Technology and means for automatic translation of FSM model parameters from Matlab application to human-machine interface application is proposed. The example of technology application to the electric apparatus model is described.
Key words: stateflow, finite-state machine, DDE-dialog, human-machine interface, tag.
УДК004.056.53:004.75 Андрущенко Д. М.1, Варава М. Ю.2, Неласа Г. В.3
1Молодший науковий співробітник Запорізького національного технічного університету 2Провідний спеціаліст з інформаційних технологій КБ Приватбанк 3Канд. техн. наук, доцент Запорізького національного технічного університету
РОЗПАРАЛЕЛЮВАННЯ P - І X - МЕТОДІВ ПОЛЛАРДА РОЗВ’ЯЗАННЯ ЗАДАЧІ ДИСКРЕТНОГО ЛОГАРИФМУВАННЯ
Проведено аналіз ефективності розпаралелювання р - і X -методів Полларда при вирішенні задачі дискретного логарифмування. Наводиться теоретична оцінка часу виконання завдання на паралельній системі. Проведено порівняння результатів практичних
і теоретичних розрахунків. Зроблені заміри часу виконання розпаралелених методів.
Ключові слова: методи Полларда, дискретний логарифм, розпаралелювання,
складність криптоалгоритма, оцінка складності.
ВСТУП
При створенні систем захисту інформації широко застосовуються асиметричні алгоритми. Надійність таких систем основана на трудомісткості виконання одного з наступних типів зворотних перетворень: розкладання великих чисел на прості множники; обчислення дискретного логарифму; обчислення коренів алгебраїчних рівнянь [1, 2]. Однак розвиток методів прискорених обчислень, в тому числі застосування багатопроцесорних систем паралельних рішень, викликає небезпеку зниження ступеню захисту криптосистем. Тому для оцінки надійності систем захисту та їх вдосконалення необхідно дослідження методів паралельних рішень для проведення названих перетворень.
ПОСТАНОВКА ЗАДАЧІ
Одними з найбільш розповсюджених асиметричних криптосистем є ті, що створені на базі еліптичних кривих y2 = x3 + ax + b mod p над простим полем GF(p). Якщо P є базовою точкою адитивної групи точок еліптичної кривої простого порядку n, точка Q належить заданій групі точок еліптичної кривої, то злом криптографічної системи полягає у розв’язанні рівняння m ■ P = Q відносно m, де 1 < m < n -1 (адитивний аналог задачі дискретного логарифмування).
Надійність систем захисту інформації, злом яких оснований на розв’язанні задачі дискретного логарифму© Андрущенко Д. М., Варава М. Ю., Неласа Г. В., 2011
вання залежить від величини п. Однак, збільшення п, окрім підвищення надійності, призводить до збільшення часу роботи криптографічних алгоритмів. Тому для побудови ефективних алгоритмів необхідний компромісний варіант, що забезпечує достатню надійність захисту при прийнятному рівні модуля п з точки зору швидкості роботи алгоритму. Поява нових методів прискорення обчислень дискретного логарифму, одним з яких є розпа-ралелювання, викликає необхідність збільшення параметру п. Тому оцінка ступеня надійності криптографічних систем, дослідження можливості їх злому шляхом розпаралелювання процесу розв’язання задачі дискретного логарифмування є актуальною проблемою.
Відомі різні алгоритми послідовного вирішення цього завдання, в тому числі: великих-малих кроків, Поліга-Хеллмана, Р-Полларда, X-Полларда, Адлемана, іМех-саісиїш [1-3]. Більшість з них піддаються розпаралелю-ванню. У даній роботі для перевірки працездатності системи та оцінки ефективності даного підходу були розглянуті Р-метод і X-метод Полларда [2].
Метод р -Полларда. Ідея методу полягає в побудові послідовності точок Z еліптичної кривої
2І = Ар + Б&, (1)
де 1 < Аі, Б і < п -1,