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

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

Вид окна задачи после задания всех параметров показан на рисунке 3.

После того как все параметры заданы, пользователь активизирует пункт "Решить" меню "Решение" и получает решение задачи (рис. 4).

Рис.4. Окно отображения результата решения задачи

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

Список литературы

1. Sebastian H.-J., Intelligent support systems, Proceedings of EUFIT'93 (Sept. 7-10, 1993, Aachen, Germany) 299-307.

2. Язенин А.В. Методы оптимизации и принятия решений при нечетких данных: Дис... докт. физ.-матем. наук: ТГУ -Тверь, 1995.

3. Wang Xizhao, Ha Minghu. Note on maxmin ц/E estimation // Fuzzy Sets and Systems. 1998, №94, pp. 71-75.

4. Язенин А.В. К задаче максимизации возможности достижения нечеткой цели// Изв. АН РФ. Теория и системы управления. - 1999. - №4. - С. 120-123.

5. Гольштейн Е.Г, Юдин Д.Б. Новые направления в линейном программировании. - М., Сов. радио. - 1966.

ПРИМЕНЕНИЕ СИМВОЛЬНЫХ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ В ЗАДАЧАХ МОДЕЛИРОВАНИЯ ЭЛЕКТРОННЫХ УСТРОЙСТВ

В.М. Курейчик, Л.А. Зинченко, М.В. Тарасенко

Поиски путей интеллектуализации САПР электронной аппаратуры [1] приводят к необходимости использования символьных методов схемотехнического моделирования. Это объясняется тем, что инженер-разработчик владеет как численными, так и символьными методами расчета характеристик электронных устройств. В отличие от естественного интеллекта развитие систем автоматизации схемотехнического моделирования в основном было сконцентрировано на использовании численных методов. Их существенным недостатком является возможность получить решение только в численном виде при задании конкретных параметров схемы и внешнего воздействия, что позволяет решить только задачу анализа характеристик конкретной схемы. Полученная модель оказывается неприменимой при изменении одного из параметров, что приводит к необходимости многократного расчета характеристик схемы при различных параметрах. При проектировании необходимо установить соотношения между параметрами схемы и заданными функциональными характеристиками. Для установления связи между заданными эксплуатационными характеристиками и необходимыми параметрами и топологией электронного устройства разработчик вынужден выполнять большое количество итерационных расчетов различных вариантов решения, что приводит к значительным материальным и временным затратам и снижает конкурентоспособность разрабатываемого изделия.

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

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

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

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

Системы компьютерной алгебры в настоящее время являются первыми доступными примерами

13

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

Существующие пакеты моделирования линейных электрических цепей, написанные на языках REDUCE, MATHEMATICA [2], отличаются использованием неэффективных алгоритмов. Электрическая цепь представляется в виде графа, и это описание используется затем для построения матрицы ин-циденций, разбиения схемы на независимые контуры, для выбора контурных токов в качестве независимых переменных, вычисления гибридных параметров через определители. Эти алгоритмы требуют значительных вычислительных затрат при определении дерева графа и вычислении определителей.

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

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

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

В связи с тем что при моделировании линейных схем в режиме малого сигнала [4] в качестве входного воздействия может быть выбрано напряжение или ток, при моделировании электронных схем необходимо определить входные полюса как входы по току или напряжению. В результате исходная схема должна быть преобразована к одному из видов рисунка 1.

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

На основе изложенных алгоритмов разработана программа Electro Vision [5]. Она реализована на языке Borland C+ с использованием в качестве технологической поддержки системы компьютерной алгебры MAPLE. Для обеспечения конкуренции пакета с существующими схемотехническими САПР был разработан удобный визуальный интерфейс. При запуске приложения на экране появляется главное окно программы. Оно объявлено как окно типа MDI (Multiple Dialog Interface), что позволяет пользователю работать более чем с одной схемой одновременно. Каждая вновь открытая или созданная схема открывается в отдельном окне, которое является дочерним по отношению к главному окну программы.

При помощи кнопок, расположенных на главной инструментальной панели управления, может быть создана новая или открыта ранее сохраненная схема. При открытии схемы из файла появляется диалоговое окно "Открытие файла", которое, помимо прочих своих возможностей, позволяет указать, какой именно тип файлов необходимо отображать при просмотре папок. По умолчанию этот параметр установлен в "Electro Vision files *.evc". Открытие схемы из файла или создание новой схемы может быть также выполнено при помощи соответствующих пунктов меню "Файл".

Набранная схема может быть сохранена на диске при помощи кнопок главной панели управления. Если записываемая схема является новой, пользователю предоставляется возможность ввести имя набранной схемы и путь, по которому она должна располагаться. При работе со схемой, которая уже имеется на диске, этот вопрос задаваться не будет. Как и открытие схемы, данную операцию можно провести при помощи меню "Файл". Для ситуации, когда требуется сохранить схему, копия которой уже существует на диске, под новым именем, существует пункт меню "Файл"/"Сохранить как...", в случае активации которого пользователь, как и при записи новой схемы, может указать новое имя и путь к файлу.

ф

а

ф

*

б Рис. 1

14

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

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

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

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

По введенной схеме после выполнения проверки корректности схемы может быть составлена система уравнений в символьном виде. Для этого необходимо нажать кнопку главной инструментальной панели с изображением символа запуска магнитной ленты либо воспользоваться пунктом меню "Расчет"/"Вычис-ление". При этом в первую очередь будет запущен анализатор, который проверит схему на наличие ошибок. В частности, для схемы не могут быть составлены уравнения, если она, например, не содержит ни единого элемента, если в ней не указанны входные и выходные узлы, если в схеме присутствуют элементы с несоединенными полюсами или если в ней присутствует более чем один узел с нулевым потенциалом. Если в набранной схеме не обнаружено ошибок ввода, то далее будет запущен программный модуль формирования уравнений, который, основываясь на введенной пользователем схеме, сформирует систему уравнений. Для просмотра сформи-

рованной системы уравнений используется объект TRichEdit, который располагается в том же дочернем окне, что и анализируемая схема. Часть окна, служащая для просмотра уравнений, отделена от области редактирования при помощи сплиттера. Если в момент поступления заявки на формирование и просмотр уравнений область просмотра была полностью скрыта, то она плавно "выплывает" с правой части экрана, потесняя при этом часть окна, предназначенную для редактирования. Пользователю предоставлена возможность при помощи сплиттера менять размеры редактируемой области и области просмотра уравнений. Для того чтобы вновь полностью скрыть область просмотра, пользователь может вызвать всплывающее меню, щелкнув правой кнопкой мыши и выбрав пункт "Скрыть", либо дважды щелкнуть по сплиттеру.

Если формирование системы уравнений прошло успешно, пользователю предоставляется возможность преобразовать полученный результат к виду, который воспринимается пакетом символьных вычислений MAPLE. Эта операция может быть выполнена либо через пункт "Electro Vision<->Maple V" всплывающего меню области просмотра уравнений, либо при помощи пункта меню "Вычисле-ния''/''Electro Vision<->Maple V" главного окна программы. К полученным уравнениям добавляются команды, понятные MAPLE, служащие для их решения.

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

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

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

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

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

• процессор AMD 5x86wb-P75 (197 MIPS, 40 MFLOPS);

• оперативная память 16/12Mb (70 ns);

• тактовая частота процессора 160/80MHz;

• операционная система Windows 95 (Version 4.00.1111).

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

На графиках рисунка 2 представлены результаты тестирования, отражающие зависимость между временем выполнения операции формирования уравнений программой Electro Vision и количеством узлов n введенной схемы при объеме оперативной памяти 16 Mb.

Время [c] 60

50

40 -

30 -

20

10 -\

0

80 MHz

160MHz

"П-1-1-Г"

5 10 15 20

Время [c] 80

160MHz

80MHz

5 10 15 20

Рис. 3. Результаты тестирования при оперативной памяти 16 Мб

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

160MHz -*-80MHz Время [с] 14.12-10 8 6 4-2 0

10 15 20 п

Решение сформированной системы уравнений выполняется пакетом символьных вычислений Maple. Зависимость между временем решения сформированной системы пакетом Maple и размерностью этой системы уравнений представлена на рисунке 3, а - при объеме оперативной памяти 16 Mb, на рисунке 3, б - 12 Mb.

Учитывая особенности метода формирования уравнений, можно предположить, что при увеличении размерности схемы будет происходить линейное увеличение времени, требующегося для ее анализа, что и подтверждается приведенными графиками. Из графиков рисунка 2 видно, что с линейным ростом числа узлов схемы наблюдается линейный рост времени, необходимого для формирования уравнений пакетом Electro Vision. Время, требуемое для их решения в пакете символьных вычислений Maple, растет при этом экспоненциально (рис. 3).

Изменение количества оперативной памяти практически никак не сказывается на времени вычислений, производимых программой Electro Vision, так как блок формирования уравнений не требует для своей работы больших ее объемов. Пакет Maple более критичен к объемам оперативной памяти. С ее уменьшением с 16 до 12 Mb при моделировании схем, содержащих 20 узлов, он требует для решения системы уравнений почти в 1,4 раза больше времени.

Кроме того, из графиков видно, что изменение тактовой частоты процессора приводит к замедлению времени работы обоих пакетов, при этом тактовая частота меняет свое значение в 2 раза, а изменение скорости вычислений варьирует в пакете Electro Vision в 1,5-2 раза, а в пакете Maple в 1,6-3,2 раз.

Как видно из графиков, операция формирования системы уравнений и ее решения в худшем случае занимает не более 1,5 минуты, при этом решение составляет 80% временных затрат.

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

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

Анализ представленных графиков позволяет сделать вывод, что особенно эффективность релак-

n

а

n

б

16

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

Для схем большой размерности достигаемый выигрыш по временным затратам оценивается выражением при равномерном разбиении на уровни вложенности

вп

» O(1/Le L ),

где в - константа, зависящая от выбора аппаратных средств.

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

» O(een/ £epmk). k=1

Временные затраты при моделировании схемы, описываемой системой из 14 уравнений, составили 7.8 сек. При использовании двухуровневого алгоритма вложенности при неравномерном разбиении модели на две подсхемы, описываемые системами уравнений из 5 и 9 уравнений соответственно, время

моделирования уменьшилось до 4.4 сек, что в 1,7 раза меньше.

Обобщая вышеизложенное, можно сделать следующие выводы:

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

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

Список литературы

1. Курейчик В.М. Генетические алгоритмы. Таганрог, ТРТУ.

- 1999. - 320 с.

2. Бухбергер Б. и др. Компьютерная алгебра. - М.: Мир, 1986.

- 392с.

3. Влах И., Сингхал К. Машинные методы анализа и проектирования электронных схем. - М.: Радио и связь, 1988. - 560с.

4. Глушань В.М., Зинченко Л.А. Математическое и компьютерное моделирование электрических цепей в режиме малого сигнала. - Таганрог, ТРТУ, 1999. - 107 с.

5. Зинченко Л.А., Тарасенко М.В. Программа символьного моделирования электрических цепей, № Гос. регистрации 990296 в ФИПС. - 20 с.

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

А.Н. Горитов

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

В соответствии с этим можно сформулировать основные задачи, которые должна решать система автоматизированного моделирования и проектирования, а именно:

• синтез исполнительного механизма РТК;

• прямая и обратная задачи кинематики;

• прямая и обратная задачи динамики;

• планирование выполнения технологических операций;

• синтез законов управления (как для транспортных операций, так и для контурного управления);

• анализ пространственного расположения робота во время функционирования по заданному или синтезированному закону управления.

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

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

Методологические основы, на которых базируется система моделирования, рассмотрены в [1]. Данный подход позволяет создать программный продукт, способной исследовать РТК с произвольной конструкцией исполнительного механизма. Обобщенная структура системы автоматизированного моделирования РТК приведена на рисунке 2. Система организована по модульному принципу. Ее можно представить как управляющее ядро системы, взаимодействующее с модулями системы моделирования. По функциональному признаку в системе моделирования можно выделить пять основных блоков:

17