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

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

Текст работы Булатникова, Инга Николаевна, диссертация по теме Автоматизация и управление технологическими процессами и производствами (по отраслям)

КУБАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ

УНИВЕРСИТЕТ

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

БУЛАТНИКОВА ИНГА НИКОЛАЕВНА

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

СИСТЕМ УПРАВЛЕНИЯ

Специальность 05.13.06 - автоматизированные системы управления

ДИССЕРТАЦИЯ на соискание ученой степени кандидата технических наук

Научный руководитель: к.т.н., профессор К. П. Частиков

Краснодар, 1999

Содержание

Введение...........................................................................................................4

!. Разностноитерацйокные алгоритмы - методологическая основа микропроцессорных систем управления......................................13

1.1. Роль алгоритмического обеспечения в современных

системах управления..................................................................................13

1.2. Целочисленныеразнскггно-итерационные алгоритмы........... ................14

1.3. Базовый разностно-итерационный алгоритм.........................................18

1.4. Примеры использования разкостно-итерационных

алгоритмов................................................................................................24

1.5. Преимущества разностно-итерационных алгоритмов...........................33

1.6. Выводы...........................................................V......................36

2. Математическое обеспечение АРМа.........................................................37

2.1. Применение аппроксимации Паде для реализации функциональных преобразований в МП................................................37

2.2. Обобщенный метод Ремеза.....................................................................41

2.2.1. О применимости аппроксимации Паде...............................................41

2.2.2. Алгоритмы равномерного приближения Паде...................................44

2.2.3. Специальное приближение Паде.........................................................52

2.2.4. Пример равномерной и специальной аппроксимаций Паде..............57

2.3. Нахождение аппроксимации Паде таблично - заданных функций....................................................................................................58

2.4. Определение коэффициентов базового РИА......................................... 61

2.4.1. Нахождение сдвиговых коэффициентов.............................................62

2.4.2. Выбор коэффициентов ....................................................................64

2.4.2.1. Графическое представление решения системы................................67

2.4.2.2. Графическое представление ограничений.......................................67

2.4.2.3. Учет ограничений по сходимости.......................................................70

2.5. Выводы....................................................................................................-.72

3. Программный комплекс и сценарий работы АРМа...................................74

3.1. Основные принципы и инструментарий разработки программного комплекса «Будат-02».......................................................74

3.2. Сценарий работы АРМа...........................................................................76

3.2Л. Сцена «Анализ способа задания и ввод функции»...............................78

3.2.2. Сцена «Расчет коэффициентов аппроксимации Паде».........................79

3.2.3. Сцена «Выбор коэффициентов,?, к, р».................................................80

3.2.4. Сцена «Специальная аппроксимация Паде»......................................... Я1

3.2.5. Сцена « Определение коэффициентов алгоритма»................................81

3.2.6. Сцена «Исследование работоспособности алгоритма»..........................87

3.3. Программный комплекс АРМ «БУЛАТ-02»............................................88

3.4. Особенности программной реализации разностно-итерационных алгоритмов на МП...........................................95

3.5. Вывода........................................................................................................98

4. Экспериментальные исследования работоспособности

и эффективности АРМа «БУЛАТ-02».......................................................100

4.1. Первая функция........................................................................................100

4.2. Вторая функция........................................................................................107

4.3. Третья функция...........................................................................................П1

4.4. Скоростные характеристики АРМа.........................................................115

4.5. Выводы.......................................................................................................116

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

Список использованных источников..............................................................120

Приложение I...................................................................................................124

Приложение 2...................................................................................................Л 7}

Введение

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

Наиболее ярко эта тенденция в развитии информационных технологий на базе ПК проявилась в создании автоматизированных рабочих мест (АРМ) для конкретных специалистов, например, проектировщиков средств управления.

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

программирования. Это отмечает В.В. Сташин в предисловии к книге /3/.

Машинная реализация многих управляющих процедур, выполняющихся в современных автоматизированных системах управления технологическими процессами (АСУ ТЩ из аппаратной все чаще превращается в программную. Однако, тут есть одна особенность. Мшфопроцессоры стали применять широко к там, где до них вычислительная техника еще не применялась из-за своей дороговизны, поэтому на первое место выдвигалось требование простоты (дешевизны,

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

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

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

Разрешение этого противоречия и создание детерминированных методик разработки алгоритмов для микропроцессорных систем автоматизации состоит в реализации тезиса, высказанного Н.П. Брусенцовым /4/: «Многие трудности использования цифровых машин как математического инструмента не существуют или резко ослаблены в случае, когда машина используется как инструмент кибернетический, т. е. как автомат, систематически корректирующий свою деятельность при помощи обратной связи от обслуживаемых им объектов».

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

("цифра за цифрой" - отсюда название этих алгоритмов в зарубежной литературе).

Такие разностно-итерационные алгоритмы являются максимально ориентированными на микропроцессорную реализацию, так как не содержат умножения, деления и других так называемых "длинных*' операций, не ведут к накоплению погрешностей при их работе.

Впервые они были предложены в 50-60 годах американскими математиками Волдером и Меджигом /5,6/. Затем много других авторов развивали и совершенствовали разностно-итерационные алгоритмы: Взисли /7/, Фразер и Харт /8/, Горман и Раамот /9/, Эрцеговак /10/ и др., в том числе отечественные ученые: A.M. Оранский, В.Б. Смолов, В.Д. Банков, А.Л. Рейхенберг. Е.И. Духнич, А.В. Каляев, Н.С. Анишин, А.П.Частиков.

Следует отметить, что первые применения ралносшо-итерационных алгоритмов касались аппаратной реализации (спецвычислители), так как количество вычисляемых ими функций (sin х, cos х, In х, arctg у/х, ех и т.п.) бьгло ограничено (порядка двух десятков тригонометрических, логарифмических и показательных функций).

В более поздних разработках, приходящихся по времени на широкое распространение МП, стали встречаться программные реализации та базе микропроцессоров /11-15/. Однако, класс реализуемых функций был ограничен (см. выше), они не допускали суперпозиций функций и не включали в себя функций, заданных таблично.

В работах /16,17/ эти ограничения были сняты, а в /18/ предлагалась методика разработки разностно-итерационных алгоритмов для

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

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

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

Цель работы. Разработка принципов построения автоматизированного рабочего места (АРМ) разработчика алгоритмов для микропроцессорных систем управления.

Задачи исследования. Определить возможность и найти пути автоматизации трудоемкого и эвристического по своей сущности процесса разработки алгоритмов. Для этого необходимо также разработать и исследовать достоверность математического обеспечения и эффективность программного комплекса. Кроме того, на заключительном этапе необходимо провести пробную эксплуатацию АРМ в реальных условиях использования в проектных, научно-исследовательских организациях и в учебных заведениях. Также предусмотрено отсутствие специального обучения работы на АРМе. Все решения разработчика должны происходить в режиме диалога (ответов на поставленные вопросы с набором готовых ответов).

Методы исследования. На основе системного подхода к организации процесса разработки алгоритмов вручную /18/, использования основных положений математического анализа, методов вычислительной математики и принципов организации вычислительных процессов на ЭВМ нами

разработаны математическое обеспечение и программный комплекс АРМа «БУЛАТ-02», включающие следующие основные алгоритмы и программы:

- исследования заданной функции;

- нахождения равномерной аппроксимации Паде заданной функции /19/; -нахождение специальной аппроксимации Паде (с наперед заданным

отношением коэффициентов);

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

-проверка выполнения условий ограничений по представимости констант, итерируемых величин и сходимости алгоритма;

-исследование погрешностей полученного алгоритма с демонстрацией гистограмм ошибок;

- графическое отображение блок-схемы разработанного алгоритма.

Кроме того, все эти программы связаны диалоговой программой,

ведущей по некоторому сценарию процесс разработки. Все эти программы написаны в инструментальной среде Visual Basic как наиболее адаптированной для научного диалога в цифро-графической форме.

АРМ разработчика алгоритмов не требует от оператора знаний математического анализа и оставляет за ним выбор хода и принятия решения в виде нажатия одной из двух, кнопок рядом с двумя приготовленными ответами. АРМ содержит элементы обучения оператора в виде ремарок и пояснений, выводимых на экран монитора. В частности, предусмотрен возврат процесса разработки в начало при неудачном (или ошибочном) ответе на очередном ходе разработчика.

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

АРМа на базе персонального компьютера. В этом состоит теоретическая значимость диссертационного исследования.

~ Прикладная ценность полученных результатов состоит в создании прецедента автоформализации профессиональных знаний в области разработки алгоритмического обеспечения микропроцессорных систем управления, а также в создании эффективно работающего программного комплекса «БУЛАТ-02» (АРМ разработчика алгоритмов). Комплекс легко устанавливается на любом персональном компьютере с операционной системой «\VINDOWS-3.X», «ЖЮО\¥8-95».

Достоверность научных положений, выводов и практических рекомендаций обусловлена корректным использованием методов математического анализа, вычислительной математики, теорий информации, математической статистики, принятия решений и системного подхода к решаемым проблемам. Достоверность подтверждена работоспособностью и эксплуатацией АРМ «БУЛАТ-02» (служащего для разработки алгоритмов для микропроцессоров).

Практическая ценность. Разработано АРМ разработчика алгоритмов функционального преобразования. для микропроцессорных систем управления «БУЛАТ-02». Оно представляет собой компьютерную систему (кроме персонального компьютера), оснащенную специальным программным обеспечением. Этот программный комплекс представляет собой пакет, специально разработанных нами программ, управляемых ведущей программой (сценарием). Она же организует диалоговый режим с оператором-разработчиком.

АРМ «БУЛАТ-02» (программная часть) представлено в виде дистрибутива на двух дискетах. Весь программный комплекс для своей установки требует 4.2 Мб (с учетом специальных библиотек). Интерфейс спроектирован для ПК с минимальным объемом оперативкой памяти 4Мб, с

установленной операционной системой «WWDOWS-■3.X» или «'Р/ШВО'^З-95», для монитора с разрешением 800 х 600 пикселей и объемом видео -памяти м^ лоаит.

Реализация результатов работы. Результаты работы внедрены (в виде АРМа «БУЛАТ-02») в СПКБ «Промавтоматика» при разработке программного обеспечения микропроцессорных средств локальной автоматики, в системе автоматизированного контроля за содержанием основных компонентов винного сусла ООО «Совхоз Горный». Результаты исследований используются в учебном процессе Куб.ГТУ.

Апробация работы. Основные этапы работы неоднократно докладывались и обсуждались на научных семинарах кафедры прикладной математики и программирования Ростовского государственного университета (Ростов на Дону) и кафедры прикладной математики Куб.ГТУ (г. Краснодар). Материалы диссертации докладывались на Второй международной конференции «Электронизация агропромышленного комплекса» (1991 г., г.Краснодар) и на Четвертой международной конференции «Графикон» (1995 г., г.Санкт-Петербург).

Публикации. По теме диссертации опубликовано 13 печатных работ, в том числе 2 депонированные статьи в ВИНИТИ, а также одно изобретение.

Основные положения, выносимые на защиту: Ш принципы построения и организации работы АРМа разработчика алгоритмов для микропроцессорных систем управления;

■ аналитические исследования и их результаты, создавшие предпосылки разработки математического обеспечения АРМа.

■ методы и приемы математической обработки исходных данных (вид функции, диапазон изменения аргумента, таблицы функции и т.п.), составляющие алгоритмическую основу программного обеспечения АРМа.

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

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

быстродействие и сходимость, В программный комплекс (пакет подпрограмм), составляющий ядро АРМа «БУЛАТ-02».

Структура и объем работы. Диссертационная работа состоит из введения, четырех разделов (глав) и заключен!«, изложенных на 123 страницах.

Кроме того, работа содержит 6 рисунков, 5 таблицы, библиографию из 41 наименований на 4 страницах и 2 приложения на 76 страницах.

В первой главе рассмотрена и проанализирована роль разностно-итерационных алгоритмов (РИА), которые представляют собой методологическую �