Применение конечного автомата в задаче АСУ ТП

Тип работы:
Реферат
Предмет:
ТЕХНИЧЕСКИЕ НАУКИ


Узнать стоимость новой

Детальная информация о работе

Выдержка из работы

УДК 681.3. 07
А. Ю. Вольвач, О. В. Толстель ПРИМЕНЕНИЕ КОНЕЧНОГО АВТОМАТА В ЗАДАЧЕ АСУ ТП
Рассмотрен пример применения конечного автомата для реализации части системы управления промышленным оборудованием по интерфейсу RS-485.
An example of application of the final automatic device for realization of a part of a control system of the industrial equipment on the interface RS-485 is considered.
Ключевые слова: конечный автомат, система управления.
Key words: final automatic device, control system.
1. Определение конечного автомата и его применения
Конечным автоматом называется реализация алгебраической структуры М= (Q, Е, 5, q0, F), где Q — непустое множество состояний- Е — конечное множество входных слов (алфавит) — 5 — отображение Q х Е ^ Q, или функция переходов, которая каждой паре (символ, состояние) ставит в соответствие состояние из множества Q- q0 — состояние из Q, известное как начальное (стартовое) — F — множество заключительных (допускающих) состояний, F с Q или просто соответствует окончанию просмотра текста.
Работа автомата заключается в том (например, [1]), что изначально автомат находится в состоянии q0 и под действием первого входного символа переходит в следующее состояние, читает следующий символ и так далее. Автомат заканчивает свою работу, если достигнуто одно из состояний множества F, или прочитан символ, не принадлежащий Е, или входные данные исчерпаны. Если отображение q однозначно, то есть каждой паре (символ, состояние) соответствует определенное состояние, то автомат называют детерминированным, в противном случае (одной и той же паре в соответствие ставится сразу несколько состояний, чаще всего в зависимости от предыдущих или последующих символов обрабатываемой входной сроки) — недетерминированным. Разница между двумя типами автоматов несущественна, так как доказано, что для любого недетерминированного конечного автомата можно построить соответствующий ему детерминированный. Последний легче реализовать, а в терминах первого проще записывать условия для большого числа задач.
Конечные автоматы используют при создании компиляторов языков программирования, организации интернет-браузеров, при программировании мобильных устройств [2] и логических контроллеров. Некоторые передовые исследования в области конечных автоматов на сегодняшний день изложены, например, в [3]. Ниже рассмотрен конкретный пример применения конечного автомата для решения одной задачи разработки автоматизированной системы управления технологическим процессом.
2. Структура конечного автомата и его место в системе управления
Цех по полимеризации ковровых покрытий одного из предприятий укомплектован технологическим оборудованием 1975 г. выпуска и до введения новой системы автоматизации работал на релейной схеме. Необходимо было дополнить технологию производства автоматической системой учета сырья и готовой продукции. Устройства приготовления и нанесения полимера на ковровое покрытие укомплектованы оборудованием, позволяющим подключать компьютер через стандартный интерфейс RS-485, но по закрытому протоколу, обеспечивающему обмен данными только с программным обеспечением, поставляемым производителем. Была проведена работа по парсингу части протокола, необходимого для интеграции устройств в разработанную систему.
Существует ряд программ, позволяющих осуществлять перехват данных, идущих практически через любые существующие интерфейсы. Такие программы называются снифферы (от англ. to
Вестник Российского государственного университета им. И. Канта. 2010. Вып. 10. С. 163−165.
sniff — нюхать). В данном примере дня парсинга протокота использовался сниффер американской фирмы HHD — Free Serial Port Monitor.
Разбор протокола реализован с помощью технологии конечного автомата. При помощи программного обеспечения, идущего в комплекте с оборудованием, был сделан ряд запросов о текущих показаниях прибора. Ответы, полученные от прибора, содержали все необходимые данные для потребностей диспетчерезации. Далее был произведен анализ запросов/ ответов, который показал, что данные не зашифрованы и возможно проведение синтаксического анализа. В рамках существующей задачи по автоматизации из строк ответов были выделены слова алфавита и построен граф разбора этих ответов (рис. 1).
Построенный конечный автомат имеет следующее множество состояний: Q = {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9, qi0} и конечное множество входных слов (алфавит): Е = {Error- w- ok- & gt-- r- char (10)+char (13)-,}. Он осуществляет следующие отображенния (функции переходов):
5(q0, $ 10+$ 13) = q1, 5(q1, $ 10+$ 13) = q0, 5(q1, Error) = q9, 5(q9, $ 10+$ 13) = q0, 5(q1, ok) = q10,
5(q10, $ 10+$ 13) = q0, 5(q1, & gt-) = q4, 5(q4, $ 10+$ 13) = q^ 5(q1, r) = q2,
5(q2,) = q5, 5(q5,) = q& amp- 5(q6,) = q7, 5(q7,) = q3, 5(q3, $ 10+$ 13) = q0.
и имеет следующее множество заключительных состояний: F = q0.
Рис. 1. Граф автомата
Выводы
Программная реализация конечного автомата осуществлена на языке C#. С ее помощью реализована часть системы управления. В результате оказалось возможным привязать к старому оборудованию современный программно-аппаратный комплекс, выполняющий функции экономического учета и системы диспетчеризации. Этот подход может быть применен и на других промышленных объектах, поскольку не требует полного технического перевооружения предприятия, связанного с тем, что за последние десятилетия программно-аппаратные комплексы стремительно развиваются и быстро устаревают, в то время как собственно технологическое оборудование работает на той же элементной базе.
Список литературы
1. Пентус А. Е., Пентус М. Р. Математическая теория формальных языков. URL: http: //www. intuit. ru/department/algorithms/mathformlang/0.
2. Салмре И. Программирование мобильных устройств на платформе. Net Compact Framework. M., 2006.
3. Алешников С. И., Болтнев Ю. Ф., Език З. и др. Формальные языки и автоматы I: полукольца Конвея и конечные автоматы // Вестник Калининградского государственного университета. Вып. 3. 2003. С. 7−38.
Об авторах
Алексей Юрьевич Вольвач — директор, ООО «ПроСофт».
Олег Владимирович Толстель — канд. техн. наук, доц., РГУ
им. И. Канта, e-mail: oleg77764@mail. ru
Authors
Aleksey Volvach — open company & quot-ProSoft"-, director.
Dr Oleg Tolstel — assistant professor, IKSUR, e-mail: oleg77764@mail. ru

ПоказатьСвернуть
Заполнить форму текущей работой