Текст
                    jJUJ
РОБОТОТЕХНИКА
И ГИБКИЕ
АВТОМАТИЗИРОВАННЫЕ
ПРОИЗВОДИ
5 Моделирование
робототехнических
систем и гибких
автоматизированных
производств

Робототехника и гибкие автоматизированные производства 2 3 4 © 5 Системные принципы создания гибких автоматизированных производств Приводы робототехнических систем Управление робототехническими системами и гибкими автоматизированными производствами Вычислительная техника в робототехнических системах и гибких автоматизированных производствах Моделирование робототехнических систем и гибких автоматизированных производств 6 Техническая имитация интеллекта Г ибкие автоматизированные производства в отраслях промышленности 8 Основы построения систем автоматизированного проектирования гибких производств 9 Лабораторный практикум по робототехнике
Моделирование робототехнических систем и гибких автоматизированных производств Допущено Министерством высшего и среднего специального образования СССР в качестве учебного пособия для студентов технических вузов 5 Москва Высшая школа 1986
ББК 32.816 Р58 УДК 621.38(62—52) С. В. Пантюшмн, В. М. Назаретов, О. А. Тягунов, В. П. Хаидуков. А. В. Кульба, В. И. Ситников Рецензенты: кафедра «Робототехнические системы» Московского высшего техниче- ского училища им. Н. Э. Баумана (зав кафедрой чл.-кор. АН СССР Е П Попов); акад. АН СССР С. В. Емельянов (Международный научно-исследовательский институт проблем управления) Робототехника и гибкие автоматизированные Р58 производства. В 9-ти кн. Кн. 5. Моделирование робототехнических систем и гибких автоматизиро- ванных производств: Учеб, пособие для вту- зов/С. В. Пантюшин, В. М. Назаретов, О А. Тягу- нов и др.; Под ред. И. М. Макарова. — М.: Высш, шк., 1986. — 175 с.: ил. В пособии рассмотрены кинематика и динамика манипуляторов произвольной структуры, методы исследования движения манипулято- ров на ЭВМ; программные средства реализации задач моделирования манипуляционных роботов; принципы и аппарат моделирования про- изводственных систем, а также особенности ГАП как объекта мо- делирования; модели элементов ГАП, технические и программные средства их реализации. 2404000000— 499 001(01)—86 КБ—11 —12—86 ББК 32.816 6 ФО.1 С Издательство «Высшая школа», 19^0
ВВЕДЕНИЕ Любая исследовательская, проектная, управленческая деятельность в определенной мере связана с моделиро- ванием. Чертеж детали, проект станка или производст- венного участка, макет самолета или здания, системы уравнений, описывающих технологический процесс или движение кинематического механизма, — все это модели объектов изготовления, строительства и управления. Основой моделирования является теория подобия, ко- торая утверждает, что абсолютное подобие моделируе- мого объекта и модели может иметь место лишь при за- мене изучаемого объекта точно таким же. В практике моделирования к абсолютному подобию не стремятся. Более того, попытка как можно более полно отразить свойства и характеристики сложного объекта приводит к чрезмерному росту сложности модели, что существенно снижает ее практическую полезность. Поэтому централь- ной проблемой моделирования является разумное упро- щение модели, т. е. выбор необходимой и достаточной степени ее подобия объекту моделирования. Вопросы подобия подробно рассмотрены в [1|. Многообразие объектов, целей и задач моделирова- ния породило множество различных типов моделей. В данной книге рассматриваются только математиче- ские модели. Математическое моделирование — это процесс установления соответствия между реальным объектом и некоторой математической конструкцией, на- зываемой математической моделью. Выбор математического аппарата для построения мо- дели зависит как от природы и свойств моделируемого объекта, так и от характера решаемой задачи. В данной книге рассматриваются два основных объекта моделиро- вания: манипуляционные роботы и технологическая под- система гибкого автоматизированного производства. Ма- тематическим аппаратом моделирования динамики ма- нипулятора является теория дифференциальных уравне- 5
ний. Для знакомства с материалами книги, посвященными этому вопросу, достаточно знания вузовского курса тео- рии дифференциальных уравнений. Элементы дискретной оптимизации, теории систем массового обслуживания, а также специального раздела теории сетей (сети Петри), которые используются при моделировании производст- венных систем, изложены кратко в гл. 4, так как они не всегда включаются в программы соответствующих вузов- ских курсов. В написании учебного пособия принимали участие: С. В. Пантюшин — гл. 1 и 2; О. А. Тягунов — гл. 3; А. В. Кульба, В. М. Назаретов, В. И. Ситников, В. П. Хай- дуков — гл. 4, 5.
ГЛАВА КИНЕМАТИЧЕСКИЕ МОДЕЛИ МАНИПУЛЯТОРОВ Манипуляционный робот, или манипулятор, представляет собой устройство, воспроизводящее ряд функций, ана- логичных функциям рук человека, которые осуществля- ются в процессе его трудовой деятельности. Естественно, что это устройство нельзя отделить от тех или иных автоматов, которые могут выполнять аналогичные функ- ции. Будем считать, что в отличие от «обычных» автома- тов манипуляционный робот характеризуется более ши- рокими возможностями в выполнении тех или иных задач за счет гибкой перестройки его системы управления и исполнительного механизма. 1.1. Кинематические цепи манипуляторов Манипулятор состоит из звеньев, соединенных между собой определенным образом. Одно звено является осно- ванием (базой), относительно которого осуществляется отсчет перемещения и ориентации звена, представляю- щего собой рабочий орган манипулятора. Группа звень- ев, соединяющих его с основанием, образует кинемати- ческую цепь манипулятора. Два соседних звена состав- ляют кинематическую пару, число степеней свободы кото- рой определяется числом независимых движений одного звена пары относительно другого. В большинстве слу- чаев звенья манипуляторов образуют кинематические пары пятого класса, в которых относительное движение звеньев определяется одним параметром: углом поворота или перемещением. В первом случае (угол поворота) имеет место пара вращательного типа, во вто- ром (перемещение) — поступательного. Приведем краткую сводку типовых кинематических пар и их обозначений [1| в табл. 1.1. Все пары, кроме последней, характеризуются одной степенью свободы. Пара «шаровой шарнир» имеет три степени свободы и может рассматриваться как совокуп- 7
Таблица 11 ность трех кинематических пар вращательного типа с одной степенью свободы у каждой. На рис. 1.1 приведены схемы простейших манипуля- торов. перемещающих захватное устройство С в плоско- сти (рис. 1.1, а, б) ив пространстве (рис. 1.1, в, г). Кине- матическая цепь манипулятора (рис. 1.1, а) состоит из двух звеньев, образующих с основанием и между собой кинематические пары вращательного типа; положение захватного устройства на плоскости и конфигурация механизма определяются двумя углами — q\ и В трех- звенных манипуляторах (рис. 1.1,6, в) звенья /, 2, 3 так- же образуют между собой и с неподвижным основанием кинематические пары вращательного типа; конфигурация механизма и положение захватного устройства опреде- ляются тремя углами — q\t q2, q$. В манипуляторе (рис. 1.1, г) звенья /, 2 образуют с основанием и между собой две пары вращательного типа, а звенья 2 и 3 — поступательную пару; положение захватного устройства и конфигурация механизма определяются двумя угла- ми — qit q2 и перемещением <73. На рис. 1.2 представлена кинематическая схема манипулятора типа РПМ-25. Его конфигурация, а также положение и ориентация захват- ного устройства С определяются шестью углами qt («=1, 2....6). Во всех приведенных примерах кинематические цепи состояли из пар пятого класса; в результате число сте- пеней свободы каждого из них было равно числу звеньев. В большинстве других случаев кинематические цепи 8
Рис. 1.1. Кинематические цепи двух и трехзвенных манипуляторов Рис I 2 Кинематическая цепь шестизвенного манипулятора манипуляторов также могут быть сведены к совокупности пар пятого класса, так как к парам этого типа путем декомпозиции приводятся пары более сложного вида. Таким образом, можно дать определение обоб- щенных координат манипулятора — независи- 9
мых переменных, полностью задающих его конфигурацию в пространстве. В приведенных примерах этими пере- менными были углы и перемещения ^(/=1, 2, ...). В ка- честве qt можно принять и другие величины. Например, для рис. 1.1,а Xi, Х2 — абсциссы центров соединения звеньев / и 2 захватного устройства или углы q\ и </£ от- считываемые от направления оси Ох, и т. д.; для рис. 1.1,6 — это Xi, Х2, хз и т. д. Таких совокупностей различ- ных переменных, которые могут быть приняты за обоб- щенные координаты, может быть очень много. В боль- шинстве случаев при описании движения механических систем в качестве qt нецелесообразно выбирать именно декартовы координаты точек ее элементов [4], так как при этом соотношения, характеризующие движение, по- лучаются наиболее сложными и неудобными для реше- ния практических задач. Кроме того, на выбор влияет множество факторов, каждый из которых в том или ином конкретном случае может иметь решающее значение. Одним из них является фактор близости qt к реальным физическим величинам, регулируемым системой управле- ния. Так, удобство выбора в качестве q переменных, показанных на рис. 1.1 и 1.2, состоит в том, что они совпадают с углами относительных поворотов звеньев, т. е. в определенном масштабе с углами поворота валов двигателей управления. В общем случае для описания движения манипуля- тора могут быть использованы / переменных qi(i = = 1, ..., /), число которых не равно числу степеней сво- боды п. Значение п зависит от числа связей между точками звеньев Эти связи могут быть голономными (позиционными, геометрическими) и неголономными (скоростными). Голономные связи определяют зависимости между координатами точек тел системы и записываются в виде ... qn\ 0=0, /=1....т. Эти равенства называются уравнениями связей. Голономные связи могут быть стационарными, если время t не входит в уравнения связей, в ином случае — они нестационарные. Неголономные связи определяют зависимо- сти между скоростями точек тел системы, не сводя- щиеся (путем интегрирования) к зависимостям между ю
координатами этих точек, т. е. к голономным связям. Уравнения неголономных связей имеют вид При наличии т голономных и т' неголономных связей число степеней свободы системы п определяется очевидным равенством п = 1 — (т + т'). Для описания движения механических систем кроме обобщенных координат используют также обобщен- ные скорости q н ускорения q, представляю- щие собой первую и вторую производные по времени от обобщенных координат. Эти переменные позволяют за- писать скорость и ускорение произвольной точки системы в виде разложений по qt и qlt т. е. представить их как функции обобщенных координат, скоростей и ускорений и свести задачу определения движения к задаче анализа и синтеза функций от переменных qit qt, qt. 1.2. Уравнения кинематики манипуляторов Будем считать звенья манипулятора (звенья исполни- тельного механизма) со всеми закрепленными на них элементами твердыми телами и рассматривать манипу- лятор как механическую систему, для которой справед- ливы основные положения механики твердого тела. Кинематические соотношения, определяю- щие положение, скорость и ускорения звеньев манипу- лятора без учета воздействия управляющих сил и мо- ментов, можно получить, рассмотрев движение каждого звена как твердого тела с учетом связей между ними. Матрицы положения и ориентации звеньев. Положе- ние твердого тела в пространстве может быть задано шестью независимыми величинами, например: тремя координатами хо*, у0’, г<>- какой-либо точки О' тела и тре- мя углами, характеризующими ориентацию системы осей O'x’y'z', связанных с ним, относительно неподвижной системы Oxyz. Эти углы удобнее всего задавать с по- мощью матрицы направляющих косину- сов х у z х'Гап Ц|2 ап «21 «22 «23 . азг азз. 11
Элемент as* этой матрицы представляет собой проек- цию единичного вектора if системы осей O'x'y'z' на на- правление ц системы Oxyz, т. е. скалярное произведение векторов if и ц: «sjk = if-i*, s, k= 1, 2, 3. С учетом взаимной ортогональности систем векто- ров ii, i2, h и if, i$, Ц нетрудно записать шесть соотноше- ний, связывающих между собой девять косинусов: «П + «12 + «?3 = I *» «11«21 + <Х|2(122 + (113(123 = 0; «?1 + «22 + «23 = I ; «21 «31 + (122(132 + «23(133 = 0; «31 + «32 + «33= I «31 «11 + «32«12 + «33«13 = 0. (1.1) В результате из девяти элементов матрицы а лишь три являются независимыми величинами. Переменные хо*, уо\ z>' и матрица а позволяют запи- сать простые соотношения, характеризующие преобразо- вания координат из системы осей O'x'y'z' в систему Oxyz. Если положение точки М в системе O'x'y'z', свя- занной с телом, задано вектором гм=(х|, у\, Zi)T, то ее координаты в неподвижной системе определятся как (*, У, zy = (xo-, уО', Zo )T + a-(xi, у\, Zi)T. (1.2) При этом можно получить соотношения, характери- зующие связь скоростей и ускорений точки М в систе- мах O'x'y'z' и Oxyz, а также обратные преобразования названных величин. Как отмечалось ранее, исполнительный механизм ма- нипулятора может рассматриваться как механическая система из п твердых тел. Поэтому при решении задачи определения положения, скорости и ускорения рабочего органа манипулятора необходимо вычислять названные величины для всех его звеньев. Кинематическая цепь манипулятора состоит из кинематических пар; относи- тельное положение звеньев в парах задает в конечном счете и их положение в инерциальном пространстве. Свя- зав со звеном 1 систему координат Otxiylzl(i=\...п), можно свести определение взаимного положения звеньев к задаче преобразования одной системы связанных осей в другую. Такое преобразование в трехмерном простран- стве удобно описывать с помощью специальных матриц [1, 2, 3] размера 4X4, введение которых тесно связано с понятием однородные координаты проектив- ного пространства. Если декартовы координаты точки 12
равны х, у, z, то ее однородными координатами назы- вают числа хь х2, х3, х4, не все одновременно равные нулю, связанные с х, у, z равенствами xi=x/x4; х2 = ^/х4; xz = z!xi. Если х4=1, то однородные координаты определяют вектор положения следующего вида: Г° = (Х|, 1/1, Z|, 1)т. Очевидно, что нулевой вектор запишется как (0,0,0, 1)т, а векторы (1,0, 0, 0)т, (0, 1,0, 0)т, (0, 0, 1,0)т определя- ют точки, бесконечно удаленные от начала координат вдоль осей Ох, Оу, Oz соответственно. При использовании однородных координат различные преобразования в трехмерном пространстве могут быть сведены к композиции двух преобразований — враще- ния и переноса, которым отвечают матрицы 'о a j0 ------10 0 0 0| 1 (13) Е I г ----•— 0 0 011 Результирующая матрица преобразования имеет вид А = А«-А,= а 0 0 0 (15) В формулах (1.3) — (1.5) обозначено: а — матрица размера 3X3 направляющих косинусов осей О'х', О'у', О'z' относительно осей Ох, Оу, Ог\ г — вектор положе- ния точки О' в системе осей Oxyz, Е — единичная матри- ца размера 3X3. Матрица А характеризует переход от системы осей О'х'у'г' к системе Oxyz. Обратному переходу отвечает матрица 1-а'.г 0 0 0 (1.6) 13
С помощью матриц А и А”1 можно записать простые соотношения, характеризующие связь векторов г° = =(х', у', z't 1)т и г° = (х, у, zt 1)т, заданных однородными координатами в системах осей O'x'y'z' и Oxyz: г° = А-г°/; г°'=А-|.г°. (1.7) Рассмотрим выбор систем координат, используемых при описании движения манипулятора. С неподвижным основанием связывается система осей OxoyoZo. Система O.Xty.Zi связана со звеном i и имеет ось Otzlt совпадаю* Шую с осью сочленения звеньев i и <4-1. Для пар враща- тельного типа ось OtZi совпадает с осью относительного поворота, для поступательных — она параллельна на- правлению относительного поступательного перемещения. Ось О|Х, перпендикулярна осям 0,2, и Ot^\Zt^\\ ось О& — осям OtXi и Otzt и дополняет их до правой триады. Номера звеньев обозначаются как < = 0. 1, ..., /V. Индекс О соответствует неподвижному основанию, индекс W — захвату (рабочему инструменту). Система осей Оыхыу^ы не связана с подвижным соединением звеньев — она определяет ориентацию и положение захватного устрой- ства. Примеры, показывающие правило разметки звеньев и систем координат, с ними связанных, приведены на рис. 1.3, а. Система осей Охо</о£о связана с неподвижным основанием О, при этом ось Ozo направлена вдоль оси звена /. Система осей O\X\y\Z\ выбрана таким образом: точка 0| совпадает с геометрическим центром пары звеньев 1 и 2, ось O\Z\ — с осью этой пары, ось 0\Х\ перпендикулярна осям O\Z\ и Ozo одновременно, а ось O|i/i дополняет оси O\Z\ и О\Х\ до правой триады — ее направление совпадает с продолжением звена /. Система осей О2Х21/222 выбрана следующим образом: точка О2 совпадает с центром соединения звеньев 2 и 3, а ось O2Z2 — с осью этой пары, ось О2Х2 перпендикулярна осям O2Z2 и OiZi одновременно, а ось О2У2 дополняет оси O2Z2 ИО2Х2 до правой триады — ее направление сов- падает с продолжением звена 2. На рис. 1.3,6 показана система координат, связанная с захватным устройством. Ось O3Z3 совпадает с осью звена 3 и характеризует ориентацию оси захвата. Положение точки Оз может быть выбрано произвольно. Ось О3Х3 перпендикулярна O3Z3 и O2Z2, ось Озуз дополняет оси O3Z3, О3Х3 до правой триады. Из рис. 1.3, а видно, что углы поворота звеньев <?!• <72, <7з отсчитываются в системах координат Охо</о£о. 14
Рис. 1.3. Связанные со звеньями системы коорди- нат трехзвенного манипулятора O\X\y\Z\ и ОгХ2У2^2 соответственно, т. е. ^0=1, 2, 3) от- считывается в системах осей i—1. Приведенные правила ориентации осей систем коорди- нат, связанных со звеньями, определяют важное обстоя- тельство: взаимное положение систем координат i и z—1 двух соседних звеньев зависит от четырех параметров, один из которых является обобщенной координатой, а три других — конструктивными константами [1,2,3]. Матрица перехода от системы осей i к системе i—1 равна А<4 • А^ • Ач — а(0 ООО г, 1 (1.8) 15
где А», Af, Afl<, A,*. — матрицы, характеризующие четыре преобразования, выполняемые в следующем порядке: 1) поворот системы осей вокруг оси Oi-iZg-i на угол 0lt обеспечивающий параллель- ность осей Og-iXi-i и CU. Он характеризуется матрицей Л>! cos 0, —sin б» 0 1 0 1 0 1 0 1 1 1 (19) sin 0, 0 0 COS 0 0 0 1 0 2) перенос системы осей i -1 ВДОЛЬ оси । на величину s, до того, как оси О,-iXg-1 и О,х, окажутся на одной прямой. Ему отвечав г матрица (I 10) 3) перенос системы осей i— 1 вдоль оси О,«, на величину а, до совпадения О,_| с О,. Он характери- зуется матрицей I а< Е | 0 I 0 0 0 0 | 1 (1 11) 4) поворот системы осей i— 1 на угол а, вокруг оси О,х, до совмещения всех осей. Ему отвечает матрица 1 0 0 1 0 0 COS d. — sin а. 1° 0 sin <х( cos а. 1° 0 0 0 Т1 (112) С учетом выражений (1.9) — (1.12) запишем матрицу (1.8) в виде 16
cos 0, —sin 0,-cos a, sin 0, cos 0,-cos a, 0 sin a( 0 0 sin 0,-sin a, at* cos 0 —cos 0,-sin a, a,-sin 0, cos a, s* 0 1 (1.13) Кинематические пары вращательного типа зависят от одной переменной — угла 0», остальные величины st9 al9 а, — постоянные. В случае поступательных пар пере- менной является величина sl9 а 0,, at9 a( — постоянные. Итак, матрица А, зависит от одной обобщенной коорди- наты qt (равной 04 или sf) и определяет положение и ориентацию системы осей в системе 04-1X4-1^4-124-1. Преобразования, выполняемые для совмещения си- стем осей i—1 и I, и отвечающие им матрицы (1.8) — (1.12) требуют дополнительных пояснений Прежде всего поставим вопросы: 1) всегда ли реали- зация четырех названных операций: поворот на угол 0f вокруг оси 0,-124-1, перенос на величину s* вдоль оси O4-1Z4-1, перенос на величину at вдоль оси Otxt и поворот на угол а» вокруг оси Otxl9 обеспечивает совмещение систем осей z—1 и 1\ 2) возможно ли осуществить совме- щение систем координат z—1 и i каким-либо другим спо- собом? Рассмотрим конкретный пример. На рис. 1.3, а пока- зана кинематическая схема трехзвенного манипулятора с разметкой осей связанных со звеньями систем коорди- нат. Проследим, какие операции надо выполнить для совмещения 0xoz/o2o с O|X|i/iZi: 1) поворот на угол q\ во- круг оси Ozo; 2) перенос Ox0z/o2o вдоль оси Ozq на вели- чину /| — длину звена /; 3) поскольку точки О и О| уже совпали, следующая операция может быть условно обо- значена как перенос вдоль О\Х\ на величину ai=0 или исключена вообще; 4) поворот вокруг оси О|Х| на угол Ц|=л/2. Перечисленным операциям соответствует матри- ца преобразования (1.13) при 0,= (7i. a,=0, /,=/i, s,=/i. <Х|=л/2 следующего вида: cos q\ 0 sin q\ 0 sin q\ 0 —cos q\ 0 0 1 0 . (1 H) <1 .00 0 0 Рассмотрим преобразование системы осей O\X\y\Z\ в систему O2X21/2Z2. Первая операция — поворот системы 17
O\X\y\Zi вокруг оси O|Z| на угол t/2. Так как оси О|Х|, О\у\ и О2Х2, О2У2 лежат в одной плоскости, то вторая операция — это условный перенос системы OiX\y\Zi вдоль оси OiZi на величину $2 = 0. Кроме того, направ- ления осей OiXi, O1I/1, OiZi уже совпадают с направле- ниями осей О2Х2, О2У2, O2Z2, поэтому третья и четвертая операции соответствуют условному переносу вдоль оси О|Л| на величину 02=0 и повороту вокруг оси Oi*i на угол аг=0; в результате операции 2, 3, 4 могут быть исключены вообще. Названным преобразованиям при 0,=t72, Si=at=ai=0 в соответствии с формулой (1.13) отвечает матрица ’ cos qz —sin qz 0 O' sin qz cos qz 0 0 (115) AJ = 0 0 1 0 . 0 0 0 1. Реализация перечисленных операций не привела к совмещению системы осей O\X\y\Z\ с O2X2I/2Z2: точки О\ и О2 остаются смещенными вдоль оси Oit/i на величину /2 — длину звена 2. Итак, убедившись в необходимости вве- дения новых матриц, которые отвечают преобразованиям, не описанным ранее, рассмотрим формулы (1.9) — (1.12). Матрицы (1.9) и (1.12) характеризуют повороты вокруг осей Ot-iz^i и Otxt; по аналогии с ними повороту вокруг оси 0,_|। на угол у, отвечает матрица cosy, 0 — sin у, О 0 10 0 sin у, 0 cosy/ О 0 0 0 1 (1.16) По аналогии с матрицами (1.10), (1.11), характери- зующими переносы вдоль осей O^iZ^i и Otxlt запишем выражение матрицы, отвечающей переносу вдоль оси на величину 10 „_L_ 00 01 I (1-17) Таким образом, переносу вдоль оси Oit/i на величи- ну /2 отвечает матрица 18
(118) с учетом которой преобразование системы осей O\X\y\Z\ в систему O2x2y2z2 может быть выражено матрицей cos q2 —sin q2 0 —l2 sin q2 sin q2 cos q2 0 l2 cos q2 . (1.19) А2 = Аг • А?= 0 0 1 0 0 0 0 1 Итак, матрицы (1.16), (1.17) и (1.9) —(1.12) опреде- ляют все возможные типы преобразований: вращения вокруг всех осей и переносов вдоль них. Их композиция характеризует результирующее преобразование и отве- чающую ему матрицу А, как произведение соответствую- щих матриц. Все сказанное верно, если разметка связанных со звеньями систем координат соответствует следующему правилу: оси совпадают с осями кинематических пар, оси 0<х, перпендикулярны одновременно осям 0,-iZj-i и 0,2», оси Otyt дополняют OtXi, Otzi до правой триады. В противоположном случае матрицы преобразований определяются иными способами [1]. В рассмотренном выше примере преобразование си- стемы осей O\X\y\Z\ в систему O2X2I/2Z2 может быть пред- ставлено в виде композиции двух преобразований, более простых, чем те, которые вводились и использовались ранее: поворот системы осей O\X\y\Z\ вокруг оси 0\Z\ на угол q2; ему отвечает матрица cos q2 —sin q2 О О sin q2 cos q2 О 0 0 0 0 1 и перенос системы осей O\X\y\Z\ вдоль оси О\у\ на вели- чину /2; ему соответствует матрица [см. (1.18)). Поэтому матрица Л2 запишется как k2=Kq2-K2. Она, естественно, будет совпадать с выражением (1.19). 19
Аналогично преобразование системы осей О^чу^ в систему О.зли/з£з можно представить как композицию трех операций: !) поворот системы ОъХчу&ъ вокруг оси O2Z2 на угол <?з, 2) поворот системы вокруг оси О2*2 на угол — л/2, 3) перенос системы ОгХчУ&ч вдоль оси O2Z2 на величину /3. Этим операциям отве- чают матрицы: cos (73 —sin q3 О О sin q3 cos q3 О 0 0 0 10 0 0 0 1 0 0 1 0 0 0 0 1 перемножение которых дает результирующую матрицу преобразования cos q3 0 —sin qz —/3 sin qz А3 = sin q3 0 cos qz lz cos qz (1.20) 0 — 1 0 0 0 0 0 1 Соотношения для расчета положения, скорости и ускорения звеньев. Определив различные преобразова- ния, композиция которых приводит к совмещению систем осей z—1 и I, и отвечающую им матрицу А„ запишем кинематические соотношения манипулятора, определяю- щие положение, скорость и ускорение его звеньев, вклю- чая рабочий орган. Если кинематическая цепь манипулятора содержит п звеньев, то матрица, равная произведению матриц от- носительных преобразований 20
АПЯ = А|.Л , (1.21) определяет положение и ориентацию рабочего органа в неподвижной системе координат Охо«/о£о, связанной с ос- нованием манипулятора. Если требуется найти положе- ние манипулятора в какой-либо иной неподвижной си- стеме координат Oxyz. то в формулу (1 21) необходимо ввести матрицу Ао, характеризующую преобразование системы осей Oxyz в систему Oxot/oZo. По структуре Аол полностью аналогична матрице (1.8): а (0, п) | Гол О 0 0 | 1 (1.22) где а(0, п) — матрица направляющих косинусов осей системы Onxnynzn, связанной с рабочим органом, относи- тельно осей неподвижной системы OxoyQZo; Гол = (хол, уОп, Zon? — вектор положения точки О, в неподвижной системе координат. Заменив в выражениях (1.21), (1.22) индекс п на Z, получим матрицу положения и ориентации системы осей, связанной со звеном /: Ао, = А| • Аг •... • А. = а (О, О I го/ 0 0 0*1 (*•23) Положение точки М в системе осей OtxtyiZlt заданное в однородных координатах вектором rM»=(xIt ylt zit 1)т, можно определить в неподвижной системе осей в соответ- ствии с равенством (1.7) как _О __ А О Гмо<= А/И-Гмь Скорость и ускорение точки М в системе осей OxoyoZo получим путем дифференцирования по времени последне- го равенства с учетом того, что Гм» = const: -.0 _*0 __ А -0 . __,0 _______ А’ Г-П VM04 = r МО«=Ао. * Гм», WMOi = Гмо» = А о» • Гом». Если в последних выражениях заменить Гм< на г? или Гш — векторы положения центра кинематической пары или центра масс, определенные в связанной со звеном системе координат, то получим формулы для расчета положения, скорости и ускорения цент- ров кинематических пар и центров масс: г& = А«.г*; (124) 21
Рис. 1.4. Связанные системы коор- динат с началом в центре кине- матической пары (O.x.y.z,) и в цен- тре инерции (О', x°ty!z°) vS1=A01-r!’; (1.25) w8, = Ao<-r10, (1.26) где r° = (0, О, О, 1)т; г&в = А11.г,ои; (1.27) Уаа = Ао<-гац; (1.28) wSu = Aa,-r&„. (1.29) В уравнениях динами* ки манипулятора основной интерес представляют ве- личины fftu, VO1U И WQm, поэтому рассмотрим дру- гой способ их задания и определения. Введем в рассмотрение систему осей ОГхРуГг?, точка О<° которой совпадает с центром масс звена . i, а оси параллельны осям системы (рис. 1.4). Так как одна из осей системы OtxtytZi совпа- дает с осью звена (вектором О(_| О*), а две другие — пер- пендикулярны ей, то при наличии осевой симметрии оси системы будут главными осями инерции звена. Положение системы осей О^хЧу^ в системе Ох_।л:х_ 1 £/f_ । определяет матрица А*. Она отлична от матрицы А„ определяемой формулами (1.8), (1.1.3), тем, что вместо величины матрицы А„ равной длине звена /„ присутствует расстояние /щ центра масс звена I от точки O.-i, т. е. при lt=l£ Ащ — А,. (1.30) По аналогии с формулой (1.23) запишем матрицу Аг,ц = А| • Аг*... А<_ । • Ац — а(0, <)1 г0,ц 0 0 0 [ 1 (1.31) определяющую положение центра масс зве- на । и ориентацию системы осей в неподвижной системе коорди- нат. Матрицы косинусов вАши Аош совпадают, а век- торы Го/ и Го/ц связаны соотношением Гош == Го< При /<^=4ц. • В большинстве случаев имеет место соотношение /щ=/./2. 22
Первая и вторая производные по времени от век- тора Гош {см. определяют линейную скорость и ускорение центра масс звена I в неподвижной системе координат. Они, очевидно, являются векторами-столбца- ми матриц А..ц — a(0, i) j v>,u 1 о о о [ о Га(О, i) 1 wOiu [ 0 0 0 I 0 (1.32) Введем матрицу 04 = (О, О, О, 1)т и запишем очевидные равенства Го<ц == Ао/Ц*Н4’ Votu == W()m == • 04, (1.33) определяющие положение, скорость и уско- рение центров масс звеньев. При замене в формулах (1.27) — (1 29) и (1.33) ин- дексов щ на i получим соответствующие величины для центров кинематических пар. Для определения движения звеньев манипулятора в неподвижной системе координат необходимо найти ли- нейное движение точек звеньев, принятых за полюса, и вращательное движение звеньев вокруг этих полюсов. Поступательное движение центров кинематических пар или центров масс звеньев, которые могут быть приняты за полюса, было описано выше. Рассмотрим способы задания и определения вращательного движения звеньев вокруг полюсов. Обозначим вектор угловой скорости звена i в системе координат Otxtytzt (или Cfix^yiz^ как = (coiX> <й1у9 о)1г)т и получим формулы для расчета его составляющих через элементы матрицы направляющих косинусов а(0, i) и ее производной. Обозначим единичные векторы осей системы Otxtytzt через if, а осей системы OxcyoZo — через i$(s= 1,2,3). Матрица косинусов а(0, /) из (1.23) имеет вид а(0,/)= [атя(0,/)], т, л=1,2, 3 Ее элемент as/(0, /) = as/ представляет собой проек- цию 1, на направление if, поэтому вектор if равен 3 i/ = an*i| + a2/*i2 4“ <хз/-1з= (1.34) 23
откуда после замены индекса t на р и дифференцирова- ния по времени находим производную (135) Из выражений (1.34), (1.35) определим скалярное произведение i;-§-= S a.,as,. (136) В работе [4] показано, что 4* = ю.Х<.= 3p/Ji;-co^ — р, /, q = I, 2, 3, (1 37) где —проекции вектора u>t на оси системы Otxtytzt-9 3ptq — символы Леви — Чивита, равные 1, если индексы ptq различны и расположены в порядке 123, 231 или 312, и равные — 1, если в следовании индексов ptq этот порядок нарушается. С учетом равенства (1 37) запишем скалярное произ- ведение = (1.38) откуда с учетом формулы (1.36) получим з <&q = 3ptq 2 as/asp (</=1,2, 3), s — I (1.39) так как 3ptq =3ptq. Запишем систему (1.39) в развернутой форме, имея в виду, что символы р, t% q должны быть различными из совокупности чисел /, 2, 3: (1)1 = (0IX= ai3«12 + «23«22 + «33(132» €02 = <0«v = «I I«I3 + «21 «23 + «31«331 (03 =(0<г = €£|2<Х| I + (122(121 + «32(bi- ll 40) В результате получены проекции вектора угловой скорости со. звена i на оси связанной с ним системы координат, выраженные через элементы известной матри- цы косинусов а(0,/) и ее производной. Составляющие вектора углового ускорения е,= (г|Х, е,.., е,..)т определятся как производные по времени от выражений (1 40): С|ж = <о«х; = eIZ = wIZ, (1.41) которые в развернутой форме здесь не приводятся. 24
Рассмотрим другие способы записи этих величин и введем новые переменные, которые удобно использовать при записи уравнений динамики манипулятора. Прежде всего отметим, что матрицы косинусов а(0,«) и а(«, 0) взаимно обратные: а(«, 0)=а~|(0, /). Они характеризуют ортогональное преобразование, поэтому а(«, 0)=ат(0,0, (1 42) и для расчета проекций векторов со, и на оси неподвиж- ной системы координат (для расчета векторов (о01, eOl) достаточно в формулах (1.40), (1.41) порядок индексов пх, п элементов amn, атп (pi,n= 1, 2, 3) изменить на об- ратный: <оо«х = <X3ia2i + 032022 + O33O23’, 0-43) аналогично записываются (ooiw, <oo.z. Связь векторов угловых и линейных скоростей и уско- рений в неподвижной и связанных системах координат определяется очевидными соотношениями: (|)& = а(0, I)•<),; e(h = o(0, /)• е/, (1-44) vo. = o(0, £)• V,; wo< = a(0, (145) Векторы положения центров кинематических пар яв- ляются функцией обобщенных координат roi = Го|(<7*)» Л=1 поэтому скорости и ускорения этих точек можно записать в виде разложений по обобщенным скоростям и ускоре- ниям: Vo.=-^-= 2d-«»; (1.46) I Wo. = ^- = id-«*+ i id'.qkq,. (1.47) al It I I—Ik—I гДе rj„ r*f — частные производные по qkt Qi от век- тора Го„ определенного из матрицы (1.23): rk йгщ к/ д го« z. Го< = ——» . (1 48) dq* dqt'dqi v ' 25
По аналогии с формулами (1.46), (1 47) запишем скорость и ускорение центра масс звена i в виде vom = £ Гош • <;*; (1.49) А—I i i i Wo/и = s r»« • 4» + S S ro-« • 9*9/. (• .50) *— I /—I*—I где вектор гош известен из матрицы (1.31). Эти же пере- менные могут быть определены в однородных координа тах, если в формулах (1.33) записать матрицы А и А в виде разложений по q*, qn- vt= Z(A‘.u-h4)-4*; (151) *—1 i i i wRu= V (A.t„.©<)•?»+ s E(A*',-e4).^,. (1.52) Л— I l—l I Как видно из формул (1.40), (1.41), для записи угло вых скоростей и ускорений звена i надо знать первую и вторую производные матрицы косинусов а(0, /). Выразим их в виде разложений по </*, qi(k, 1= 1, ..., <): <i(0, S а*(0. 04»; (1.53) Д— I а(0, «)= S а*(0, <)• 9* + S S а"(0. 0*9*9/- (। -54) Д I I— | Дав | Здесь а*(0,«) и ал/(0, <) — частные производные от матрицы косинусов по обобщенным координатам: «‘(0.0=^^-; «“(0.0=4^. 9 dqhdqi Матрица а(0, i) известна из (1.23). Таким образом, формулы (1.46) — (1.54) определяют линейные и угловые скорости и ускорения звеньев через обобщенные скорости и ускорения. Коэффициентами этих формул являются частные производные по q*, qi от век* торов го/ и матриц Аощ, а(0, «). При вычислении названных переменных на ЭВМ целесообразно использовать спе- циальные способы [1.2], кратко излагаемые ниже. Введем проектирующие матрицы: 26
0 — 1 0 0 ООО 0 1 ООО ООО 0 ; (1.55) Нт = )), 0 0 0 ; 010 = ООО 1 .0 ООО. ООО 0. 0—10 ООО' 0|| = 1 0 0 Bl2 = ООО (1.56) .0 0 0. .0 0 0. Введем матрицу 6* такую, что 0* = 07, если обобщен- ная координата qk — угол поворота, и 0* = 0ю. если qk— линейное перемещение. Тогда нетрудно показать, что частную производную по qk от матриц А„ Аш, Ао* раз- мера 4X4 можно записать как А*=4^- = Н* -А,; иди AS4=4^-=A1-A2.....A*_,-0‘.A*-....A1; ASJ=-^---------A|.....A*_|.e*....-e'-Ar...-A/; dg* • dgt Ао*ц = А। • Ад_। • 0 А*-...-Ат; Ajfu = А । •... • А*_ । • 0*А* •... • 0;А/•... • А,_। • Аш. (1.57) Из выражений (1.57) видно правило записи и вычис- лений Аш, Аш и т. д.: матрицы Аш с одним и двумя верх- ними индексами равны произведению матриц с номе- рами от 1 до /, в котором перед матрицей А* (при рас- чете А*,) и перед матрицами А* и А/ (при расчете Аш) введены проектирующие матрицы 0* и 0*, 0* соответст- венно. Введем матрицу н* размера 3X3 такую, что Н*=0ц, если qk — угол поворота, и 0* = 0|2, если qk — линейное перемещение. Тогда по аналогии с выражениями (1.57) можно записать следующие формулы для расчета част- ных производных по qk, qt от матриц косинусов: а*(0, <)== а( 1) • а(2) •... . ё*а(й) •... • а(<); а*'(0,«) (1.58) ...-О'а(/)-...- а(»), k, l^i. 27
При использовании однородных координат частные производные от rS< по q*. qi определятся из первого ра венства (1 33) с учетом того, что 04=const, в виде (rg1)* = AS).64; (г8,)‘'=А5?.в4. (1 59) При представлении Го, в декартовых координатах выражения для г*,, гЦ можно получить следующим об разом. Запишем вектор г01 в неподвижной системе коор- динат как । i г01= £Ц= 2а(0./)-1, (/=1...........(1.60) /—I /«I где Io, — вектор 0,-tO, в неподвижной системе коорди- нат; а(0, /) — матрица косинусов, равная произведению а(1)«... •«(/); I, — вектор положения звена / в системе связанных с ним осей. Вектор I, легко определить, так как правило ориента- ции осей связанной со звеньями системы координат, рас смотренное при введении матриц относительного положе- ния |см. (1.13) |, предполагает, что I, совпадает с одной из осей Otxh Otylt Of?!, т. е. записывается как !,= = (//, 0, 0)т или l, = (0, lh О/, или |/==(0, О, /,)т. Частные производные от г0| по qk. qi получим диф- ференцированием выражений (1.60), имея в виду, что l/ = const: г5‘=^=,?|а‘(0’/)-,-: а-60 г‘'=^7= О-62) Матрицы а*(0, /), аЛ/(0,/) определяются выражениями (1.58), векторы 1,(/=1...п) — в процессе разметки осей систем координат, связанных со звеньями. Таким образом, как видно из соотношений (1.58), (1.59), (1.61), (1.62), операции дифференцирования матриц сводятся к перемножению в определенном по- рядке матриц относительного положения звеньев и проек- тирующих матриц 8 . Это обстоятельство удобно исполь- зовать при получении уравнений динамики сложных манипуляторов, когда коэффициенты уравнений вычис- ляют алгоритмическим путем на ЭВМ. Дополнительные соотношения для расчета скоростей и ускорений звеньев. Целесообразно привести ряд до- полнительных формул для расчета наиболее важных 28
кинематических переменных: линейных скоростей и уско- рений центров кинематических пар и центров масс, а также скоростей и ускорений вращения звеньев. Из способа введения связанных со звеньями систем координат следуют соотношения, определяющие вектор угловой скорости звена / в системах осей Охоу02о и Oixiyizr. o>oi=<o((7i)=(0, 0. (1.63) юн = Ш| = ат(1)-<1>01 = аз|(1) а32(1) азз( I) (1.64) <7ь а также вектор (о2, представляющий собой сумму двух составляющих, зависящих от а>| и q2'. <1>2=ат(2)-ы, + a’(2).<o(?2), ° 65) где a>(<72) = (0, 0, q2)r. По аналогии с формулой (1.65) получаем выражение для расчета векторов <о. рекуррентным способом: со, = аг(/) • <о,_ । + ат(0* <о(<?«), (1 66) где <1)(^1)=(0, 0, qj, g>o = (U, 0, О/. (1 67) Равенство (1.66) равносильно трем скалярным выра- жениям = ai + «21(7)10,¥ + аз|(7Х<о,_ i,z+ qt)\ (0ц, = «12(7)10,-1.х «2X7)10,- । у + «зХ/Х^ - 1.г + ф); <о,г = «|з(7)(0,_|.х «2з0)ш«-|.* + «зз(0(со, -i.z + qt)< 7=1.......п. (1-66) Его также можно привести к виду <о| = «(7, 1)-<о(<Ji) + d(7, 2)-(i)((72) + ... + a(7,7)-<о(ф)= = ^а(7,Л).<0(4*), (1.69) где * । J(7,/г)=ат(7) ат(7-1). . .-ат(Л); а(7,7) = ат(7) Из приведенных соотношений следуют формулы для расчета проекций вектора <о, на оси связанной со звеном 7 системы координат через обобщенные скорости: 29
I <0/жв £ <Х13(Л *—I I <0«v= S а2з(Л tyq*, *—i (1.71) i <0u= S «зз(Л k)qk, i= 1, ..., n. *—i Здесь через ai3(i, Л), а2з(«, Л), азз(Л k) обозначены соот- ветствующие элементы матриц (1.70). Приведем формулы для расчета линейных скоростей центров кинематических пар — точек О|, О2, ... и т. д. Определим вектор скорости точки О\ в неподвижной системе координат с помощью очевидного равенства Vol = <ooi X Пи, где «Doi =<«>(^|)=(0, 0, <7i)T, вектор rOi=(xi, yi. Zi)T задает положение точки О| в системе осей Оод/oZo, и приведем его к виду voi=(—y\t Х|, 0)т(?|. (1.72) Скорость точки О| в системе осей O\X\y\Z\ запишется как Vi=vn=a!(l)-v0| = aT(l)-(—yXt 0)т - (1.73) В свою очередь, скорость точки О2 в системе осей О2Х2УЛ2 равна сумме двух составляющих: v2 = ат(2) • v । 4- ат(2) • v(?2), (174) где v((?2)=V|2 определяется, по аналогии с выражением (1.72), как v(^)=(—У2, х2, 0)т • q2. (1.75) Продолжая записывать формулы для векторов V3, у4 и т. д., получаем очевидные рекуррентные соотношения: v< = aT(/)-vi_i + aT(0’v(4«) G = 1......Л). О-76) где vo = (O, О, 0)т. В скалярной форме они имеют вид vtx = a 11(0^-1 л + a21 u + a31 (<><-1S, viy = a 12(i) ut_1 ,x + a22(0oe-1 ,f + азг(0у<-1 л I vtx = a 1 з(0^-1 л+<*2з(/>4- i у + азз(Ф<-1 z. (1.77) где v<_i.x = ul_|,x — ytqt\ vi_\,y=vt-\,9 +xtqt, /=1.......л. 30
Выражая в формуле (1.76) скорость V/_| как функцию обобщенных скоростей и учитывая, что v( (?,) = (—у,, X, 0)т<ji, приведем ее к виду i */= *)•«**• 4ft. <=1..л. (1-78) *— । где г* = ( — (/*, х*, 0)т, матрицы а(/, k) определены равен- ством (1.70). Из формулы (1.78) следуют выражения для расчета проекций вектора vt на оси связанной со звеном i системы координат Vtx= £(—ац(/, *){/* +aiXc k)xk)qk't S ( — <*2|(Л *){/* +«22(л b)xk)qk\ ft—I I Vi,= £ (—O3i(i, *)«/* + азг(«, *—i i = 1.....n. (1.79) Для расчета составляющих векторов скорости цент- ров масс V/ц в формулах (1.79) следует заменить члены х*. ук на Xfttt, уцп соответственно; через х*ц, уки обозначены координаты центра масс звена i в системе осей i — 1. Рекуррентные формулы для расчета проекций угловых и линейных ускорений на оси связанных со звеньями систем координат можно получить путем дифференциро- вания по времени выражений (1.66) и (1.77): Ви=<*1|(0<°«-1л + а2|(0ш*-1.М + ОЗ|(0ш<-1/ + + <х । i(0e«-i.x + a2i(0e«-i^ + аз|(0е«-1.г: Eff =а|2(0ш«-1л + <Х22(0<°|-1.» + Сзг(0<О|-1л 4" + «12(0е<-1Л + О22(0е«-1.у + а32(0С*-М; = а । зО)*0* -1 л + агзО)0^- । .* + азз(0ш«-i л 4" 4- <Х|з(06<-1л 4- а2з0'к<-|.> 4- «зз(0е*-| л. (1.80) где ш1_|>г = ю/_|,г + qt9 + qr9 31
Wix= O| |(0^-1.ж + а2|0)У|-1^ + аЗ|0)У|-1.ж + + a I |.ж + а2|(|)Ш|-| у + а3|(0^<-1 »; wty = а 12(0 -1 .ж + 022(051-1 .у + аз2(0у<-1 .* + + OiXO^i-M + 022(0^-1* + 032(0^-1.»; wtz = а I з(ОУ|-1 .ж + 023(051-1 .» + азз(0у*-i.» + + Oi3(0wi- 1.Ж + 023(0^1-1. у + азз(0^<-1 «ж» (1 81) где и1-|,ж=и/-|Л — Vi-i,F=Ui-i.y + xtqt\ wt_ I.ж = Wi-1,x — vtyqt — ytqt\ + *<<7и i=l................n. Формулы (1.66) — (1.71) и (1.76) — (1.81) характери- зуют два способа расчета угловых и линейных скоростей и ускорений звеньев манипуляторов: рекуррентный, а также с помощью обобщенных скоростей и ускорений. В сочетании с различными методами получения урав- нений динамики (на основе уравнений Лагранжа вто- рого рода, уравнений Эйлера—Лагранжа, принципа наи- меньшего принуждения Гаусса и т. д.) они дают разно- образные решения задач динамики — алгоритмические и аналитические. Эффективность использования того или иного из них в каждом конкретном случае должна быть определена путем специальных исследований, учи- тывающих особенности постановки задачи и условий ее реализации.
ГЛАВА ДИНАМИЧЕСКИЕ МОДЕЛИ МАНИПУЛЯТОРОВ Кинематические соотношения, полученные в гл. !, позволяют перейти к записи уравнений динамики мани- пуляторов произвольной структуры, которые характери- зуют связь положения, скорости и ускорений их звеньев с управляющими и возмущающими силами и моментами. Уравнения динамики могут быть получены различными методами, общие идеи которых и конкретные выводы даны как в классической [4], так и в специальной [ 1, 2, 3] литературе. Ниже следует изложение вывода уравнений динамики с использованием уравнений Лагранжа вто- рого рода, которые позволяют получить различные фор- мы требуемых соотношений: аналитическую и неанали- тическую, удобную для нахождения решения численными методами на ЭВМ. 2.1. Уравнения динамики манипуляторов Уравнения Лагранжа второго рода для голономной системы с п степенями свободы, которым отвечают обоб- щенные координаты qt (/=1. л), имеют вид 4Gr)~О’=|............«). (2 l) а/ \ oq / oq, где Ь=(Т—П) — функция Лагранжа, равная разности кинетической Т и потенциальной П энергий системы; Qw — обобщенные силы управляющих приводов, приве- денные к /-й обобщенной координате: они имеют размер- ность моментов, если q, — угол поворота, или сил, если Qi — линейное перемещение С учетом того, что L = T—П и дП/dq^Q, перепишем Уравнение (2.1) в виде -L(m\—^L=Q (2 2) dt \ dq,J dqt *!• V / где Q/=Qm+Q,., Q,.-дП/дЧ1. В последних равенствах через Q. обозначены внеш- ние обобщенные силы, вызванные весом звеньев и груза, ’-«27» 33
удерживаемого в захватном устройстве. При наличии внешнего воздействия — силы FB, приложенной к захват- ному устройству, в правую часть равенства для Q, надо добавить член характеризующий это воздействие: Qy = Q/> + Q. + Q;. (2.3) Используем выражение (2.2) для вывода уравнений динамики манипулятора. Рассматривая исполнительный механизм манипулятора как систему из п твердых тел, запишем его кинетическую энергию Т в виде суммы кине- тических энергий звеньев: Т= V TL (2 4) I— । В свою очередь величину Tt определим по форму- ле [4] Т.mt(vQtX со.) • г1Ц + -у• в0< • <of, (2.5) где mt — масса звена i; v01 — скорость некоторой точки звена О„ принятой за полюс; г1Ц — вектор-радиус центра инерции звена в системе осей с ним связанных, начало которой совпадает с полюсом Of; во/ — тензор инерции звена в точке О,; ш, — вектор угловой скорости звена в принятой системе координат. Выражение (2.5) принимает наиболее простой вид, если за полюс звена принять его центр инерции; величи- на г1Ц будет равна нулю и выражение (2.5) упростится: +-^<0| • Ooi • ш/. (2 6) Кроме того, в большинстве случаев звенья манипуля- тора представляют собой твердые тела, обладающие симметрией относительно трех ортогональных осей, про- веденных через центр инерции. Напомнив правило раз- метки осей систем координат, связанных со звеньями (см. гл. 1), в соответствии с которым одна из осей си- стемы Otxtytzt совпадает с осью звена (вектором Q,_|О,), а две другие образуют с ней правую триаду, получим: при помещении точки Ot в центр инерции О? (cmi рис. 1.4) оси полученной системы О*хЧу№ становятся главными * Составляющая пишется со знаком < 4- если обобщенная координата — угол Qi — отсчитывается в направлении против хода часовой стрелки, в ином случае — со знаком- 34
осями инерции и тензор инерции звена в точке О? имеет вид диагональной матрицы 4 0 о; О /. О О о J (27) моменты инерции относительно осей в которой опреде- ляются выражениями 7<=SSS(^2+z<2)f//n«: 4.-Ш(*г+2*2)</'п“ (28) и для звеньев заданной конфигурации являются извест- ными константами. При отсутствии осевых симметрий тензор инерции звена в точке О? характеризуется мат- рицей (2.9) -J центробежные моменты в которой определяются выра- жениями 4/ =4.x’=$$Sx,z,dm,; 4„=4„=$$$<лг<<4п< (2.Ю) и также являются известными константами. Определим вектор скорости центра инерции звена i через проекции на оси связанной с ним системы коор- динат как Чц ( Цхц • Ц*Ц » Ц*и ) (2.11) или через проекции на оси неподвижной системы осей в виде Ц)|« ц 9 ) - (2.12) По аналогии с чц введем вектор угловой скорости звена (0< = (со1Ж, (|)14О со,,)1 (2.13) 2* 35
и запишем равенство (2.6) в развернутой форме для случая, когда звенья манипулятора обладают симметрией относительно главных осей инерции. Для этого подста- вим выражения 0^, цц, из (2.7), (2.11), (2.13) в фор- мулу (2.6) и получим Г,=0,5т,(v?,u + v2u 4- v2u) 4- 0.5(/x,w* 4- Л,4- Л.<>«)• (2.14) При использовании вектора скорости центра инерции в форме (2.12) имеем равносильное (2.14) выражение + Оо<гц)4" 0>5(/X((o1x4-/Fi(D1y-|-/Z| <о1Х), (2.15) с учетом которого равенство (2.4) принимает вид ^==-£Г 2 ['П^Ц)1хц + + *>(Lu) + +(Л«Л + Л + ЛX)]- (2 16) Левые части уравнений динамики. Для получения левых частей уравнений (2.2) в аналитической форме необходимо записать кинетическую энергию как функцию обобщенных координат и скоростей. Выразим составляю- щие Оо1ХЦ..(D1Z в формуле (2.16) через (i=l, ..., л). Эта задача решается путем реализации следующих шагов: 1) записать матрицы относительного положения звеньев А, и Дц в соответствии с правилами, изложен- ными в § 1.2; 2) определить матрицы А(,ц по формулам (1.31) и их производные Аи<ц путем дифференцирования АЧц по вре- мени, т. е. матрицы а(0, /), а(0, /). Г.ц как функции обоб- щенных координат и скоростей; 3) определить <о1Х, <оф, <о1г через элементы матриц а(0, /), а(0, /) по формулам (1.40). В результате подста- новки полученных для ц>1ХЦ..выражений в формулу (2.16) запишем кинетическую энергию как функцию T=T(q„q.) 0=1........п). применив к которой оператор Л'(Г)=^-(-Я-)-77' (2,7) находим левую часть уравнений (2.2). Рассмотрим иную форму записи этих уравнений, 36
используя то обстоятельство, что скорости центров инер- ции звеньев Vo,a и их производные, а также матрицы косинусов а(0, i) и их производные (т. е. в конечном счете и со,) могут быть представлены в виде разложе- ний (1.49), (1.50) и (1.53), (1.54). Введем обозначения первого и второго членов в квад- ратной скобке равенства (2.16), характеризующих кине- тическую энергию поступательного и вращательного дви- жений: Тп =-5- Ё uo.ru + ио,уа 4- и£,ц); (2.18) Т. =4 S (4 + 4 <4 + 4 <4) (2.19) z f—I Применим оператор Л, к выражению Гп: л-(7’«)=-4(-^)-4г- (2 20) и/ \ O(f^ / O(f Найдем выражение =4i(a+r;+rn. (мп Рассмотрим первый член под знаком суммы в правой части равенства (2.21) / -mt । — ^П|Ц)1хц л * . (2.22) 2 dqt UQj Из выражения (1 49) для вектора v ц, из которого следует, что Uo,xU = У (2 23) к— I находим х&ц, (2.24) где xi,ll = dxota/dql. С учетом выражений (2.23) и (2.24) перепишем ра- венство (2.22) в виде Ti=mt £ (2 25) к—I 37
Затем находим производную по времени ==“77"(Тщ)=/П/—т—2 = а/ а/Ав| = m,[ S xi,axS,uqit+ S 4* • (2.26) Рассмотрим выражение под знаком второй суммы равенства (2.26) ^*4/ (^хь\ + ^ц-Йш). (2.27) По аналогии с равенством (2.23) запишем производ- ные xiiu и х!ц в виде разложений: / i хкщ = 2 *<М/. Жош= 2 *о%<7/, (2 28) подстановка которых в формулу (2.27) приводит к вы- ражению <7* (4иЛош)“( i X)/U4U + + 2 «4»ц*шц)ф<7*. (2 29) С учетом равенства (2 29) запишем формулу (2 26) в виде tn =mT 5 4щ-4ц<7* + L>— । + S S (-«o/u-to,u + xL*j*u)<7/4*l- (2 30) /— I ft— 1 J Таким образом, одна из трех составляющих правой части равенства (2.21) определена. Совершенно очевид- но, что вывод выражений для ttt= и ЛТ= полностью аналогичен, поэтому их можно получить непосредственно из формулы (2.30) путем замены в ней переменной х на у и z соответ- ственно: 38
r i M i i T'n'=m, I V yl)iuyt;tuqk + 2 S G/#u^u + u*-l /-lft-1 + H.«i£)w*]; (2.31) Л,,,= ^И|Г 2 2<ju2Uu<7*4" S Zj (Zoiu^Om 4“ Lft— I /—lft—1 + 2АШ^Ц)^]. (2.32) После подстановки выражений (2.30) — (2.32) в ра- венство (2.21) получаем: -^-(-^Ь) = £ s "J.<^<uJCou+y{lu^u+^,u2^u)9* + Л f / 4” S S S гп«(-*А«цхо?ц4’^ш^0*ц4”2Аш2о?ц)<7/<7* 4“ 1-1 1—1 >-| л / / 4" 2S S 2j ^|(ХощХо«ц 4"^0ш|/и!ц 4"2ощ20ш)<7/<7*. (2 33) /«I /«—1 >«-1 Определим производную >=?Л^<“+^+^“)- (2-34) Найдем выражение первого члена под знаком суммы в правой части равенства (2 34) ^(=-^-^-(«S<«)=m1U01x„±^. (2.35) 2 dqf dqt Из равенства (2.23) запишем производную -^-= s xttaqt. (2 36) /-I После подстановки выражений (2.23) и (2.36) в ра- венство (2.35) получаем । i i I Tni = mi 2 Хош<7* S *(/|ц<7/ = 'Hl S S ^0m x&Jikqi. *— i i — i »— । /—। (2.37) По аналогии с ним запишем второй и третий члены под знаком суммы в правой части равенства (2.34): Т"=^д—^1ул)=т1 S v yS.ay^q,qr. (2.38) 2 ft-l/-l 39
£ 2 (2.39) z aq> ft-I/-I После подстановки выражений (2.37) — (2.39) в ра- венство (2.34) получаем 4^-=^ S X т,(хо,ихо!и +у&и{/(ки + z^z'l^qkqt. (2.40) °4l В результате почленного вычитания равенства (2.40) из (2.33) находим выражение *^/(^п)= 2 *Л/*<7* + 2 2 2 d^kiqiqkt (2.41) <-|»-| /=|/=|*я| где difk— Wt (^4цХиц + У^тУОт + 2&шЗощ)« dltkl=m, (аЖцЛЬ% + ^ui/o/u + 2Йш2Ь*ц). (2.42) Рассмотрим применение оператора Л, ко второй со- ставляющей кинетической энергии л-<г->=4(^)-4г- <2-43' определенной равенством (2.19). Найдем первый член этого равенства Рассмотрим выражение П, = Л. ^-= л. • <*., (2.45) 2 dq, dqj Из равенства (1.40) запишем <*>Ijr = ai3(Xi2 + 023022 + аззаз2, (2.46) где ай..... аз2 — элементы матрицы а(0, /) и ее произ- водной. В соответствии с равенством (1.53) имеем о(0, 0= S а*(°. А» I 40
откуда следуют соотношения «12 = X «*2<?А, «22 = S «22<?А, «32 = 2 «32<?А, (2.47) А — I А — I k — I подстановка которых в формулу (2.46) дает выражение <0|Х= £ (а1з«12 + «2за22 + аззаз2)<7л= £ С^а (2.48) Л-1 4-1 Здесь обозначено С£=а|за*2 + «2з«22 + аззаз2, (2.49) где а*2. а*2, а*2 — элементы матрицы а* (0, /), определен- ной формулой (1.58). Из равенства (2.48) следует, что d^iX/dqt=C^ (2.50) поэтому в соответствии с выражениями (2.48), (2.50) имеем Ш1Ж = £ cic*4*. (2.5i) °4i k—t С учетом этого результата приводим равенство (2.45) к виду 7Х=Л S (2.52) А — I Определим производную 4 s, cic&- <2 53) Запишем очевидное равенство 4 £ cici4»= £ c'ctf*+ 2 (2.54) A—I A—I A—I- ai Найдем производную под знаком второй суммы этого выражения A(C'Ci)=d'Ci + C'^, (2.55) а затем путем дифференцирования равенства (2 49) — производную £i = -^-(Cj) = ai3a*2 + «13«*2 + «23«22 + «23«22 + «33«32 + + азз«з2- (2 56) 41
По аналогии с формулами (2.47) запишем произвол* ные । i i О|з= У, о'з?/; 023= 2 а2з?/1 озз= У озз<?/; (2.57) а*2= S а*2<?Г. «22= 2 а22<7/’, а*2= 2 а*з?/. (2.58) /—I /—। । После подстановки выражений (2.57). (2.58) в равен* ство (2.56) получаем £* = У (о*2О13 + о 130*2 + 0*2023 + O23O22 + O32O33 + /— I + 0330*3'2)?/= %(*«. (2.59) /—। По аналогии с выражением (2.59) запишем & = 2 C4q,. (2 60) / — I После подстановки значений CkXt из (2.59), (2.60) в равенство (2.55) находим производную -^(с[с*)= s (cici'+cicl'k/. (2.61) где С?' = аТго'|з + О|заТг+ а^гагз + агзай + а?2азз + 033032, <F=*. /. (2.62) Введем обозначение C'*'=ClC''+C'C" (2.63) и перепишем равенство (2.61) в виде i -£( С'С*) = 2 С(%. (2.64) С учетом выражения (2.64) приводим равенство (2.54) к виду i i i i ^-2 c'c*4*= 2 c'ctf» + 22 ct'wi, (2.65) откуда получаем окончательную запись формулы (2.52) 42
i i i f[ 2 cici^» + 22 ci%4/l. (2.66) Lft — I ft—I (—I J По аналогии с ней запишем выражения произвол* ных t", 1™-. tz = Jy, [ 2 c‘yCkyqy 4-2 2 ; (2 67) Lft-I ft-1 /-I J 4r= Л [ 2 CftC*qy 4- 2 2 (2.68) lft-l ft-l/-l J Здесь обозначено: CJ=ai |аТз + <Х21«?з + «з|О?з; | (2 691 С!=ai2<xTi +a22<x?i + 032031; / С^=С^+ С',С"; СУ=С№+ Cl,C"\ (2.70) Су =а\ |аТз + си |а|з+ 021023+ О2|аЙ+ 031033 + 031ай; С?/ = 0*12011 + О|2Оп + 0220 I + 022021 + ОзгОЗ! + ОзгОзь <р=Л,/. В результате подстановки выражений (2.66) — (2.68) в равенство (2.44) получаем: + 222 Cliklqkqh (2.72) । — ।а— । /—। где Ь/й=Л.С'С*4-/йад4-^С'С*; | с1М=1Ж1с^-\-]уС^+1г,огм. / Определим производную dTyjdqj. С учетом выраже- ния (2.19) имеем -^-=2 (/х<0,<-^4- d4i ^Я1 + + (2-70 По аналогии с равенством (2.48) запишем “•»= S с»4*» V=y> 2» (2.75) 43
затем найдем производные и произведение: (2.76) £ C^Cllq^qt, V = x,y,z. (2.77) <ty А— I /.| После подстановки выражений (2.77) в равенство (2.74) получаем * j f 2 2 2 (/»c*ci< + i — I k — II — I 4- /„C^C'J 4- J..CiC^q,. (2.78) После подстановки выражений (2.72), (2.78) в равен- ство (2.43) находим ЛХГ.)= S 2 Ь„^ + 2 2 2 b,Mqi,q,, (2.79) А-1 |-| А—I 1-1 где ь,м = кС*1 4- J, с1*' 4- h. С'*'-, (2.80) C(*'=ClCi'; С^*'=с;с;'; С/'=С'С". (2.81) Сложив равенства (2.41) и (2.79), определяем окон* нательное выражение левых частей уравнений (2.17): Л,<Г)=2 ZU+Z 2 khi^q.q,, / = 1.................л. (2.82) 1-1 А-1 1-1 А—I 1-1 коэффициенты которых зависят от обобщенных коорди* нат: hiik=djib *+* &ра; hjtM=ditH 4- &рА/. (2.83) Систематизируем последовательность вычислений, не- обходимых для расчета коэффициентов Л^а» h^t: — по известным матрицам А, и Дц (/=!,..., л) для заданных значений обобщенных координат qt вычислить матрицы A(JW, Afcfn для /,/, А= I,..., л; j9k^i по форму- лам (1.57). По элементам этих матриц вычислить: — коэффициенты Cl, С£, CJ (/=!,..., л)—по форму- лам (2.49), (2.69), а также С1*, С£*, С1* (/,*=!.л)— по формулам (2.62), (2.71); — коэффициенты Ь^ь (j. Ц I,...» л; /, ЛСО — по формулам (2.73); 44
— коэффициенты dZI* и dtlkt (j, z, Л, /=1, .... n; /, k, ^z) —по формулам (2.42); — коэффициенты Cl*',CjA/, C‘kl(j, k, /=1, .... n) — по формулам (2.81); — коэффициенты (jt z, k, 1= 1,...» n; /, kt — no формулам (2.80); — коэффициенты h^i—по формулам (2.83). Таким образом получены две формы записи левых частей уравнений динамики манипулятора: явная — фор- мулы (2.82) и аналитическая — формулы (2.17), (2.16). Правые части уравнений динамики. В соответствии с равенствами (2.3) выражение обобщенной силы, при* веденной к оси /-й кинематической пары, имеет вид Q/ = Q/> + Q/. + Q/f. (2.84) Рассмотрим составляющие в правой части этого ра- венства для случая, когда обобщенная координата — это угол поворота Величина Q,A равна сумме момен- та Л1М, развиваемого двигателем, управляющим /*й обоб- щенной координатой, и момента сопротивления М/с: = М/л + М/с- В свою очередь M/c=MiC + M^9 где М'с и Л1,с — это моменты сухого и вязкого трения. С другой стороны, Q/.= Q/. + Q/b, где Q/., — моменты, вызван- ные весами звеньев р, (/= 1, ..., п) и груза рн в захватном устройстве. Наконец, Q,f — это момент, вызванный внеш- ним воздействием F, приложенным к захватному устрой- ству. В случае, когда qt — линейное перемещение, все названные составляющие имеют размерность сил и вы- числяются путем умножения соответствующих моментов на величину г^1, где — эквивалентный радиус соеди- нения, обеспечивающего поступательное движение зве- на j в кинематической паре. При заданном напряжении управления момент двига- теля М1Л известен. Момент сухого трения М'с или извес- тен, или определяется опытным путем. Расчет момента вязкого трения М'с представляет существенные трудно- сти. Подробное рассмотрение этого вопроса выходит за рамки настоящей книги, поэтому во многих случаях, когда влияние этого момента заведомо не имеет опреде- ляющего значения, можно принять М£=0. Величины Q/., Qif зависят от конфигурации исполнительного механизма манипулятора. Поэтому они являются функ- циями весов звеньев л), груза рм, внешнего воздействия F и обобщенных координат pf. Рассмотрим задачу расчета составляющих Q,'., Qf., 45
QtF. Начнем c Q/.. Поскольку направление силы веса р< звена i (<=1, ...» л) совпадает с осью —Ozo неподвижной системы координат, в системе осей Oxot/oZo вектор р, мож- но записать как р01=(0, 0, -pj. (2 85) Тогда момент силы р, на оси /-й кинематической пары Мд определится как векторное произведение вектора по- ложения центра тяжести звена i и вектора р, записанных в системе осей /—1 (двигатель управления /*-й обобщен- ной координатой совмещен с системой осей /—1): М/1=г/_|,мХй-и (/=1........п; i^i). Вектор р-и можно определить через вектор р0< и матрицу косинусов а(0,/—1) с помощью очевидного ра- венства p/_i.i=a(O, /— 1)т-ро.<= —Р«(аз1, а32, а33)т, (2.86) где через а3|, а32, а33 обозначены соответствующие эле- менты матрицы а(0,/ —1)=а(1)«а(2)‘ ... *а(/— 1), причем а(0, 0)=Е. С другой стороны, вектор г,й-|.т; z/_i,m)T— это вектор-столбец матрицы а0— 1. 01 Г/-1.Ш ____________|_______ ооо ; 1 А/_ |./ц = — Af • А/+ ... • — । • Ац» (2.87) где ДЦ=А1 при С учетом выражений для и pz-i./ запишем век- тор М/7 в виде М — I. Ш X Р/ — I. i-------------------------------- *1 — I. <ц £//— I. ш 2/- I ш » (2.88) —р<-а3| —Р«’<132 —р<*азз где if, i£ i3 — единичные орты осей системы /— 1; отсюда получаем = Р»1И •(<*32*/-I.mi ““ <ХзЗ«//-1.щ) + 15‘(аЗЗХ/-1.щ — — 0312,-1^) -f- i3 •(a3it//-i./u — «зг^-кщ)]. (2.89) С учетом того, что момент М/д, развиваемый /-м дви- гателем управления, совпадает с осью Oj-iZi-i (ортой i3), 46
в равенстве (2.89) можно сохранить лишь составляю- шую при 1з и пренебречь остальными: М„ = — аз2Х/-| <ц). (2.90) В свою очередь величина Q/, определится как сумма составляющих (2.90): Q/. == S М/< = 2 (®3l|^— l.fti ““ ®32-X — l.iu)P«* (2.91) «-/ <-/ Рассмотрим методику расчета Q'i. Вес груза рн в не- подвижной системе координат может быть записан как р* =(0,0,—рн)т. Так как он приложен к захватному устройству (зве- но п), то момент М,п этой силы на валу /-й кинематиче- ской пары по аналогии с выражением (2.90) можно за- писать, убрав в нем индекс «ц>: М1Я= Q'J =pH (asit/y-i.n — a32X/-i.n). (2.92) Переходим к расчету момента Q,f. Пусть внешняя сила F, приложенная к захватному устройству, задана в системе координат, связанной с ним (звеном п): Ря=(^я,^я.^я)’. (2.93) Тогда момент силы F„ на валу /*-й кинематической пары будет равен векторному произведению вектора по- ложения захватного устройства и вектора F, записанных в системе осей / — 1: MfF = r/_|,nXF/-i.«, (2.94) где — это вектор-столбец матрицы • (/-I. п) । Г/-!. „ ООО 1 1 ...-А,; -- А/ • А; + I вектор F/_|,« определяется из очевидного равенства F^i.^aO-l.nJ.Fn, (2.95) которое с учетом выражения (2.93) и обозначений эле- ментов матрицы «(/->. n)=(Mi—h ")). Р><7=1. 2. 3. 47
приводится к виду ац(/— 1, n)F*„ + al2(j— 1, n}FVn + al3(j— 1, п)Л„ O2i(/— 1, л)Л„ + a22(j — I, n)Fl)n 4- а23(/— 1, n)F,n and— *. n)F,n + a32(/— 1, n)F,n + a33(/— 1, n)F,n (2.96) После подстановки выражений (2.96) и г/_|.я= =(x/-i.n; 2/_|,я)т в равенство (2.94) и сохранения в нем составляющей, которая совпадает с вектором мо- мента двигателя М/д (ортой Й), получим Mf =[аГ|(/— 1, л)ГЖ(, + а(2(/—1, n)Fyn + + а1з(/-1, л)/Ч]х,_м-[«„(/-1, л)Л„ + (2.97) + а22(/— 1. n)F,n + а23(/— 1, я)Лп]^-1.я. Суммируя переменные Q/., Q,", определенные фор- мулами (2.91), (2.92), (2.97), и известные моменты дви- гателя М/г и трения М/с, находим обобщенные силы Q, — правые части искомых уравнений. Для лучшего усвоения методики записи уравнений динамики и облегчения практического использования расчетных соотношений рассмотрим конкретный пример. 2.2. Пример составления уравнений Приведем пример составления уравнений динамики манипулятора аналитическим и алгоритмическим спосо- бами, уделив основное внимание формализации основных шагов используемых методик. Рассмотрим трехзвенный манипулятор, кинематиче- ская схема которого показана на рис. 1.3, а. Он обеспе- чивает перемещение захватного устройства С в простран- стве. Обобщенными координатами, определяющими кон- фигурацию манипулятора и положение захватного уст- ройства. являются углы относительного поворота звеньев qi, <72, <7з. Будем считать звенья твердыми жесткими телами, обладающими симметрией относительно трех главных осей инерции. Условимся, что каждый двигатель Щ/= 1,2,3) привода управления через редуктор с пере- даточным числом л,: (П{> I) связан с осью одной кине- матической пары. Исходными данными являются: массы и веса звеньев ги, и pt (/=1,2,3), а также груза в захватном устройстве; осевые моменты инерции звеньев их длины /<; моменты инерции роторов дви- гателей JPi. 48
Аналитический способ составления уравнений. Со* ставление уравнений динамики начнем с записи матриц относительно положения звеньев A((i=l,2, 3). Разметка осей неподвижной и связанных со звеньями систем коор* динат показана на рис. 1.3, а. Матрицы А|, А2, Аз опре- делены формулами (1.14), (1.19), (1.20). Перепишем их в виде а — 2^_L*L * 'о о о ' 1 I где а(/) — матрицы косинусов: i=l, 2, 3, (2.98) a(2)= a(3)= "cos/ji sin q\ sin q\ ’ — cos q\ 0 . (2.99) cos —sin q2 0 sin q2 cos q2 0 0 0 1. (2 100) cos qz sin qz . 0 0 —sin qz 0 cos qz -1 0 (2.101) и векторы положения центров кинематических пар и за- хватного устройства: П=(0, 0, fey, Г2=(—/2 sin <72, /2 cos <72, О/; г3=(—/3 sin <7з, Z3 cos <73, 0/. (2.102) Запишем матрицы относительного положения систем координат, центры которых совпадают с центрами инер- ции звеньев: А|Ц, А2ц, А.ш путем замены в А|, А2, Аз величин /|, /г, /з на расстояния feu, /2ц, feu центров инерции звеньев 1, 2, 3 от точек О, О\, О2 соответственно. В рас- сматриваемой задаче /1Ц=/</2(/= 1, 2, 3), поэтому матри- цы А/ц будут равны «(') । г,.. 0 0 0 | 1 <’=1, 2, 3, (2 103) где в соответствии с выражениями (2.102) Пи ( 0, 0, -у-)т ; г2ц= (-----------'j- sin <72, -у- cos<72, о)т 5 г3ц= (-------sin <7з, -у- cos <73, о)’ . (2.104) 49
Используя равенство (1.31), запишем матрицы поло- жения систем координат, центры которых совпадают с центрами инерции звеньев, в неподвижной системе осей: Аца=А| , А2ц==А|А2ц; Азц==А|А2Ац. (2.105) С учетом выражений (2.98), (2.103) и (2.99) — (2.102), (2.104) эти матрицы будут равны Ао,ц = а (1) 1 rlu' 0 0 0 ] 1 * (2.106) А 2ц ~ < 1(0, 2) 1 ги2, о о о; 1 И ; (2.107) А зц = где а(1) определена форв а(0, 3) 1 г,3ц‘ .0 0 0 | 1 дулой (2.99); (2 108) а(0, 2) = а (!)• а (2)= d\d2 —dj? fi f\d2 —fi/г /г d2 0 (2.109) did23 — — d\f 23 а(0. 3)=а(1)-а(2)-а(3)= ftd23 di —fl/23 ; (2.110) /гз 0 d23 Г|ц=(0, 0, /i/2)T; (2.1И) г02ц =(-O.SWih; -0,5/2fif2; 0,5/2d2 + /i)T; (2 112) —0.5d । (Z3/23 + Z2/2) Гози = —0,5f 1 (Z3/23 + Z2/2) (2.113) 0,5/34/23/2^2 + /1 В равенствах (2.109) —(2.113) через f,. dt (/=1,2,3) обозначены синусы и косинусы соответствующих углов; например, f2=sinq2t di=cos<?i и т. д.; кроме того, 4/23= = cos(<72+<73), f23=sin(<72+<73). В соответствии с форму- 30
лой (2.16) запишем кинетическую энергию манипулятора в виде т =-£- Ё + 1^а + uLu) + +(/xX + /mX + /z,O)?z)]. (2.114) Скорости центров масс звеньев определим путем диф- ференцирования по времени векторов (2.111) — (2.113): vom = гои = (О, О, О/; (2.115) Уо2хц = -^^-----— dif2^ = aiq\ 4- 0242', U()2ru— ----— flh) = Оз?! + а^2\ й)2гц =“3т/ “о" ^2 + /Л =О5<72; at \ 2 / Иозжц = Об6?| 4“ O7q2 4“ Ов<?з; Оозщ = 09^1 4" flio<72 4" Д| И/з; Оозхи = О|2<?2 4" О|3<7з* (2.116) (2.117) В равенствах (2.116), (2.117) параметрические коэф- фициенты 01=0,5/2/1/2; 02= — 0,5d|d2; аз=—0,5/26/1/2; 04=—0,5/2/16/2; 615=—0,5/2/21 6^6=0,5/3/1/234" /2/1/2; 07= —0,5/зб/|б/гз—/26/16/2, б1а= —0,5/зб/|б/гз; а9=—0,5/36/1/23—/26/1/2’» 6Zio=—0,5/3/16/23—/2/16/2; ( ) О||=—0,5/3/16/23; 6Z|2= —0,5/3/23—/2/2; 6113 =—0,5/3/23. Составляющие угловых скоростей со/ определим по формулам (1.40) через матрицы косинусов <х(1), а(0, 2), а(0,3) (формулы (2.99), (2.109), (2.110) и их произ- водные) 51
о)1ж = <Х|з(1)а|2(1)+ а2з( 1 )ct22( 1)+азз( 1 )азг( 1 )=0; <oiy=<xi i( 1 )а|з( 1)+<121( 1 )«2з( 1)+аз i( 1 )азз( 1 )=<7ь coi.-=ai2(l)ai |(1)4-а22(1)а2|(1)4"а32(1)аз|(1)=0; <02ж = а|з(0, 2)а|г(0, 2) + агз(0, 2)агг(0, 2) 4" + азз(0, 2)азг(0,2) = /г<7Г» <02у = ац(О, 2)а|з(0, 2) 4- аг|(О, 2)агз(0, 2) 4" 4~ аз|(0,2)азз(0. 2) = d2q\\ u)2z=ai2(0t 2)ац(0, 2)4-а>2(0, 2)аг|(0, 2)4" 4-032(0, 2)аз|(0, 2) =(721 и)зж=а|з(0, 3)ai2(0, 3)4-агз(0, 3)а2г(0, 3)4" 4- а31(0,3)азХ0, 3)=/гз<7Г, (оз^=ац(0, 3)а|з(0, 3)4"a2i(0. 3)агз(0. 3)4" 4-аз|(0, 3)азз(0, 3)=—q2— <озж = а,2(0, 3)a,,(0, 3)4-af2(0, 3)a2i(0, 3)4- 4"Оз2(0, 3)аз|(0, 3) = ^2з<7ь (2.119) После подстановки выражений линейных и угловых ско- ростей из (2.115) — (2.117) и (2.119) в равенство (2.114) запишем кинетическую энергию манипулятора как квад- ратичную функцию обобщенных скоростей в виде: 7'=-~{m2[(oi<7i 4"О2<72)24-(оз<7|4"О4<7г)24"(о5<72)2] 4" 4- 'Пз[(аб<7|4-О7(724-Дв<7з)24-(<М|4-Д|0(724-Я||<7з)2 4" 4"(О|2<724-О|з<7з)2]}4"“^"[Л. <72+Л,/2<724-Л dlq2 4- 4- Л <724"Лз/23<724"Л1(<724“<7з)24"Л>^1з<7?]- (2.120) После подстановки в это равенство выражений (2.118) и проведения преобразований тригонометри- ческих функций в коэффициентах при подобных членах формула (2.120) принимает вид где Т—(fli4<724~fli5<724~ Д|б<?з4~ Д|7*72<7з)> Д|4=Л|/24"^2/2з4"Лз/2/2з4"^и1^24"Л3^2з4"^у. ’» Д|5=Л4 4- Лз4" *6 4- ksds+J г, 4"Ли д 16=^54"Л»’» Д|7=Л5 4-0,5Лз{/з4"2/гэ; Л|=/?4 4-Л»4-^б1 ^2=^54-Л>\ k3=m,3hh\ Л4=0,25т2/1; *5=0,25/n3/2; *6=m3Zl. . (2.121) (2.122) 52
Найдем частные производные от Т по qt(j=l, 2, 3), а затем производные по времени от этих выражений: дТ • дт • . • дт • , -г*" = О|«7ь “Т"*- = О|5<?2 + О|8<7з* “Г" = О|6<?3 + О|в?2» dqi dqi (2.123) где aie = 0,5а 17, S)=a'^' + ан<7,: d/ дТ\ dt \ dq ) = Ol5<72 + О|«?3 + О|5<72 4- аиЧз', (2.124) d/\ dq2J О|8<7г + Д|6<73 + О|8<?2 + fll6<?3- Путем дифференцирования равенств (2.122) находим производные О|4 = О|9<72 + О20<7з; 015 = 021(73; aie = 0; | (2.125) Д|7 = й22<7з; 0|8 = О23<7з, I где °19 = 2(Л| — /у2)/г^2 + ^7^23^23 + /ггз^з; а2о = £7/23^23 + ^3/2^23; 021 = —Лз/з; 022 = 0,5o2i; 023 = 0,5O22i /223 = sin(2(/2 + </з); ki = 2(Лг — Л,). (2.126) После подстановки выражений (2.125) в равенства (2.124) получаем auQ\ + Qi3<7i<72 + <Z20<71<73Z dq, / d/ дГ\ "d/ \ dqs) Д|5<72 + <*i в<7з + CI21Q2Q3 + Огз<7з; (2.127) Gl8<72 + Ql6Q3 + O23Q2Q3- Определим частные производные от Т по ql9 используя запись Т в форме (2.121): 1 / дан *2 I ^Д|& *2 I ^Д|в *2 I dan Д • \ - -Цтг’' + -5Г’1 + + w””/ /=1,2,3. (2.128) $3
В свою очередь из выражений (2.122) находим 0t5dau/d<72 = ^1/2^2 + ^2/23^23 + 0,6^3/223 — Л./2^2 — “ Лэ/23^23=О24; да।ъ/dqz = da^/dq^ = da\i /dq? = 0; 0.5dau/^<73 = ^2f 23^23 + 0,5^3/2^23 — /*3/23^23 = 025; 0.5да|5/д*7з = 022; Q$da\b/dq3 = 0; 0,5dai7/d<73 = 023. С учетом этих равенств запишем выражения dT/dqi = Q^ дТ/д^2 = 024^1*, dT/dqz = Q2$q\ + 022*72 + 023*72*73. (2.129) (2.128) (2.130) В результате почленного вычитания равенств (2.130) из (2.127) находим левые части уравнений динамики Л\(Т) = ----- = flu*7i + 019*71*72 +020*71*73; = 7г(^) ~ ^7 = а'^г + a,e^3 “ °24^' + + 021*72*73 + 023*73’, лз<г> = “ + = at \ dqj ддз ** ** । •• *2 *2 = 018*72 + О|6*73 “ 025*71 “ 022*72. (2.131) Перейдем к записи правых частей рассматриваемых уравнений — обобщенных сил (?,(/= 1, 2. 3), приведен- ных к осям кинематических пар. В соответствии с ра- венством (2.84) имеем Qi = Q/д + Q/. + Q/f • (2.132) Поскольку обобщенные координаты манипулято- ра *7ь *72. *7з — углы относительного поворота звеньев, обобщенные силы Q, и их составляющие в правой части (2.132) являются моментами соответствующих сил. Будем считать, что внешнее воздействие, приложенное к захватному устройству С, отсутствует: F = 0, поэтому все моменты Q,f = 0. Составляющая равна сумме известного момента развиваемого /-м двигателем, и суммарного момента трения М1С на его валу: QM=Af/A + + М/с. Двигатели связаны с осями кинематических пар через понижающие редукторы с передаточными отноше- ниями Л/>1, поэтому момент Qlt, приведенный к оси ки- нематической пары, будет равен QIA = nlQIJk = nl(MiA + + Мк). 34
Определим составляющие момента Q/B = Qf, 4- Q/i, вызванные весом звеньев р, (/= 1, 2, 3), т. е. составляю- щую грузом ри в захватном устройстве, т. е. состав- ляющую q;;. В соответствии с формулой (2.91) запишем з Q’l, = Е (<ХЗ|(О, / — 1)^_| /а — а32(0, / — 1)х,-| /и)р.. 1-1 /=1,2,3, (2 133) откуда Q'i. = S («31(0, 0)#,u — азХО, О)хо,и)р„ i-l 3 Qi* = Е («3i(0, 1 )уца — азг(0, l)xi,u)p< = i — 2 = аз|(0, 1)G/i2uP2 + У\зиРз)— азг(0, 1Хх12иРг + Х|ЗнРз); Qu = («3|(0, 2)i/23tt — азг(0, 2)х2зи)» < (2.134) где а3| (0, 0) = аз2(0, 0) = 0 (а(0, 0) — единичная мат- рица). Матрицы косинусов а(0, 1) = а(1), а(0, 2), а(0, 3) опре- делены формулами (2.99), (2.109), (2.110), откуда по- лучаем: а31(0, 1) = а3|(1) = 0; а32(0, 1) = а32(1) = 1; а3|(0. 2) = /2; a32(0, 2) = d2. (2.135) С другой стороны, Xi2u, £/i2и — составляющие век- тора г2ц=(х2ц, i/2u» z2u)t, определенного второй форму- лой (2.104): Х|2ц = х2ц = — 0,5/2/2; г/12а = </2u = 0,5/2d2; (2.136) *23ц, </23ц — составляющие вектора г3ц = (хзц, </зи, £зи)т» определенного третьей формулой (2.104): Х23Ц = ХЗц----- /з/з; У23и = !/3u = ^- Мз- (2.137) Наконец, Х|зи, £/i3u — составляющие вектора Г|3ц из матрицы А|3ц, определенной выражением (2.87): А|зц = Аг • А3ц = » (2.138) гДе матрицы А? и Ази известны из равенств (2 98), (2.100), (2.102), (2.104): 55
С учетом выражений (2.139), (2.140) из равенства (2.138) находим Г|3ц=(—0,5/з/2з—/2/2; 0,5/з^2з+W2; 0)т, (2.141) т. е. xi3u = “0,5/з/2з — /2/2; i/i3u = 0,5/з^2з + /2^2. (2.142) Подстановка выражений (2.135), (2.136), (2.137), (2.142) в равенство (2.134) дает следующие формулы для расчета Q/. (/ = 1, 2, 3): Qi. = 0; Qu = О.б/г/гРг + (0,5/з/гз + /г/г)рз = ДгбРг + ОгтРз! (2.143) Q3. = 0,5/з(/2^з + /з^г)рз = O28P3. ГДе 026 = О.б/г/г; 027 = /2/2 +0,5/з/23; О28=0,5/з/23- Эти формулы можно использовать и для опреде- ления моментов Q/,(/ =1,2, 3), вызванных весом груза рн в захватном устройстве: в них надо положить р3 = рн, р2 = 0 и заменить /з/2 на /3, так как для силы рм плечом относительно точек Ог, О\ является все звено 3, а не его половина: Q". = О, Qu = (/3/23 + /2/г)Рм = О29рИ; Qu = 1з(?зРн = 2а2&Рн, (2.144) где 029 = 2(026 + О2в). Таким образом, получаем все составляющие обобщен- ных сил (2.132) — правых частей искомых уравнений*: • Знак <С — > перед членом (Мгд-ЬМгс) л2 в правой части выра- жения для Q2 поставлен в соответствии с правилом, сформулирован- ным в примечании к формуле (2.3). 56
Qi = (Miд 4- Mic)nг, Q2 = —(АЪд + Мгс)Л2 + Q'2bP2 + 027Рз 4" О29Рн1 Q3 == (Мзд 4" Мзс>3 + О2ЬрЗ 4“ 2а28Рн. (2.145) Левые части уравнений — это выражения (2.131). Для учета инерционных свойств роторов исполнительных двигателей в них необходимо добавить члены вида Jpirfqj (/=1,2,3), где Jp/ — моменты инерции роторов В результате уравнения динамики манипулятора — его математическая модель, полученные с учетом всех исходных данных задачи, принимают вид (/pin? + Oit)q। 4" £i9<7i<72 + O2oqiqz = (М1Д 4“ А4|С)л ।; (/р2Л2 4“ Ol5)<?2 4" <3|8<73 — 024*7? 4“ O2I<72<?3 4" ^23*73 = = “(М2д4"Л42с)Л2 + а2бР24-а27Рз4“а29Рн; (/рЗЛз4"О|б)<7з + Д|8<72 — O25ql — O22ql = = (Мзд 4“ Л4зс)/1з 4" П28Рз 4“ 2а28ри. (2.146) Их коэффициенты ЯВЛЯЮТСЯ функциями углов Pl, Р2, рз и определяются выражениями (2.122), (2.123), (2.126), (2.129), (2.143). Сделаем ряд замечаний к изложенному выводу. Во- первых, отметим простоту полученных уравнений: их ле- вые и правые части содержат всего 15 параметриче- ских коэффициентов, для расчета которых необходимо вычислять значения четырех тригонометрических функ- ций: sinp/, cosp/ (/ = 2, 3). Однако эта простота достиг- нута в результате многократных, часто весьма громозд- ких, преобразований коэффициентов выражений Л,(Т) на различных этапах их записи. Отметим также высокую степень формализации всех шагов вывода уравнений (2.146), основой которой является использование резуль- татов, полученных в § 1.2, 2.1 с помощью матриц отно- сительного и абсолютного положений систем осей, на- чало которых совпадает с центрами кинематических пар и центрами инерции звеньев. Стремление к формализации выводов уравнений в рассматриваемом примере на опре- деленных этапах приводило к явному усложнению при получении ряда выражений. Например, при записи кине- тической энергии манипулятора можно было опустить вывод очевидных выражений: цЦ|=0, coi = <oiy = q\ и =O,5/yi<7:i, поскольку первое звено представляет собой стержень, вращающийся вокруг одной оси ) со ско- ростью coi = qi. Достаточно просто можно было бы запи- 57
сать и выражения для скоростей центров масс звеньев 2 и 3: Vu2 и Ццз. Для этого путем несложных геометриче- ских построений следует выразить координаты точек Ц2 и ЦЗ через длины звеньев /в> /2, /з и углы q\t q2t <73, а за- тем путем дифференцирования этих выражений найти составляющие скоростей vu2 и гц3 и их модули. Доста- точно просто записать и выражения моментов внешних сил pi, р2, рз и рн, приведенных к осям Oz0, O|Zi, O2z2; для этого путем простых геометрических построений достаточно найти проекции векторов ОЦ2, (ИЦ, а также oTUi, оТЦз и оЖ о7ц3, 0^)3 на плоскость Oxoi/o, они определят плечи соответствующих сил относительно осей Ozo, Ozi, O2z2 и, следовательно, искомые моменты этих сил. В рассмотренном примере возможные упрощения в записи ряда величин специально не использовались для того, чтобы наиболее полно показать методику практического использования расчетных формул, полу* ченных в § 2.1, 1.2, и облегчить их применение при рас- смотрении манипуляторов иной структуры и с другим числом звеньев, когда возможности упрощения расчетов не так очевидны, значительны или возможны вообще, и формализм изложенной методики проявляется как наи- более существенный положительный фактор, обеспечи- вающий наименьшую вероятность ошибки в записи пе- ременных, необходимых для составления уравнений ди- намики. Алгоритмический способ составления уравнений. Рас- смотренный выше вывод уравнений динамики манипу- лятора показал, что основные усилия затрачиваются на получение их левых частей Л^Т) (/=1,2,3), поэтому целесообразно дополнить его рассмотрением другого способа записи выражений Л,{Т), в котором расчет коэффициентов этих выражений осуществляется с по- мощью алгоритма, изложенного в § 2.1. Исходными данными здесь помимо масс и весов звеньев, их разме- ров, осевых моментов инерции, координат центров инер- ции звеньев являются также значения углов ^7, q2t q*3- В соответствии с выражением (2.82) при л=3 имеем Л,(Т) = S S hltkqk+ S S 2 hiMqkql9 j = 1,2, 3, (2.147) где hjik = duk + Ьцк9, h^ki = dfini + bjtki. (2.148) 58
Алгоритм расчета коэффициентов (2.148) состоит в реализации следующих шагов: 1. По известным матрицам: относительного положе- ния звеньев Аь А>, Аз [см. (1.14), (1.19), (1.20)], положе- ния центров инерции A|U, Alu, A3u, определенных форму- лами (2.103), (2.104), (2.99) — (2.101), и 07— выражение (155) —для значений q\. q*i ql вычислить матрицы: Aj|U = 07-A|U; AoIu = 07• Aoiu; Ao2u = AI • А?<; Ao2u=07 • Ao2ui Ao2u = 07 • Ao2ib А©2ц = AI • 07 • Ajtti Aj2u = ©7 • Aa2uJ Ао2ц = A| -(07)2- Aju; Аозц = Ai • Аз-AJu; Аази = ©7 • AWll; Л1зц = H7 • А'зц; Аозц=A1 • ©7 • A2 • Ази; Аози=©7 • Аозц; (2.149) Аозц=А| -(©7)2, Ази; Аозц=А| -07* Аз*©7е Ази; Аозц=А| • Аг*©7* A3u; Ао|и=©7- Аози; Аозц = А। • Аг • (©7)2 • Азц. Для упрощения записи расчетных формул введем обозначения матриц (2.149) и некоторых других B(l)=Ai; В(2)=Аогц; В(3)=Аозц; B(4)=Aoiu; B(5)=Ak: В(6)=Ак: B(7)=Ak; В(8)=Ак; В(9)=Аозц,* В(1О)=Ао|ц; B(ll)=Aik B(12)=A?k=AJL В(13)=Айц; В(14)=Аозц; В(15)=А?4ц=А^ц; В(16)=А2зц; В(17)=Аозц; В(18)=А^ц; B(19)=AgL = A& (2.150) и перейдем к выполнению следующих шагов алгоритма. 2. По формулам (2.49), (2.69) вычислить коэффи- циенты с одним верхним индексом 6*1(0, СХО. Cj(O для /, k= 1,2,3; — всего 18 коэффициентов: Ct(')=«i3(p)ai2(<7)+ а2з(р)а22(<?) + азз(р)азг(<7); С^0=аи(р)а|з(<7) + а2|(р)а2з(<7)+аз|(р)аз3 (9); С?(0=ai2<P)“i i(<7) + 022 (р) 021(47) 4- азг(р)аз|(<7)., (2.151) Соответствие чисел i, k и р, qt определяющих ин- дексы коэффициентов и номера используемых мат- риц (2.150), таково: р = /, 59
С 4. если /= 1; t । + Л + р, если Z =#= 1. 3. По формулам (2.62), (2.71) вычислить коэффи- циенты с двумя верхними индексами Cxkl(i), Cy\i), для k, I, i=l, 2, 3; k, имея в виду, что С;/0')=С//(0-Ф = ^ !Л 2: Cx(i) = ai2(p)ai3(<7)4-ai3(s)ai2(f)+а22(р)<х23(р) + + а2з($)а22(/)4- азг(р)азз(<7)+ азз($)аз2(0*’ Cj/(0 = ai i(p)a i з(<?) + сц i($)ai3(/) + a2i(p)a23(p) + + а21 ($)а2з(/) + аз |(р)азз(р) + аз i ($ )азз(/); Cj/(0=ai2(p)aii((7)4-ai2(s)aii(0 + a22(p)a2i(<7) + + a22(s)a2i(f)4- азг(р)аз|(р) + аз2($)а3|(/)- (2.152) Соответствие чисел i, k, I и р, q, s, t — индексов коэф- циентов и номеров используемых матриц (2 152) — определяется выражениями: s = i и если /=1, то р = </ = 4, /=10; если /=#1, то p=i-\-s + k, q=i + s-\-lt кроме того, ( /=19, если 1 = 3, k=\, 1 = 3, J t=р4- q-f-1 — 3 при всех других сочетаниях i, k, I. 4. По формулам (2.73) вычислить коэффициенты blik=jx СКОСХО+4СХ0СХ0+Л CiCj (2.153) для k, i, j=lt 2, 3; k, j^i—всего 10 коэффициен- тов: fr|||, fr|2l, Ь|22, fr|3l. Ь|32, Ь|зз, 62зз, 6222, 623|, 6333. 5. По формулам (2.42) вычислить коэффициенты djik = /п^х^хо, + yb, уо t + zb <zo ,) (2.154) для k, i, /=1. 2, 3; k,j^i—всего 10 коэффициен- тов: dm, d|2|, di22, di3i, di32, ^133, d233, d222, d23i, ^333» где xo(, 1/01, Zo< — первые три элемента четвертого столбца матриц Ао« (/, k= 1, 2, 3,k^i) с одним верхним индек- сом в (2.150). Соответствия индексов k, i координат в формулах (2.154) и номеров матриц В(<?) в (2.152), ко- торым принадлежат эти координаты, определяются соот- ношениями: q = 2i-\-k, если /^=1; р = 4, если /=1. 6. Вычислить по формулам (2.42) коэффициенты d,.»/ = m^xluXolu + уЬиУо'и + zbuZo'u) (2.155) 60
для /, i, k9 I = 1, 2, 3; /, k9 Z^Z, где x^9 y^9 zh — эле- менты матриц (2.150) с одним верхним индексом; кроме того, xoiu, уощ, г"* — элементы матриц (2.150) с двумя верхними индексами; соответствие чисел Z, k9 I и номе- ров q матриц В(<?), которым принадлежат эти элементы, определяется соотношениями: если /=1, Л=1, Z=l, то (?=10; если 1 = 2, то q = i k 1\ о ( 19, если 6=1 и Z = 3, если 1 = 3, то q=\ . 0 + ^4-/+ 9 при всех других k9 I. Всего по формулам (2.155) вычисляются 25 коэффи- циентов: Jllll, </|2ll, <Z|2I2, <Z|222, d 1311, J|3I2, <Z|313. <^1322* <Z|323» di3339 J22II, </2212» ^2222, ^231 I, ^2312, ^2313. ^2322, ^2323, </2333, ^ззи, ^3312, ^3313, </3322. ^зз2з. </зззз с учетом ТОГО, ЧТО djtki — dftih» 7. По формулам (2.81) вычислить коэффициенты СГ(0=ОбК"(0. Ф=х, у9 z (2 156) для Z, /, k9 / = 1, 2, 3; /, Л, / С Z, где C^(Z), C$z(Z) (ср = х, у, z) определены шагами 2 и 3. Всего вычисляются 25 коэффициентов для каждого значения переменной <р. Индексы /, Z, k9 / у них совпада- ют со значениями /, Z, k9 / коэффициентов опреде- ленных шагом 6. 8. По формулам (2.80) вычислить коэффициенты ь1М=+/, с;*'+д," (2.157) для /, Z, Л, Z= 1, 2, 3 и /, kt Z^Z— всего 25 коэффициен- тов с сочетаниями индексов jikl такими, как у коэффи- циентов dltHt определенных шагом 6 В равенствах (2.157) коэффициенты ciA/ и т. д. определены шагом 7, величины (/=1,2, 3; ф=х, у9 z) — известные константы 9. Вычислить коэффициенты hltk = ditk + bltlt9 (2.158) где d/tk9 bltk определены шагами 5 и 4 — всего 10 коэф- фициентов, индексы jik которых совпадают с индексами коэффициентов dltk. 10. Вычислить коэффициенты = bltki9 (2.159) где bltH9 djtki определены шагами 8 и 6 — всего 25 коэф- 61
фициентов, индексы jikl которых совпадают с индексами коэффициентов djiki. В результате реализации шагов I — 10 определены коэффициенты Л/Л и h,,*/, необходимые для записи вы- ражений при /=1, 2, 3. по формулам (2.82). Для п = 3 и /=1, 2, 3 из (2.28) запишем 3 i „ 3 4 < Л|(Т)== 2 2 S S i—I Л—I i—|ft—1/—| 3 i м 3 i i Л2(Т)= 2 S S S ^2,klQkQl\ i—2A-I i-2*-l/-l 3 M 33 Лз(Т)= hzzkQk + X S Лзз*/<7*<7ь *-1 (2.160) После реализации операций суммирования выраже- ния (2.160) приводятся к виду Л\(T)=b\q\ + ЬгЦъ + Ьз^з 4“ b^q\ + b$q2 + + Мз 4" bjq\q2 4" b%q\q^ 4" b$q2q3\ Л2(Т)= b\oq\ 4- b\। q2 4" £ 12<?з 4“ b\$q2\ 4" b\iq2 4" 4" Ь 15<?з 4“ b\$q\q2 4" b\iq\q3 4" ^18<?2<7з; (2.161) Лз(Г)= b\$q\ 4" Ьго<72 4” ^21<?з 4" ^22*7? + ^23^2 4” 4" ^24*73 4" />25<7l<?2 4“ ^26^1<73 4" ^27^1^3, где 6|=Л|ц4-Л|2|+Л|3|; ^2=Л|224"Л|32’» />3=Л1331 ^4=Й| 11 | 4"Л|21 I 4"Л|31 Ь b$ = h 1222 4“ Л 1322 Z />6 = Л|3331 ^7=2(Л|2124"Л|312); Ьв = 2Л|3|з; ^9=2Л|3231 b 10=^221 +^23b b\|=/l222 4“^232; ^12=^233^ ^l3=/l22l 4"^23l Г, Ь 14=/l22224“^2322i ^l5=/l2333; ^ie=2(/l22l24” ^2312)’. b|7 = 2^23l3i ^l8 = 2/l2323i ^19=ЛззГ, ^20=^3321 Ь2|=ЛЗЗЗ; ^22=^331 Ь ^23=^3322^ Ьц=Ьзззз'9 ^25=2Лзз|21 Ьгб=2/1зз1з; ^27=2/13323- Из сопоставления выражений (2.161) и (2.131) видно, что некоторые из коэффициентов 61—^27 равны нулю. Таким образом, подробно рассмотрен алгоритм рас- чета коэффициентов выражений Лfj) (/=1,2,3) и ука- зана специфика использования расчетных формул (2.149) —(2.160). Из рассмотрения видно, что алгоритм 62
состоит из двух неравнозначных частей. Первая (шаг 1) — это расчет 19 матриц (2.149), элементы кото- рых составляют базу для последующих вычислений; вто- рая (шаги 2—8) состоит в расчете вспомогательных переменных, через которые, наконец, определяются коэф- фициенты уравнений (шаги 9, 10). Расчеты по шагам 2—8 алгоритма достаточно про- сты. Единственно, что может вызвать необходимость в пояснениях, относится к правилам, устанавливающим соответствия индексов вычисляемых коэффициентов и используемых базовых матриц (2.149). Эти правила возникли в результате обозначений (2.150) с целью упрощения записи формул (2.151) —(2.158). При реали- зации алгоритма на ЭВМ все выписанные соответствия могут быть опущены, так как при составлении программ следует использовать тот факт, что индексы jk и ikl при- сутствуют в матрицах (2.149) и, следовательно, могут быть из них извлечены: число i — это второй нижний индекс этих матриц, числа /, k и kl — верхние индексы матриц с одним и двумя верхними индексами соответ- ственно. 2.3. Уравнения управляемого движения Как было показано ранее, уравнения динамики ма- нипуляторов в конечном счете определяют связь момен- тов М/д, /=1-г-л, создаваемых двигателями управления, с обобщенными координатами, скоростями, ускорениями. Из выражений (2.82), (2.84), (2.91), (2.92), (2.97) сле- дует, что 2 Гjkiqkqi=Qi k—i ju—i или S r,w*=Mn + (F, - 2 /= I...Л. (2.163) где rtki — коэффициенты, зависящие от обобщенных координат; F/=Qi’—Mkk — составляющие обобщенных сил, не зависящие от МкА. Система (2.163) из п дифференциальных уравнений второго порядка может быть решена относительно q, и представлена как = <7*. 4*). /. * = ।.Л- (2.1Ь4) 63
Правые части этих выражений — функции моментов двигателей, а также обобщенных координат и скоростей Чтобы получить уравнения управляемого движения, си- стему (2.164) следует дополнить уравнениями связи мо- ментов М1Л с известными управлениями q]. Вывод их можно провести способом, широко используемым в тео- рии автоматического регулирования: по известной струк- турной схеме привода управления координатой опре- деляется передаточная функция UZ/p) = по которой с помощью замен р = d/dt, pi = d2/dr и т. д. записывается искомое дифференциальное уравнение В частности, для типовой структуры привода, приве- денной на рис. 3.1, можно найти ц (о) — — I + Г4(р)Г5(р)*.+ W'sG’)*»с+ «7|.(Р) ’ (2’165) где и7н(р)=Г|(р)и72(р)1Гз(р)1Г4(р); Г|6(р)= W'm(p)U75(p)X X W6(p). После подстановки в формулу (2.165) выражений передаточных функций звеньев w-rfe-- »vp>=-г,^. где kyt Ту./к — известные постоянные, получаем -^7Т-=—« t /—з— • (2.167) Коэффициенты а0, ..., Де, Ь\, Ь2 вычисляются по фор- мулам k2=km(RJt)->-, k3=kck„-, = kik3; ks = fee=*2fc.; k1=kAkoe; Tt=Tcks; T2=TC+T\; T3=TcTy; T4=Ta + Ty; Ts=TyTn; со=ТъТ»\ С1=Тъ-\-ТяТ4\ C2—T4-\-Ta-\-kiTi\ (2.168) Сз=1 -Ь^тТ'з+ЛбТ^; С4=йб+Л7 7’г; cs—Ti-j-kj', Ь|=Ль ^2=^1^.
Операторному выражению (2 167) отвечает диффе- ренциальное уравнение d*M , . d'M , f0 ~d?~ + Cl ~dF~ + С2~аГ r Щ c'~dF~ + + + = (2.169) которое при известном управлении определяет мо- мент М1Л как функцию времени. Введем обозначения лг|/ = Л4/<, х2/=Мд...х6/ = JAfJp/d/5; x?i = х^=Яь ХЫ = ЯГ> /7 = ^|<7/ +^2<7/? (2.170) отметив, что при заданных q (t) функции /Х0 также известны. Запишем системы (2.164) и (2.170) в нормальной форме Коши и, объединив их, получим уравнения управ- ляемого движения в виде хч ^6/ — /6/» Х7/ = Х8/; X6l = fit 1=1,2, 3,4,5; /=1,2....п. (2171) Здесь обозначено /б/=Сб"'[//— СбХ|/ — СьХ2— СчХЗ/ — СзХ4~ С2Хь— С|Х6], (2.172) где ft — правые части уравнений (2.164). Интегрирование уравнений (2.171) каким-либо чис- ленным методом на ЭВМ при начальных условиях х(/(0), ..., *8,(0) и известных функциях не представляет трудностей, поэтому задачу моделирования управляе- мого движения можно считать решенной. Рассмотрим пример на составление уравнений управ- ляемого движения трехзвенного манипулятора, кинема- тическая схема которого показана на рис. 1.1, в. Считаем известными и одинаковыми структурные схемы приводов для всех трех степеней свободы (<?i, q2t q$) — см. рис. 3.1; кроме того, полагаем заданными функции управ- ления /= 1, 2, 3. Уравнения динамики манипулятора (2.146) можно решить относительно ускорений и записать в виде 3-1279 65
<7i ==СцЛ1|Д 4- Я2=СпМ:х + С|9‘Изд + C|8l <?3 = С20М2Л 4“ С2\Млл + С22- (2 173) Здесь параметрические коэффициенты определяются выражениями, приводимыми ниже без вывода Сп=Л|(а|4+л|/р|)— |; с 12=^2(015+Дг/рг) -1; С1з=яз(а1б4-лз/рз)Г№а|вС|2лГ’; £|5=а18£1злз’1; £i6= 1—£i4£i5i £17=—£19=—ОзСиНв1’» £20==£i2£is£i6l» £21=£1з£|в1*» £22=£?б1(£з—£|5£г); gi=Mic£ii—Oi9£i 1ПГ 1 <71<?2—йяоСиПГ' Я^Яз* &2 =—М2с£12 4“ а2бс12п2 *^2 4" а27с12п2 *Рз4" 4" ^26^12^2 Р** 4“ ^24^12^2 Я? ^21^12^2 * ЯI Чз — £23С12П2 *^2*» ^з=А1зс£|з4"а2в£|зЛз’,(рз4"2рн) 4-£|зПз’|О25</|4" 4“ <222£|ЗЛз~1</2. <2.174) Коэффициенты 01—028 в этих формулах определены в § 2.2. С учетом обозначений (2.170), (2.172), (2.164), (2.173) уравнения управляемого движения (2 171) запи- шутся как х</ = *<+|./-; x6l=f6l\ *7/ = *e/; x9l=ffA (=1.2.3.0; >=1.2.3. I (2175) где f 1 = £1 i*i । 4"£Г» /г = £|7*21 4" £i9*3i 4- £iel /з= £20*21 4" £21*31 4" £22, (2.176) кроме тогог в формулах (2.174) для g2t g3 следует заменить: <7|=Х|в, <72=*28, <7з=*з8. Таким образом, соотношения (2.172, (2.174) — (2.176) определяют модель управляемого движения манипуля- тора при известном задании /,(/).
ГЛАВА МОДЕЛИРОВАНИЕ МАНИПУЛЯЦИОННЫХ СИСТЕМ НА ЭВМ При исследовании манипуляционных систем широко используются методы моделирования, основанные на при* менении аналоговых вычислительных машин (АВМ), цифровых вычислительных машин (ЦВМ) и гибридных вычислительных систем (ГВС), состоящих из АВМ, ЦВМ и средств сопряжения. Обычно АВМ используются для исследования динамических характеристик отдельных приводов манипулятора; ЦВМ — для исследования си- стемы приводов и моделирования управляемого движе- ния манипулятора; ГВС — для решения задачи комп- лексного моделирования сложного робототехнического комплекса. 3.1. Моделирование приводов манипуляторов на АВМ При изложении особенностей моделирования приво- дов манипулятора на АВМ будем полагать, что читатель знаком с принципами работы АВМ, основными функцио- нальными блоками и техникой составления схем моде- лирования [1]. Рассмотрим особенности моделирования на АВМ систем автоматического управления (САУ) отдельными степенями подвижности манипулятора. Для математиче- ского описания динамики привода удобно использовать аппарат структурных схем и передаточных функций, позволяющий при моделировании широко использовать методы теории автоматического управления. На рис. 3.1 представлена структурная схема линеари- зованного привода с электрическим двигателем постоян- ного тока и абсолютно жесткой механической передачей. На рисунке приняты следующие обозначения: <?*, q — программное и текущее значения обобщенной координа- ты отдельной степени подвижности манипулятора; е — ошибка регулирования (разность между q* и q)\ W'i(s) — 3* • 67
Рис. 3.1. Структурная схема линеаризованного привода передаточная функция предварительного усилителя: U7i ($)=fcy/(l №2(5) и 1Гз($) — соответственно передаточные функции корректирующего устройства и усилителя мощности: И72($)=Лс (I +sTc)/s\ U73(s)= = Лп/(1 Ч-^Гп); ия — напряжение на якоре двигателя постоянного тока; 1Г4($)— передаточная функция «элек- трической» части двигателя: U74(s)=/jw/[Z?r (1 4-5Гя)]: Мл, — вращающий момент двигателя; 7ИН — момент со- противления нагрузки, приведенный к валу двигателя; lFs($) и U/б ($)—передаточные функции «механической» части двигателя; 1Г5($)= 1/(Л$); 1Г6($)= l/(zs), при этом Л=/дв + /н, Лв — момент инерции двигателя, /н — мо- мент инерции нагрузки, приведенный к валу двигателя. i — коэффициент передачи редуктора; Wj(s)=k„t — ко- эффициент противо-ЭДС; иМ$)=А,с — коэффициент стабилизирующей отрицательной обратной связи по угловой скорости. Будем полагать, что параметры системы принимают следующие значения: £у=5; Гу =0,001 с; &с = Ю; Тс = =0,02 с; Лп = Ю; Гп =0,003 с; /?я=0,05 Ом; km = =0,001 Н-м/А; Гя=0,01 с; /дв =5-10“5 Н-м-с2; Л = /дв; < = 70; /с =0,2 В-с/рад; k,.c = 0,07 В«с/рад. Рассмотрим построение переходных процессов при различных значениях параметров системы и момента Л4Н- При построении переходных процессов на АВМ целесооб- разно воспользоваться методом структурного моделиро- вания, при котором схемы моделирования составляются по структурной схеме системы регулирования, в состав которой входят типовые динамические звенья, имеющие порядок не выше второго. При структурном моделировании удается обеспечить топологическую эквивалентность схемы моделирования и исходной структурной схемы системы и, как следствие, более простую реализацию задания начальных условий 68
Рис. 3.2 Аналоговая модель линеаризованного привода Усилитель 2 — интегратор по сравнению с методом составления схем моделирова- ния по дифференциальным уравнениям системы. Аналоговая модель исходной системы (см. рис. 3.1), составленная по методу структурного моделирования, представлена на рис. 3.2. В схеме использованы модели элементарных звеньев. Номера операционных усилителей помешены в соответствующие треугольники. Как извест- но, в АВМ исходным переменным ставятся в соответ- ствие электрические напряжения, называемые машинны- ми переменными. Для обозначения машинных перемен- ных используются обычные переменные с черточкой сверху, например </* (рис. 3.2). Составив аналоговую схему, необходимо решить задачу выбора масштаба машинных переменных. Мас- штаб независимой переменной (времени) Mt выбирается в соответствии с выражением где £. — машинное время; t — независимая переменная исходной задачи (время); Mt представляет собой безраз- мерную величину, причем при М/=1 процесс моделиро- вания протекает в реальном масштабе времени, при М > 1 — в замедленном, при Mt< 1 — в ускоренном масштабе времени. Масштабы зависимых переменных определяются в соответствии с выражением Mx = Ux/x, где Ux—машинная переменная; х— зависимая пере- менная исходной задачи. При выборе масштаба Mt обычно полагают, что ма- шинное время (время моделирования) изменяется в пре- 69
делах 15—30 с. Тогда, зная время протекания переход- ных процессов <пР в исходной системе, можно найти М Предварительный анализ показал, что при /пр не менее 0,5 с значение М t=(15 4- 30)/0,5 = 30 4- 60. Выберем Af/=100, т. е. исследование переходных про- цессов произведем в замедленном масштабе времени. При определении масштабов зависимых переменных и коэффициентов передачи схемы, изображенной на рис. 3.2, будем пользоваться данными, приведенными в [1], позволяющими определить коэффициент передачи схемы набора по исходным коэффициентам передаточ- ной функции типового элементарного звена и масштабам зависимых переменных и независимой переменной Mt. При этом запишем следующие выражения: *12=4г-; *22 = -ГГ7 ^32 = i AliZ, Ми, Л1*ос. *41*6! =кТс *5!*62 = *е гДДч *71 = Ми, MuMt М'сТпМ, • 1 . l Ми, , . Ml, *72==mT7 ’ ksi==~M^’ ki2==~M7. *91= *92= тД. ; *101 =*102=1 К.Ми.ТяМ, b _ ЛЕ . Л|" ЛМл,„М. ’ . M. . . k.M, ki2l==~MT' *,3'=-ЛСЙ fc|51 =1 9 где Л2=1/0‘М- При определении коэффициентов передачи схемы (рис. 3.2) необходимо знать масштабы всех зависимых переменных. При вычислении масштабов зависимых переменных требуется знать максимальные значения со- ответствующих зависимых переменных исходной струк- турной схемы, которые не всегда известны. Поэтому воспользуемся способом вычисления коэффициентов пе- редачи, при котором полагается, что отношения масшта- 70
бов зависимых переменных в выражении (3.1) равны единице, тогда коэффициенты равны: fcn==l; &|2=1; ^21 =50; ^22 = Ю; ^3i = 1; ^32= 1; = =0,2; ^51^62 = 0,1; £71 =33,3; Л?2=3,33; k&i = 1; k&2= 1; /?9i=0,2; fc92 = l; &ioi = l; А|02=|; ^ш = 1; &i2i=0,2; £i3i =0,0007; Лн|=0,07; fcisi = l. Анализ приведенных данных показывает, что ряд коэффициентов (&гь Л71, ^1зь fci4i) имеет значения, от- личные от пределов 0,1 —10, что обычно рекомендуется при настройке коэффициентов передачи на АВМ. Вы- полним поэтому перераспределение коэффициентов схемы набора исходя из правила постоянства передаточной функции замкнутого контура [1]. В схеме, приведен- ной на рис. 3.2, выделим три замкнутых контура: кон- тур А образуют операционные усилители 1—13, 15\ контур Б — усилители 3—11, 14\ контур В — усилите- ли 8—12. Тогда коэффициенты передачи контуров А, Б и В имеют вид: ^21^3|(^41^61 + ^51^62)^71^81^91^102^111^121^131^151^12; (^41^61 + ^51^62)^71^81^91^102^111^141^32; &9I&I02&IU&I2I&II2. При распределении коэффициентов передачи замкну- тых контуров следует учитывать следующие обстоятель- ства: 1) коэффициенты схемы набора должны изменяться в пределах 0,1 —10; 2) возможно большее число коэффициентов набора должно равняться единице, что облегчает настройку схемы; 3) выходные напряжения всех ОУ не должны пре- вышать пределы ztUnax: для АВМ МН-7М значение l/max = -t 100 В, для АВМ АВК-31 значение (7max=dbl0 В. Общий коэффициент передачи контура А не изменит- ся, если принять новые значения коэффициентов: &2i=5; Л71 =0,333; ^131 =0,7. Тогда для постоянства общего коэффициента передачи контура Б необходимо выбрать fti4i = 7. Коэффициенты передачи контура В остаются прежними. Окончательно коэффициенты передачи схемы, приве- денной на рис. 3.2, принимают следующие значения: Лц = 1; Л|2=1; ^21=5; ^22= Ю; &3i = l; £32= 1; £41 = I; 71
*5i = l; *6i=0,2; *62=0,1; *7I=0,333; *72 = 3,33; *8| = 1; *2=1; *91=2; *92=1; *ю| = 1; *102= I; *ш = 1; *i2i=0,2; *i3i=0,7; *ui = 7; *151 = 1. На рис. 3.3 представлен полученный по результа- там моделирования на АВМ график переходного процес- са в системе (кривая /), построенный в относитель- ных единицах <?(/)///(со). Переходный процесс имеет монотонный характер, время регулирования /р = 2,8 с. Изменяя глубину стабилизирующей обратной связи (ко- эффициент fc c)» можно уменьшить время регулирования. В частности, кривая 2 на рис. 3.3 соответствует k-x = =0,02. В этом случае коэффициент передачи усилите- ля 14 (см. рис. 3.2) равен *н> = 2. 3.2. Моделирование приводов и управляемого движения манипуляторов на ЭВМ Для моделирования как систем автоматического управления приводами манипуляторов, так и управляе- мого движения манипуляторов используются ЭВМ. Наиболее часто для математического описания при- водов манипуляторов используется аппарат структурных схем и передаточных функций. В этом случае задается структурная схема системы, состоящая из соединений типовых динамических звеньев с передаточными функ- циями степени не выше 2 и безынерционных звеньев с нелинейными характеристиками. 72
При моделировании на ЭВМ динамики привода необходимо записать систему дифференциальных урав- нений в нормальной форме Коши. В этом случае широ- ко используются известные в теории автоматического управления правила структурных преобразований. Найдем выражение для системы дифференциальных уравнений, описывающих динамику линеаризованного привода с абсолютно жесткими механическими связями, структурная схема которого приведена на рис. 3.1. Для этого предварительно запишем выражение для выход- ного сигнала q в форме изображения Лапласа Q(s)= ir,($)Q*($)+ Гм(5)Ми(Л (3.2) где Q(s), Q*(s), AfH(s) определяются как изображения Лапласа функций <?(/), <?*(/), М<(0 соответственно; — передаточные функции системы по задаю- щему и возмущающему AfH воздействиям соответ- ственно, причем для структурной схемы, приведенной на рис. 3.1, передаточные функции имеют следующий вид: ir га— fei.y-Ffro___. W ? + o.s$ + ... + a5s + <b ’ iv ____ ns4 4-... 4-Cis-f-to + ass + a. ’ где коэффициенты ai, ..., b\, bo, C4, .... Co зависят от параметров системы. Соответствующие выражения имеют громоздкий вид и здесь не приводятся. Выражение (3.2) позволяет записать дифференциаль- ное уравнение системы = /п^+М’ + о-^+--+а-^+с°Л1 • (3.3) Дифференциальное уравнение 6-го порядка (3.3) сведем к системе дифференциальных уравнений первого порядка dxi/d/=X2 + ai9* + PiM,; dx2/dl=x3 -f- a2q* + РгМ.; (3.4) dxs/dt=х6 + a3q* + psM<; 5 dxt/dt = — £ ae-*x* +1 + a6<7* + PeM< k-0 73
где коэффициенты а, и р, определяются из следующих соотношений: «о = Ь6; — I — «6-1 = 6,— V а6_*_,а»; . о 5 аь = Ьо— Ов I -о Ро = Гб1 h- I - j Рб —/=£/ £б — л — /Р*; я #-о Р* = г0 — £ О»-*Р*; 5. • - о (35) Выражение (3.5) позволяет определять коэффициен- ты а, и Р/ при произвольных значениях Ь, и q. При этом следует учесть, что Ье=Ьь = ... = Ь2 = 0'9 Сб = ^5=0 Выходная величина запишется как q = xi +а0<7* + РоЛ/н. Для уравнения (34) коэффициенты ао и р0 равны нулю. Система (3.4) называется системой линейных дифференциальных уравнений в нормальной форме Коши. Если учитывать обычно присутствующие в структур- ной схеме привода нелинейности типа «ограничение* или «люфт>, то для описания привода можно получить систему нелинейных дифференциальных уравнений перво- го порядка. Для сложных структурных схем с учетом нелиней- ностей процедура приведения дифференциального урав- нения привода к системе дифференциальных уравнений в нормальной форме Коши довольно громоздка и в со- временных программных комплексах она выполняется обычно на ЭВМ. Для моделирования на ЭВМ управляемого движения манипулятора используются следующие группы опе- раций: 1. Операции вычисления коэффициентов уравне- ния (2.146), зависящих от обобщенных координат и их производных. Как правило, эти операции сводятся к 74
стандартным действиям над матрицами, например к вы- числению коэффициентов системы дифференциальных уравнений динамики манипулятора в нормальной форме Коши. 2. Операции интегрирования систем дифференциаль- ных уравнений (2.146), (3.4), описывающих динамику управляемого движения манипулятора. 3. Операции вычисления обобщенных сил и моментов, которые сводятся к обычным вычислениям по конеч- ным формулам. Из перечисленных вычислительных операций интегри- рование систем дифференциальных уравнений требует больших затрат машинного времени. От выбора метода интегрирования и соответствующих программных средств зачастую зависит успешное решение задач моделиро- вания. Систему дифференциальных уравнений управляемого движения манипулятора удобно рассматривать в вектор- ной форме dY/d/ = F(Y, 0, (3.6) где Y — n-мерный вектор; F —векторная функция. Требуется найти решение Y(0 уравнения (3.6), удовлетворяющее начальным условиям Y(/0)=Vo для t>to. Эта задача называется задачей Коши. Для ее решения наиболее часто используют численные методы интегрирования систем дифференциальных уравнений. С традиционными методами интегрирования систем дифференциальных уравнений можно ознакомиться в [2]. Рассмотрим один из алгоритмов интегрирования «жестких» систем дифференциальных уравнений. Эффект жесткости проявляется в том, что в решении системы дифференциальных уравнений имеются составляющие двух видов: с большими производными по времени и малыми производными, причем составляющие с боль- шими производными быстро убывают, так что решение системы уравнений в основном определяется составляю- щими с малыми производными. Однако в любой момент времени возможно появление быстрозатухающего про- цесса, описываемого функциями с большими производ- ными. При этом даже незначительное увеличение шага интегрирования приводит к резкому возрастанию по- грешности вычислений. Жесткие системы дифференциальных уравнений ис- пользуются при моделировании явлений, где разброс 75
временных характеристик заложен в физической природе явлений. Например, системы дифференциальных урав- нений, описывающие управляемое движение манипуля- тора, относятся к жестким системам, так как переход- ные процессы в системе управления приводом затухают быстрее, чем переходные процессы в механической части манипулятора. Для интегрирования жестких систем разработаны специальные методы, из которых отметим метод, ис- пользующий элементы матрицы Якоби исходной систе- мы дифференциальных уравнений [3]: Y„+I = Y„+S Р.-Х.; । Xi=ft-F„ + aift tv х>; <?F(Y.-*-V Y„.X,) X. = ft • F(Y„ + s ( ₽.. • xs) + a,ft--- X„ i=2 k. где au pis, yIS, Pt — параметры метода интегрирования. Например, для метода второго порядка [3] коэффи- циенты могут принимать следующие значения: fc=2; Pi=O; P2=l; a,=a2=l-V2/2; у2|=0; Р.ч=(л/2 -1)/2. Выше отмечалось, что использование традиционных методов интегрирования предполагает сведение исходно- го дифференциального уравнения или системы диффе- ренциальных уравнений к нормальной форме Коши. В последние годы были разработаны специальные про- граммные комплексы, позволяющие существенно упро- стить процедуру задания структуры и параметров си- стемы управления. Как правило, такие системы работают в режиме диалога пользователя с ЭВМ и позволяют существенно сократить время моделирования. К подобного рода комплексам относится програм- мная система МАСС, позволяющая исследовать САУ во временной области [4]. Система МАСС предназначена для исследования широкого класса САУ (линейных, нелинейных, импульсных, цифровых) во временной области. При этом основным инструментом исследования является построение переходного процесса в системе 76
при определенных начальных условиях и входных воз- действиях. Отметим основные особенности МАСС. 1. Система обеспечивает интерактивный режим взаимо- действия пользователя с ЦВМ. От пользователя требу- ется давать правильные ответы на вопросы, задавае- мые машиной, причем последовательность вопросов опре- деляется ЦВМ. 2. Система имеет оверлейную структуру. В каждый момент времени в оперативной памяти ЦВМ находятся управляющая программа и один из программных моду- лей, выполняющий заданную функцию, например ввод структуры САУ и ее параметров и т. д. Остальные модули находятся на внешнем носителе (магнитном диске) и вызываются в оперативную память по мере необходи- мости. Передача информации между отдельными моду- лями осуществляется через общую область памяти. Оверлейная структура системы ориентирована на ми- ниЭВМ (СМ-4 и т. д.). 3. Входной язык системы относится к языкам таб- личного типа и позволяет описывать САУ, заданные структурными схемами. При этом САУ разбивается на типовые функциональные блоки (интегратор, инерцион- ное звено, инвертор, нелинейные блоки и т. д.). Функцио- нальные блоки образуют библиотеку входного языка. Полный перечень функциональных блоков приведен в [4]. Максимальное число блоков в схеме не должно превышать 200, а порядок моделируемой системы не должен быть выше 75. 4. Структурная схема САУ описывается с помощью спецификации структуры. Каждый оператор структуры имеет следующий вид: I Т Y К L, где I — номер, присвоенный данному блоку; Т — мнемо- нический тип блока, например символ « + > означает сумматор; Y, К, L — номера блоков, выходы которых подаются на входы данного блока. 5. Значения параметров блоков и начальные усло- вия задаются с помощью операторов спецификации параметров, общий вид которых имеет вид I Pi Р2 Рз, где I — номер блока; Р|, Рг, Рз — значения параметров блока. 6. Структурная схема САУ приводится к системе 77
20 Рис. 3.4. Схема моделирования линеаризованного привода средствами МАСС дифференциальных уравнений в нормальной форме Коши, для интегрирования которых используются: модифицированный метод Эйлера с постоянным шагом; усовершенствованный метод Эйлера с постоянным и переменным шагом; метод Рунге — Кутта четвертого порядка с постоян- ным и переменным шагом. 7. В состав программной системы входят оптимиза- ционные процедуры, позволяющие решать задачи пара- метрической оптимизации САУ. Библиотека оптимизаци- онных процедур включает алгоритмы Розенброка, симп- лекс-метода, случайного поиска, Фибоначчи и Гаусса — Зайделя. Рассмотрим пример применения системы МАСС для моделирования системы управления приводом манипуля- тора (см. $3.1). На первом этапе по структур- ной схеме системы (см. рис. 3.1) составляется схема моделирования с использованием блоков из функцио- нального набора блоков. Схема моделирования представ- лена на рис. 3.4. В состав схемы входят следующие блоки: блоки суммирования 10, 12, 16, 18, 21 (языко- вый символ «+>); блоки констант 9, 20 (языковый сим- вол К), с помощью которых задаются значения по- стоянных задающего q* и возмущающего Л4Н воздей- ствий соответственно; блоки интеграторов 13, 22, 24 (языковый символ I); блоки инерционных звеньев 11, 17, 19 (языковый символ AN); блоки усилителей 14, 15, 23, 25, 27, 29, 31 (языковый символ G); блоки инвер- торов 26, 28, 30 (языковый символ «—>). 78
Таблица 31 Блок Тип Входы 1 2 3 9 К 10 + 9 31 — 11 AN 10 — — 12 + 11 29 — 13 1 12 — — 14 G 13 — — 15 G 12 — — 16 + 14 15 — 17 AN 16 — — 18 + 17 27 — 19 AN 18 — — 20 К —. — — 21 + 19 20 — 22 I 21 — — 23 G 22 — — 24 I 23 — — 25 G 24 —- —. 26 — 23 — — 27 G 26 — — 28 — 23 — — 29 G 28 —. —. 30 — 25 — — 31 G 30 — — Таблица 32 На втором этапе по структурной схеме со- ставляется спецификация структуры (набора в произ- вольном порядке операторов структуры, необходимых для ввода в ЭВМ функционального состава и конфи- гурации схемы моделирования). Спецификация струк- туры для схемы, изображенной на рис. 3.4. представле- на в табл. 3.1. На третьем этапе составляется спецификация параметров, позволяющая задавать начальные условия и параметры. В частности, спецификация параметров, соответствующая нулевому начальному состоянию систе- мы, единичному задающему воздействию и отсутствию возмущающего воздействия Л1Н, представлена в табл. 3.2. На четвертом этапе происходит ввод специ- фикаций структуры и параметров ЭВМ. Далее пользова- телю предоставляется возможность выбрать метод, шаг и время интегрирования, а также интервал выдачи дан- ных. По окончании интегрирования системы дифферен- циальных уравнений и выдачи результатов работы поль- 79
0,1 0,2 0.3 0,4 0,5 0,6 0,7 0,8 0,9 1,0 Г. с Рис. 3.5. Графики переходных процессов зователю предоставляется возможность выбрать один из 15 вариантов дальнейшего общения с ЭВМ (например, изменить структуру, параметры и начальные условия, а также метод и параметры интегрирования и т. д.). Результаты моделирования с помощью системы МАСС переходного процесса в системе (см. рис. 3.4) при £<с=0,025 представлены на рис. 3.5 (кривая /). С помощью программной системы МАСС можно исследовать влияние основных нелинейностей (ограниче- ния, люфта, зоны нечувствительности) на работу систе- мы управления приводом. В частности, переходный про- цесс в системе при учете нелинейности «ограничение* Рис. 3.6. Схема двухзвенного манипулятора и «зона нечувствительности* представлен кривой 2. Рассмотрим моделирование управляемого движения мани- пулятора на ЭВМ. Для просто- ты опишем движение двухзвен- ного манипулятора в верти- кальной плоскости (рис. 3.6). Двигатели расположены в шарнирах О\ и Ог. Уравнения динамики мани- пулятора можно получить с помощью уравнений Лагранжа второго рода 80
где Т — кинетическая энергия манипулятора; qt и qt — обобщенные координаты и их производные; Q, — обоб- щенные силы. Запишем уравнения динамики двухзвенного манипу- лятора: Q\\Q\ + Gi2<72 = ЛЬ; <22! <7! + Я22<?2 = -^2, где Oi) = tn 1t\ 4" j! + 4/712^1 4" ^2^2 4" 4/712/|/2COS^2 4" *^2» а12 = ГП2^+ 2zn2/|/2COS92+ >2; (3./) 02! =«I2; 022 = 012^2 4" J 2* В (3.7) используются следующие обозначения: m\ и /иг—массы 1-го и 2-го звеньев соответственно; 2/| и 2/г — длины звеньев; Л и /2 — моменты инерции звеньев. Выражения для Mi и М2 имеют вид М \ = МдвН| 4- М 11 4“ Alp2i 4" 2m2tihq2Sinq2 4“ -F 4z7i2Z|/2<7l<?2Sin^2 i м2 = Л1дв2 6 4“ Мр22 — 2/7l2/|/2<71 sin<72. (3.8) В выражении (3.8) М.Л1 — момент, создаваемый ;-м двигателем; /у — коэффициент передачи /-го редуктора; Мр 11 и Л1Р21 — моменты, создаваемые в 1-м шарнире весом звеньев: Л4Рц = — Pi/icosiji; MP2i= — />2(2/|Cos<7i4- 4-/2Cos((/i 4-<7г)); М.22 — момент, создаваемый во 2-м шарнире весом 2-го звена Л1Р22 = —/^bcos^i 4-<72)« При этом в выражении (38) для простоты не учитываются моменты трения в шарнирах и вес груза. Для рассматриваемой упрощенной модели привода момент, развиваемый двигателем, ЛЬ. =(<7* —<7)*i ~ <7*2, (3.9) где <7*— задающее воздействие; k\ и &2 — постоян- ные, определяемые системой управления привода. Выражение (3.9) получено для линеаризованной мо- дели привода (см. рис. 3.1) при lTi(s)=fcyi; 1Г2(«)=^2; U 3(s)=*y3; ir4(s)=^4. 4—1279 81
Qt 82
Для моделирования управляемого движения исполь- зовалась программная система МАСС. Моделирование производилось при следующих исходных данных: 2/| =2/2=1 м; nil =/712 = 2,5 кг; (?|(0)=0; </2(0)=0; (?i(0)=0; (?2(0)=0; /|=50; /2 = 50. На рис. 3.7 и 3.8 предствлсны результаты моделиро- вания при fci = 200; ^2=2; qt = 0,4 рад; <?* = 1рад. 3.3. Моделмрование управляемого движения манипуляторов на ГВС В последние годы при исследовании сложных ав- томатических систем используются ГВС. Появление их обусловлено тем, что для моделирования сложных ав- томатических систем невозможно использование только аналоговых либо только цифровых машин. Задачи комплексного моделирования сложных робототехниче- ских комплексов удается решить лишь с помощью ГВС, в которых сочетаются высокое быстродействие АВМ с высокой точностью ЦВМ Эффективность использования ГВС во многом опре- деляется рациональным разделением функций аналого- вой и цифровой частей ГВС. При решении задач разделения функций используют- ся два принципа. 1. Принцип разделения по быстродействию. При этом в исходной системе выделяются подсистемы с большими и малыми постоянными времени. Подсистемы с больши- ми постоянными времени определяют <медленные> компоненты решения, а подсистемы с малыми постоян- ными времени — «быстрые» компоненты решения. При этом «быстрые» компоненты решения целесообразно моделировать на АВМ, а «медленные» — на ЦВМ. На- пример, при исследовании управляемого движения мани- пулятора моделирование приводных систем удобно производить на АВМ. Однако при этом следует учиты- вать, что получается сравнительно небольшая точность решения. 2. Принцип подобия В соответствии с этим принци- пом моделирование непрерывной части системы должно производиться на АВМ, а дискретных элементов — 83
Рис. 3.9. Схема разделения операций в ГВС при моделировании управляемого движения манипулятора на ЦВМ, например микропроцессоров в контуре управ- ления. Рассмотрим для примера моделирование управляемо- го движения двухзвенного манипулятора на ГВС. Тогда в соответствии с приведенными принципами АВМ выпол- няет операции интегрирования системы дифференциаль- ных уравнений, описывающих динамику манипулятора, и уравнений динамики привода. Для упрощенной модели привода эта операция не производится. При этом ЦВМ выполняет следующие операции: — решение прямой задачи кинематики, т. е. опре- деление координат и ориентации захватного устройства; — расчет коэффициентов системы дифференциальных уравнений, описывающих динамику манипулятора; — расчет управляющих воздействий (уставок) q' на приводы манипулятора. На рис. 3.9 приведена упрощенная схема разделения задач на АВМ и ЦВМ. Устройство отображения поз- воляет наблюдать обобщенные координаты и их произ- водные, а также координаты захватного устройства х, у.
ГЛАВА ПРИНЦИПЫ И АППАРАТ МОДЕЛИРОВАНИЯ ГИБКИХ АВТОМАТИЗИРОВАННЫХ ПРОИЗВОДСТВ Математическое моделирование является одним из основных инструментов решения задач анализа, проекти- рования и управления гибкими автоматизированными производствами и робототехническими комплексами. Возрастание роли моделирования объясняется прежде всего тем, что инженерные методы выбора техниче- ских решений и расчета технико-экономических показа- телей, принятые для традиционных производств, оказы- ваются либо слишком грубыми, либо не применимыми для высокоавтоматизированных производств в силу специфики последних*. В данной главе рассмотрены принципы и математи- ческий аппарат, наиболее часто используемый для моде- лирования технологической и управляющей подсистем ГАП. 4.1. Гибкие автоматизированные производства как объект моделирования Моделирование ГАП, как и любой производственной системы, предполагает определение состава и характе- ристик ее подсистем, элементов и связей между ними. Технологическую систему ГАП можно разделить на ос- новное технологическое оборудование, транспортную под- систему, подсистему складирования. В каждой из этих подсистем, в свою очередь, можно выделить совокуп- ность взаимосвязанных элементов. Так, основное техно- логическое оборудование состоит из отдельных единиц оборудования, каждая из которых характеризуется опре- деленными параметрами, например: длительностью вы- полнения технологических операций, надежностью, ем- • Специфика ГАП описана в кн 1 данной серии учебных пособий 85
Входы Рис. 4.1. Элемент технологического процесса костью магазина инструментов и т. д. Элементами подсистемы складирования являются склады, оператив- ные накопители и персональные (совмещенные с ос- новным оборудованием) накопители Наиболее важные их характеристики — емкость, время обмена изделиями, порядок доступа к изделиям в накопителе. Все элементы (как и подсистемы) абстрактно можно описать тремя категориями: входы, процесс, выходы (рис. 4.1). Входы и выходы представляют собой потоки мате- риалов, изделий, энергии, информации. Они могут иметь как непрерывный, так и дискретный характер. Процесс — это изменение состояния элементов во времени. Состоя- ние можно представить вектором параметров, характе- ризующих процесс. В зависимости от типа элемента и степени детализации процесса состояние может менять- ся дискретно (компоненты вектора состояния меняются в некоторые моменты времени мгновенно) либо непре- рывно. Используя рассмотренные понятия, в качестве приме- ра опишем обрабатывающий центр. Входами элемента «обрабатывающий центр» являются потоки изделий, предназначенных для обработки, инструментов, энергии, управляющей информации. Выходы элемента образуются потоками обработанных деталей, изношенных инстру- ментов, информации в управляющую систему. Состоя- ние обрабатывающего центра может определяться следующими параметрами: перечень инструментов, кото- рыми заполнен инструментальный магазин, тип инстру- мента, находящегося в данный момент в шпинделе, характер движения режущего инструмента, длительность выполнения операции и др. Процесс функционирования обрабатывающего центра — это изменение его состоя- ний во времени. Выбор параметров, хкоторыми описы- вается состояние, происходит на этапе постановки конкретной задачи моделирования и диктуется ее ха- рактером. Так, в некоторых задачах моделирования при описании обрабатывающего центра (либо любого обра- батывающего станка) не требуется учитывать потоки энергии, инструментов, информации, так как они не 86
влияют существенно на характеристики, которые требу- ется определить в результате моделирования. В этом слу- чае обрабатывающий центр абстрактно представляется элементом с одним входом и одним выходом, а его функционирование описывается чередованием во времени двух состояний: центр обрабатывает деталь; центр про- стаивает. Оба состояния характеризуются длитель- ностью. Наиболее часто используют следующие типовые элементы моделей производственных систем. 1. Элемент с одним входом и одним выходом. Та- кими элементами описывается обрабатывающее оборудо- вание, накопители, транспортные системы. Состояние накопителя определяется числом изделий, находящихся в нем в данный момент времени; состояние транспортной системы — такими характеристиками как загружена, пе- ремещается, стоит. Могут также учитываться скорость и ускорение перемещения, время фиксации и расфиксации и т. д. 2. Элемент с двумя входами и более и одним выходом. Такими элементами описываются сборочные автоматы, в которых происходит соединение нескольких деталей в единый узел. 3. Элемент с одним входом и несколькими выходами. В некоторых случаях таким элементом представляется автоматизированный склад изделий, имеющий одну за- грузочную и несколько разгрузочных площадок. Структуру производственной системы можно пред- ставить взаимосвязанной совокупностью ее элементов, при этом существуют различные способы связи элемен- тов. Рассмотрим наиболее употребительные. При последовательном соединении вы- ход предыдущего элемента является входом последую- щего. Очевидно, при таком соединении элементов обра- батывающего типа желательно, чтобы ресурсы их произ- водительностей были равны. В ином случае возникает «узкое место и элементы с большим ресурсом произ- водительности будут работать с недогрузкой. Структуры с последовательно соединенными элементами характерны для сборочных технологических процессов с синхронным конвейером. Каждый элемент является сборочным авто- матом. Ресурсы производительности всех сборочных ав- томатов должны быть одинаковы и выбраны так, чтобы обеспечить заданный темп выпуска изделий. В случае, когда производительности обрабатываю- 87
тих или сборочных элементов изменяются в процессе функционирования, например, из-за простоев, связанных с отказами или профилактикой, между последовательно соединенными элементами целесообразно установить бу- ферный накопитель с переменным запасом продукта. При нормальном функционировании в накопителе под- держивается некоторый постоянный запас продукта. При выходе из строя первого (по ходу технологического процесса) элемента второй не прекратит работу, при этом запас в накопителе будет уменьшаться. Время работы второго элемента при неработающем первом определяется величиной запаса в накопителе. При отказе второго элемента запас продукта в накопи- теле будет увеличиваться, а время работы первого эле- мента при неработающем втором определяется разностью между предельной емкостью накопителя и величиной за- паса в момент отказа второго элемента. При параллельном соединении объеди- нены входы и выходы элементов. Такое соединение обычно используется для увеличения интенсивности об- работки продуктового потока, так как производитель- ности элементов, соединенных параллельно, складыва- ются. Структура с обратной связью, при кото- рой часть выходного потока элемента Si подается на вход элемента 5г, приведена на рис. 4.2. На практике структуры с обратными связями применяются, например, если в элементе Si производится контроль изделия, а в элементе S2 — исправление брака. Реальные производственные системы, как правило, имеют комплексную структуру, т. е. структуру, объеди- няющую все три рассматриваемых типа соединений элементов. Построение структуры новых высокоавтоматизиро- ванных производств является, как правило, труднофор- мализуемым процессом. Анализ предлагаемой проекти- ровщиком структуры и технических решений в значи- тельной мере опирается на математическое моделиро- вание. При этом можно решить следующие задачи: 1) определить производительность всей системы и загрузку ее отдельных элементов при известных ха- рактеристиках изделия, технологии, ресурсах производи- тельности всех элементов и емкостях накопителей; 2) определить необходимые ресурсы производитель- ности всех элементов системы и емкости накопителей 88
Рис. 4.2. Структура с об ратной связью при известных характеристиках изделия, технологии и плановом задании; 3) определить необходимую производительность транспортной системы и емкости накопителей при известных характеристиках изделия, технологии, плановом задании и ресурсах производи- тельности обрабатывающих (сборочных) элементов; 4) определить потерю производительности системы при отказе определенных элементов при известных ха- рактеристиках изделия, технологии, плановом задании, ресурсах производительности и емкостях накопителей. Перечисленные задачи являются наиболее характер- ными при анализе проектов ГАП, но не исчерпывают список возможных постановок задач. Для моделирования ГАП используются разнообраз- ные методы, которые можно разделить на два широких класса: аналитические и имитационные. Аналитическое моделирование осно- вано на косвенном описании моделируемого объекта с помощью набора математических формул. Язык анали- тического описания содержит следующие основные груп- пы семантических элементов: критерий, неизвестные, данные, математические операции, ограничения. Наибо- лее существенная характеристика аналитических моделей заключается в том, что модель не является структурно подобной объекту моделирования. Под структурным по- добием здесь понимается однозначное соответствие эле- ментов и связей модели элементам и связям моделируе- мого объекта К аналитическим относятся модели, по- строенные на основе аппарата математического програм- мирования, корреляционного, регрессионного анализа. Аналитическая модель всегда представляет собой фор- мальную конструкцию, которую можно проанализировать и разрешить математическими средствами. Так, если используется аппарат математического программирова- ния, то модель состоит из целевой функции и системы ограничений на переменные. Целевая функция, как пра- вило, выражает ту характеристику системы, которую требуется вычислить или оптимизировать. В частности, это может быть производительность системы. Перемен- ные выражают варьируемые технические характеристики системы, ограничения — их допустимые предельные зна- 89
чения. Процесс (в определенном выше смысле), проис- ходящий на объекте, не имеет прямого аналога в ана- литической модели. Аналитические модели являются эффективным инструментом для решения задач оптими- зации или вычисления характеристик производственных систем. Методы их построения широко изложены в литературе [I]. Однако в ряде практических задач при- менение аналитических моделей затруднительно из-за их большой размерности. Например, для определения или оптимизации производительности и загрузки обору дования производственной системы необходимо решить задачу составления расписания ее функционирования (см. кн. 3, гл. 5). Часто для реальных технологических подсистем ГЛП размерность этой задачи столь велика, что получение оптимального решения оказывается весь- ма сложным с вычислительной точки зрения. Для по- вышения вычислительной эффективности используют различные приемы. Один из них связан с разбиением задачи большой размерности на подзадачи меньшей размерности так, чтобы автономные решения подзадач в определенной последовательности давали решение основной задачи. При этом возникают проблемы орга- низации взаимодействия подзадач, которые не всегда оказываются простыми. Другой прием предполагает уменьшение точности вычислений, за счет чего удается сократить время решения задачи. Имитационное моделирование основано на прямом описании моделируемого объекта. Сущест- венной характеристикой таких моделей является струк- турное подобие объекта и модели. Это значит, что каж- дому существенному с точки зрения решаемой задачи элементу объекта ставится в соответствие элемент модели. При построении имитационной модели описы- ваются <аконы функционирования каждого элемента объекта и связи между ними. Работа с имитационной моделью заключается в проведении имитационного эксперимента. Процесс, протекающий в модели в ходе эксперимента, подобен процессу в реальном объекте. Поэтому исследование объекта на его имитационной модели сводится к изучению характеристик процесса, протекающего в ходе эксперимента. Для формального представления производственной системы при имитационном моделировании обычно используется схема с дискретными событиями. При этом процесс функционирования системы во времени огожде- 90
ствляется с последовательностью событий, возникающих в системе в соответствии с закономерностями ее функ- ционирования. В формальное понятие «событие» вклады- вается конкретное смысловое содержание, определяемое целями моделирования. Ценным качеством имитации яв- ляется возможность управлять масштабом времени. Ди- намический процесс в имитационной модели протекает в так называемом системном времени. Системное время имитирует реальное время. При этом пересчет систем- ного времени в модели можно выполнять двумя спосо- бами: первый заключается в «движении» по времени с некоторым постоянным шагом Д/, второй — в «движе- нии» по времени от события к событию Считается, что в промежутках времени между событиями в модели изменений не происходит. Кроме реального и системного времени существует еще один тип времени — машинное, т. е. время, за ко- торое реализуется имитационный эксперимент. При ими- тационном моделировании производственных систем, как правило, стремятся «сжать» реальное время, т. е. про- должительность процессов в модели, измеряемая машин- ным временем, значительно меньше продолжительности тех же процессов в реальном объекте. Это дает воз- можность изучать функционирование производственной системы на достаточно длительных интервалах времени. Таким образом, основное назначение имитационного моделирования состоит в следующем: — выделить наиболее существенные переменные, оце- нить степень влияния их изменения на исследуемые пара- метры системы, а также определить «узкие места», т. е. технологические, организационные или управленческие факторы, наиболее существенно влияющие на показатели функционирования системы; — изучить воздействие различных организационных, управленческих и технико-экономических изменений на показатели функционирования системы; — оценить различные варианты технических решений и стратегий управления при поиске оптимальной струк- туры ГАП Очевидно, аналогичные задачи можно решать и с по- мощью аналитических методов, однако имитация позво- ляет работать с моделями большой размерности, учиты- вать ограничения и условия, которые трудно или невоз- можно включить в аналитическую модель, а также пред- ставлять результаты моделирования в наглядной, легко 91
интерпретируемой форме. Однако это не значит, что ими- тационное моделирование может заменить аналитиче- ское. Проведение имитационного эксперимента часто ока- зывается трудоемкой и длительной процедурой. Поэтому на практике при решении задач анализа и синтеза ГАП аналитическое и имтационное моделирование объединяют в комплексную процедуру. Аналитическое моделирование в такой процедуре используют для быстрого, но при- ближенного оценивания основных характеристик ГАП, что позволяет устранить наиболее существенные неточно- сти проектирования, сбалансировать производительность отдельных элементов, выбрать емкость накопителей и сформулировать требования к системе управления. Ими- тационное моделирование занимает больше времени и позволяет определить указанные характеристики и дру- гие с более высокой степенью точности. 4.2. Системы массового обслуживания Методы и результаты теории массового обслуживания используются при решении задач анализа процессов функционирования гибких производств, разработке авто- матизированных систем управления различных видов и многих других технических систем. Структура системы массового обслуживания (СМО). Структура СМО определяется заданием входящего по- тока требований, числом приборов в системе, длительно- стью обслуживания требований, числом мест ожидания. Множество моментов поступления в систему требований называется входящим потоком данной модели. Если — последовательные моменты поступления тре- бований и /о=О, то {Zk=tk—/*-1, — интервалы време- ни между ними. Тогда поток требований можно опреде лить, задавая случайные последовательности {/*, k^\} или {г*, Потоки, у которых {г*, — независимые в совокупности случайные величины, полностью опреде- ляются набором функций распределения {P(z*</), 1). Рекуррентным потоком с функцией распределения А(/) называется поток требований, у которого величины {г*, 1} независимы в совокупности: Р{г*<С/}=Л(/), >1. Рассмотрим рекуррентные потоки, чаще других при- меняемые при анализе СМО. Пуассоновский поток с интенсивностью I определяет- ся показательной функцией распределения, т. е. P(z*</)= = 1—e-z/. Моменты распределения: Dz*=X~2. 92
Эрланговский поток порядка п определяется функ- л-1 цией распределения P(zk<t)= I — e~kt £ Моменты <»о 1 • распределения: Mz*=nX-1. Dzk=nk~2 Для эрланговского п потока справедливо представление z*=£ xtt где слу- ! I чайные величины xt независимы и показательно распре- делены с параметром А. Структура СМО определяется числом обслуживаю- щих приборов и их связью друг с другом. При параллель- ной установке приборов и обслуживании требований на одном из свободных приборов СМО называют многоли- нейной, при единственном приборе — однолинейной При последовательном обслуживании требований на разных приборах, когда одновременно могут обслуживаться не- сколько требований, СМО называют многофазной. Свя- занные по определенной схеме приборы СМО образуют сеть массового обслуживания. Интервалы обслуживания последовательности требований на приборе образуют поток обслуживания, который как математическое поня- тие аналогичен потоку требований. Системы СМО харак- теризуются числом мест ожидания для требований или, иными словами, емкостью накопителя. Структуру СМО в общем случае представляют после- довательностью символов AIBfnlm, где А — тип распре- деления интервалов между поступлениями требований; В — тип распределения времени обслуживания; п — чис- ло приборов в СМО; m — число мест ожидания (если число мест ожидания неограниченно, то символ m опус- кается). Символы А и В можно заменить буквами, обо- значающими конкретный тип распределения. Наиболее часто используют следующие обозначения: G — произ- вольное распределение; М — показательное распределе- ние; Ек — распределение Эрланга порядка k\ D — детер- минированное распределение. Для СМО с различными типами требований исполь- зуется обозначение Ar|BJn|ni, где А,=(А(|),..., Л(<))озна- чает, что имеется г типов требований, поток требований i-ro типа характеризуется символом А(,); ВГ=(В(|),..., В(<)) определяет длительность обслуживания требований в за- висимости от его типа. Дисциплина обслуживания. Под дисцип- линой обслуживания в СМО с ожиданием понимается схема определения порядка обслуживания требований. 93
Опишем наиболее употребительные дисциплины: прямой порядок представляет собой обслуживание в порядке поступления и обозначается FIFO (First In First Out); обратный порядок — выбор на обслуживание требования, поступившего в СМО последним и обозначается LIFO (Last In First Out) При наличии разнородных требований вводятся при- оритетные правила, которые предписывают каждому типу требований приоритетный индекс, обычно в порядке убы- вания приоритетов. Различают абсолютный и относитель- ный приоритеты. При относительном приоритете после завершения обслуживания очередного требования из очереди на обслуживание выбирается требование с наи- высшим приоритетом; при абсолютном приоритете в слу- чае поступления в СМО требования более высокого при- оритета, чем требование, обслуживающееся на приборе, обслуживание прерывается и начинает обслуживаться поступившее требование, а прерванное либо теряется, либо возвращается в очередь с последующим дообслужи- ванием или обслуживанием заново. Характеристики СМО. Обычно при исследо- вании СМО определяют распределения вероятностей и математическое ожидание следующих величин, характе- ризующих СМО: длина очереди; число требований, на- ходящихся в системе; время ожидания начала обслужи- вания; время пребывания требования в системе; период занятости системы, т. е. интервал времени с момента поступления в свободную систему требования до момента освобождения системы; поток потерянных требований. Формула Литтла. Эта формула устанавливает зависимость между усредненными характеристиками ста- ционарного режима и имеет вид L = aV9 где L — среднее число требований, находящихся в СМО; а — интенсивность входящего потока; V — среднее время пребывания требования в системе. Аналоги формулы Литтла: N=aW, где N — средняя длина очереди. IV*— среднее время ожидания в очереди; М=аВ9 где М— среднее число работающих приборов, В — среднее время обслуживания одного требования на одном приборе. В качестве примеров рассмотрим структуры СМО, используемые в дальнейшем. Система Аг | В, 111 т J о° — однолинейная СМО. В нее поступает г типов требований, входящие потоки 94
которых описываются вектором Аг, а интервалы обслу- живания— Вг. При этом /и (J °° обозначает, что в системе имеется два накопителя, первый — ограниченной емкос- ти /и, а второй — неограниченной емкости. Примем сле- дующую дисциплину обслуживания. Если накопитель ограниченной емкости не заполнен, то поступающее тре- бование направляется в этот накопитель, в ином случае требование направляется в неограниченный накопитель. Для каждого из накопителей задана дисциплина очереди. Между требованиями, поступающими из различных накопителей, устанавливается относительный приоритет: требования из ограниченного накопителя имеют первый приоритет, а из неограниченного — второй приоритет. Таким образом, из неограниченного накопителя требова- ние поступает на обслуживание только тогда, когда в момент освобождения обслуживающего прибора в ограниченном накопителе нет очереди требований, при этом появление в ограниченном накопителе требования не вызывает прерывания обслуживания. При описании СМО рассматриваемого типа исполь- зуются следующие обозначения: xj=(М|) М°); Kr2=(xV' W), i= ТУТ; где М’* и XV’—интенсивности потоков требований i-ro типа, попавших в ограниченный и неограниченный на- копители соответственно; ш,'=(иЛ0..wt’) и ...гу>), »=Т7, где НЛ0 и U?}— среднее время ожидания обслуживания для требования i-ro типа в ограниченном и неограничен- ном накопителях. Система А, | Вг |л|О — многолинейная СМО, имею- щая п одинаковых обслуживающих приборов. В СМО поступает г типов требований. Входящие потоки и интер- валы обслуживания описываются, как в предыдущей системе. Мест ожидания нет. Принимается следующая дисциплина обслуживания. Если в момент поступления требования в СМО все обслуживающие приборы заняты, то требование теряется. В рассматриваемой СМО про- исходит разделение каждого потока i-ro типа требований на два потока: один поток образуют требования потока i-ro типа, обслуженные в СМО, а второй поток—не обслуженные. Интенсивности этих потоков обозначим черёз V* и ЛГ соответственно, где /=ТГг. 95
Марковские модели. Наиболее простой и изученный класс СМО — марковские модели массового обслужива- ния. Использование данного математического аппарата позволяет получить характеристики СМО в виде аналити- ческих выражений и исследовать более общие модели путем сведения их к марковским. Марковским процессом называется случайный про- цесс v(/),/6Л со значениями из фазового пространст- ва Х9 удовлетворяющий следующему свойству: для каж- дого набора моментов времени ti<.t2<Z...<Ztn<Z... из Т и любого множества ВсА' справедливо Р(у(/я+1)6 В| v(6),.... v(Q)=P(v(/n+1)g В| v(M). Примером марковского процесса является процесс с пуассоновским потоком событий, который называется пуассоновским. Марковское свойство этого процесса сле- дует из свойства показательного распределения. Марков- ский процесс Х(/), t£7\ у которого Тс{1, 2,...}, называ- ется цепью Маркова. Однородный марковский процесс v(/) с дискретным множеством состояний Х={/} определяется распределе- нием начальных состояний рц(О) — P(v(O)=k) и интенсивно- стями переходов 4»P(v(/+/i)=/|v(/) = /j. Опреде- h—О П ление указанных характеристик должно входить в по- строение марковской модели. В дальнейшем под величиной v(/) будем понимать число требований в системе в момент времени t и пред- полагать регулярность однородного марковского про- цесса, т. е. P(v(/ + Д) #= i | v(/)=/)= ^Д + о( X); ^(v(/ + Д)=/1 v(/)=/)=I</ \ + о(Д), где \ 10 равномерно по i при любом фиксированном /; qt= У — интенсивность выхода из состояния i. I + ‘ Обозначим через Pif(t) вероятность перехода процесса v(/) из состояния I в состояние j за время t. Справедливы следующие теоремы. Теорема 1 Функция p4(t) удовлетворяет системе прямых уравнений Колмогорова л'(О=-</,р,Х0+ - ЧМО. k * i
и при любом фиксированном I определяются как един- ственное непрерывное при решение этой системы с начальными условиями Для цепей Маркова введем следующие важные поня- тия. Цепь Маркова называется сжимающей, если для любой пары состояний iitt2^X существует время t£T и состояние j£X такие, что рч/(/)>0 и pJ2/(/)>0, и не- приводимой, если для любой пары состояний /, / g X существует время t£T такое, что p4(t)>0. Распределе- ние л={л<} на X (т. е. набор чисел л=ло, Л|,... такой, что л<>() и ^л,= 1) называется стационарным, если У л<р|/(/)=л/ для всех t£l\ j£X. Теорема 2. Пусть существует стационарное рас- пределение л = {л4. Тогда равносильны следующие утверждения:!) lim р(/(/)=л/>0 для любых i,j£X-9 2) цепь является сжимающей и неприводимой; 3) для любой пары состояний i и j существует время т=т(/, /)€ Т такое, что рч(/)=0 для всех /^т. Наиболее распространенным однородным марковским процессом является процесс гибели и размножения, ко- торый определяется интенсивностями перехода следую- щего вида X, при /==/’+ I; Хч = при / = /—!; О при |i—/|>2. Для таких процессов возможны скачки v(/)t рав- ные ±1. Теорема 3. Пусть Х.Х). О^/’^л—1; Хя==0; р<>0, 1</<л. Тогда марковский процесс v(/). рассматривае- мый на множестве состояний {0,1,..., л}, является не- приводимым и р.ХО—»л;=л„ где по f • • Hl 1 V •••*/-! ~ Hl-., -и 97
Рис. 4.3. Схгма функционирования системы М | М1111 (J оо Пусть X, = О, ц.>0, />1, |>О; причем Тогда марковский процесс v(/) со множеством состояний (О, 1,...} является неприво- димым и при /->ОО рч(/)-»л/=л0 />0, />0, Mi- -•и# где л0= Г1 + У ; ‘ ’-1 L mi-•••-»*< J В качестве примера использования теории марков- ских процессов проведем исследование СМО со структу- рой М|М1111 (Jо°. Пусть 1, I|, Z; — интенсивности вход- ного потока, потока в ограниченный накопитель и потока в неограниченный накопитель, р. — интенсивность обслу- живания. Схема данной системы изображена на рис. 4.3. Пространство состояний рассматриваемой СМО удобно представлять парами вида (и, г), где ц={0, 1,2}, ге{0, Состояние (0,0) с номером 0 соответствует со- стоянию, при котором в системе нет требований; со- стояние (1, г) с номером 2r+1 соответствует состоянию, при котором в системе одно требование обслуживается, ограниченный накопитель — пуст, а в неограниченном накопителе имеется очередь из г требований; состоя- ние (2, г) с номером 2r-f-2 соответствует состоянию, при котором в системе одно требование обслуживается, в ограниченном накопителе имеется одно требование, т. е. он заполнен, в неограниченном накопителе имеется очередь из г требований. Функционирование СМО со структурой Af|Af|l 11 U°° описывается однородным марковским процессом v(/) со значениями из пространства состояний Х={0, 1,2...} и интенсивностями переходов которые задаются сле- дующим образом (рис. 4.4): Рис. 4.4. Схема переходов системы Л1IМ1111 U оо 98
-кч=1, если (/, /)€={(0, 1), (1,2), (2, 4). (2г4-1, 2г4-2). (2г4-2, 2г4-4), г^1), ->.<7=ц, если (/, /)€={(!, 0), (2, 1), (2r +1, 2r-1), (2г4-2, 2г+О. г^1}, —кч = О для остальных пар (/, /). Для САЮ со структурой AfiAl|l|l(Joo система, опре- деляющая стационарное распределение вероятностей {л,}, так как qo=k, ^=р4-1 при />1, имеет вид Хло=цл|; (ц4-^)л|=рп24-рлз4-^ло; (р4-^)Д2=Хл|; (и4->-)л»А+1=ря2г+з4-ЦЛ2г+2, 1; (р4->Эл2г+2=Хл2г4->-л2г+|, г>1; Положим, что Q=Z/pi — параметр, который для дан- ной системы массового обслуживания является за- грузкой. В этом случае очевидно, необходимым условием существования стационарного режима является условие р<1. Нетрудно показать, что последовательность {лД удовлетворяет при г^1 соотношениям: л2г+1 = (?л2г и л2г+| = Л2г-ь2. Следовательно, стационарное распределе- ние вероятностей для данного марковского процесса будет следующее: ло=1 —о; jii = q(1 — о); Используя стационарное распределение вероятностей {лу}, можно найти неизвестные параметры. Пусть /=0, оо, di — среднее число изменений состояния СМО из со- стояния i в любое другое в единицу времени; /< — ве- роятность поступления требования в систему при усло- вии, что она находится в t-м состоянии; т, — среднее время нахождения СМО в состоянии /. Тогда Xi = duPo4- V d2r+\P?r+\\ Х2= V t/2rP2 • г - •» г I Учитывая, ЧТО Ро=1; Р2'+1=Р1'+\,2г+2=ТТ----Г7- — *4"Р l-f-Q вероятность перехода из состояния 2г4-I в состояние 2г-|-2, где г>0; Р2г=Р2г.2г+2=I/(^4-p)=e/(l4-р) — есть вероятность перехода из состояния 2г в состояние 2г-|-2, где г^\; т0=Х_|, Tt=(k4-p)-1, t^l; dl=ni/rl для любо- 99
го iy так как в единицу времени среднее время нахож дения СМО в Ам состоянии есть л<, а т, — среднее время нахождения СМО в Ам состоянии, получаем следующие формулы: 1 = V л - ° - (и+>.) 1+е ПО Z Л2 . г I Вычислив соответствующие суммы, найдем Подсчитаем среднее число требований, ожидающих обслуживания в ограниченном п\ и неограниченном п накопителях: 1 v П\ = При этом, используя формулу Литтла, можно найти среднее время ожидания начала обслуживания в огра- ниченном 1Г| и неограниченном И 2 накопителях: М о2 * A, I—о Метод вложенных цепей Маркова. Выше рассмотрены марковские модели массового обслуживания, при этом предполагалось, что входящий поток является пуассо- новским, а время обслуживания распределено по экспо- ненциальному закону. В этом случае удается построить сравнительно простые марковские процессы, исследуя которые можно получить искомые характеристики. Отказ от принятых предположений приводит к усложнению задачи, поэтому для ее решения процесс обслуживания рассматривают в специально подобранные (случайные или детерминированные) моменты времени, в которые значе- ния процесса, описывающего состояния СМО, образуют цепь Маркова (метод вложенных цепей Маркова). Использование данного метода рассмотрим на примере исследования системы M|G| 1. юо
Пусть длительности обслуживания требований явля- ются независимыми одинаково распределенными слу- чайными величинами. Их функцию распределения обо- значим через В(/)=Р(т]С/). Обозначим через L, л=1, 2, ... моменты окончания обслуживания n-го требования, а через уя=\’(/я-|-0) — число требований, оставшихся в системе после ухода n-го требования из системы. При этом последовательность {vrt) образует цепь Маркова, так как в момент tn система либо освобождается, либо начинается обслуживание нового (n-J-l)-ro требования. При освобождении системы поведение последовательно- сти Vn+i, уя+2, ... зависит от потока требований, которые поступают после момента /я, и от длительности их обслу- живания. Так как входящий поток пуассоновский, то ука- занные факторы не зависят от прошлого. При обслужи- вании нового требования поведение последовательности vrt+i, v„+2, ... также не зависит от прошлого по следую- щим причинам: — отсутствие последействия у входящего пуассо- новского потока; — независимость длительностей обслуживания; — в рассматриваемый момент tn новое (п-Н)-е тре- бование только начинает обслуживаться. Обозначим через Дл число требований, поступивших в систему за время обслуживания n-го требования. Тогда = rvn_|-f-An—1 при v„_|>0; V” i Ля при vn = 0. Пусть р" =/>(¥«+1 = j I vn = i). Если i > 0, то — при j^i— I oo p4, = P(A„ = / - i + 1) = k,-l+l = $ P(A„ = 0 =/ - i + 1 |л„ = — при j < i — 1 p;.=o, где X — интенсивность входного потока. В случае, когда в момент 6, + 0 в системе нет заявок, для того чтобы v(/rt+i) = / за период обслуживания т]я должно прийти / + 1 заявок, т. е. р8/ = Л/. 101
Определим стационарное распределение {л7} построен- ной марковской цепи л = р"ль / = 0, I, ... : / -о Ло = /?оЛо 4" /?оЛц Л| = £|Ло 4“ k IЛI 4- /?оЛ21 Л/ = ktnQ + ktni + ... 4- M/+I. С учетом условий нормировки У л7 = 1 данная сис- i‘O тема в терминах производящих функций имеет следую- щее решение: л(г) = ^ л,?'; b(s) = $ е~ dB(t\ J о где q = —, |л_| = tdB(t), о откуда среднее число заявок в системе т. е. среднее число заявок в системе не зависит от распре- деления времени обслуживания и полностью определяет- ся средней интенсивностью ц. Приоритетные системы обслуживания. Пусть в систе- му поступает г независимых потоков требований с раз- личными функциями распределения длительностей обслу- живания B^t), i= 1, .... г. При этом необходимо органи- зовать выбор из очереди заявки определенного типа в момент окончания обслуживания предшествующей за- явки. Дисциплина выбора описывается следующим образом. Обозначим состояние системы в произвольный момент времени tn принятия решения целочисленным вектором L(/n) = {Li(/nX •• • Lr(tn)}. где Lt(tn) — число заявок i-го типа в момент tn. Предположим, что задан стацио- нарный закон / = /(/.), т. е. установлено, что если Gl9 то на обслуживание ставится требование ти- 102
па i. Считаем, что любое состояние, за исключением L = 0, принадлежит какому-либо и только одному мно- жеству Glt /=!,..., г, т. е. выбор может быть произведен всегда и однозначно. Примем также естественное усло- вие, что если в очереди имеются заявки только /-го типа, то одна из них ставится на обслуживание. Рассмотрим систему AIJGJI.t. е. все г входных потоков являются пу- ассоновскими с параметрами /= 1, ..., г, тогда после- довательность Ц/,1) образует цепь Маркова. Обозначим л, — вероятность выбора в стационарном режиме заявки типа /, а по — вероятность свободного состояния системы. Используя метод вложенных цепей Маркова, находим ло = 1 — q; л, = р-------------, i = 1, ..., г, /-1 где (• = ~ и» = S мвко. / I о Величина у является параметром загрузки системы, а условие q < 1 задает необходимое и достаточное усло- вие существования стационарного режима. Приведенные формулы показывают, что при любой дисциплине обслу- живания вероятности л, определяются только интенсив- ностями потоков и обслуживания, а не дисциплиной об- служивания. Однако закон управления /(£) влияет на другие характеристики системы. Обозначим ML = = (MLi9 ..., ML,), где ML, — среднее число требований / го потока в системе в стационарном режиме; с, — стоимость за единицу времени пребывания требования типа / в системе; J= g-ML,—суммарная стоимость. • — । Значение J зависит от выбора функции /(L) Предполо- жим, что J оо, / = I, ..., г; R ... ^ R , о гдг (/|, ..., /,) — перестановка чисел (I, ..., г); Rt = =СНГ'. Тогда оптимальный закон управления в произвольный момент принятия решения задается следующим пра- вилом: юз
/(/)= Zi, если Ljt>0; /2» если ^,=0. Lt >0; I , если L,, = ...= Ц_, = 0, Ltf>0. В частности, при ct = c, i= 1, г из этого правила следует, что математическое ожидание времени пребы- вания заявок в очереди оказывается минимальным, если при выборе из очереди первой на обслуживание про- пускается заявка, у которой математическое ожидание времени обслуживания меньше 4.3. Дискретная оптимизация Задача дискретной оптимизации при целочисленных переменных имеет вид minf(x), где x = (xi, ..., X/, ..., хл); X/ — целые числа; G — конечное множество. Универсальным и распространенным методом ее реше- ния, предъявляющим минимальные требования к виду и свойствам целевой функции f(x) и ограничений, задающих множество допустимых решений G, является метод ветвей и границ [2] Алгоритм поиска оптимального ре- шения х* такого, что f(x’) = min/(x), строят по следую- „ * € G щей стандартной схеме. Последовательно разбивают (ветвят) множество G на конечное число подмножеств G*, ..., G*, ..., G*; i=l, rkt где k — номер шага. На каждом шаге прове- ряют, содержит ли данное подмножество G* оптимальное решение или нет. Для этого вычисляют нижнюю границу (оценку снизу) V(G*) множества значений {/(х): xgGf). Границу определяют, решая оценочную задачу V(C1*)=min f(x). (4.1) G у где Gfc=Gv. Множество G\ формируют, отбрасывая либо требование целочисленности х,, либо часть ограничений, задающих G Правомерность такого подхода к вычис- лению оценки следует из неравенства лЛТо /(а)- 104
Если в результате решения набора задач (4.1) будут найдены значения х такие, что хеб/ и f(x)=V(G*)^ <V(G?) то х — оптимальное решение. В противном случае переходят к следующему шагу, выбирая подмножество для очередного разбиения по правилу min{V(G?):i=Tri} (4 2) и повторяя для него процедуру разбиения и оценки. При необходимости дальнейшего ветвления в выражении (4.2) рассматривают не подвергавшиеся разбиению под- множества, полученные как на данном, так и на всех предыдущих шагах. Процедуру ветвления и оценивания, графически изоб- ражаемую в виде дерева разбиений, можно продол- жать до получения отдельных хеб. Сходимость про- цедуры к оптимальному решению, а также возможность увеличения ее быстродействия по сравнению с полным перебором следует из конечности G, свойства неубыва- ния оценок для цепочки вложенных подмножеств (от- дельной ветви дерева) и правила ветвления. Следует отметить, что начальным шагом описанной схемы обычно является решение оценочной задачи (4.1) для исходного множества G, так как уже на этом шаге можно получить оптимальное решение. Эффективность (трудоемкость вычислений и требуе- мый объем памяти) алгоритмов метода ветвей и границ в значительной мере зависит от способов определения границ и стратегии ветвления, выбор которых сущест- венно опирается на специфику конкретной задачи. Проиллюстрируем метод ветвей и границ на примере следующей ситуации. На предприятии начата рекон- струкция производства на основе внедрения робототех- нических комплексов (РТК). Для этого выделен фонд в сумме N рублей. Поставщики предлагают п типов РТК Стоимость РТК /-го типа равна ch а производитель- ность — a,, j=l~n. Требуется в пределах установлен- ного лимита средств выбрать типы РТК, обеспечиваю- щие наибольшую суммарную производительность. Математической моделью этой ситуации служит зада- ча о ранце max QfXj (4 3) л I । при двух ограничениях 105
I (4 4) 1, если приобретается РТК /го типа; О — в противном случае. где x=(xi, ..., хр .... хл), а,>0» С/>0, Л>0 — целые числа. Для ее решения методом ветвей и границ необходимо определить способ получения оценки, процедуру разбие- ния допустимого множества решений на подмножества и стратегию ветвления, т. е. указать правило выбора под- множества для разбиения на очередном шаге. Отбросим требование целочисленности (4 5) и будем считать, что все переменные х, изменяются непрерывно на отрезке [0, 1]. Решение такой непрерывной задачи будет верхней границей (так как ищется максимум) множества значений целевой функции на соответствую- щем подмножестве решений. Алгоритм решения непрерывной задачи состоит в следующем Упорядочим коэффициенты ai......а,.....а, в порядке убывания величин и соответствую- щим этому порядку образом перенумеруем переменные и параметры задачи. Найдем значение $ такое, что Тогда оптимальное решение непрерыв- • । »-i ной задачи имеет вид: ______ ь — G ________ Х/= 1, V/= 1,5—1; х,=----—!—; х,=0, V/=5 + 1» я. Процедуру разбиения допустимого множества реше- ний G, задаваемого ограничениями (4.4), (4.5), опреде- лим так: разобьем G на два подмножества G\ и G2. Первому подмножеству принадлежат все решения с Х|=1, а второму — с Х|=0. Далее каждое из подмно- жеств Gi и бг опять разобьем на два: в первом хг=1. ВО втором Х2=0 и т. д. На каждом шаге для очередного разбиения выби- раем подмножество, которому соответствует макси- мальное значение оценки. Поиск решения заканчиваем, если на некотором шаге получим допустимое решение, значение целевой функции на котором будет наиболь- шим по сравнению с оценками для всех подмножеств — кандидатов на разбиение. 106
Приведем численный пример. Пусть целевая фун- кция (4.3) и ограничение (4.4) имеют вид соответ- ственно f(x)=(6xi+8x2+ Юхз+ +1 1x4+9x5)-> max; 2xi +3х2+7хз+1 Oxi+9х5 < 20. Схема решения примера показана на рис. 4.5. При Х| = 1 получаем f(x) = 32,8, при xi = 0 соответственно f(x) = 29, причем решение непрерывной задачи Х|=0, х2 = хз = х4 = I, xs = 0 яв- ляется целочисленным (на рисунке такие подмножества отмечены двойными круж- ками). Выбираем подмно- жество xi= 1. При xi =1, Рис. 4.5. Схема решения х2=1 получаем f(x) = 32,8, а при Х|=1, х2=0 соответственно f(x)=279/n Выбираем Х| = 1, х2=1. При хз=1 все остальные х, (/=4, 5) должны быть нулями, так как в противном случае нарушается ограничение. При хз=0 находим /(х) = 29,/ц. В итоге получаем либо х4=0, xs=l [Дх) = 23], либо х4 = 1. xs = = 0[/(х)=25], что меньше 29. Поэтому допустимое ре- шение, полученное на первом шаге, т. е. Х|=0, х2=хз= =х4=1. x5=0[/(v)=29], является оптимальным. 4.4. Сети Петри Эффективным инструментом моделирования дискрет- ных процессов являются сети Петри. Их основные осо- бенности — возможность отображать параллелизм, асинхронность, иерархичность моделируемых объектов более простыми средствами, чем при использовании дру- гих средств моделирования. Это обусловливает широкое применение сетей Петри для исследования сложных иерархических дискретных систем, например, таких, как ГАП. Основные определения сетей Петри. Сеть Петри фор- мально представляется как набор вида N=(Pt Г, F, 107
Рис. 4.6. Графи чес кое изображение сети Петри Н, цо), где Р — конечное непустое множество пози- ций (иначе состояний или мест); Т — конечное не- пустое множество перехо- дов (событий); F.Py.T-^ -{О, 1, 2...}; //:ГХР-*{0, I, 2...} — функции входных и выходных инциденций; цо:Р-^{О, I, 2, ...} — на- чальная маркировка (раз- метка) сети. Г рафическим изобра- жением сети Петри явля- ется двудольный ориен- тированный граф с двумя типами вершин (рис. 4.6). Вершины р^Р изображаются кружками, а вершины /еГ — черточками (барьерами). Дуги соответствуют функциям инцидентности позиций и переходов. Множе- ства входных и выходных позиций перехода /еГ обычно обозначают соответственно (*/), (/’)• а множества входных и выходных переходов для позиции реР обозначают соответственно (‘р) и (р’). При маркировке всем позициям сети Петри приписы- ваются некоторые натуральные числа. На графе марки- ровка отражается наличием или отсутствием в кружках точек, называемых маркерами. При этом число маркеров в позиции равно значению функции ц:Р->{0, I, 2, ...}. Если мощность множества Р равна и, то маркировку можно представить л-мерным вектором, значения коор- динат которого равны числу маркеров в соответствующих позициях. Переход от одной маркировки к другой осуществля- ется посредством срабатывания переходов Переход t может сработать при маркировке р, если он является возбужденным, т. е. ц(р)— F(p, /)>О, Vpе Р. (4.6) Это условие означает, что в каждой входной позиции перехода t число маркеров не меньше веса дуги, соеди- няющей эту позицию с переходом В результате сраба- тывания перехода /, удовлетворяющего условию (4.6), 108
маркировка ц заменяется маркировкой ц' по следующе- му правилу: !*'(/>)= н(р) — Лр. О + I. р). Vp е Р, т. е. в результате срабатывания из всех входных позиций перехода / изымается /) маркеров и в каждую вы- ходную позицию добавляется //(/, р) маркеров. Это озна- чает, что маркировка р' непосредственно достижима из маркировки р и обозначается р->р . Функционирование сети Петри — это последовательная смена маркировок в результате срабатывания возбужденных переходов. Состояние сети в данный момент времени определяется ее текущей маркировкой. Важным понятием сети Петри является граф дости- жимости, с помощью которого описываются возможные варианты функционирования сети, Графом достижимости называется граф, вершинами которого являются возмож- ные маркировки. Маркировки р и р' соединяются на- правленной дугой, помеченной символом перехода /еТ, если р->р'. Если для некоторой маркировки ни один из переходов сработать не может, то такая маркировка называется тупиковой. Маркировка р' является достижи- мой из маркировки р, если существует такая последова- тельность переходов т=(6, /2.tk) что p-^pi-^...-^р'. Множество всех маркировок, достижимых из началь- ной, называется множеством достижимости сети Петри и обозначается Любая позиция или переход сети могут интерпретиро- ваться как сеть Петри более низкого уровня. Это позво- ляет организовать многослойные иерархические сетевые структуры [3]. В сети Петри два возбужденных не взаимодейст- вующих перехода могут сработать независимо друг от друга, поэтому моделям, использующим сети Петри, свойствен параллелизм или одновременность. В зависимости от топологии сеть Петри называется: — автономной сетью, если для каждого t^T имеется не более одной входной и не более одной выходной позиции, т. е. Г/| = |Г|=1; — маркированным графом, если для каждого реР имеется только один входной и один выходной переходы, т.е. Гр| = |р’|=1; — сетью свободного выбора, если для каждого t^T и для каждого pt^'tt позиция р, является либо единст- 109
венной входной позицией перехода Л, т. е. |р;| = 1, либо этот переход имеет единственную входную позицию, т. е. | •/,! = ! (если два перехода имеют общую входную пози- цию, то эта позиция единственна для каждого из них) Различают также простые сети, в которых любая пара переходов /„ t^T имеет не более одной общей входной пози- ции (т. е. ГбГ1//ICO* и бесконфликтные сети, в которых для каждой позиции реР существует не более одной исходящей дуги \р*|1 либо для всех t^T выполняется условие t^'p (т. е. любая позиция, являющаяся вход- ной более чем для одного перехода, является также вы- ходной для каждого такого перехода). В качестве примера рассмотрим сеть Петри N=(P, Т, F, Н. цо), где Р = {рь Р2. Рз. Рь Рб}. Г={/|, /2. /з, /4}, цо = (1, 1, О, О, 0). Функции F и // заданы матрицами: Pi Р2 Рз Ра Рь 0 0 1 2 0 1 0 0 0 1 1 1 0 0 0 0 0 0 1 0 Графическое изображение сети представлено на рис. 4.6, а фрагмент графа достижимости для данной сети — на рис. 4.7. Свойства сетей Петри. Основными свойствами сетей Петри являются безопасность, ограниченность, живость и сохраняемость. Кроме того, при анализе сетей Петри часто ставится задача определения достижимости неко- торой маркировки из заданного состояния. Безопасность и ограниченность. Пози- ция реР называется A-ограниченной, если существует такое значение kt что ц(р)^& для каждого Если й=1, то позиция р называется безопасной. Сеть Петри безопасна, если безопасна любая ее позиция. В общем случае для каждой позиции может существо- вать определенный предел ограниченности. Однако если по
(1, 1,0, О, О) позиция р ^-ограниченна, то она и ^'-ограниченна для каждого k'^k. Сеть является ^-ограниченной, если все ее позиции Л-ограничены. Проблема ограниченности разрешима для сети Петри любого вида. Алгоритм, позволяющий опреде- лить ограниченность сети, использует понятие графа по- крытия сети (конечного дерева достижимости) [4]. Живость. Сеть /V живая, если, во-первых, для каждого /еГ существуют такие, что во-вторых, для каждой пары ц(, yi^R^N) маркировка достижима из ц,. Доказательство живости сети в общем виде пока не получено. Однако для некоторых подклассов сетей Петри эта проблема решена. Для автономных сетей и маркированных графов спра- ведливы следующие теоремы: 1) если автономная сеть пред- ставляет собой сильно связанный граф, то каждая мар- кировка с одним маркером — живая и безопасная; 2) если сеть Петри — сильно связанный маркированный граф, то она живая только при условии, что каждый Никл в графе содержит по крайней мере один маркер. Чтобы сформулировать условия живости для сети свободного выбора, вводятся понятия ловушки и тупика. Ловушкой называется непустое множество позиций Q такое, что Q’ Q, где Q’= U Р’ и‘ Q = LT Р- PtQ PtQ Другими словами, для любого перехода, входная позиция 111
которого принадлежит Q, некоторая его выходная пози- ция также принадлежит Q. Тупиком называется непустое множество позиций R^P такое, что 'R^R\ или любой переход, выходная позиция которого принадлежит /?, со- держит в R определенную входную позицию. Сеть свободного выбора является живой только тогда когда каждый тупик в этой сети содержит маркирован- ную ловушку. Проблема живости разрешена и для огра- ниченных сетей Петри. Из определений живости и графа достижимости следует, что ограниченная сеть Петри является живой только тогда, когда в каждой сильно связанной компоненте ее графа достижимости для каж- дого перехода t £Т имеется ребро, помеченное символом этого перехода. Сохраняемость. Сеть Петри N называется сохра- няющей по отношению к весовому вектору X, X = =(Х|,..., Хл), Х,^0, |Р| = л, если для каждого р'£/?(Л) выполняется / - I i» I Если Х<=1 для всех t= 1, л, то сеть называется строго сохраняющей. Необходимым условием сохраняемости является ограни- ченность сети, а достаточным — наличие вектора X. При этом для каждой маркировки р £ R(N) должно вы- полняться равенство Xi н(Р ।) + ••• + Хлц(рл) = $ = const При этом можно получить систему линейных уравне- ний с числом уравнений, равным числу вершин графа покрытия: МЛ = s. Сеть является сохраняющей, если существует решение этой системы и это решение есть весовой вектор. Достижимость. Проблема достижимости эквива- лентна задачам определения достижимости нулевой мар- кировки, достижимости подмножества позиций (равны ли значения определенных компонент заданной марки- ровки и какой-либо достижимой маркировки) и покры- ваемое™ (существует ли достижимая маркировка р' та- кая, что р' р покомпонентно). Анализ свойств сети Петри позволяет получить ряд важных характеристик системы, которая моделируется 112
данной сетью. В частности, ограниченность сети свиде- тельствует о конечности состояний отдельных элементов системы, живость — об отсутствии тупиковых ситуаций в процессе функционирования, т. е. возможности системы перейти из любого состояния, достижимого из начально- го. в любое другое состояние; сохраняемость — о невоз- можности уничтожения или возникновения дополнитель- ных ресурсов. Анализ достижимости позволяет получить все допустимые и недопустимые ее состояния. Достоинством сети Петри является ее открытость для расширений и модификаций, усиливающих выразитель- ные способности сети как аппарата моделирования в конкретной прикладной области. Рассмотрим ряд расши- рений, позволяющих в сфере моделирования дискретных производственных процессов упростить процесс модели- рования и расширить его выразительные возможности. Временное упорядочение событий моделируемого про- цесса может быть существенно упрощено, если каждой позиции сети поставить в соответствие время задержки маркера в данной позиции. Время задержки опишем функцией 0: ₽-►/?, где 0(р) — время задержки маркера в позиции р; R — множество действительных положи- тельных чисел. Маркер не может покинуть позицию р в течение временного интервала между моментом его прибытия 0р и моментом 0р 4- 0(р). Управление производственной системой можно выра- зить функцией ее состояния. В терминах сети Петри это сводится к необходимости управлять переходами сети в зависимости от маркировки ее позиции. Управление опи- шем функцией F.Py^T-^ (0,1,...). Графически управ- ление можно описать так называемыми «задерживающи- ми (тормозящими) стрелками*, принцип действия кото- рых состоит в следующем. Пусть позиция р\ связана задерживающей стрелкой веса I с переходом t (рис. 4.8). Переход t может срабо- тать, если в рг находится хотя бы один маркер, а чис- ло маркеров в р\ строго меньше I. Для расширения средств описания динамических объ- ектов используем сеть Петри с разноцветными маркерами. Введем две функции: Рис. 4.8. Сеть Петри 5—1279 113
l:(P'XQyXT-*(O,V) и Г-7’Х(РХЙ)-*{/’ХЙ}. где Й- множество цветов маркеров. Функции А, и яр задают зако- ны срабатывания переходов и определяют распределение цветов маркеров по позициям сети в процессе ее функ- ционирования. В этом случае маркировка позиций сети представ- ляется в виде матрицы М размера 1Р1ХЮ1, где (р, со) — число маркеров цвета со в позиции р. Рассмотрим способ задания функций X и ф. Функция допустимых распределений цветов маркеров по входным позициям переходов сети А:(РХ^)Х Т-+{0, 1} описывает условия их срабатывания. Функция распределения цве- тов по выходным позициям переходов сети ф:ТХ(А>Х ХЙ)-*(РХЙ) определяет новую маркировку сети после срабатывания перехода. Для Т можно рассмотреть частичные функции Хе, фь Функция ^:{ПС/ХЙ)}^{0, 1} из всего множества возможных маркировок входных позиций ' Lt определяет подмножество 'Ct допустимых входных маркировок перехода t, где C/={(pf|, (O/i), , (р<Л|» ОДл)} = {( Л ^)}» со,*ей, 6=1, п, л=Г/|, /*=1, |О|. Здесь */ — множество входных позиций перехода t. Тогда функция от Г И переменных ___ (1, если (“/, Q)e ' Ct\ 1__(0—в противном случае. Функция фг каждому допустимому входному распре- делению из 'Ct ставит в соответствие единственное вы- ходное распределение маркеров определенных цветов из 1/1 области значений С;=Ц(^’ХЙ). На входных распре- /•-1 делениях ' Ct данная функция не определена. В ряде практических приложений для расширения возможностей описания состояний моделирующего объек- та требуется учитывать порядок поступления маркеров различных цветов в определенные позиции сети. В этой связи введем понятие очереди маркеров Ар(п) с длиной, ограниченной некоторым числом п. Дисциплина обслу- живания очереди (прихода и ухода маркеров) — «пер- вый пришел — первый ушел>. 114
С учетом введенных расширений условия срабаты- вания перехода t модифицированной сети Петри запишем в виде \£р^Р 3<oeQ, что [и<(р, o))-F(p,/)>0] и (M’OCU)=1); S н,(р, w)<F(p. О ПРИ Р(р, (4.7) О —eP2sO(p)F(p. t)/np. Условия срабатывания проверяются для каждого i^T. Здесь 0 — время, прошедшее с начала функциони- рования модели; 0р — время поступления маркера в позицию р\ 0(р) — время задержки маркера позицией р. Первое условие системы (4.7) означает, что сущест- вует допустимое распределение цветов во входных по- зициях перехода t с необходимым числом маркеров соответствующего цвета в каждой позиции; второе — что во всех позициях, связанных задерживающими стрелками с переходом /, число маркеров строго меньше критического значения; третье — что маркер находится во входной позиции перехода t не менее времени 0(р) и может покинуть его. Если в позиции р ведется очередь, то первое и третье условия проверяются для первой ячейки очереди. Пусть для некоторого перехода t^T выполняются условия срабатывания при распределении цветов ’ ct во входных позициях t. В результате срабатывания пере- хода / маркировка ц, (р, со) заменяется маркировкой (р, со), которая может быть рассчитана по формуле и.+1 (р. <•>)=нХр. ы) — 6«(р.f(p. О+хХр. “)//(/, р), (4.8) где {I. если (р. со) входит в о; О — в противном случае; z ч ( 1,если ib(Y/)=c;, и (р, со) входит в ci\ yt(p9 со) = { л 10 — в противном случае. 5
ГЛАВА МОДЕЛИ ГИБКИХ АВТОМАТИЗИРОВАННЫХ ПРОИЗВОДСТВ И ИХ ЭЛЕМЕНТОВ При разработке и эксплуатационных переналадках ГАП возможны два типа задач: 1) по заданным критериям и требованиям к произ- водственной системе определить ее характеристики, та- кие, как состав основного оборудования, тип и структура транспортной системы, емкость подсистемы складирова- ния, размещение оборудования, алгоритмы управления и др. (задача синтеза); 2) по известным техническим характеристикам эле- ментов и подсистем ГАП определить показатели, ха- рактеризующие производственную систему в целом, та- кие, как общая производительность, степень загрузки оборудования, наличие «узких мест>, объем незавершен- ного производства и др. (задача анализа). Как отмечалось в § 4.1, при решении задач анализа и синтеза целесообразно объединять единой процедурой аналитические и имитационные методы моделирования. Примером такого объединения является моделирующий программный комплекс, который может эксплуатировать- ся в составе программного обеспечения САПР ГПС. 5.1. Структура и функции комплекса моделирования гибких автоматизированных производств Моделирующий комплекс состоит из двух последова- тельно соединенных блоков — аналитического и имита- ционного. Он может использоваться для решения задач анализа и синтеза при проектировании, планировании и перестройке производства. Входной информацией для моделирования являются плановое задание по объему и номенклатуре, технология изготовления изделий, схема размещения и технико-экономические характеристики оборудования, используемого на участке. 116
Исходны данные Текущие данные Рис. 5.1. Блок аналитического моделирования лок аналитического моделирования. Он состоит из моделей, взаимосвязь которых показана на рис. 5.1. ктерным требованием, предъявляемым к рассмат- ‘мым моделям, является высокое быстродействие, кляющее организовать интерактивный режим взаи- 1ствия с пользователем. «Платой» за быстродейст- 1вляется некоторая потеря точности определяемых стеристик. роцесс аналитического моделирования делится на тапа. а первом этапе определяется общая произ- ельность основного оборудования в предположении, се остальные подсистемы ГАП не являются «узким )м», т. с. не ограничивают загрузку основного 117
оборудования. Если рассчитанное значение производи- тельности не обеспечивает выполнение планового зада- ния, то дальнейший анализ не имеет смысла. Инфор- мация о несоответствии рассчитанной производительно- сти заданной передается пользователю, который должен принять решение о внесении изменений. Изменения могут касаться состава оборудования или его настройки (если решается задача проектирования или переналад- ки) либо планового задания (если решается задача планирования). После внесения изменений расчет по- вторяется. Этап заканчивается, когда пользователь на- ходит приемлемое решение. На втором этапе рассчитываются интенсив- ности потоков изделий между элементами системы. Дан- ные расчета являются исходными для определения и анализа характеристик других подсистем. На третьем этапе определяются загрузки тран- спортной системы. Если в результате расчета окажется, что коэффициент загрузки транспортной системы превы- шает единицу (т. е. ее производительность недостаточ- на для выполнения требуемого объема перевозок), то пользователю передается соответствующее сообщение. Возможны два вида изменений, направленных на умень- шение расчетного значения коэффициента загрузки транспортной системы: 1) снижение загрузки системы без изменения ее технических характеристик, за счет варьирования распо ложением оборудования, емкостью накопителей или интенсивностью потоков между рабочими позициями ГАП; 2) повышение производительности транспорта, напри- мер, за счет увеличения скорости его перемещения или числа транспортных единиц. Очевидно, возможны комбинации этих видов измс нений. Если при допустимых изменениях пользователю не удается уменьшить коэффициент загрузки транспортной системы до значения, меньшего единицы, то это озна- чает. что плановое задание невыполнимо. Очевидно, в этом случае следует изменить плановое задание и вер- нуться к первому этапу моделирования. Модели, используемые в аналитическом блоке, опи- сываются далее (см. § 5.2 — 5.4). Они разработаны для типового участка ГАП, в котором выделены основное оборудование, накопительная и транспортная подсисте- 118
мы. Входными данными для этих моделей являются технические характеристики подсистем, технология из- готовления изделий и плановое задание гибкому произ- водственному участку (ГПУ). Рассмотрим элементы фор- мального описания входных данных, а также некоторые принципы построения и функционирования типового участка. Плановое задание и технология характеризуются следующими параметрами: К — число типов изделий; / — число различных операций, выполняемых над изде- лиями всех типов; А = ||а*Л— матрица размерности КХЛ где 11, если при обработке изделия fc-ro типа выпол- няется i-я операция; О — в противоположном случае. Обозначим Zk = {i : а*< = I) — множество операций, выполняемых над изделием fc-го типа, а Г* — техноло- гию производства изделий fc-ro типа, представляющую собой множество допустимых последовательностей вы- полнения операций над изделием fc-ro типа. Если Z* = ={ii, ..., 6}, то Г*=( (/я(|), ...,/я(0) :ле1Ь|, где II* — не- который класс перестановок порядка t. Если порядок выполнения операций над изделием fc-ro типа определен строго, то Г* — фиксированная перестановка i,\t ..., ilt9 где {/i, ..., jt} ={ I./}. Производство изделий осуществляется комплектно, т. е. соотношение числа изделий каждого типа, выпу- щенных за планируемый период Г, должно удовлетво- рять определенной пропорции. Следовательно, плановое задание можно представить вектором x=(xi, ..., х*), _____________ к **>0, £=1, К, 2 х*=1, где х* — доля изделий fc-ro ти- *— । па в общем объеме выпуска X. Вектор х называют «смесью> или «миксом» и обозначают MIX. Основное оборудование — это станки, об- рабатывающие или сборочные центры, устройства пе- ребазирования, установки на спутник или палету, кас- сетирования и контроля деталей, а также механизмы, с помощью которых выполняются основные операции, предусмотренные технологией изготовления изделия. В дальнейшем элементы, образующие основное обору- дование, будем называть рабочими позициями и обозна- чать РП, (/=!,/), где J — число рабочих позиций на 119
участке. Каждую РП характеризуют следующие парамет- ры: / =={/ь /) — множество операций, выполняемых на РП/, Jt = {/I, jg} —множество РП, выполняющих i-ю операцию; q( — коэффициент предельной загруз, ки РП,, учитывающий простои из-за профилактических ремонтов и технических осмотров, т. е. qz< 1, /=!,/; — время выполнения Лй операции на РП„ ie/z. Накопительная подсистема состоит из персональных накопителей, оперативного накопителя и склада. Все рабочие позиции оборудованы персональными накопителями емкостью Vz, где емкость — максимальное число изделий, находящихся одновременно в накопителе. Дисциплина очереди в персональном накопителе счита- ется заданной. Примерами персональных накопителей являются автоматическая загрузочная станция (АЗС), линейный или кольцевой накопитель типа транспортера, которыми оборудуются роботизированные станочные модули. Емкость оперативного накопителя обозначим Считается, что оперативный накопитель — сосредоточен- ного типа, т. е. время транспортировки к нему изделия из РП не зависит от номера ячейки накопителя. Изделие может быть помещено или изъято из любой ячейки оперативного накопителя без перемещения других изде лий, хранящихся в нем. Основными элементами склада являются: секции, объединяющие определенное число ячеек хранения; окно (площадка) выдачи-приема изделий; автоматический штабелер. Обозначим Ет — емкость т-й секции склада (т=1,М). Секции делятся на три группы: 1) для хранения заготовок. По мере освобождения ячеек секций производится их заполнение из внешних, по отношению к рассматриваемому, складов или цехов предприятия; 2) для хранения готовых деталей. По мере запол- нения этих секций готовая продукция забирается со склада; 3) для временного хранения изделий-полуфабрикатов на стадии их обработки. Передача изделий со склада в транспортную систему и наоборот производится через окно выдачи-приема изделий. Перемещение изделий внутри склада производится штабелером. Математически формальное описание функциониро- 120
вания штабелера аналогично описанию транспортной системы типа «безоператорная тележка» или робокар. Отличие склада от оперативного накопителя заклю- чается в том, что время доставки изделия с любой РП на склад или со склада на любую РП значительно пре- вышает время, необходимое на аналогичные транспорт- ные операции с использованием оперативного накопите- ля. Кроме того, емкость склада значительно превышает емкость оперативного накопителя. Транспортная подсистема в рассматрива- емом типовом участке состоит из одной транспортной единицы. Это может быть безоператорная транспорт- ная тележка, робокар или локомационный транспортный робот. В дальнейшем транспортное средство будем назы- вать транспортной тележкой. Транспортная тележка характеризуется маршрутом, емкостью, скоростью Ет, а также временными парамет- рами: временем разгона или торможения Д/г, временем фиксации или расфиксации Д/2; временем погрузки или выгрузки изделия Д/з. Рассмотрим для примера порядок операций, выполняемых тележкой при перемещении из- делия: погрузка изделия, расфиксация, разгон, переме- щение, торможение, фиксация, выгрузка. Очевидно, вре- мя, необходимое для выполнения такой последователь- ности операций, определяется выражением 2(Д/1+Л/2 + + Л/з) + £/VT, где L — расстояние между позициями. При управлении тележкой используются следующие правила. Запросом (заявкой) на выполнение транспорт- ной операции являются освобождение входной позиции персонального накопителя, появление обработанного изделия (партии изделий) в выходной позиции персо- нального накопителя, появление заготовки (полуфабри- ката) в окне выгрузки-погрузки Если в систему управ- ления тележкой поступает одновременно несколько за- просов, то порядок их выполнения определяется приори- тетами, которые назначаются при построении алгоритма Управления. Выбор адреса транспортировки изделия после выполнения операции на РП (при условии, что *та операция не является заключительной) производится следующим образом. Если в каком-либо из персональ- ных накопителей РП, на которых может быть выполне- на следующая по технологическому маршруту операция, есть свободная ячейка, то изделие транспортируется и загружается в нее. Если таких ячеек нет, то изделие направляется в оперативный накопитель. В случае, когда 121
оперативный накопитель полностью загружен, изделие транспортируется на склад. Блок имитационного моделирования. Он состоит из трех основных частей: средств генерации модели, ими- татора и интерпретатора Средства генерации позволяют пользователю построить имитационную модель участка ГАП из модулей типовых элементов. Имитатор построен на основе модифицированного аппарата сетей Петри. Далее (см. § 5.5) на примерах рассмотрены способы построения имитационных моделей на языке сетей Петри. Интерпретатор — это комплекс программ для анализа и интерпретации результатов имитационного эксперимента. Различают два типа интерпретаторов: семантические и статистические. Семантическая интерпретация основа- на на анализе текущего состояния имитационной модели и используется при отображении динамических процес- сов функционирования ГАП. Наиболее эффективным средством отображения является машинная графика, с помощью которой на экране графического дисплея строится двух- или трехмерная схема гибкого производ- ственного участка. Семантический интепретатор преобра- зует изменения состояний имитационной модели, связан- ные с движением транспортных средств, перемещением изделий между позициями гибкого производственного участка, движением кинематических механизмов про- мышленных роботов и других динамических процессов, в изменения соответствующих графических образов на схеме. Наблюдение за процессом на экране графического дисплея позволяет специалистам проанализировать раз- личные аспекты функционирования производственной системы, например: произвести трассировку материаль- ных потоков, выявить ошибки в алгоритмах управле- ния работой оборудования или оценить их качество. Статистическая интерпретация ис- пользуется для определения средних значений технико- экономических характеристик ГАП, таких, как произво- дительность участка, загрузка всех элементов (тран- спортной системы, рабочих позиций), коэффициент за- полненности накопителей и склада, средний уровень незавершенного производства, среднее время пролежива- ния изделий в ожидании обработки и др. При имитационном моделировании удается получить более высокую по сравнению с аналитическим точность оценок характеристик ГАП, однако продолжительность 122
имитационного эксперимента значительно превышает продолжительность анализа с помощью аналитических моделей. Совместное использование аналитического и имита- ционного моделирования позволяет значительную часть необходимых изменений внести на этапе аналитического исследования системы, что существенно сокращает число итераций при имитационном эксперименте, а следова- тельно, и общее время решения задачи анализа или синтеза ГПС. 5.2. Модель оценки производительности основного оборудования Оценка производительности основного оборудования заключается в нахождении максимальной производи- тельности ГАП на основе оптимального распределения потоков изделий различных типов по рабочим позициям для обработки при условии, что остальные элементы ГАП, и в частности транспортно-складская система, обеспечивают соответствующую загрузку рабочих пози- ций. В общем случае рассчитанная таким образом максимальная производительность является верхней оценкой производительности, которую можно достичь при выбранном составе основного оборудования. Исходными данными для моделей оценки производи- тельности ГАП являются плановое задание и харак- теристики основного оборудования. Предположим, что есть расписание функционирова- ния ГАП, обеспечивающее в стационарном режиме производительность F изделий в единицу времени в соот- ветствии с заданным MIX. Введем обозначения: F — интенсивность общего (входного/выходного) потока изделий, равная произ- водительности;X* — интенсивность потока изделий fe-ro типа, Л=1, К. Для Л-го типа изделий возможны различные технологии обработки, образующие множе- ство Tk. Пронумеруем множество Г* числами где Л=1, К. Тогда — интенсивность потока изделий fe-ro типа, обрабатываемых по технологии $, £=1, А, $==1,S*; — интенсивность потока требований на выполнение операции /, порождаемого потоком изделий Л-го типа, который обрабатывается по s-й технологии, t==l,/, k= 1, A, s= 1, S*, Xjisk — интенсивность потока требований на выполнение операции «, поступающего на 123
у-ю РП и порождаемого потоком изделий k-ro типа, который обрабатывается по s-й технологии, /=1,У. /€=/(/). k=T7K s=T7S~k. Для интенсивностей перечисленных потоков выполня- ются следующие условия: 1. Все интенсивности являются неотрицательными числами, т. е. для любых /, /, s, k A’lSA» ^/45* (5.1) 2. Для интенсивности потока изделий любого типа выполняется условие k=\J\. (5.2) где — доля k-ro типа изделий в общем потоке, опре- деляемая заданным MIX. 3. Условие сохранения потока изделий k-ro типа S * = 17ЛГ (5.3) S I т. е. суммарный поток изделий £-го типа по различным технологиям обработки дает поток изделий k-ro типа. 4. Поток изделий Л-го типа по s-й технологии интен- сивности KSk порождает поток требований такой же ин- тенсивности на выполнение Лй операции если Ля опе- рация присутствует в k-м типе изделий (ц^=1)9 и по- ток нулевой интенсивности в ином случае (0^=0), т. е. Ksk = aktKst9 i=TT k=\JKt s=LT. (5.4) 5. Условие эргодичности К Sn ____ Q>= S S j=U. (5.5) , 1(f) k - I s — I К S* Здесь q, — загрузка /-й РП; величина V v \{tsk — ин. * — 1 s— I тенсивность потока требований на выполнение Ли опе- рации, поступающего на /-ю РП. Так как производитель- ность ГПС, равная F, по предложению реализуется, то каждая РП успевает выполнять все требуемые операции и, следовательно, загрузка любой РП не должна пре- восходить plt т. е. Перечисленные условия можно рассматривать как ограничения, которым должны удовлетворять интенсив- 124
ности потоков в системе. Тогда задачу о максимальной производительности ГПС можно сформулировать следую- щим образом: максимизировать производительность системы (А->тах), при ограничениях (5.1) — (5.5). Упростим систему ограничений (5.1) — (5.5), исклю- чив переменные X*, XIS*, Z=l,/, fe=l,A, s=l,S<: s. ___ v Ka=HkFt Л=1, A; (5.6) v Xpsjk = a<ASb <=!,/, Л=1,Л, s=l,S*. (5.7) /(0 * ___________________ I ^1/ ^IlSk^Pl, j ~== 1 » J « • €/(/) Л-1.-1 A, XSb X/is*^0 для любых jti,s,k\ A->max. Таким образом, построенная модель представляет собой задачу линейного программирования, в которой число ограничений равно А-J-/+ /AS, а число перемен- __ _ _ j к ных равно 1 + AS + //AS, где S=—J^S* — среднее число технологий, по которым может обрабатываться ! / изделие определенного типа; /=—£ |/(/)| — среднее число РП, выполняющих одинаковую операцию. Рассмотрим некоторые особенности модели. Во-пер- вых, число переменных и ограничений увеличивается примерно пропорционально числу типов изделий в пла- новом задании и среднему числу технологий, по кото- рым они могут обрабатываться. В практических прило- жениях этот факт в значительной степени определяет большую размерность получаемой задачи линейного программирования. Во-вторых, число переменных при- мерно в J раз больше числа ограничений. Это приводит к тому, что чем более взаимозаменяемо оборудование, тем больше размерность получаемой задачи линейного программирования. Кроме того, значительно возрастает вариативность при выборе значений искомых пере- менных, определяющих интенсивности потоков. Указанные особенности приводят к тому, что при практической реализации решение заданной задачи тре- 125
бует значительных вычислительных затрат и поэтому может оказаться не реализуемо за разумное время. Рассмотрим путь сокращения размерности данной задачи, для чего введем новую переменную = К S, = У, У, Х//5* — интенсивность потока требований на вы- t » 1 с —• 1 полнение i-й операции, который поступает на /-ю РП. Интуитивно ясно, что интенсивность общего потока изделий при заданных номенклатуре и MIX (при условии, что не учитывается влияние других подсистем ГПС на загрузку основного оборудования) определяется распре- делением суммарных потоков требований на выполнение каждой операции по рабочим позициям и не зависит от распределения потоков изделий по типам и технологии обработки. Введем дополнительные условия, которые получаются суммированием по всем k и s условиям (5 7) с учетом (5.6): К 5* К Sk 2 2 2 2 2 t.i /€/(,) k -i» । или к ____ 2 &/ = 2 «=!,/. /€/(•) *-! Тогда построенная ранее модель эквивалентна сле- дующей задаче линейного программирования, которую будем называть задачей 1: £ X,*=x*F, Л = 1. К; (5.8) • — I S X/^ = a^, /=Т77, *=Г7(, 5=ГХ; (5.9) * 5* _____ 2 2 /=1.Л/€/(0; (5.Ю) ।j-j М*, A.ps*^0 для любых /, /, s, k\ 2 W4&4 Ph / = 1» А '€/(/) 2 ^/=^2 <**<**> <=!./; /е/(0 t-i для любых t, /; Г-^гпах. 126
Если в рассматриваемой задаче отказаться от огра- ничений (58), (5.9), (5.10), то получим задачу линей- ного программирования, которую назовем задачей 2: 2 К>ч1ч^Рк К i>i=F X i=l,l; /•Л0 k—l F>0; (5 11) (5 12) £</^0 для любых i, /; F-^max. Параметры и ограничения задачи 2 имеют следующий содержательный смысл. 1. — интенсивность потока требований на выпол- нение /-й операции, который поступает на /-ю РП. к 2. F V aktKk — общая интенсивность потока требо- ваний на выполнение z-й операции при заданном плане и производительности F для t=l, /. 3. Соотношения (5.12) задают распределение общего потока требований на выполнение каждой операции по рабочим позициям. 4. Соотношения (5.11) задают ограничения на за- грузку рабочих позиций. В этой модели число ограни- чений равно /+/, а число переменных равно !-{-//, т. е. существенно меньше (примерно в KS раз), чем в преды- дущей модели. Это позволяет утверждать, что вычисли- тельная трудоемкость задачи 2 значительно меньше, чем задачи 1. Однако необходимо решить вопрос о качестве оценки F2, получаемой на основе решения задачи 2 по сравнению с оценкой Fi, получаемой на основе решения задачи 1. Так как в задаче 2 используется только часть ограничений задачи 1, то, очевидно, Fi^Fz- Покажем, что оценки, получаемые в результате решения этих задач, совпадают. Так как F2 является решением задачи 2, то при F=F2 и некоторых /=!,/, /е/(0 выполнимы соотношения (5.11) и (5.12). Тогда, для того чтобы дока- зать равенство F\ и F2, достаточно показать, что при некоторых неотрицательных /=!,/, Л = 1, л, $=Г7э* выполнимы соотношения (5.8), (5.9), (5.10), т. е. совместна относительно переменных Xs*, Х/<5* система следующих ограничений: 127
s. ________________ SX,*=x*F2. Л=1.К; ж» I _____ _____ У >./<s*=a*A$», «=|,/, Л=1,А, s=l,S*; /«ДО К S. 2 Z *//.*=£}, <=!./. /е/(0- *-1ж—I Xs*, Kjtsk ДЛЯ любых /, I, S, k. Пусть Of, ..., 0* — произвольные неотрицательные числа (Л—1,/Q такие, что £Of=l. Будем интерпрети- ж - I ровать 0? как долю изделий £-го типа, обрабатываемых по s-й технологии. Положим, что Xs* = 0jx^2, = , У х*а*. А 1 где /=!,/, jе /(«)» k = 1, Л, s = I, S». Считаем, что в плановом задании нет фиктивных типов изделий, которые фактически не производятся, т. е. х*>0, и нет фиктивных операций, которые не при- сутствуют ни в одном изделии, т. е. для каждого /=!,/ числа аь, ..., Uki не могут все равняться нулю. Тогда к У, х*а« >0 для каждого i и выполняются соотношения: 4—1 Zu, ^/«♦>•0 для любых j,i,s.k-t s» s» s. ___ 2 А,*= 2 Os‘x*F2=x*F22 0J=x*F2, Л=1. К; S - I S—I Ж * i < __ V* nitO Х*<1 __ 0*Х П j «-0 2j Л/is*— 2j и fe*/“--—“ 2j ь</ — /</(0 / ДО V Xta„ Vxtut, /®Я<) Ж I *—I =0*x*a*,F2=a*As*, i= 1,1, k = 1, A, s = 1, St,’ так как и F2 удовлетворяют соотношениям (5.12); к s. к s, 2 2 х„5»= 2 2 о&‘/-?^= fr—ls—i » is i * >, x*a*f i = A £ х,ам V oti Tj, /(/), 128
s. __ так как £Gj=l, k=\,K. >- I Таким образом показано, что решение задачи 2 дает такое же значение максимальной производительности F, как и решение задачи 1. Следовательно, в качестве оценки производительно- сти основного оборудования ГАП можно использовать вторую модель, которая имеет вид задачи линейного программирования существенно меньшей размерности, чем первая модель, и дает то же значение оценки. В от- личие от первой модели, основанной на распределении изделий, вторая распределяет потоки операций. 5.3. Модель расчета интенсивности потоков изделий Для оценки максимальной производительности основ- ного оборудования без учета влияния других подсистем достаточно решить оптимизационную задачу о распреде- лении потоков требований на выполнение определенных операций по РП (см. § 5.2). Достижимость полученной оценки можно определить, рассчитав и проанализировав вытекающую из нее требуемую загрузку всех других подсистем ГАП. Для расчета загрузки подсистем необ- ходимо найти интенсивность потоков изделий между всеми позициями технологической подсистемы ГАП. Рассмотрим модель расчета интенсивностей потоков между позициями, состоящую из двух частей. В первой части модели рассчитываются интенсивно- сти потоков изделий между множеством позиций, обра- зованных рабочими позициями и складом (накопители не учитываются), на основе выбора распределения по- токов, согласованного с интенсивностями и {£f/}. Интенсивности {X/IS*} и {£ч} находятся следующим обра- зом. Вначале решается задача 2 (см. § 5.2) и находится распределение потоков требований на выполнение опе- раций по РП — {£,,}. Затем принимается некоторая стратегия обработки изделий, для чего выбираются и фиксируются значения 0*, ]£0j=l, 0*^0, k=l,K. s = -____ i ==1,5* и по соответствующим формулам находится ре- шение задачи I, т. е. Во второй части модели корректируются найденные интенсивности потоков с учетом емкости накопителей. 129
интенсивность со склада. Обозначим 60(/, s, k)= Рассмотрим первую часть модели. Введем следующие обозначения: для /1э /2=1,/, т)2(0 — интенсивность потока изделий, передаваемых с РП/( на РП;г для выпол- нения операции /; 4X0 — интенсивность потока изделий, передаваемых со склада для выполнения операции /; — интенсивность потока изделий, передаваемых с РП/i на склад после выполнения операции /; q{2 — интенсивность потока изделий, передаваемых с РПу1 на РП/2; П/2 — интенсивность потока изделий, передаваемых со склада на РП,?; itf1 — интенсивность потока изделий, передаваемых с РП7| на склад; ц}г — интенсивность обработки на РП/2 изделий, передаваемых с РП^; рс/2 — обработки на РП,2 изделий, передаваемых также: 1, если при обработке изделия k-ro типа по 5-й технологии операция i выполняется первой; О — в остальных случаях; 1, если при обработке изделия k-ro типа по s-й технологии операция i выполняется последней; О — в остальных случаях; 1, если при обработке изделия Л-го типа по s-й технологии операция Z2 выполняется непосредственно после операции п; О — в остальных случаях. Если известны значения {X/IS*}, то интенсивности по- токов т]/ (/) и могут быть однозначно определены следующим образом: Л У к s. 4(0= 2 X/<sfc6o(/, S, Z?); П'(0 = £ 2 МО’. s, k). • I Is I Тогда интенсивности 4» rjj, ji, находятся по фор- мулам: •6 = г •«/); nf- v «ДО; (Ю • '= 2 I I <1 <в| Ч/ Кроме перечисленных параметров по интенсивностям {^/is*} однозначно определяется интенсивность Л‘(0 по- тока изделий, для которых после обработки на РП i должна быть выполнена операция /, i=l,/t /|=1,/: / л s» Л’(г)= V 2 V S(f s *). z l A’ I А . I во 6|(x, s, k) = 6(«|, £ S, k) =
Рис. 5.2. Схема распределения потоков между рабочими позициями Для определения величин при фиксированном I рассмотрим схему потоков в ГАП (рис. 5.2). с РП,| выходит поток изделий интенсивности A'^Z). Каждый такой поток распределяется по всем рабочим позициям для выполнения операции i: ..., ц/’(<). При этом, если /^/(/), то соответствующий поток на РП/ имеет интенсивность 0 На РПУ2 с рабочих позиций 1.../ь ..., J для выполнения операции i поступают потоки изделий интенсивностей Л/КО» —» Л/ХО и» кроме того, поступает со склада поток изделий интенсивности ПгЛО- На РП,2 для выполнения операции i поступает поток изделий интен- сивности S*/2- Таким образом, интенсивности потоков т]/2(0» /ь /2=1,/ должны удовлетворять соотношениям: V П'ХО=Л''(О. /1=17; h /1-1 п'КО>о. /../2=Г7. где AJ|(0, ^/2, лХО уже определены, причем никаких Других требований или ограничений на ц{Х/), /I. /2=1,/ не накладывается. Интенсивности потоков nJXO» /ь 131
j2=ltJ для каждого /, /= i, / выбираются назначением (распределением) потоков, удовлетворяющих указанным ограничениям, которые представляют собой систему из 2J линейных уравнений относительно J2 неизвестных и усло- вия неотрицательности интенсивностей всех потоков. Та- ким образом, задача распределения потоков представ- ляет собой задачу линейного программирования. Следо- вательно, для определения ц{’(0» «=1,Д /ь /2=1,^ необ- ходимо / раз разрешить задачу линейного программиро- вания с J2 переменными и 2/ ограничениями (равен- ствами). Замечание. Данную задачу линейного програм- мирования целесообразно решать потоковыми алгорит- мами, обладающими высокой вычислительной эффектив- ностью [ 1 ]. _ Интенсивности ц{2, для /|, /2=1,/ находятся по формулам: п*2= 2 n!kO= 1 . I ie/(/2) Если ц}2у=О, ТО (^г,=Агад;хо=-^г s Если 11/2=0, будем считать, что р}2=0. Вторая часть модели основана на использовании СМО типа Аг 1В,111о° и А<|В,|п|0. Исходными данными для модели коррекции интенсивностей потоков с учётом емкостей накопителей являются: — матрицы п = [’1?,2]. /»• /г€={1. Л с} и м = [р}2]. где .... /, г}, /2^{1, , J} — величины, опреде- ленные в первой части модели, — емкости накопителей: <Vo, Vi, ..., 16>, где Vo — емкость оперативного накопителя; V, — емкость персо- нального накопителя РП,. Будем считать, что емкость склада неограниченна, т. е. достаточно большая, и что передача изделий из опе- ративного накопителя в склад не производится. Замечание. Далее под средним временем ожида- ния обслуживания изделий, передаваемых на РП, в на- копителе определенного вида (персональный, оператив- ный, склад), понимается среднее время ожидания на- чала обработки изделий на РП,, попавших перед подачей на РП/ в накопитель соответствующего вида. 132
Рис. 5.3. Схема распределения потоков с учетом персональных на- копителей На первом этапе для каждой РП/, где /=!,/, рас- смотрим модель типа G 11 |G/+i HIV/U00 со следующими параметрами (рис. 5.3).- я*+1=бъ'. •••. П/. и,); ц/+« =(»»/'. •••. И/, и»). т. е. на первом этапе потоки изделий РПУ, проходящие через оперативные накопители и склад, рассматриваются как единый поток. Исследование СМО этого типа дает возможность получить следующие характеристики си- стемы: ....«1„ a1,); =(₽/'. Рь PJ: .... «'(Л), Ю*(Л)),Л=1.2. При этом полученные характеристики имеют следующую интерпретацию. Для /е{1, с}: aj — интенсивность потока изделий, передаваемых с РП, на РП, и не попа- дающих в оперативный накопитель или склад; 0/ — интенсивность потока изделий, передаваемых с РП, на РП, и проходящих через оперативный накопитель или склад; UZJ( 1) — среднее время ожидания обслуживания изделий, передаваемых с РП, на РП, в персональном накопителе РП,; UZJ(2) — среднее время ожидания обслу- живания изделий, передаваемых с РП, на РП, в опера- тивном накопителе или складе; Использование такой модели основано на следующей 133
ее интерпретации. На РП, (обслуживающий прибор) с различных рабочих позиций и склада поступают потоки изделий с заданными интенсивностью и средним време- нем обработки. При этом РП, имеет персональный нако- питель емкости V/ (ограниченный накопитель — ОН). Если изделие, предназначенное для РП,, поступает в момент, когда персональный накопитель РП, заполнен, то оно направляется в оперативный накопитель или склад (неограниченный накопитель — НН). Из оперативного накопителя или склада изделие направляется на обра- ботку только в том случае, если персональный накопи- тель РП/ пуст. Предполагается, что из склада или опе- ративного накопителя изделия подаются с упреждением, т. е. к моменту окончания обработки детали на РП, при пустом персональном накопителе изделие из склада или оперативного накопителя направляется в персональный накопитель РП, и сразу запускается в обработку. Отно- сительный приоритет между изделиями, находящимися в персональном накопителе РП, и оперативном накопи- теле (складе), выбран из тех соображений, что нет осо- бого смысла загружать транспортную систему перевоз- кой изделий из оперативного накопителя или склада в персональный накопитель РП, тогда, когда в нем есть некоторая очередь изделий, ожидающих начала обра- ботки. Пока все изделия из этой очереди не будут обра- ботаны, позиция РП/ гарантированно будет загружена. Дисциплина очереди в персональном накопителе и опе- ративном накопителе (складе) может быть достаточно произвольной и в определенной степени зависит от тех- нического устройства соответствующего накопителя. Может оказаться, что в рассматриваемой модели л}=#=0 и соответственно р}=#=0, при этом поток изделий интенсивности т]}, передаваемый с РП, на РП,, имеет следующий смысл: это поток изделий, для которых пре- дыдущая операция выполнялась также на РП,. Отметим, что если на РП/ выполнена некоторая операция и сле- дующая операция для того же изделия также должна выполняться на РП„ то будет она выполнена сразу или нет, определяется дисциплиной обслуживания. В рассматриваемой модели будем полагать, что если персональный накопитель РП, заполнен, то это изделие снимается с РП, и направляется в оперативный накопи- тель или склад. Если в персональном накопителе РП, есть свободное место, то изделие направляется в персо- нальный накопитель РП, и на основе дисциплины обслу- 134
живания очереди решается, какое изделие запускается в обработку. Для рассматриваемой системы требуется определить следующие характеристики: — интенсивность потока изделий, поступающих на РП/ непосредственно с РП, (параметр — интенсивность потока изделий, поступающих на РП, с РПt через оперативный накопитель или склад (параметр XV*); — среднее время ожидания начала обработки изде- лий, передаваемых с РП„ непосредственно в персональ- ный накопитель РП, (параметр 1Г\0); — среднее время ожидания начала обработки изде- лий в оперативном накопителе или складе, передаваемых с РП, на РП, и попадающих в оперативный накопитель или склад (параметр It’IP). Эти характеристики могут быть получены при изуче- нии СМО со структурой GrlG,| 1 Исследование такой СМО аналитически не представляется возможным. Однако часто удается исходную СМО с параметрами X. =(1’, ..., Zp>) и р,=(р(|), ..., ц(и) достаточно хорошо аппроксимировать СМО Af|G|l|mU°° или даже СМО со структурой M|M|l|mU°° и параметрами I |ж| Расчет характеристик интересующей СМО можно также проводить на основе имитационного моделиро- вания. На втором этапе используется модель СМО со струк- турой G/ +/|G +/1VolO, схема которой изображена на рис. 5.4. В ней учитывается емкость оперативного нако- пителя и выделяются потоки изделий, проходящих через оперативный накопитель и склад. Параметры рассматриваемой СМО следующие: V+/=(pi. .... р/. PJ. где ?,=(₽,' . р;)./=Г7; Р.=(Рь Р5). Вектор средних времен обслуживания Wj(2)=(W/,(2).... 1Г*(2)); Wr(2)=(lTi(2). 1П(2)). При этом среднее время обслуживания одного тре- бования из потока интенсивности р, где /е{1.../.с}, 135
Оперативный накопитель Рис. 5.4. Схема распределения потоков с учетом оперативного накопителя и склада полагается равным среднему времени пролеживания IF;(2) изделий из этого потока в оперативном накопи- теле или складе. Использование такой модели СМО основано на сле- дующей интерпретации. Оперативный накопитель емко- сти Vo представляется одинаковыми обслуживающими приборами, число которых равно его емкости. В систему поступают различные потоки требований интенсивностей |VZ, /^{1, ..., /, с}, /е{1, .... J}. Время обслуживания любого требования из потока интенсивности 0', на любом обслуживающем приборе — это время ожидания начала обработки изделия, попавшего в оперативный накопи- тель или склад. Если требование приходит в момент, когда все обслуживающие приборы заняты, или, иными словами, оперативный накопитель заполнен, то оно теря- ется, т. е. направляется в склад, а не в оперативный накопитель. Исследование данной модели позволяет получить сле- дующие характеристики: X f/ = (Yi» •••» Ye); Ху» = (б|, ..., 6/, ); где Y,==(Yi'. .. . y{). /=М; yc=(y*i..Vi)i 6, = (6I', ... .6{), / = 177, Ae=(<V,. . . 65). При этом Y/ — интенсивность потока изделий, пере- даваемых с РП, на РП, через оперативный накопитель; Yi — интенсивность потока изделий, передаваемых со склада на РП через оперативный накопитель; 6,* — интенсивность потока изделий, передаваемых с РП, на РП, через склад; - интенсивность потока изделий, 136
передаваемых со склада на РП,, иными словами, это интенсивность потока изделий, которые передаются со склада на РП, только тогда, когда персональный нако- питель РП, пуст и в оперативном накопителе нет изделий, которые должны быть переданы для обработки на РП Заметим, что изделия последнего потока сразу посту- пают на РП„ минуя ее персональный накопитель. За- грузка РП, деталями этого потока учтена на первом этапе. Как и в предыдущем случае, СМО со структурой GJGJnlO и параметрами X = (Х|, ..., Хг) и ц, =(gi.jv) можно достаточно хорошо аппроксимировать СМО со г структурой Л/|6|л|0 и параметрами Х = V X, и р:р~' = । । = У — р 1 следующим образом. Для СМО со структурой । । к Л1|61л|0 известно [2], что вероятность потери требова- ния есть P«=-^-(S-7-) • где е=?.р о •• Z /• | соответственно = Х,(1 — рп) и X, = Х,р„, /=1,г. На третьем этапе рассчитываются элементы матриц: W l(fe) .. tt ,(Л) .. . 1И(Л) .изд .. . изд. где 6=1. 2. 3 и для /, /=1, J: ц, — интенсивность потока изделий, передаваемых с РП, на РП,; цЬ — интенсивность потока изделий, передаваемых с РГ1 в оперативный на- копитель; ц” — интенсивность потока изделий, переда- ваемых с оперативного накопителя на РП,; — интен- сивность потока изделий, передаваемых с РП/ на склад; rf — интенсивность потока изделий, передаваемых со склада на РП,; UT*(1) — среднее время ожидания обслу- живания в персональном накопителе РП, изделий, пере- данных с РП,; 1^,(2) — среднее время ожидания обслу- живания в оперативном накопителе изделий, переда- ваемых с РП/ на РП, через оперативный накопитель; ®/(3) — среднее время ожидания обслуживания на 137
складе изделий, передаваемых с РП, на РП, через склад; — среднее время ожидания обслуживания в пер- сональном накопителе РП, изделий, переданных со скла- да; It; (2) — среднее время ожидания обслуживания в оперативном накопителе изделий, передаваемых на РП, со склада через оперативный накопитель; й;(3) — сред- нее время ожидания обслуживания на складе изделий, передаваемых непосредственно (минуя накопители) на РП, со склада. На основе интенсивностей потоков и средних времен ожидания обслуживания, полученных на первом и втором этапах, находятся элементы матриц tj и W(fc), £=1,2,3, по следующим формулам: для /,/=!,/ n'/ = «j. {]' = q®=f)c°=O; / / / •?•= Sy',; n?= n»= Sv'; < I i-l /-I n' = У + nJ; n» = E I — I I tr',(1 )= W*( 1); Г,(2)= r,(3)= W",(2); (Г; (1) = W; (1) </ft; (2) = Г, (3) = W* (2) Замечание. Далее матрица т) используется для расчета загрузки транспортной системы. Так как поток изделий с РП, на РП, интенсивности не загружает транспортную систему, то перевозка изделий с одной РП на другую не требуется. Поэтому в дальнейшем при ис- пользовании матрицы ц в модели расчета загрузки тран- спортной системы будем считать, что t]{ = 0, /=1, J. 5.4. Модель расчета загрузки транспортной системы Исходными данными для расчета загрузки транспорт- ной системы являются: 1. Матрица интенсивностей rf потоков между различ- ными позициями (РП, оперативный накопитель, склад) Эту матрицу размерности /* х /*, где /* = /4-2, можно получить на основе модели, изложенной в § 5.3, при этом будем считать, что позиция / 4~ 1 — склад, а пози- ция / -|- 2 — оперативный накопитель. 138
2. Технические характеристики транспортной системы, к которым относятся: А/ — суммарное время, затрачи- ваемое на разгон, торможение, фиксацию, расфиксацию тележки и погрузку-выгрузку одного изделия; А/‘ — сум- марное время, затрачиваемое на разгон, торможение, фиксацию, расфиксацию тележки; и — постоянная ско- рость перемещения тележки. 3. Дисциплина обслуживания требований, реализуе- мая системой управления. Здесь под требованием пони- мается запрос на перевозку некоторого изделия, направ- ляемый в систему управления тележкой, а под обслужи- ванием — выполнение такой перевозки. Будем предпола- гать, что тележка обслуживает поступающие требования по стационарным правилам предпочтения и не совер- шает упреждающих перемещений. Правила предпочтения не изменяются со временем. Тележка остается там, где оказалась после завершения обслуживания последнего поступившего требования. 4. Схема размещения оборудования. Будем считать, что площадь, занимаемая технологической подсистемой ГАП, с учетом ограничений, накладываемых техническим устройством транспортной системы, разбита на М мест и для каждого места /и, т=1, Л1, задано /(ш) = {/|, ... .... /\}с={1, .... J} — множество позиций, которые могут быть расположены в т-м месте. При этом определены и мно- жества Af(/), /=1, J , где Л1(/)={ш...., Л4} — множество мест, в которых может быть расположена РПУ. Схема размещения оборудования и технические характеристики тележки позволяют считать известной матрицу т = [тШ1Ш1] размерности Л1ХЯ где тш,ш = =Tmmi>0 для любых Z7l|, Ттш=0, a Tm.m, — ВрСМЯ перемещения тележки (чистое время перемещения без учета времени выполнения вспомогательных операций) между местами ni\ и zm2- Естественно считать, что т. е. число мест должно быть не меньше, чем число раз- мещаемых позиций. Размещение позиций по местам опи- сывается матрицей X = [r/m] размерности J %М, х1т^ е{0, 1} для любых /, т: {1, если РП, размещается в zn-м месте; О — в противном случае. Для конкретного размещения должны выполняться следующие ограничения. Каждая позиция размещается в каком-либо месте, т. е. 139
Zj */m — 1» / = 1, J *. тш MU) В каждом месте размещается не более одной позиции: У xim 1, т = 1, М. i л Л "О Зная матрицы т и X, можно определить матрицу вре- мени перемещения Т(т, X) = (т, X)] размерности У* X X/*, где X) —время перемещения тележки с по- зиции /1 на позицию /2 при размещении X; /у (т. X) — У । , XpmtXj m Tpjj/nj, j\, /о 1 ♦ J * - еЛк/ ) т,- М(/,) Пусть Tr=^[f)(] — матрица размерности /*Х^. где Tj'3 — среднее время обслуживания тележкой одного требования по перемещению изделия с позиции /| на по- зицию /2. Тогда загрузка тележки /• /• QT= у у /1-1 /2-1 Рассмотрим процедуру расчета Г при заданном раз- мещении оборудования и выбранной дисциплине обслу- живания требований. Действия тележки, время выполне- ния которых образует Т}', следующие: расфиксация, раз- гон, перемещение в позицию /| (время перемещения /„), торможение, фиксация (если тележка не находилась в позиции /|) и далее — погрузка, расфиксация, разгон, перемещение из позиции /| в позицию /2 (время пере- мещения thi(x. Х))э торможение, фиксация, разгрузка. Таким образом, thl (т, X) + А/, если тележка должна пере местить изделие из пози- ции /| в позицию /2 и при этом находится в пози- ции /ь thl (т, X) + \/ + th + V* — в противном случае, где th — время, затрачиваемое на перемещение тележки в позицию /|, которое является случайной величиной, так как зависит от местоположения тележки Тогда Л = V + //./(r,X)+T/1(r,X), где Л/ + //1( (т, X) — время, затрачиваемое на переме- щение изделия с позиции /| на позицию /2; ?7(т, X) — 140
среднее время, затрачиваемое на то. чтобы тележка ока- залась в позиции /|. Общая загрузка тележки /• /• о? = q?(t, X) = £ V + Z/i/i(t, X) + Г/,(т. X)) = / । / -| =ОтП(т, X) + eJ(T, X), /• /• где е?(т. X) = Z П/ О* + 6./ (*• X))— величина по- лезной загрузки, зависящая от дисциплины обслужива- ния требований; /• /• С>Д, Х) = v v^-T' jx X) — /|/| величина загрузки тележки, вызванная холостым пробе- гом, зависящая от дисциплины обслуживания. Найдем Г/Д, X) при выбранной дисциплине обслу- живания и предположении, что потоки изделий между позициями являются пуассоновскими. Пусть {//v} — по- следовательность моментов времени принятия решений, т. е. последовательность моментов окончания обслужи- вания требований и моментов прихода требований в не- занятую систему. Введем пространство состояний У| = = {0,(/|, /Д /|, /2=1,/*} и состояния системы v(/*) в момент времени fo, при этом v(/v)=0 означает, что в момент времени tN тележка освобождается и нет очере- ди требований, ожидающих обслуживания, v(//v)=(/i./2) означает, что в момент для обслуживания выбирается требование перемещения изделия с позиции /| на пози- цию /2. Пусть вероятности соответствующих событий в стационарном режиме равны: л0= Нт Р{\(/л/) = О}; л}1 = lim P{v(/v)=(/i, />)}- Л/-*оо Л/-*оо При предположении, что поток изделий с позиции /| на позицию /2 является пуассоновским с интенсивностью и при произвольной функции распределения времени об- служивания требований определенного типа, стационар- ные вероятности л0, л}!, /|, />=!,/ можно получить сле- дующим образом (см. § 4.2): Ло = 1 — е?; л'; = —, /1, j2 = 1,7*. £ и'1 141
Введем пространство состояний У2 = {1. ...» /•} Пусть 6(/v) = j е Уг. если в момент принятия решения tN тележка находится в позиции /. Положим Р = lim P{6(tv) =/} — стационарная вероятность того Af—*оо что тележка в момент принятия решения находится в по- зиции /. Нетрудно убедиться в том, что при сделанных предположениях относительно дисциплины обслуживания имеют место соотношения: Р,= S nf + P/Ло; /. -1 Таким образом, s лр. 1 - I <* I, I Подставив в это соотношение значения л'/, найдем Р'=1^где I'lol = ХчА [’11 = S Si: Тогда Т,.= S /}(/;,.(Т.Х)+АГ). / =777’ ; /-•./* /I е;(т, Х)= £ 2 5* £ Ж. (ь X) + М). h г I /,= | /= „ I’ll Преобразуем выражение для q; (т, X) следующим об- разом. Просуммируем по индексу /2 и положим [п</)] = = £ Ц/,. При этом выполняется соотношение /»-1 /• /• S S А - I /t - I 1пъ)Ип,,?] РГ Заменим суммирование по индексу / на суммирование по индексу /2. Учтем также, что ///== т ==0 m.e М(/) независимо от размещения оборудования X. Тогда 142
О'.(т. Х)= S 2 —. 'г - <<>/»(т- х)+л/*) = / I/ I./2-/I 1 11 = (Ini - 2,—hl1--) лг + + е е MJ*1 и(т>х). /I I/»-I 1,1 Положим Ч/=[ф};| —матрица размерности где Л/. — /?• *сли /’=/>• V/’ l[n,7,)] [W)]/hl. если /|#=/2. Формулы для о? (т, X) и Qt (х. X) с использованием величин т]1; и фр можно интерпретировать следующим образом. Интенсивности потоков изделий между позиция- ми, задаваемые матрицей т|, позволяют при определенном размещении оборудования получить полезную загрузку тележки q?(t, X). Однако тележка совершает также порожние перемещения. В стационарном режиме (при От (т, Х)<1) независимо от стационарных правил пред- почтения при отсутствии упреждающих перемещений ве- личину фр можно рассматривать как интенсивность потока порожних перемещений тележки с позиции /| на позицию /2, порождаемую матрицей интенсивностей потоков изделий i), a q! (т, X) — как загрузку тележки по обслуживанию потоков порожних перемещений, ин- тенсивности которых задаются матрицей ЧГ Таким обра- зом, получаем Qt (т, X) = [т)]Л/4- [$]&/• + + Е Е (пЗ+ШьХт.Х). Напомним, что эта формула получена при следующих предположениях: — потоки деталей между позициями пуассоновские; — выбор очередного требования для обслуживания осуществляется по стационарным правилам предпочтения; — тележка не совершает упреждающих перемещений. В качестве примера рассмотрим расчет загрузки те- лежки при заданном размещении оборудования. Пусть в ГПС, состоящей из трех позиций (1, 2, 3), за смену 143
(Т = 480 мин) между позициями I—2 и 2—3 в обе стороны передается по 40 изделий, т. е. соответствующие интен- сивности равны 40/480=1/12. Тогда »|=Гп!]= о о 1 12 0 Функционирование тележки описывается следующим об- разом: — суммарное время, затрачиваемое на расфиксацию, разгон, торможение, фиксацию, равно 10 с, или ’Д мин. — суммарное время, затрачиваемое на погрузку, выгрузку изделия, равно 5 с, или */>2 мин. Времена перемещений тележки между позициями, мин, задаются матрицей Т=[/(1,2] = О 0,5 1 0,5 0 0,5 I 0,5 0 Таким образом, имеем: Л/= 15 с = 7« мин, Л/ —/б мин, 1п] = 7з; (In0]. In ln‘3,l) = =(lnu)J« ) =(’/12» ’/e. */12) и соответственно Ф=[<;!»]= 0 ’/2< 7« 0 X/w 72« 0 или I4'] = 4,/24+27.e=-^- Тогда о?— In] v + S П/Хм ="т"т + = 0’25; /I. /t fl./1 = ТГ7Г + 4ТГ"Т + 2TT* ~ "ПТ-0’15’ e> — e" + e?=-3- + -----П4~~ 0,4°- 144
5.5. Имитационные модели для анализа функционирования Рассмотрим три имитационные модели, использующие аппарат расширенных сетей Петри: манипулятора, участ- ка ГПС механообработки и участка ГПС сборочного типа. При построении моделей используются два принципа: модульности и структурного подобия. Принцип модульности заключается в сле- дующем. Моделируемый объект делится на фрагменты (модули), для каждого из которых строится модель. Затем модели модулей агрегируются для получения обоб- щенной модели ГПС. Модуль должен представлять собой достаточно автономный с технологической точки зрения объект. Под автономностью здесь понимается относитель- но небольшое число связей данного объекта с другими. Заметим, что выделение модулей и построение их моде- лей представляет собой творческий процесс, который труд- но или невозможно описать формальными правилами. Приведенные ниже модели и описание процесса их по- строения иллюстрируют некоторые приемы выделения модулей и их описания на языке сетей Петри. Принцип структурного подобия заключает- ся в том, что каждому значимому структурному элементу объекта ставится в соответствие набор позиций сети, при этом текущая разметка данного набора позиций однознач- но характеризует определенное состояние элемента. Модель манипулятора. Моделируется манипулятор, предназначенный для транспортировки детали с площад- ки А на площадку В (рис. 5.5) [3]. Манипулятор имеет две степени свободы: он может перемещаться вправо- влево и вверх-вниз с помощью двигателей горизонталь- ного перемещения Z и вертикального перемещения X. Его захватное устройство закрывается и открывается посредством вращения двигателя G. Движение манипу- лятора по вертикали ограничено координатами zl и z2, а по горизонтали — координатами л! и л2. При достиже- нии этих координат соответствующие контакты замы- каются. При захвате детали замыкается контакт g2, а при отпускании — контакт gl. При наличии детали на площад- ках А и В замыкаются соответственно контакты d\ или d2. Транспортировка детали возможна, если d\ замкнут (де- таль находится на площадке Л), a d2 разомкнут (пло- щадка В свободна). В начальном положении захватного 6—1279 145
Рис. 5.5. Схема зоны манипулирования Рис. 5.6. Модель двигателя Z устройства контакты xl. z2 и gl замкнуты (захватное устройство закрыто, координаты xl, z2). Двигатель Z после пуска вниз или вверх работает до полной остановки в положениях z2 или zl. Одним из вариантов модели, описывающей его функционирование, является сеть Петри, изображенная на рис. 5.6. Позиции 1, 2 описывают условия запуска двигателя вниз и вверх соответственно. Наличие маркеров в пози- циях 3 и 4 обозначает замкнутость контакта zl, а в по* 146
16 13 Рис. 5.7. Модель двигателя G зициях 5 и 6 — контакта z2. Маркер в позиции 7 обозна- чает замкнутость либо zl, либо z2. Позиция 8 моделирует остановку двигателя, а позиции 9, 10 — движение вниз или вверх соответственно. Этим позициям приписано вре- мя задержки маркера, равное времени перемещений между крайними положениями. Пусть маркеры находятся в позициях 5, 6, 8. Запуск двигателя (вниз) может прои- зойти только после появления маркера в позиции /. При срабатывании перехода t\ маркер появляется в пози- ции 9, что означает движение захватного устройства вниз. После срабатывания перехода /з (замыкание кон- такта zl) и перехода /5 маркеры поступают- в пози- ции 3, 4, 8. Полученная маркировка является исходной для запуска двигателя вверх. Позиции 4, 6, 7 введены для имитации собственно процессов управления двигателя Z, а позиции 3 и 5 — для имитации процесса управления манипулятором. Работа двигателя X также может быть смоделирова- на сетью, представленной на рис. 5.6. При этом пози- ции 3 моделируют движение вправо, а пози- ции 2,10,5, 6 — влево. Функционирование сети при моде- лировании работы двигателя X аналогично описанному выше функционированию при моделировании работы двигателя Z. Модель работы двигателя G изображена на рис. 5.7. Позиции 11, 12 моделируют состояние «захватное устрой- ство закрыто», а позиции 13, 14 — «захватное устройство открыто». Маркеры в позициях 15, 16 — команды на вы- полнение одного из этих состояний. Позиции 17, 18 соот- ветствуют переходным режимам из одного состояния в другое. Этим позициям приписано время задержки, рав- ное времени нахождения захватного устройства в соот- ветствующих состояниях. Пусть маркеры находятся в 6* 147
Рис. 5.8. Модель функционирования манипулятора позициях 13 и 14 (захватное устройство открыто). Приход маркера в позицию 15 заставит сработать переход Ц, моделирующий начало захвата. В результате срабатыва- ния /| маркер появляется в позиции 18 (переход из состоя- ния «открыт» в состояние «закрыт»). Срабатывающий затем переход 73 переводит захватное устройство в за- крытое состояние (маркеры в позициях 11, 12). Эта мар- кировка является исходной для запуска двигателя, откры- вающего захватное устройство. Позиции 12, 14 необходи- мы для имитации собственно процессов управления дви- гателем G, а позиции 11, 15 — для имитации процесса управления манипулятором. Модель функционирования манипулятора изображена на рис. 5.8. Начальная маркировка сети соответствует начальному состоянию манипулятора (xl, z2,g2) и усло- виям: деталь находится на площадке А, площадка В свободна. Из исходного положения работа манипулятора осуществляется по циклу: «вниз за деталью», «взять деталь», «вверх с деталью», «вправо с деталью», «вниз с деталью», «открыть захватное устройство», «вверх без детали» и т. д. Повторение цикла осуществляется в том случае, если на месте А появится новая деталь, а с ме 148
:та В будет убрана деталь, пе- ренесенная туда ранее. Сеть Петри, приведенная на рис. 5.8, является иерархической. Двигатели Z, X, G в сети мо- делируются наборами перехо- дов, которые обозначены соот- ветствующими символами. Лю- бой из переходов Z, X, G с ин- цидентными ему входными и вы- Рис. 5.9. Схема участка механообработки ходными позициями интерпре- тируется как процесс, происхо- дящий в двигателях Z, X, G. Поэтому при необходимости указанные переходы могут быть заменены моделями, изображенными на рис. 5.6, 5.7. Путем композиции строится общая модель. Описанная модель манипулятора служит основной для разработки имитационных моделей производственных си- стем, содержащих манипуляторы. Модель ГПС механообработки. Моделируется гибкий автоматизированный участок механообработки, функцио- нирование которого описано в § 5.1. Будем считать, что участок состоит из двух обрабатывающих центров, одного оперативного накопителя и транспортной системы типа рельсовой тележки. Схема участка приведена на рис. 5.9. Пусть на участке обрабатываются два типа изделий. Изделие типа 1 требует выполнения вначале операции 1, а затем 3. Изделие типа 2 требует выполнения вначале операции 2, а затем 4. Обрабатывающий центр ОЦ1 мо- жет выполнять операции 1 и 2, обрабатывающий центр ОЦ2 — операции 3 и 4. Считаем, что известны продолжи- тельности выполнения операций ть тг, тз, т4, а также вре- мена переналадок обрабатывающих центров с одной опе- рации На Другую — Т|2, Т2|, Т34, Т43. Изделия будут представляться маркерами двух цветов: coi и о)2 — для первого и второго изделий. Выделим четыре модуля: обрабатывающий центр (ОЦ), транспорт- ная тележка (ТТ), склад (С), накопитель (Н). Модуль «обрабатывающий центр». Об- рабатывающий центр моделируется вместе со своим пер- сональным накопителем (рис. 5.10), который описывает- ся позициями pi пи, р2пи. Наличие маркера в позиции pi лм означает, что изделие находится в персональном накопи- теле в ожидании обработки. Маркер в позиции рг™ обозна- чает, что обработанное изделие ожидает отправки. Пози- 149
₽2н Рис. 5.10. Модель модуля «обрабатывающий центр» ции pio, Р20 описывают соответственно выполнения опе- раций 1 п 2. Этим позициям ставится в соответствие время задержки маркеров т( и т2 . Позиции piH, рги. Pi2w. Р21 и введены для описания настройки ОЦ и его пе- реналадки. Позициям р|2н, P21H ставится в соответствие время задержки маркеров Т12 и Т21. Если в позиции piH находит- ся маркер цвета ст, то это обозначает, что ОЦ настроен на выполнение операции /. При поступлении з пози- цию р|ПИ маркера цвета coi (в персональный накопитель поступило изделие типа 1) срабатывает переход и изде- лие передается на обработку. Если в позицию р\ал поступит маркер цвета <02, то срабатывает переход Л2 и изделие передается на обработку только после перестройки ОЦ на выполнение операции 2. Эти условия обеспечиваются следующими распределениями цветов маркеров по вход- ным позициям переходов: для t\ — (р\™, (Di), (piH, u)i), для /|2— (PliiH, w2), (piM,W|). Если В ПОЗИЦИИ Р2к НЗХОДИТСЯ маркер <02. то ОЦ настроен на выполнение операции 2. Следовательно, появление в позиции р|ПИ маркера цвета сог должно вызывать срабатывание перехода /2. а маркера цвета <0| — перехода /21- Маркировку, изображенную на рис. 5.10, можно рассматривать как начальную, соответ- ствующую состоянию, при котором ОЦ находится в ре- жиме ожидания загрузки. Модуль ОЦ имеет один вход и один выход, связываю- щие его с другими модулями. Очевидно, структура моду- 150
Рис. 5.11. Модель модуля «транспортная тележка» ля, описывающего второй обрабатывающий центр, будет аналогична рассмотренной. Модуль «транспортная тележка» (рис. 5.11). Позиции Р1Т, ргт. Рзт» Рчт описывают положе- ния тележки у ОЦ1, ОЦ2, накопителя и склада соответст- венно. Например, маркер в позиции р[т обозначает, что тележка стоит у ОЦ1. Позиции р//т, « = 1,4, /=1,4, описы- вают соответственно движение тележки от i-й до J-й точки маршрута. Этим позициям ставится в соответствие время задержки маркера, равное времени движения тележки между точками i и /. Кроме маркеров цветов од и w2 (изде- лий типа 1 и 2) в модуле ТТ дополнительно используются маркеры цвета од для обозначения незагруженной те- лежки. Маркеры цвета од пропускаются только перехо- дами ff/, t'th /=1,4, /=1,4. Входным распределением 151
цветов маркеров для переходов t4 (/=1,4, /=Г/Г) являет- ся распределение (рп„ о)3), (р2п«, со*), k = 1,2, а выходным — распределение (р|/т, со*). Для переходов Т', /=1.4. /=1,4, выходное распределение цветов имеет вид: (р/Т, w3), (Р1пн, (о*), Л = 1,2. Задерживающие стрелки задают способ управления тележкой (см. $ 5.1). Начальной маркировкой модуля ТТ может быть» например, маркировка, представ- ленная на рис. 5.11. Модуль имеет входы и выходы, связы- вающие его с модулями ОЦ1, ОЦ2, «накопитель», «склад» (рис. 5.11). Рассмотрим работу описанной сетевой модели в пред- положении, что тележка находится у ОЦ1. Это означает, что в позиции piT есть маркер цвета <о3 Появление в пози- ции р2пн маркера цвета <Dt или о)2 (детали типа 1 и 2) вы- зовет срабатывание перехода /12, если персональный на- копитель ОЦ2 не заполнен. Тележка переместит деталь для выполнения операций 3 и 4. В ином случае сра- ботает переход /13 и деталь будет перемещена в оператив- ный накопитель. Если в позиции р2пн нет маркеров, пер- сональный накопитель ОЦ2 не заполнен и в позиции, соответствующей оперативному накопителю, есть маркеры цвета coi или со2 (в оперативном накопителе есть детали типа 1 и 2), то срабатывает переход ff3. Это означает, что тележка переместится к оперативному накопителю за соответствующими деталями, которые затем доставляют на ОЦ2 для обработки. Работа модели в случае нахожде- ния тележки у ОЦ2, склада и накопителя осуществляется аналогично. Модуль «скла д». Модуль С описывается двумя позициями (рис. 5.12). Позиции р\с и р2с описывают отде- ления склада для полностью обработанных изделий и заготовок соответственно. Модуль С имеет один вход и один выход, связывающие его с модулем ТТ. Модуль «накопитель». Модуль Н описывается двумя ПОЗИЦИЯМИ Р1н, Р2и (рИС. 5.13). Позиции PiH и Р2н описывают отделения накопителя для изделий типа 1 и 2, над которыми требуется выполнить операции соответствен- но 1 и 2, 3 и 4. Связи модуля Н с другими модулями изоб- ражены на рисунке. В данной модели склад и накопитель описаны упро- щенно. Если требуется более детально описать эти объек- ты, например учесть характеристики штабелера при имита- ции работы склада, то соответствующий модуль следует заменить более сложным. При этом необходимо, чтобы число входов и выходов модуля оставалось неизменным. 152
Рн. 5.12. Модель модуля «склад» Рис. 5.13. Модель модуля «на- копитель» Склад Кассетный конвейер Рис. 5.14. Схема участка ГАП сборочного типа Модель ГПС сборочного типа. Участок ГПС сборочно- го типа состоит из сборочных центров, конвейеров для транспортировки кассет со сборочным материалом и спут- ников с объектами сборки, а также склада для кассет. На рис. 5.14 изображен фрагмент участка ГАП описанного типа, включающий три сборочных центра, причем два из них (СЦ1 и СЦ2) настроены на выполнение одинаковых операций. По кассетному конвейеру транспортируются кассеты трех типов, адресуемые определенному сбороч- ному центру. После выработки кассета устанавливается на конвейер и возвращается на склад. По спутниковому конвейеру транспортируются спут- ники с объектами сборки. На моделируемом фрагменте участка выполняются две сборочные операции: опера- ция / — на СЦ1 или СЦ2, операция 2— на СЦЗ. Спут- ники с объектами сборки транспортируются спутниковым конвейером и поступают вначале на СЦ1 или СЦ2, а затем на СЦЗ. Выбор между СЦ1 и СЦ2 осуществляется следующим образом. Если СЦ1 занят, то спутник направ- ляется на СЦ2. Если и СЦ2 занят, то конвейер блокирует- ся до момента освобождения СЦ2. Модель рассматриваемого участка может быть синте- зирована на основе модулей трех типов: «кассетный конвейер со складом», «спутниковый конвейер», «сбороч- ный центр с кассетой». Рассмотрим графическое изображение каждого из перечисленных модулей для фрагмента, представленного на рис. 5.14. 153
Рис. 5.15. Модель модуля «кассетный конвейер со складом» Модуль «кассетный конвейер со скла- дом» (КК). Графическое представление модуля изобра- жено на рис. 5.15. Позиции рК|, рк2 и р*з описывают места конвейера, с которых кассеты забираются в сборочные центры СЩ, СЦ2 и СЦЗ соответственно. Участки кон- вейера между сборочными центрами рассматриваются как накопители, в которых могут останавливаться кассе- ты, если идущая вперед кассета блокируется у сборочного центра в ожидании обмена пустой кассеты на заполнен- ную. Эти накопители описываются позициями ры, рМ2, Риз, в которых ведутся очереди для учета порядка поступ- ления маркеров Позиция рс введена для описания склада. В модуле используются маркеры трех цветов од, од, од, соответствующие трем типам кассет. Маркеры цвета од пропускают переходы /2. /4, /5, /в, /9, /12, 6з*, маркеры цвета <о2 — переходы 6, /з, /5, /?, /в, /9, 6г, Лз*, маркеры цвета од — переходы 6, /3, /5, /б, /9, /ю, /и, Лз. Модуль КК имеет три входа и три выхода, связывающие его с моду- лями, соответствующими сборочным центрам. Модуль «спутниковый конвейер» (СК) (рис. 5.16). Позиции pcxi, Рск2, Рскз описывают места конвейера, с которых спутник с объемом сборки забирает- ся в сборочные центры СЩ, СЦ2 и CU3. Позиции ри), Риг, Риз, Ри4 соответствуют участкам конвейера, выполняю- щим функции накопителей между сборочными центрами. Рис. 5.16. Модель модуля «спутниковый конвейер» 154
В этих позициях ведут- ся очереди для учета последовательности по- ступления маркеров. Веса задерживающих стрелок, исходящих из ПОЗИЦИЙ РиЬ Ри2, Риз, Ри4, равны емкостям соответ- ствующих накопителей. В модуле использу- ются маркеры двух цве- тов: ci>4 — цвет, соответ- ствующий спутникам до выполнения над ними сборочной операции на любой группе однотип- ных СЦ; cos — цвет, со- ответствующий спутни- Рис. 5.17. Модель модуля «сборочный центр» кам, прошедшим лю- бую сборочную операцию. Маркеры цвета <о4 пропуска- ются переходами /{, /з, /5, /в, /10; маркеры цвета ю5 — переходами /5, /7, /!3. Переходы Ц, t* перерождают цвет (о4 в цвет (05, а переход /9 перерождает цвет (05 в цвет (04. Модуль СК имеет по одной входной и одной выходной связи с каждым модулем «сборочный центр». Модуль «сборочный центр» (СЦ). Струк- тура модуля изображена на рис. 5.17. Позиции рИ| и рН2 соответствуют входному и выходному накопителям спут- ников в сборочном центре. Позиция рк описывает состоя- ние кассеты со сборочными элементами. Число маркеров в ней в каждый момент времени соответствует числу сборочных элементов, находящихся в кассете. Срабаты- вание перехода t\ обозначает начало выполнения сбороч- ной операции. Условием срабатывания является нали- чие маркера в позициях р*\ и рк, т. е. во входном накопителе есть спутник с объектом сборки,^ в кассете — сборочный материал. После срабатывания 7? в позиции pMi исчезает маркер, а в позиции рк становится на один маркер меньше. Маркер в позиции р0 соответствует нахождению кассеты у СЦ. Как только в позиции р* не останется ни одного маркера, сработает переход G и пустая кассета поки- нет СЦ. Упрощенная структурная схема имитационного экспе- римента с моделями описанного типа изображена на 155
Рис. 5.18. Схема имитационного эксперимента ставленных в соответствие рис. 5.18. В ней выделено три фазы: настройка модуля, ге- нерация модели, имитация. Настройка модуля заключается в задании конк- ретных распределений цве- тов на входах и выходах пе- реходов, значений временных задержек маркеров в опре- деленных позициях, а также начальной разметки сети. Генерация модели заключается в объединении матриц F, Н, F и функций Z, ф. Ио, описывающих каж- дый модуль, в аналогичные обобщенные матрицы и функ- ции, описывающие всю мо- дель. На этой же фазе про- исходит установка началь- ных значений таймеров, по- позициям, для которых время задержки маркеров не равно нулю. Имитация состоит из четырех основных процедур. Первая процедура — определение множества перехо- дов, готовых сработать, выполняется по формулам (4.5). Проверка временного условия заключается в определе- нии времени ближайшего события, т. е. минимального из всех значений, записанных в данный момент в тай- мерах. Для этого вводится вектор переменного времени О =(9n(pi), ..., 8п(Рп)), который пересчитывается на каж- дом шаге работы алгоритма. Здесь 0п(р<) — время, за- писанное в данный момент в таймере позиции pt и равное времени, оставшемуся до момента, когда маркер может покинуть позицию. Это время равно нулю, если время задержки истекло либо в pt нет маркеров. Для каждого из переходов удовлетворяющих первому и второму условиям срабатывания, находится вектор yG который равен покоординатному произведению векторов 0Л и (F(p, /)/пРН, где (F(p, t)/npyt — строка матрицы F, соответствующая символу перехода /. В век- торе у, определяют максимальную координату, которая соответствует времени, оставшемуся до момента разре- шения срабатывания t. Будем считать, что временное условие удовлетворяется для тех переходов /, векто- 156
ры yt которых содержат минимальную из найденных мак- симальных координат. Эти переходы соответствуют бли- жайшим событиям в сети. Вторая процедура — определение новой маркировки сети — выполняется по формуле (4.6). Третья процедура — пересчет системного времени — заключается в изменении значений времени, записан- ных в данный момент в таймерах. Четвертая процедура — интерпретация результатов — определяется целью имитационного эксперимента. Чаще всего при анализе технологических подсистем ГПС целью эксперимента является определение производи- тельности системы на заданном интервале времени, среднего времени простоя оборудования, дифференциро- ванного по причинам простоя, коэффициента загрузки оборудования и других характеристик Очевидно, опреде- ление таких характеристик связано с анализом вектора разметки сети на каждом шаге по специальному ал- горитму. 5.6. Модель формирования управляющей системы В гибких автоматизированных производствах ЭВМ осуществляют в реальном масштабе времени контроль и управление технологическими операциями в течение полного цикла производства — от запуска заготовок на обработку до выхода готовой продукции. ЭВМ обеспе- чивают также интеграцию и совместное согласованное функционирование в автоматическом режиме обраба- тывающих станков, промышленных роботов, контрольно- измерительных машин, транспортных механизмов, обо- рудования складов и других компонентов производствен- ной системы. Они вырабатывают все решения, связан- ные с планированием производства, составлением рас- писания работ и их реализацией в ходе технологического процесса. Несколько ЭВМ, соединенных каналами связи и взаи- модействующих в соответствии с присвоенными рангами подчиненности, образуют информационно-вычислительное ядро иерархической управляющей системы (ИУС). Основными техническими средствами построения ИУС являются контроллеры технологического оборудования (устройства управления), микропроцессоры, микро- и миниЭВМ, средства отображения информации, а также 157
различные виды периферийного оборудования вычисли тельной техники и связи. Как правило, ИУС имеет трехуровневую структуру. На нижнем уровне расположены микропроцессорные регуляторы приводов и контроллеры, содержащие микроЭВМ с программами управления отдельными еди- ницами основного и вспомогательного оборудования при обработке деталей заданной номенклатуры. Промежу- точный уровень занимают микро- и миниЭВМ, предназна- ченные для группового управления оборудованием. На верхнем уровне применяют ЭВМ, обладающие возмож- ностями, достаточными для управления ГАП. Иногда вычислительных ресурсов оказывается достаточно для организации двухуровневой структуры ИУС. Управляю- щие вычислительные комплексы всех уровней обработки информации и управления с использованием средств связи и специальных интерфейсов объединяют в рас- пределенную структуру контроля и управления систе- мой ГАП. Центральной проблемой при создании и внедрении ИУС является формирование конфигурации вычислитель- ных средств, обеспечивающей безусловное выполнение функциональных задач по управлению ГАП при мини- мальных затратах на ее разработку и эксплуатацию. Иными словами, для каждого уровня иерархии требует- ся определить число и типы ЭВМ, а также необходимые связи так, чтобы минимизировать стоимость управления. Для решения поставленной задачи воспользуемся математической моделью распределения ограниченных вычислительных ресурсов разных стоимостей по уров- ням иерархии с целью удовлетворения выявленных по- требностей при минимальных совокупных расходах на создание и внедрение ИУС. Вычислительные ресурсы ИУС описывают двумя основными параметрами: максимальной скоростью обра- ботки прерываний при получении и передаче информа- ции по каналам ввода — вывода и емкостью резидент- ной памяти для логического управления операциями. Эти параметры определяют возможности управляющей системы в реальном масштабе времени для получения и обработки данных и на этой основе выработки и выда- чи регулирующих воздействий в темпе контролируемого процесса. В свою очередь, требования, предъявляемые к быстродействию и памяти вычислительной системы технологией обработки, определяют типы ЭВМ, необхо- 158
димые для управления производственными процессами. Предположим, что ГАП состоит из N единиц авто* матического технологического оборудования с ЧПУ: металлорежущих станков, обрабатывающих центров, промышленных роботов, транспортных устройств, склад- ских механизмов и т. д. Отдельную единицу оборудова- ния обозначим через j=l,N. Устройства управления для оснащения оборудования выберем среди / типов контроллеров. Стоимость установки и эксплуатации /-го контроллера (i=l,/) на /-м оборудовании обозначим через c,i. Тогда общие расходы на внедрение любой комбинации контроллеров, назначаемых для обслужи- вания данного набора оборудования, можно записать в виде v / S S СцХц, (5.13) / — I I где 1, если Лй контроллер используется xti= на /-м оборудовании; (5.14) О — в противоположном случае. Искомые неизвестные хц должны удовлетворять ограничению S х„=\, Vi=T?N, (5.15) I “ I согласно которому к каждой единице оборудования для управления может быть прикреплен только один какой- либо контроллер. Выбранная комбинация контроллеров взаимодейству- ет с ЭВМ промежуточного уровня, на котором осуществ- ляется наблюдение и контроль за выполнением операций обработки деталей, их накоплением и продвижением по ходу технологического процесса. При этом ЭВМ выпол- няют групповое управление оборудованием с ЧПУ и поддерживают функционирование соответствующей ком- бинации контроллеров. Число ЭВМ промежуточного уровня зависит от числа и вида применяемых контрол- леров и типа выбираемых ЭВМ. В предельных случаях промежуточных ЭВМ может быть столько, сколько вы- брано контроллеров, или ни одной. Это определяется нагрузкой на ЭВМ промежуточного уровня, возникающей в результате взаимодействия с нижним уровнем. В об- щем случае суммарная нагрузка от решения задач, 159
связанных с обслуживанием всех контроллеров нижнего уровня, должна равномерно распределяться среди ЭВМ промежуточного уровня. Отсюда следует необходимость разбиения комбинации выбранных________контроллеров на группы, содержащие единиц (k=l,K) и прикрепляе- мые к одной ЭВМ промежуточного уровня. При этом главным принципом формирования групп является балансировка распределения по ним требуемых памяти и быстродействия. Требуемую скорость обмена данными по каналам ввода — вывода для каждой /-й единицы оборудования при установке на ней z-го типа контроллера обозначим через Гр и будем измерять в К байтах в секунду. Требуе- мый объем памяти, измеряемый в К байтах, обозначим через Sp. В задаче балансировки требуется разбить N единиц технологического оборудования, а следовательно, и прикрепленных к ним контроллеров на К групп по Jk единиц в каждой так, чтобы выполнялось равенство X v = К(={0, 1...JV), (5.16) А » I где К может принимать значения от 0 до Л. При этом Jk удовлетворяли бы следующим условиям баланса: /. / * / 2 = ... = i rtlSltX= /.-ь-l Л-К-1 4 / ...= rltsltxlt9 (5.17) h-u-i где каждый член равенства (5.17) представляет собой условную оценку нагрузки, даваемой k-й группой, на выделенную ей промежуточную ЭВМ. В случае, когда К=0, промежуточную ЭВМ не при- меняют и выражения (5 16) и (5.17) теряют смысл. При К=\ выбранные контроллеры составляют группу, кото- рую обслуживает одна ЭВМ промежуточного уровня. Если ^ = ^, то для каждой единицы технологического оборудования выделяется отдельная ЭВМ. При балансировке нагрузки на ЭВМ группового управления необходимо учитывать ориентированность оборудования на выполнение близких технологических задач, совместимость программного обеспечения, ком- пактность размещения оборудования и другие объеди- няющие факторы. 160
Пусть Skm — максимальный объем памяти, a Rum — максимальная скорость входо-выходных информацион- ных взаимодействий, которые может обеспечить zn-й тип ЭВМ (т=1,Л1) при назначении на промежуточный уро- вень для управления Л-й группой. Обозначим У km — 1, если ЭВМ типа т выбрана для управления группой; О — в противном случае. (5.18) Выбор промежуточных ЭВМ из имеющегося набора и их распределение по группам должны удовлетворять потребности каждой группы в объеме памяти /, / м __ Ё Z 2 ЗктУкт, V* = 1, К (5.19) i.-i i«l M.i и в скорости обработки прерываний и обмена данными по каналам ввода — вывода информации /. / м __ xL ГRkmykmt 1, X. /•—I i—| m—I (5.20) Так как к каждой группе может быть прикреплена только одна ЭВМ, то искомые неизвестные должны удовлетворять условию S ykm=\, yk = TjC (5.21) I Оценим расходы, связанные с внедрением группового управления на промежуточном уровне ИУС. Обозна- чим Ckm — стоимость аппаратуры, программного обеспе- чения, периферийного оборудования, а также монтажа и эксплуатации ЭВМ m-го типа на Л-й группе, а сктц — стоимость линий связи, устройств приема-передачи дан- ных и интерфейса m-й ЭВМ с i-м контроллером /-го обо- рудования в Л-й группе. Тогда затраты на создание промежуточного уровня управления можно подсчитать по формуле £ Vykm(ckm+ V (5 22) Промежуточные ЭВМ взаимодействуют с ЭВМ верх- него уровня управления, в функции которого включа- ются автоматизированное проектирование изделий и тех- нологии, моделирование производственных процессов, а 161
также ведение и хранение программ промежуточных ЭВМ и их поддержка в случае сбоев. Объем памяти /-й ЭВМ из множества ЭВМ {!,£}, претендующих на установку на верхнем уровне, обозна- чим S/, а ее скорость обмена данными Ri. Вычислитель- ные ресурсы ЭВМ верхнего уровня должны быть больше или равны ресурсам ЭВМ промежуточного и нижнего уровней, что обусловлено необходимостью подмены ма- шинами верхнего уровня промежуточных ЭВМ при их отказах. Кроме того, ЭВМ верхнего уровня должна иметь определенный резерв вычислительных ресурсов для решения комплекса задач системного инжениринга, не- посредственно не связанных с оперативным управлением текущим производственным процессом, но включающим исследование перспективных вопросов конструирования, прогнозирования, технической подготовки производства и др. Обозначим дополнительные потребности в объеме памяти и скорости обмена ЭВМ верхнего уровня соот- ветственно о и q, и с учетом этого запишем ограничения на выбор верхней ЭВМ: l км £ s‘z‘>£ £ + °’’ (5.23) L КМ £ Rkmy>m + q; (5.24) 1, если /-я ЭВМ выбрана для верхнего уровня управления; О — в противном случае. (5.25) Заметим, что ограничениями (5.23) — (5.25) допуска- ется возможность установки на верхнем уровне несколь- ких ЭВМ. Вместе с тем не потребуется ни одной ЭВМ на верхнем уровне, если вычислительных ресурсов промежу- точных ЭВМ достаточно для одновременного выполнения собственных задач и функций верхнего уровня. Такая ситуация возникает при выполнении неравенств: к м S S ЗЪтУЬт 5т1х; (5.26) ft —I /п—| К м S S (5.27) ft«l ffl-l W и #т1х — максимальные требования для одно- временного удовлетворения потребностей промежуточ- 162
ного и верхнего уровней соответственно в памяти и быст- родействии. В рассматриваемом случае ограничения (5.23) — (5.25) теряют смысл и структура ИУС вырожда- ется в двухуровневую. Расходы на установку и содержание /-й ЭВМ верх- него уровня включают как собственно стоимость а ее аппаратуры, программного обеспечения и эксплуатации, так и стоимость ее интерфейса, т. е. физической и программной стыковки с zn-й промежуточной ЭВМ, управляющей Л-й группой контроллеров технологического оборудования. Кроме того, дополнительные издержки F связаны с хранением всех программ на устройствах внешней памяти. С учетом этого совокупные затраты на организацию и функционирование верхнего уровня управления можно выразить формулой (о 4" С^тУкт Y (5 28) I I V I m«I 7 Суммируя выражения (5.13), (5.22), (5.28), получаем формулу для расчета общей стоимости создания и внед- рения ИУС L КМ КМ F + 2jZ/(C/4" S S Clkmykm) 4“ У*т(Скт 4“ l»l 1 I "I Л / N I + s )4- s ScpXp. (5.29) /.-i i-i 7 у-i «-I Таким образом, существо построенной математиче- ской модели для решения задачи формирования конфи- гурации вычислительных средств по критерию минимума стоимости ИУС состоит в том, чтобы найти целочислен- ные значения искомых неизвестных х/н z/, доставляю- щие минимум целевой функции (5.29) и удовлетворяю- щие ограничениями (5.14) — (5.21), (5.23) — (5.27). При принятых допущениях модель позволяет получить опти- мальный состав аппаратуры, обеспечивающий требуе- мые объемы памяти и скорости обработки прерываний и обмена данными на всех уровнях. С математической точки зрения рассматриваемая задача относится к классу задач дискретной оптимизации и для построения алго- ритма ее решения можно рекомендовать метод ветвей и границ (см. § 4.3).
СЕТИ ПЕТРИ С РАЗНОЦВЕТНЫМИ МАРКЕРАМИ В $ 4.4 кратко рассмотрены основные понятия сетей Петри с раз- ноцветными маркерами, которые являются одной из наиболее важных модификаций традиционных сетей Петри. С их помощью удается до- статочно компактно моделировать сложные системы с большим числом различных динамических объектов. К таким системам, в частности, относятся многономенклатурные гибкие производства. В данном приложении рассмотрим специальные методы, позво- ляющие исследовать также свойства сетей Петри с разноцветными маркерами, как ограниченность, безопасность, сохраняемость, живость, а также методы анализа цветовой достижимости. Сеть Петри с разноцветными маркерами (СПРМ) формально опре- деляется как набор вида N=(P, Г. Q, F. Я. X. ф. ро). где Р = {р)— непустое конечное множество позиций; Т = {/}—непустое конечное множество переходов; Q={<d) — непустое конечное множество цветов маркеров; F: РХ Г-*{0. I. 2....) и //: ГХ Р-*{0. 1.2. функции инцидентности множеств позиций и переходов соответственно; Х:(РХ ХЙ)ХГ-*(0. I) —функция распределения цветов маркеров по вход- ным позициям переходов сети; ф : ТХ(РХ Й)-*(РХ Й) —функция рас- пределения цветов маркеров по выходным позициям переходов сети; ро:РХЙ->(0. I. 2....} — начальная маркировка сети. Способ задания функций X и ф описан в $ 4.4 Условие срабатывания перехода t^T при некоторой маркировке р имеет вид Ур*Е’/ 3u)MgQ, что р(а*. О. (п О X, ((Д|. .., (р1Я. <1>|Я))= I. Л= I. л. л = Г/|. Для каждого /еГ, удовлетворяющего условиям (П I). в общем случае существует множество допустимых распределений ’С/ие’Сь при которых это условие выполняется Новая маркировка, которая получается после срабатывания перехода t при фиксированном ’qe’Gp, определяется по фор- муле (4.8). 164
На рис. П.1 представлен пример графического изображения СПРМ для двух цветов* <oi и о>2 (обозначены соответственно «•> и «•>). Функции X и ф для данной сети представлены ниже: ДЛЯ /| ДЛЯ /2 для h X/i((pi.o>i))=l; Xr2((/>2.<i>i)>=0. Х/з((рз.<»> । ).(pi .<*> । ))=0; X/i((pi.(D2))=0; А*Х(Р2.<«>2))= 1; ^/з((РЗ.<«>2). (pl. <1>2))= 1: X/j((p3,<i>i). (р\,о>?))« 1; Х/з((Дз,<1>2), (Pl.Wl))=O; Фп((Р|.<О|))=(Р2.<*>2); ф/Х(Р2,<О2))=(рЗ.<О|); Фгз((Рз,<1>2), (pi.<i>2))=(p2.(i>l); ф/з((Рз.Ю|). (Pl.W2))=KP2,U>|). Выделим два частных вида СПРМ: перерождающие и селективные сети. В перерождающихся сетях (ПС) срабатывание любого перехода / разрешено при наличии во всех входных позициях ре ’/ маркеров одного цвета <i>(eQ. После срабатывания данного перехода во все его выходные позиции помещаются маркеры цвета (oyeQ. Функция X в ПС задается следующим образом: .. _(I. если распределение ’cfW) допустимо для перехода /; С‘~1 (О — в противном случае. где — распределение вида ’ru, = [(P«i. <*>•). р,*е Л=1, л. л = ГЛ. Функция ф/ в ПС принимает значения из области С<’={[(А.,<0;).................(Аж. «О,)]} ={<.}, m = о»,eQ Если = . то переход / перерождает маркеры цвета ш. в маркеры цвета ш,. Условие срабатывания перехода t^T при маркировке ц для ПС запи- сывается в виде VР Q; | (|*(р. ш) - F(p. /) + 1)М <-..) _ ||(П 2) Новая маркировка ц', получаемая в результате срабатывания перехода t при фиксированном определяется по формуле р'(р. «о)=р(р. ш) —(р. /) + + х, (<#)//(/, р); 165
\fp^P, VugQ, где 6<(<i>) — Рз® Рис П.2 Графическое изображение ПС ( I при ф<(’Си)—Си: 1 0 — в противном случае Пример ПС для Q = « {<1>1, (1>2. <1>з, <d4} представ- лен на рис. П.2. Начальная маркировка и функция ф описаны матрицами (1)| <1)2 ь>з о>< (1)| (1>2 о>3 0)4 О О О о о О Pl Р2 Рз /| h h 6 (1)2 0)3 <1)| ш* 0)4 U)| 0)2 0)3 0)4 0)4 0)3 0)2 О) | (1)| 0)4 О) | о о Селективной сетью (СС) называется такая сеть, в которой перехо- ды пропускают только маркеры определенных цветов, не изменяя их. Функция А/ для СС задается так же. как и для перерождающей, а функция Си- Условия срабатывания перехода t^T СС и ПС при маркировке ц аналогичны [см. (П.2)|. Новая маркировка ц* при срабатывании перехода t^T для 'с(- определяется по формуле ц*(р. <о) = р(р, о)) + + 6<о)Х - Р(р. О 4- Я(/. р)). VP е Р. V<D е й Множество переходов Т СС разбивается на подмножества Г„ где Г, пропускает маркер цвета со,. При этом ЛПГ/^0 или ЕПЕв = 0 и Г= II Г. г = |й|, V*. /= I, г. Подсетью СС, определяемой множеством переходов Ее Г. назо- вем такую сеть Петри М=(Р„ Г„ Е, //„ цо,). в которой p,=<Uc/ur); Е(р. 0= Лр. О. Vpе V/ е Т,\ HAL р). \/p^Pi. Но.(р)= ро(р. VP е Pt. Каждая подсеть /=1. г, есть одноцветная сеть с маркерами цвета од. Следовательно, анализ СС можно свести к анализу сово- купности одноцветных сетей. 166
На рис. П.З изображен пример СС для двух цветов: <*>t и ш3 (обозначены « > и <•») Функция X представле- на матрицей (0| (02 /i h h Is 04 О О Рис. П.З. Графическое изображение СС Анализ цветовой достижимЬсти ПС. Под цветовой достижимо- стью ПС понимают получение маркеров всех цветов из некоторого подмножества Q'sQ в зависимости от начальной маркировки и структуры сети. В ПС цвет ш(еЙ достижим из цвета ш,ей, если существуют достижимые из цо маркировки pi, такие, что 3pi.pjeP, щ(р», цг(Р2. (0/)=#=О, и Ц2 достижима из щ (при этом может быть Ц2яро). Достижимость цветов ПС опишем графом цветовой достижимости Гм и матрицей цветовой достижимости Rw. Множество вершин графа есть множество цветов Я. Пара вершин ы, и со/ соединяется направ- ленной дугой, помеченной символом перехода / еГ, если 3pi. цг дости- жимые из go такие, что 3pi, р2еР. р»(р». <ож) =#= О, Цг(р2, wj =#= О, и рг непосредственно достижима из pi в результате срабатывания перехо- да t (p.i —г—). Матрица цветовой достижимости RN я[г^] является бинарной матрицей размера |Я| X 1Я1, где I, если существует путь в графе Гд, от вершины со, к вершине ш,; 0 — в противном случае Перерождающую сеть будем называть достижимой на множестве цветов Я' еЯ, если для ш/eQ' цвет ш, достижим из со, в сети. Определение свойства достижимости для конкретной ПС на мно- жестве цветов Я'^Я связано с анализом ее матрицы цветовой дости- жимости R/y. Однако матрица R< для произвольной ПС может быть построена только после получения всех ее маркировок, достижимых из начальной. Рассмотрим необходимое условие достижимости сети на множе- стве Я', не требующее построения матрицы R^. Для этого введем 167
понятия цветовой достижимости немаркированной ПС и потенциала ной достижимости маркированной ПС. В немаркированной ПС 5 = (Р. Г, Й, Ft Н, X. ф) цвет ш, непосред- ственно достижим из цвета ш», если существует такой переход сети /бГ, что фг(’с1ш,) = с<ч,. Обозначим это в виде <й—-*<«>/. Непосредст- венная достижимость немаркированной ПС описывается квадратной бинарной матрицей Bs = [6^]. проиндексированной по обеим осям эле- ментами множества Й: - (1, если Я/еТ. что — ьч={ О — в противном случае Матрица В$ является матрицей смежности некоторого графа Г$, который назовем графом цветовой достижимости немаркированной ПС. В немаркированной ПС цвет ш/ достижим из цвета <a>„ если существует такая последовательность переходов т=6.....G. что ш/Д-<о* Д-...<»>/ или со,-*.W/, т. е. в графе Г$ существует путь из вершины и, к вер- шине <!)/. Достижимые элементы множества й сети S определяются матри- цей цветовой достижимости R4«=[rJ]: с__ I I, если Зт, что и, -4 ш,; Ч -- 1 10— в противном случае Очевидно, матрицы Вэ и R$ связаны булевым уравнением BJ^1 + В$ » 1 «= R$. где k — целое положительное число. Л<|Й1—I. В маркированной ПС цвет ш, потенциально достижим из цвета ш/ при следующих условиях: 1) о», достижим из <о, в соответствующей немаркированной сети; 2) существует цвет шо такой, что Яро€ Р: <*>о)=#=О, и ш, до- стижим из ыо в немаркированной сети. Перерождающая сеть называется потенциально достижимой на множестве цветов й* £Й, если для и^еЙ' цвет ш, потенциально достижим из w.. Сформулируем необходимое и достаточное условие потенциальной достижимости маркированной ПС на множестве Й Пусть й = й*и«о. где Йо = {шо} — множество цветов присутствующих в начальной маркировке ро. т. е. Зро^Р такая, что ро(ро. <оо)¥=0 Рассмотрим матрицу цветовой достижимости Rs. соответствующей немаркированной сети. Построим матрицу Rd вычерчиванием из матри- цы Rs строк и столбцов, проиндексированных элементами множества 168
Q\Q Необходимое и достаточное условие потенциальной достижимо* ст и ПС на множестве цветов Q* SQ описывается следующим утверж- дением Утверждение I. Маркированная ПС является потенциально достижимой на множестве Q'^Q тогда и только тогда, когда — блочная матрица вида «-“•J Q'{ Q' Ri I где I — матрица, все элементы которой равны единице; в матрице Ri в каждом столбце, а в матрице R2 в каждой строке присутствует по крайней мере один элемент, равный единице; R3 — произвольная матрица. Сформулируем необходимые условия цветовой достижимости мар- кированной ПС на множестве Q'. Утверждение 2 Если маркированная ПС достижима на мно- жестве Q* SQ, то она потенциально достижима на нем Свойства СПРМ. Рассмотрим свойства ограниченности, безопасно- сти, сохраняемости и живости СПРМ. Ограниченность и безопасность Будем различать безопасность и ограниченность СПРМ в целом и по каждому опреде- ленному цвету weQ Назовем позицию рЕР 6-ограниченной по цвету wefi, если существует fee{0, I, ...) такое, что на множестве всех достижимых маркировок р(р. <i>)^6. Сеть Петри является ^-ограничен- ной по цвету и, если все ее позиции ^-ограничены по цвету. Позиция реР называется ^-ограниченной, если существует 6е{0, I,...} такое, что на множестве всех достижимых маркировок Ушей, н(Р» ь>Х6. Сеть Петри называется ^-ограниченной, если все ее позиции ^-ограни- чены. Частным случаем ^-ограниченности сети в целом и ограниченно- сти ее по цвету ideQ является безопасность и безопасность по цве- ту со (случай 6=1). Очевидно, что если сеть с разноцветными марке- рами kt ограничена по каждому цвету «о,, то она 6-ограничена, где 6= max (6,). Верно и обратное: если сеть с разноцветными маркерами i— I.IUI 6-ограничена, то она 6-ограничена по любому цвету (D(efi. Анализ ограниченности сети Петри с разноцветными маркерами аналогичен анализу ограниченности обычной сети. Сохраняемость. В СПРМ выделим сохраняемость сети в целом и сохраняемость по отдельным цветам. СПРМ является сохраняющей по цвету если существует вектор Х=(Х|, Х2, .... КД 169
А<>0 такой, что для всех маркировок ц(р. ш,). достижимых из началь ной, справедливо равенство £ М4Д. W/)= S « )• i—i j—। Сеть Петри с разноцветными маркерами называется сохраняющей, если существует вектор Х = (Х|,.... ХД Х^>0. такой, что для каждой маркировки ц(р. о»), VweQ, достижимой из начальной, спра- ведливо равенство я IQI я Ю1 Ё 5 н(д. “J— Ё S ноО’ь °»i)- 4—1 /—I 4—1 /—I Если СПРМ является сохраняющей по любому цвету weQ, то она является сохраняющей. Живость. СПРМ N назовем живой, если: 1) Эр,, ц/ достижимые из начальной маркировки до такие, что (т. е. маркировка ц/ достижима из рД, 2) Vpu. Р/ достижимые из начальной маркировки 3) Ушей Эр — достижимая из начальной такая, что ЗреР, р(р, <о) =#= 0. Сформулируем необходимые и достаточные условия живости для перерождающих и селективных сетей Петри. Необходимое условие живости ПС определяется утверждением 3. Утверждение 3. Если ПС N живая, то сеть W достижима на множестве цветов Q. Достаточное условие живости ПС определяется следующим утверждением. Утверждение 4. Перерождающая сеть N является живой при условиях: I) сеть N достижима на множестве цветов Q; 2) среди символов, которыми помечены ду!и орграфа цветовой достижимости Г\ сети W, имеются символы любого перехода сети; 3) сеть W представляет собой сильно связанный граф; 4) Уш., о)(ей существует единственная последовательность т = ... .G, в результате срабатывания которой цвет ш/ достигается из цвета <о«. 170
Селективная сеть N является живой по цвету wlt если сеть Nlt кото- рая является фрагментом селективной сети, определяемым множеством переходов живая. Графы достижимости сетей W являются подгра- фами графа достижимости СС N при Мо(Р» <*»«)- При этом марки- ровки р/, р./, принадлежащие графу достижимости СС, будут принадле- жать графу достижимости G, сети М тогда и только тогда, когда ю/)= иХр, ы/); <!),)=#: цХр. ш‘). / = 177; t L Сформулируем необходимое и достаточное условие живости СС Утверждение 5. Селективная сеть N живая тогда и только тогда, когда каждая N,, /=1”77, живая. Перерождающая сеть, показанная на рис П.2, не является жи- вой. Селективная сеть, показанная на рис. П.З, также не является живой, так как сети AG, N2 не живые. Отметим, что СПРМ с конечным числом цветов маркеров экви- валентна по выразительным возможностям обыкновенной сети Петри (СП). Однако использование СПРМ позволяет значительно сократить число позиций и переходов, необходимых для описания моделируемого объекта, что значительно упрощает и ускоряет процесс моделирования. Практика моделирования показывает, что несмотря на теоретическую возможность, часто не удается из-за большой размерности и сложности построить СП. моделирующую такие объекты, как участок ГПС, обра- батывающий центр с магазином инструментов большой емкости и т. д. Использование СПРМ существенно упрощает задачу моделирования таких объектов. Оценим увеличение объема данных (требуемой памяти) для опи- сания сети, происходящего при переходе от СПРМ и эквивалентной ей СП. Пусть для СПРМ |Р|ил; |Т|вгл; |Q| = r. Тогда F—матрица размерности пХш; Н—матрица размерности тХл; р.—матрица размерности лХг. Объем данных (число элемен- тов) для описания СПРМ определяется выражением 2тл + лг. Чтобы в СП сохранить такое же число состояний, как и в эквивалентной ей СПРМ, необходимо каждой позиции СПРМ поставить в соответствие г позиций СП. Очевидно, при этом число переходов в СП также увели- чится не менее чем в г раз. Следовательно, объем данных для ее описания можно оценить выражением 2nmr2 + пг. Оценкой изменения объема данных может служить отношение 2лтг*4-лг 2пт+пг 2mr'-|-r 2r’-|-r/m 2m+r = 24-r/m Очевидно, что при r= I значение Y = 1 Для любого т величина у П1
оценивается снизу выражением 2r,/(2+/’). Это означает, что при пре- образовании СПРМ в эквивалентную ей СП объем данных возрастает не менее чем в 2г2/(2+г) раз. Заметим, что при т-*оо величина у—►г1, т. е. при достаточно большой размерности сети для описания СПРМ требуется в г2 раз меньше памяти, чем для описания эквива- лентной ей СП.
СПИСОК ЛИТЕРАТУРЫ К введению 1 Веников В. А., Веников Г. В. Теория подобия и моделирования. — М.: Высшая школа, 1984. К главам I и 2 1 Динамика управления роботами/ Под ред. Е. И Юревича. — М.* Наука, 1984. 2 . Попов Е. П., Верещагин А. Ф , Зенкевич С. Л. Манипуляционные роботы: динамика и алгоритмы. — М.: Наука, 1978. 3 . Медведев В. С., Лесков А. Г., Ющенко А. С. Системы управления манипуляционных роботов. — М.: Наука, 1978. 4 Лурье А. И. Аналитическая механика. — М.: Физматгиз, 1961. К главе 3 1. Горбацевич Е. Д., Левинзон Ф. Ф. Аналоговое моделирование систем управления. — М.: Наука, 1984. 2. Форсайт Дж., Малькольм М.. Моулер К. Машинные методы матема- тических вычислений — М : Мир, 1980. 3. Ракитский Ю. В., Устинов С. М., Черноруцкий И. Г. Численные ме- тоды решения жестких систем. — М.: Наука, 1979. 4. Чхартишвили Г. С., Артюхов О. И. Диалоговый пакет прикладных программ для анализа и синтеза автоматических си- стем. — М.: МЭИ. 1980. К главе 4 1 Гилл Ф., Мюррей У., Райт М Практическая оптимизация: Пер. с англ. — М.: Мир, 1985. 2. Корбут А. А., Финкельштейн Ю Ю. Дискретное программирова- ние. — М.: Наука, 1969 3. Котов В. Е. Сети Петри. — М.: Наука, 1984 4. Питерсон Дж. Теория сетей Петри и моделирование систем: Пер. с англ. — М.: Мир, 1984 173
К главе 5 I. Пападимитриу X., Стайглиц К. Комбинаторная оптимизация. Алго- ритмы и сложность. — М.. Мир, 1985. 2. Матвеев В. Ф., Ушаков В. Г. Системы массового обслуживания. —. М.: Изд-во МГУ, 1984. 3. Розенблюм Л. Я. Сети Петри. — Изв. АН СССР. Сер. Техническая кибернетика, 1983, №5, с. 12—40.
ОГЛАВЛЕНИЕ Введение.................... . . . . . 5 Глава /. Кинематические модели манипуляторов . . 7 1.1. Кинематические цепи манипуляторов • 7 1.2. Уравнения кинематики манипуляторов . 11 Г лава 2. Динамические модели манипуляторов .... 33 2.1. Уравнения динамики манипуляторов . 33 2.2. Пример составления уравнений................. 48 2.3. Уравнения управляемого движения .... 63 Глава 3. Моделирование манипуляционных систем на ЭВМ . . 67 3.1. Моделирование приводов манипуляторов на АВМ............................................... 67 3.2. Моделирование приводов и управляемого дви* жения манипуляторов иа ЭВМ........................ 72 3.3. Моделирование управляемого движения мани* пуляторов на ГВС.................................. 83 Г лава 4. Принципы и аппарат моделирования гибких автома- тизированных производств................................... 85 4 1. Гибкие автоматизированные производства как объект моделирования......................... 4.2. Системы массового обслуживания . 92 4.3. Дискретная оптимизация...................... 104 4.4. Сети Петри.................................. 107 Г лава 5 Модели гибких автоматизированных производств и их •лементов............................................ 116 5.1. Структура и функции комплекса моделирования гибких автоматизированных производств .... 116 5.2. Модель оценки производительности основного оборудования .................................... 123 5.3. Модель расчета интенсивности потоков изделий 129 5.4. Модель расчета загрузки транспортной системы 138 5.5. Имитационные модели для анализа функциони- рования ..........................................145 5.6. Модель формирования управляющей системы 157 Приложение Сети Петри с разноцветными маркерами .... 164 Список литературы...........................................173