автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.12, диссертация на тему:Автоматизация проектирования систем логического управления параллельными процессами
Автореферат диссертации по теме "Автоматизация проектирования систем логического управления параллельными процессами"
АКАШМЯ НАУК БЕЛАРУСИ ? Г 3 О Д ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ИНСТИТУТ ТЕХНИЧЕСКОЙ КИБЕРНЕТИКИ
на правах рукописи
КРАСИЛЬНИКОВА Людмила Владимировна
АВТОМАТИЗАЦИЯ ПРОЕКТИРОВАНИЯ СИСТЕМ ЛОГИЧЕСКОГО УПРАВЛЕНИЯ ПАРАЛЛЕЛЬНЫМИ ПРОЦЕССАМИ
Специальность CS.I3.I2 - Системы автоматизации
проектирования
АВТОРЕФЕРАТ
диссертации на соискание ученой степени кандидата технических наук
Минск 1994
Работа выполнена з Ордена Трудового Красного знамени Институте технической кибернетики Академии наук Беларуси.
Научный руководитель:
Официальные оппоненты:
член-корреспондент АНБ доктор технических наук профессор А.Д.ЗАКРЕВСКИЯ
доктор технических наук профессор А. Е ,'ЛЕУСЕНКО
кандидат технических наук старший научный сотрудник А.С.ПОЛЯКОВ
Ведущая организация: Минское высшее военное
инженерное училище
Зашита диссертации состоится *£(< * 1ЭЭ5 г. в
часов на заседании специализированного Совета Д006.24.01 в Институте технической кибернетики по адресу: 220012, г.Минск, ул. Сурганова, 6.
С диссертацией можно ознакомиться в библиотеке Института технической кибернетики АНБ.
Автореферат разослан " 4 1994 г.
Ученый секретарь специализированного совета , 'у
доктор технических наук ^ Алексеев Г.И.
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы. Логическое проектирование алгоритмов управления технологическими процессами осталось той областью деятельности человека, использование средств вычислительной техники в которой до настоящего времени сталкивается с определенными трудностями. При этом трудности.имеют как технический, так и теоретический, а также психологический характер.
Предметом данной диссертационной работы является задача автоматизации разработки алгоритмов управления процессами с дискретными характеристиками, т.е. такими процессами, где функционирование производственного процесса и управление этим процессом можно описать при помощи дискретных величин.
Традиционно до наступления эпохи вычислительной техники на производстве управление такими процессами выполнялось при помощи электрических схем, которые еще называются релейно-контактными (РКС). Разумеется, разработка и наладка этих схем является весьма трудоемким делом, о/чако традиции разработки алгоритмов управления оборудованием на базе этих схем оказались достаточно сильными как в нашей стране, так / г за рубежом. В результате традиционные ЭВМ и традиционные языки программирования сложно приживаются в сфере управления производственники процессами. Вместо этого развился класс специализированных микро-ЭВМ, предназначенных для целей управления, которые были названы промышленными контроллерами . Контроллеры программировались в терминах тех же релейно-контактных схем, то есть их работа заключалась в имитации функционирования релейно- контактной схемы. Дальнейшее развитие семейстс промышленных контроллеров привело к возникновению модификаций языка РКС, таких как языки булевых выражений и функциональных блоков, однако все эти языки основываются на. одном общем принципе - программы на этих языках выполняются путем сканирования. При этом вся управляющая программа циклически просматривается и в зависимости от выполнения условия, содержащегося в каждом ее выражения, вы-
г'
3
полняется требуемое действие из этого выражения.
С одной стороны, такой подход к выполнению программы имеет некоторый предел по скоростным характеристикам выполнения программы. С другой стороны, программирование на подобных языках затруднительно для персонала, имеющего навыки работы не с электрическими схемами, а с алгоритмическими языками.
В связи с этим, как в нашей стране, так и за рубежом, развиваются и другие, менее традиционные подходы к решению задачи управления дискретными производственными процессами. Один из них рассматривается в данной работе.
Предмет исследования. В рабОТЭХ А.Д.ЗакреВСКОГО бЫЛ предложен язык управления производственными процессами с дискретными характеристиками - язык Простых Алгоритмов Логического Управления (ПРАЛУ). Этот язык отличается от алгоритмических языков во-первых, своей ориентацией на описание функций управления, а во-вторых, наличием удобных средств управления параллельными процессами.
Данный язык оказался удобен для описания широкого класса алгоритмов управления, поэтому были разработаны и внедрены несколько САПР, содержащих средства программирования на этом языке: ЛСГЖА-М, ЛОКУС-Л, ШОП, ПРАЛУ . Однако все эти САПР являются кросс-системами, т.е. только средствами для разработки программ управления, которые в свою очередь предназначаются для выполнения промышленными контроллерами, микропроцессорами, логическими схемами, программируемыми логическими матрицами и т.д. В настоящей работе с одной стороны рассматриваются вопросы реализации языка ПРАЛУ на существующих промышленных контроллерах, а с другой стороны исследуется возможность использовать данный язык как язык программирования промышленного контроллера, созданного на базе ПЭВМ. Использование ПЭВМ на производстве в последние годы получило свое распространение и за рубежом в связи с ростом надежности и снижением стоимости ПЭВМ .
Целью данной работы является создание методов, алгоритмов и программ, предназначенных для автоматизации разработки и выполнения на ЭВМ алгоритмов логического управления
параллельными взаимодействующими процессами, т.е. создание математического обеспечения, позволяющего реализовать ПРАЛУ-алгоритмы на имеющихся логических контроллерах или использовать язык ПРАЛУ в качестве входного языка промышленного контроллера на базе персональной ЭВМ.
Для достижения поставленной цели необходимо было решить следующие задачи:
- разработать средства алгоритмического проектирования и программной реализации ПРАЛУ- алгоритмов; при этом необходимо учитывать такие особенности языка, как наличие обмена с объектом управления, а также■ существование в алгоритмах параллельно выполняющихся взаимодействующих ветвей;
- разработать удобные средства, позволяющие эффективно программировать на языке ПРАЛУ, которые не уступают современным сервисным средствам систем программирования на алгоритмических языках.
Основные методы исследования НЭСТОЯЩеЙ рабОТЫ базируются
на использовании аппарата теории дискретных автоматов и булевых функций, а также теории лингвистического, программного, информационного и технического обеспечения САПР. Научная новизна работы состоит в следующем:
- проведен формальный анализ и конкретизация синтаксической формы ПРАЛУ- алгоритмов;
- предложен набор операций алгоритмического проектирования для алгоритмов на языке ПРАЛУ, а также методы их реализации;
- предложены два метода определения отношения параллельности на множестве меток алгоритма управления, для реализации одного из методов введено понятие расширенной а-сети;
- разработан метод программной реализации устойчивых и неустойчивых ПРАЛУ- алгоритмов на однопроцессорной ЭВМ и рассмотрены пути такой реализации на многопроцессорной ЭВМ;
- предложены методы разработки сервисной части диалоговой системы автоматизации проектирования.
Практическая ценность результатов работы заключается в разработке программного обеспечения, которое дает возможность
на базе языка ПРАМУ разрабатывать алгоритмы, предназначенные для- управления технологическим оборудованием и реализуемые существующими.промышленными контроллерами; - использовать ПЭВМ (после доукомплектования ее платами обмена информацией с объектом управления) как промышленный контроллер с широкими возможностями разработки управляющих программ.
Реализация результатов. Созданное программное обеспечение представлено как самостоятельная САПР, однако его .составные части используются и в составе разработанных в Институте технической кибернетики АНБ диалоговых систем ЛОГША-М, ЛОКУС-Л, ДИЛОП, а также в составе экспериментальной исследовательской САПР СБИС. ■ Соответствующие материала о внедрении результатов работы приведены в приложении к диссертации.
Апробация работы. Основные положения и результаты диссертационной работы докладывались и обсуждались на:
-всесоюзном семинаре молодых ученых и специалистов "Информатика и вычислительная техника" (г. Звенигород, 1986г.);
-конференции "Логическое проектирование систем управления" (г. Севастополь, 1987г.):
-Всесоюзной научно-технической конференции
"Распределенные микропроцессорные управляющие системы и . локальные вычислительные сети" (г. Томск, 1991г.);
-постоянно действующем семинаре "Логическое проектирование" в Институте технической кибернетики АН БССР (г. Шнек, 1984-1994ГГ.).
Публикации. По теме диссертации опубликовано 13 печатных работ.
Структура и объв* диссертации. Диссертация состоит из введения, четырех глав, заключения, списка литературы (89 наименований) и приложения. Объем работы составляет 133 страницы машинописного текста, включая 2 таблицы и 7 рисунков.
СОДЕРЖАНИЕ РАБОТЫ
Во введении обосновывается актуальность темы, изложены цели и задачи исследования, сформулирована научная новизна ..и практическая ценность полученных результатов, дана краткая аннотация работы по главам.
1_пеЕ122_главе дан краткий обзор основных достижений в области разработки языков логического управления. Приведена классификация разработанных к настоящему времени языков. Язык АЛУ и его конкретизация - язык простых алгоритмов логического управления (ПРАЛУ) отнесены к числу языков, использующих формализм сетей Петри, они обобщают ряд известных языков описания параллельных процессов (ЛСА-2, ГСА-11, язык дилогических графов и др.). Эти языки разработаны для использования в качестве входных языков в системах автоматизированного логического проектирования дискретных управляющих устройств. Их достоинствами является удобное представление ветвящихся иерархических процессов и хорошее отображение динамики развития процессов управления.
В параграфе 1.2 приведена математическая модель ПРАЛУ-алгоритма. Алгоритм представляется в виде "множества запуска ы неупорядоченного множества цепочек с1 вида V V •
Здесь н - подмножество множества натуральных чисел, его начальное значение м0, а текущие значения - Шохества ц1 и - это начальная и конечная метки цепочек, подмножества ы.
линейный алгоритм, состоящий из последовательности операций языка ПРАЛУ. В дальнейшем будет идти речь о двух разновидностях ПРАЛУ- алгоритмов. Те ПРАЛУ- алгоритмы, которые содержат все допустимые операции, называются алгоритмами в расширенном виде. Те алгоритмы, цепочки которых содержат лишь две операции - ожидание и действие, называются каноническими алгоритмами. Без ограничения общности можно предположить, что для канонического ПРАЛУ- алгоритма линейный алгоритм 11 представляется в виде последовательности только двух операций
где . - конъюнкции булеБых переменных. Операция -рг - это операция ожидания, она сводится к ожиданию момента времени, когда конъюнкция -р1 примет единичное значение. операция -». qi - это операция действия, она сводится к присвоению таких значений переменным, входящим в },', при которых .
Сформулировано правило запуска цепочек.Цепочка с1
запускается при текущем значении множества запуска , если
"I5 Рг При этом'изменяется значение ыь
"ъ 4 "I и «V
а булевым переменным, входящим в конъюнкцию , присваиваются значения, обращающие эту конъюнкцию в единицу.
На цепочки языка ПРАЛУ накладывается следующее ограничение:
^ ^^^ п " 0 ) + I р 1 " ) л ( л 0 ) •
ПРАЛУ- алгоритм в расширенном ввде имеет иерархическую структуру и состоит из из совокупности отдельных алгоритмов-блоков. Такой алгоритм может дополнительно содержать операции над многозначными переменными и временем (задержки), а также операции гашения параллельных ветвей.
В параграфе 1.3 приведен синтаксис языка ПРАЛУ. Описаны операции ожидания, действия, перехода, окончания алгоритма, запуска подчиненного блока, операции с многозначными переменными и временем, а также операции гашения. Приведена форма представления ПРАЛУ- алгоритма на дисплее компьютера.
В параграфе 1.4 приведена постановка задачи верификации ПРАЛУ-алгоритмов, которая включает в себя
1) проверку выполнения формальных правил синтаксиса;
2) анализ сформулированных А.Д.Закревским пяти свойств алгоритма, связанных- с корректным функционированием и взаимодействием параллельных процессов: безызбыточности, восстанавливаемости, непротиворечивости, самосогласованности, устойчивости;
3) проверку пригодности алгоритма для решения поставленной .задачи.
В параграфе 1.5 проведены формальные исследования синтаксиса ПРАЛУ- алгоритмов, на основании этих исследований предложен новый вариант синтаксической формы языка, который был зафиксирован как стандартный и используется в новых версиях САПР, решавших задачи алгоритмического и логического проектирования с входным языком ПРАЛУ.
После введения в синтаксическую форму языка таких изменений, удалось описать правила построения ПРАЛУ- алгоритмов посредством приведенной в работе формальной грамматики простого предшествования. Грамматика использовалась при разработке алгоритмов синтаксического анализа ПРАЛУ- описаний и гарантировала однозначность синтаксического анализа любого правильного описания.
В параграфе 1.6 описана процедура синтаксического анализа, использующая элементы как восходящего, так и нисходящего разбора. Разработана форма представления ПРАЛУ-алгоритма после синтаксического анализа.
Во второй главе описаны преобразования ПРАЛУ- алгоритмов, выполняемые на зтапе алгоритмического проектирования. •
Параграф 2.1 посвящен задаче • компиляции ПРАЛУ-алгорятмов, причем под компиляцией понимается процесс превращения иерархических алгоритмов в неиерархические на уровне исходного языка. Смысл подобного преобразования именно на уровне исходного языка состоит в особенностях верификации и аппаратной реализации ПРАЛУ- алгоритмов.
В работе предлагаются несколько разновидностей компиляции блоков алгоритма: полная, в результате которой ПРАЛУ- алгоритм преобразуется в единственный блок, и частичная,' а также с повторениями дублируемых блоков и без повторений. Предусмотрен автоматический выбор разновидности процедуры компиляции, зависящий от ситуации, в которой эта процедура применяется.
Особое место при реализации процедуры компиляции уделяется операции гашения, поскольку ее выполнение влияет на процесс выполнения других параллельных ветвей алгоритма. В работе предложен метод преобразования этой операции при
реализации процедуры компиляции.
В параграфе 2¡2 предлагается метод проектирования ПРАЛУ-алгоритмов с использованием типовых решений. Типовые решения накапливаются в системе проектирования как в виде описаний на уровне исходного языка, используемых при верификации и отладке, так и в виде схемно или программно реализованных фрагментов, используемых при соответствующей реализации.
Параграф 2.3 посвящен процедуре канонизации, т.е. преобразования расширенного ЛРАЛУ- алгоритма в канонический, содержащий только операции ожидания и действия. Предложен формальный метод преобразования расширенного ПРАЛУ-описания в каноническое, блоки которого взаимодействуют друг с другом посредством использования общих переменных. Полагается, что операции задержки и операции с многозначными переменными (операций счета) реализуются некоторыми стандартными элементами (в случае аппаратной реализации) или программами (в случае программной реализации), а функция управляющего устройства или программы заключается лишь в обеспечении управления этими элементами- Операции задержки, счета, гашения заменяются их логическими эквивалентами, составленными из операций ожидания и действия над внутренними переменными. Полученное каноническое ПРАЛУ- описание может быть аппаратно реализовано известными методами, а затем обеспечено сопряжение с элементами или программами задержки и счета.
Параграф 2.4 посвящен задаче нахождения отношения параллельности на множестве меток алгоритма управления. Эта задача представляет интерес как при алгоритмическом проектировании на этапах канонизации и компиляции ПРАЛУ-алгоритыа, так и при кодировании состояний параллельного ' автомата. При решении этой задачи использовалась введенная А.Д.Закревским дискретная динамическая модель: а-сеть. Эта модель может быть получена из ПРАЛУ-описания преобразованием каздой цепочки + 11 -» к виду. ^: •* Для а-сети сформулированы правила запуска цепочек и накладываемые на эти цепочки ограничения. В работе определены отношения параллельности и предшествования на множестве мест «-сети.
Два места и т^ () называются параллельными, . если
существует такая разметка ^ сети,что в1,шл £
Непараллельные места т1 и п^ (1*;)) связаны отношением
предшествования, если существует такая последовательность
переходов , ия2'+ .....* "»г» что для всех
к = Г7ГТ . '
".им п "з* " 0 и т1 5 тз £ "лг-
В работе предлагается обобщение метода определения
отношения параллельности на множестве мест живой безопасной а-сети на такие а-сети, которые соответствуют корректным алгоритмам управления, но, может быть, являются опасными. Необходимость выхода из класса безопасных а-сетей обусловлена тем, что значительному классу корректных по поведению алгоритмов управления, отображающих производственные процессы, соответствуют опасные а-сети.
При нахождении отношения параллельности на множестве мест а-сети, соответствующей самосогласованному алгоритму, следует строить на этом множестве и отношение' предшествования. Алгоритм определения этих отношеьяй основан на следующем положении. Если в "множестве переходов а-сети разорвать замкнутые последовательности переходов (в ^ -» к1, ц2 * v2, ... * где и положить ук=в), то любые
два места порождающего «-сеть алгоритма управления параллельны, если соответствующие им места полученной а-сети связаны отношением параллельности, но не , связаны отношением предшествования.
Сформулировано правило порождения параллельных мест "
а-се"-и: _ ,
= «
Здесь - множество мест, параллельных месту V*. Так как
отношение параллельности симметрично, то каждое место из р(^) также параллельно месту
Аналогично можно сформулировать правило порождения мест, предшествующих данному:
= ^^ и ¿V <2>
При применении дьнного метода отношение параллельности на множестве меток алгоритма управления может быть определено и с некоторым избытком, если непараллельность пары меток, т.е. обеспечение недостижимости соответствующей разметки о-сети при реальном выполнении алгоритма, достигается посредством использования операций гашения. Для устранения подобной избыточности введено понятие расширенной а-сети: переход при срабатывании которого выполняется операция гашения "-мй^", обозначим через (цк/}-к,р1.), где подмножество множества меток сети, п ^к=о, Р(ик).
Места, следующие за местами из рк (в частности места из ук), уже не параллельны ни одному из мест з-к.
Тогда правила (2),(1) • порождения мест, связанных отношениями предшествования и параллельности для расширенных «-сетей, модифицируются следующим образом:
3Ч> = _
рН1> = <П1^крч>>и Ч-
В параграфе 2.5 рассматривается задача оптимизации процесса запуска цепочек ПРАЛУ- алгоритма при последовательной реализации-этого алгоритма. Оптимизация выполняется за счет пропуска операций записи в (считывания из) тожества запуска в тех случаях, когда это возможно.
В 3-главе рассматриваются методы микропроцессорной реализации алгоритмов на языке ПРАЛУ, такие как трансляция и интерпретация, предлагаются методы реализации этих алгоритмов на одьом процессоре, а такхе рассмотрены пут»1 такой реализации на многопроцессорной системе.
В параграфе 3.1 описаны различные варианты реализации ПРАЛУ- алгоритмов.
Параграф 3.2 посвящен общим принципам программной реализации ПРАЛУ- алгоритмов. Здесь для анализа вопроса адекватной последовательной реализации этих алгоритмов используется модель абстрактной машины, подобной машинам Тьюринга. Согласно этой модели последовательный алгоритм можно представить в виде ленты, разделенной на квадраты, в каждом из которых записано некоторое действие алгоритма. Процесс
выполнения такого алгоритма можно сопоставить с процессом перемещения вдоль ленты некоторой читающей и выполняющей действия алгоритма головки, которая может переметаться как последовательно, так и прыжками- на несколько клеток вверх или вниз.
При реализации алгоритма, содержащего параллельные ветви, одна читающая головка заменяется множеством из N читающих головок.
При последовательной реализации параллельного алгоритма невозможно обеспечить выполнение одновременно всех действий, записанных в тех клетках ленты, на которые установлены читающие головки. Возникает проблема выбора одной из этих головок, их также можно представить в виде ленты. На эту ленту устанавливается читающая головка второго уровня, причем ее местонахождение определяет головку первого уровня, определяющую в свою очередь выполняемое действие исходного параллельного алгоритма.
Если на ленте записаны операции ПРАЛУ-алгоритма, который имеет паралелльные ветви, то задача выбора последовательности переключения между ними - это фактически задача перемещения головки второго уровня. В работе рассмотрено решение данной задачи как для устойчивых, так и для неустойчивых алгоритмов, т.е. определены точки ПРАЛУ- алгоритма - они названы критическими - в которых следует перемещать - головку второго уровня.
В параграфе 3.3 рассмотрена задача реализации ПРАЛУ-алгоритма на многопроцессорной системе, выделена проблема параллельного доступа к общим ресурсам или разделяемым данным, она возникает при одновременном выполнении установки значений выходных, внутренних а многозначных переменных, а также при изменении количества выполняемых параллельных ветвей. Предлагается решать эту задачу путем специализации процессоров. При такой специализации фрагменты алгоритма, которые могут вызвать конфликты из-за ресурсов, следует выполнять одним специализированным процессором.
Б параграфе 3.4 описаны особенности микропроцессорной реализации операций языка.
В параграфе 3.5 описано представление переменных различных типов и организация работы с ними при программной реализации.
Параграф 3.6 содержит описание транслятора ПРАЛУ-алгоритмов. Транслятор состоит из следующих процедур: лексического анализа, синтаксического анализа, процедуры работы с таблицами, процедуры построения ассемблерных команд. Транслятор выполняет два прохода исходного алгоритма на ПРАЛУ. В - процессе первого прохода выполняется лексический и синтаксический анализ описания алгоритма, строятся таблицы переменных различных типов. Результатом первого прохода является алгоритм во внутреннем представлении. Второй проход преобразует каждую операцию языке, из внутреннего представления в одну или несколько ассемблерных команд.
В параграфе 3.7 обсуждаются особенности трансляции и интерпретации ПРАЛУ- алгоритмов, приведены плюсы и минусы интерпретации.
В четвертой главе описана система программирования L0K0N, которая предназначена для разработки, верификации, трансляции и моделирования алгоритмов управления объектами промышленной автоматики с дискретными характеристиками.
Параграф 4.1 содержит общую характеристику и назначение системы LOKON, которая позволяет автоматизировать процесс разработки управляющих программ для микропроцессора KI8I0. Для описания алгоритмов управления используется язык ПРАЛУ. Разработка программ управления ведется на персональных ЭВМ. типа IBM PC/XT/AT, а также ЕС 1840/41. Результатом работы САПР является управляющая программа, которая может выполняться как на этой ПЭВМ, так и на совместимом микропроцессоре. Для эксплуатации программ необходимо дооборудование ПЭВМ устройствами сопряжения с объектом управления. Для " ПЭВМ ЕС 1840/41 существуют стандартные модули сопряжения.
В автономном режиме система ЮКОН работает в среде MS DOS и требует не менее 150 Кбайт оперативной памяти.
Систему LOKON можно представить в виде совокупности
следующих основных процедур, объединенных общесистемным интерфейсом (его организация описана в параграфе 4.2), который в работе назван диалоговой оболочкой.
1. Процедура редактирования текста, позволяющая вводить и корректировать ЛРАЛУ-алгоригмы.
2. Процедуры обычной' и оптимизирующей трансляции, включающие в себя процедуру синтаксического анализа. Процедура обычной трансляции по сравнению с оптимизирующей дает менее быстродействующую реализацию ПРАЛУ- алгоритма, однако для пошаговой отладки оптимизирующая реализация непригодна. Оптимизация базируется на минимизации переключений между параллельными ветвями.
3. Две процедуры верификации ПРАЛУ-алгоритма. Первая процедура называется "верификация редукцией" и сводится к анализу а- сети, соответствующей каждому блоку ПРАЛУ-алгоритма. Эта а-сеть редуцируется по определенным правилам, что позволяет проверить такие свойства корректности, как самосогласованность, восстанавливаемость и безызбыточность.
Вторую процедуру можно условно назвать "верификацией, учитывающей внутренние переменные". Эта процедура не ограничивается только анализом а-сети, она позволяет проверять все пять признаков корректности , ПРАЛУ-алгоритма, поскольку учитывает использование в нем внутренних переменных. Однако метод, применяемый в данной процедуре, допускает анализ только тех ПРАЛУ- алгоритмов,' которые состоят из одного блока, поэтому иерархические алгоритмы требуется подвергать процедуре компиляции, а это затрудняет диагностику. Данная процедура позволяет ответить на вопрос, корректен ли алгоритм, но не дает однозначного ответа, где корректность нарушается.
4. Процедура пошаговой отладки, она использует описанный в параграфе 4.3 оригинальный метод взаимодействия отладочной и отлаживаемой программ, предложенный в данной работе. Эта процедура позволяет выполнить ПРАЛУ- алгоритм по шагам, отслеживая состояния переменных и взаимодействие параллельных
процессов.
В параграфе 4.4 описаны возможности программирования в системе 10 КОИ.
В приложении I приведена таблица отношений предшествования на множестве элементов грамматики языка ПРАЛУ. В приложении 2 приведены правила преобразования операций языка ПРАЛУ во внутреннюю форму. В приложении 3 приведен пример организации взаимосвязи между отладочной и отлаживаемой программами. Приложение 4 содержит документы, подтверждавшие использование результатов диссертационной работы.
ЗАКЛЮЧЕНИЕ
В диссертационной работе получены следующие основные теоретические и практические результаты.
1. Проведен формальный анализ синтаксической формы ПРАЛУ-алгоритмов, по результатам которого выполнена конкретизация и стандартизация этой . формы, построена грамматика простого предшествования. На базе предложенной грамматики разработаны методы и алгоритмы синтаксического анализа ПРАЛУ-алгоритмов.
2. Разработан и реализован ряд операций алгоритмического проектирования, которые целесообразно выполнить над ПРАЛУ-алгоритмом до его аппаратной или программной реализации, а также до 'формальной проверки корректности. К таким операциям относятся компиляция, канонизация, использование типовых решений. Описаны ситуации, где каждое из предложенных преобразований может быть полезно.
- 3. Предложены два метода ■ определения отношения параллельности на множестве меток алгоритма управления. Первый' метод необходим для анализа алгоритма в процессе компиляции на уровне исходного языка, канонизации и программной реализации. Второй метод используется при аппаратной реализации, на этапе кодирования состояний параллельного автомата.
4. Разработаны средства программной реализации ПРАЛУ-алгоритмов, учитывающие такие особенности языка, как наличие обмена с объектом управления, а также существование параллельных ветвей, интенсивно взаимодействующих между собой.
Предложен метод реализации ПРАЛУ- алгоритмов на однопроцессорной ЭВМ. Рассмотрены общие принципы реализации этих алгоритмов на многопроцессорной ЭВМ, позволяющие избежать конфликтов из-за общих ресурсов. С использованием предложенных в работе методов построены транслятор и интерпретатор ПРАЛУ-алгоритмов.
5. Разработана САПР L0K0N, предназначенная для проектирования алгоритмов управления на языке ПРАЛУ, содержащая средства редактирования, верификации, трансляции и отладки. При разработке сервисной части этой системы использованы метод построения диалогового интерфейса( а также простой и удобный при отладке программ с параллельными ветвями метод организации взаимосвязи между отлаживаемой и отладочной программами. Оба эти метода универсальны и могут использоваться автономно.
Предложенные в работе методы и созданное на их основе программное обеспечение представлено как самостоятельная САПР, однако его составные части используются и в составе разработанных в Институте технической кибернетики АН Б диалоговых систем ЛОГИКА-М, ЛОКУС-Л, ШОП, а также в составе экспериментальной исследовательской САПР СБИС.
Результаты диссертационной работы изложены в следующих публикациях:
I. Черемисинова Л.Д., Красильникова' Л.В. ' Канонизация ПРАЛУ- описания алгоритма управления// Автоматизация решения логико- комбинаторных задач. - Шнек, 1985.- С. 60-74.
Красильникова Л.В. Использование типовых решений при программировании на языке ПРАЛУ// Проектирование систем логического управления. - Минск, I98S.- С. 69-73.
3. Черемисинова Л.Д., Желудко Е.В., Красильникова Л.В. Система автоматизации проектирования систем управления// Информатика и вычислительная техника: тез.докл. Всесоюзного семинара молодых ученых и специалистов (г.Звенигород, 11-18 апреля,1986) - Москва, 1986.- С. 144-145.
1Т
4. Красильникова Л.В. Компиляция блоков ПРАЛУ- описания алгоритма управления// Программно-технические средства САПР.-МИНСК, 1986. - С. 70-74.
5. Красильникова Л.В. Преобразование дизъюнктивной нормальной формы в скобочную с варьируемым типом.-Минск,1988.-16 с. (Препринт Г ИТК АН БССР. N 22).
6. Система логического синтеза устройств ^правления на базе программируемых контроллеров//Материалы по математическому обеспечению ЭВМ.-Минск ИТК АН БССР, 1988. -100 с.
7. Красильникова Л.В. Синтаксический анализ программ на языке ПРАЛУ// Проектирование дискретных систем.- Минск,1989.-С.44 - 54.
8. Красильникова Л.В., Черемисинова Л.Д. Поиск отношения параллельности на множестве маток алгоритма управления.-Минск, 1990.-16с. (Препринт / ИТК АН БССР. N 9). .
9. Красильникова Л.В. Методы и средства микропроцессорной реализации программ на ПРАЛУ.-Минск, 1991.- 28 с. (Препринт / ИТК АН.БССР. N 5). ■
10. Красильникова Л.В. Использование механизма прерываний при отладке алгоритмов на ПРАЛУ// Формализация и автоматизация логического проектирования.- Минск, 1993.- с.12-22.
11. Красильникова Л.В. Алгоритм построения многооконного диалогового интерфейса// Автоматизация логического проектирования дискретных систем.-Минск, 1991. С.72-80.
12. Красильникова Л.В. Система проектирования программ логического управления.-Минск, 1991.-20 с.(Препринт / ИТК АК БССР. N24).
13. Черемисинова Л.Д., аелудко Е.В., Красильникова Л.В. Автоматизация программирования контроллеров с языком РКС// Распределенные микропроцессорные управляющие системы и локальные вычислительные сети: тез. докл. Всесоюзной научно-технической конференции (г. Томск, июнь 1991 г.>-Тоыск, 1991. - С.231-233.
-
Похожие работы
- Автоматизация логического проектирования программного обеспечения микропроцессорных систем управления технологическими процессами черной металлургии
- Проектирование систем логического управления технологическими процессами в горнодобывающей и электрохимической отраслях
- Автоматизированное проектирование систем логического управления обогащением золотоносных пород
- Исследование методов и разработка алгоритмов автоматизированного проектирования оптимальных структур систем управления сложными объектами
- Разработка методического обеспечения, алгоритмов и программных средств проектирования систем автоматизации технологических процессов предприятий нефтяного машиностроения
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность