Алгоритм расчета показателя РФН
Метод определения показателя РФН, изучаемый в данном пособии, заключается в анализе значимости структурных элементов и основан на теории графов и матриц. Краткие сведения о теории графов можно получить в [2]. 1. Структурная схема исследуемой системы представляется в виде ориентированного графа , где множество вершин составляют структурные элементы системы, а множество ребер отображает связи между ними. Для геометрического представления ориентированное ребро показывается в виде дуги со стрелкой, направление которой совпадает с направлением потока энергии или информации между соединяемыми вершинами. Рассматриваются только связные графы, в которых для любой пары вершин существует соединяющий их путь. 2. Для построенного графа формируется матрица смежности . Пусть структура системы содержит вершин , соединенных ребрами . Тогда получаем матрицу размером , которая состоит из нулей и единиц. Элемент матрицы , если граф содержит ребро , направленное от вершины к -му узлу. В противном случае принимается, что . Число единичных элементов в матрице будет равно числу ребер. 3. Определяем матрицу по следующей формуле:
где - матрица смежности.
4. Ранг элемента определяется как сумма элементов -й строки матрицы :
5. Показатель РФН для структурного элемента определяется выражением:
Из формулы следует, что значение этого показателя определяется в процентном соотношении и нормализуется таким образом, что сумма показателей РФН всех элементов системы единична для любого исходного графа, т.е. Такая нормализованная форма удобна для сравнительного анализа распределения функциональной нагрузки в системах различной сложности и с различными типами структуры.
6. Расчет общего показателя РФН группы элементов, входящих в определенную подсистему , производится суммированием показателей РФН составляющих элементов. Например, если заданная группа состоит из элементов, тогда показатель РФН группы получается как сумма показателей:
Для оценки функциональной нагрузки целесообразно определить значение показателя РФН для элементов данной группы:
7. Ранжирование элементов мехатронной системы производится на основе значений их показателей РФН и делается заключение о распределении функциональной нагрузки в исследуемой системе.
Пример Представленную методику расчета показателя РФН рассмотрим на примере одного варианта системы управления робота "PUMA-560". Структура исследуемой системы (рис. 1) включает в себя как управляющую подсистему (контроллер движения), так и электромеханическую часть (электродвигатель и фотоимпульсные датчики обратной связи), которая будет неизменной при выполнении всего анализа.
Рис.1. Структура системы управления робота «PUMA-560»
1. Построим граф , представляющий структурную модель рассматриваемой системы (рис. 2).
Рис. 2. Граф, представляющий структурную модель системы
2. Для графа составим матрицу смежности :
Дальнейший расчет будет проводиться на компьютере с использованием языка Python[1] [3, 4] и библиотеки NumPy[2]. Python – это мощный и простой в использовании мультипарадигменный язык программирования позволяющий решать самые разные задачи от простых сценариев (скриптов) до сложных научно-технических задач. В состав Python входит большое число функциональных возможностей, известных как стандартная библиотека. Кроме того, Python допускает расширение как за счет ваших собственных библиотек, так и за счет библиотек, созданных сторонними разработчиками. Одним из таких расширений является NumPy – библиотека численных вычислений, позиционируемая как свободный и более мощный эквивалент системы математических вычислений Mathlab. Для работы необходимо запустить программу IDLE[3]. Когда Python установлен в Windows, его можно найти в меню Пуск (Start). Набор пунктов меню может немного отличаться в зависимости от версии, но пункт IDLE запускает среду разработки с графическим интерфейсом, а пункт Python запускает сеанс работы с интерактивной командной оболочкой (консолью). Кроме того, здесь можно увидеть пункты вызова стандартного справочного руководства - Python Manuals.
Чтобы использовать функции NumPy нужно импортировать соответствующую библиотеку, выполнив команду:
Введем матрицу в компьютер:
3. Определим матрицу по формуле (1):
4. Определим ранг структурных элементов по формуле (2):
5. Определим показатель РФН:
|