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

кандидата технических наук
Алексеев, Александр Васильевич
город
Москва
год
1999
специальность ВАК РФ
05.13.14
цена
450 рублей
Диссертация по информатике, вычислительной технике и управлению на тему «Гибкая система разработки программ управления для промышленных контроллеров»

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

.Г'

С '

Московский государственный университет леса

На правах рукописи

Алексеев Александр Васильевич

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

Специальность 05.13.14 - Системы обработки информации и управления

Диссертация на соискание ученой степени кандидата технических наук

Научный руководитель -Заслуженный деятель науки и техники РФ доктор технических наук профессор Новоселов О.Н.

Москва - 1999

ОГЛАВЛЕНИЕ

Введение ............................................................5

Глава 1. Постановка требований к гибкой системе разработки программ

управления для промышленных контроллеров......................9

1.1. Область применения и классификация промышленных контроллеров . ... 9

1.2. Место систем программирования в иерархии программного

обеспечения, используемого при управлении производством..............14

1.3. Общие и специфические задачи, решаемые прикладным

программным обеспечением промышленных контроллеров........17

1.4. Требования к гибкой системе разработки программ

управления для промышленных контроллеров.............20

1.5. Анализ известных отечественных и зарубежных систем программирования промышленных контроллеров и постановка задачи настоящей работы ... 22

Глава 2. Принципы построения гибкой системы разработки программ

управления для промышленных контроллеров...........31

2.1. Концепция конъюнктивного языка структурированного текста..............31

2.2. Принципы построения гибкой системы разработки программ управления для промышленных контроллеров на базе конъюнктивного языка структурированного текста .....................37

2.3. Выводы.............................40

Глава 3. Разработка конъюнктивного языка структурированного текста..........41

3.1. Выбор способа описания языка....................41

3.2. Данные.............................42

3.3. Синтаксические элементы языка...................46

3.3.1. Идентификаторы........................46

3.3.2. Числа............................47

3.3.3. Операции...........................47

3.3.4. Ограничители и скобки..........................................48

3.3.5. Комментарии и шумовые слова..................48

3.3.6. Инструкции....................................................49

3.3.7. Псевдооператоры..............................................64

3.3.8. Логические выражения.....................65

3.4. Структура программ........................66

3.5. Расширяемость функциональных возможностей ........................68

3.6. Формальное описание языка ........................................69

3.7. Сравнительные характеристики конъюнктивного языка структурированного текста и известных технологических языков программирования......74

3.8. Разработка компилятора......................75

3.8.1. Структура компилятора.....................75

3.8.2. Лексический блок.......................76

3.8.3. Синтаксический блок............................................79

3.8.4. Семантический блок............................................81

3.8.5. Генератор кода........................82

3.9. Выводы.............................84

Глава 4. Создание гибкой системы разработки программ

управления для промышленных контроллеров...........86

4.1. Разработка интегрированной среды..................86

4.1.1. Интерфейс взаимодействия с пользователем............86

4.1.2. Редактор...........................88

4.1.3. Транслятор....................................................90

4.1.4. Система отладки................................................91

4.2. Создание сервисных программ....................93

4.2.1. Программа "Конфигуратор" ......................................93

4.2.2. Программа формирования общего конфигурационного файла..........97

4.2.3. Программа "Библиотекарь"...................99

4.3. Создание библиотек прикладных функций...............100

4.3.1. Арифметические функции....................100

4.3.2. Функции обработки измерений..................106

4.3.3. Функции регулирования.....................110

4.4. Выводы.............................115

Глава 5. Результаты экспериментальной проверки и практического применения гибкой системы разработки программ управления для промышленных

контроллеров.........................116

5.1. Специфика архитектуры и операционной системы промышленных контроллеров серии ЭК-2000 ........................................116

5.2. Реализация конъюнктивного языка структурированного текста ....... 120

5.3. Реализация гибкой системы разработки программ управления

для промышленных контроллеров серии ЭК-2000 ........................123

5.4. Экспериментальная проверка реализованной системы при программировании промышленных контроллеров серии ЭК-2000 ..........129

5.5. Результаты внедрения и практического применения реализованной

системы при автоматизации производственных процессов........134

5.6. Выводы.............................135

Заключение.............................136

Библиографический список использованной литературы...........137

Приложение.............................143

ВВЕДЕНИЕ

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

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

Для эффективного создания прикладных технологических программ, их удаленной загрузки по сети в память ПК и проведения отладки стали широко применяться системы программирования, включаемые в автоматизированные рабочие места разработчиков прикладного ПО и, как правило, объединяющие пользовательский язык программирования (ЯП), транслятор ЯП, библиотеку прикладных функций, редактор, загрузчик и отладчик.

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

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

Единственным обобщением опыта разработки многофункциональных (т.е. предназначенных для решения задач дискретного и непрерывного управления, регулирования, вычислений) систем программирования является принятый несколько лет назад международный стандарт 1ЕС 1131-3 на языки для ПК. Системы программирования, реализованные в соответствии с рекомендациями данного стандарта, обеспечивают многофункциональность и наглядное представление программ за счет совместного использования нескольких ЯП. Однако введение нескольких ЯП затрудняет освоение и использование системы программирования, особенно непрофессиональными программистами. Включение нескольких ЯП усложняет также реализацию подобных систем программирования, что в конечном счете приводит к их достаточно высокой стоимости.

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

Задача, послужившая целью диссертационной работы, состоит в создании гибкой системы разработки программ (ГСРП) управления для ПК, базирующейся на единственном, но качественно новом ЯП и обеспечивающей многофункциональность, простоту освоения и использования, малую стоимость, а также большие по сравнению с извест-

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

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

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

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

На защиту выносятся:

- научно обоснованные требования к ГСРП;

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

- гибкая система разработки программ управления для ПК, построенная на базе конъюнктивного языка структурированного текста и наиболее полно удовлетворяющая всем поставленным требованиям;

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

Данная работа включает: введение; основную часть, состоящую из пяти глав; заключение; библиографический список и приложение.

В первой главе характеризуются область применения ПК; приводится их классификация; раскрывается место систем программирования ПК в иерархии ПО, применяемого в системах управления производством; рассматриваются общие и специфические задачи, решаемые прикладным ПО промышленных контроллеров; определяются и обосновываются требования, которым должна отвечать ГСРП. Далее проводится анализ известных отечественных и зарубежных программных продуктов на соответствие поставленным требованиям и формулируется задача настоящей работы.

Во второй главе формулируются и обосновываются концепция конъюнктивного языка структурированного текста, а также принципы построения на базе этого языка ГСРП, наиболее полно отвечающей поставленным в 1-й главе требованиям.

В третьей главе описываются конъюнктивный язык структурированного текста, а также компилятор этого языка, разработанные автором в соответствии со сформулированной во второй главе концепцией.

В четвертой главе описывается ГСРП, разработанная автором на базе конъюнктивного языка структурированного текста в соответствии со сформулированными во 2-й главе принципами ее построения.

В пятой главе раскрываются особенности архитектуры и операционной системы универсальных ПК серии ЭК-2000 и описывается реализация ГСРП для этих контроллеров. Далее приводятся результаты экспериментальной проверки реализованной ГСРП при программировании ПК серии ЭК-2000, а также результаты ее внедрения и практического применения при создании систем автоматизации.

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

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

Основные результаты исследований и разработок, итогом которых явилась данная диссертация, опубликованы в работах [3-6,26] и доложены на научно-технических конференциях Московского государственного университета леса (1996-1999 гг.).

ГЛАВА 1. ПОСТАНОВКА ТРЕБОВАНИЙ К ГИБКОЙ СИСТЕМЕ РАЗРАБОТКИ ПРОГРАММ УПРАВЛЕНИЯ ДЛЯ ПРОМЫШЛЕННЫХ КОНТРОЛЛЕРОВ

1.1. Область применения и классификация промышленных контроллеров

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

Годовой объем мирового рынка промышленных контроллеров составляет 200-300 тысяч единиц. Основными странами-производителями являются США (40%), Япония (20%) и Германия (15%). Что касается рынков сбыта, то примерно по 30% объема производства реализуется в США, Западной Европе и в дальневосточном регионе.

Промышленные контроллеры широко используются и в России. Причем, если раньше отечественные потребители ориентировались в основном на импорт, то изменение экономической ситуации в последнее время расширило потенциальный рынок российской продукции. На рис. 1 представлена структура российского рынка по отраслям потребления [47].

2

□ Автостроение (1) - 20%

□ Авиакосмическая промышленность (2) - 20%

□ Сельскохозяственное машиностроение (3) - 20%

□ Легкая промышенность (4) -12% И Станкостроение (5) - 10%

□ Электроника и электротехника (6) - 8%

■Добывающая и нефтеперерабатывающая промышленность (6) - 7%

□ Сельское хозяйство (8) -1% ■ Прочее (9) - 2%

Рис. 1.

На рис. 2 представлена классификация промышленных контроллеров.

Рис. 2.

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

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

Первый программируемый контроллер, появившийся в 1970-м году, был разработан по инициативе компании General Motors, имевшей целью получить устройство, ко-

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

Первые программируемые контроллеры появились в автомобильной промышленности и предназначались в основном для дискретного управления. Эти контроллеры, пришедшие на смену релейным и получившие название логических, представляли собой сравнительно простые средства управления, которые на основе входных данных посредством логических преобразований вырабатывали решение типа "включить/выключить". Другим распространенным классом программируемы�