Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Робот. Компьютер. Гибкое производство

.pdf
Скачиваний:
1
Добавлен:
12.11.2023
Размер:
8.54 Mб
Скачать

Разбираемое изделие мы будем погружать в различ­ ные поля программных движений «рук» и манипулято­ ров, которые будут совершать также захваченные ими детали и узлы* изделия. На рис. 3 даны три примера таких полей: А, Б и В. Будем полагать, что начальное

иконечное положения каждой детали изделия определе­ ны в каждом поле, причем ее начальное положение одно

ито же для всех полей. Например, в поле А каждая деталь изделия может переместиться в результате прямо­

линейного

движения на фиксированное расстояние

РА,

а в поле

В —в результате вращательного движения

на

фиксированный угол Ув. Чтобы различать движения в разных полях, будем называть их A-движениями, Б-дзи- жениямп и т. д. Скорость движений для нас будет без­ различна: важен только факт переноса каждой точки тела из начального положения в конечное по траектории, задаваемой полем.

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

Теперь введем понятие препятствия. Рассмотрим про­ извольные две детали Д1 и Д2 изделия, зафиксированные в начальном положении. Остальные детали изделия мыс­ ленно удалим. Иными словами, можно считать, что все детали изделия, кроме Д1 и Д2, как бы испарились, а детали Д1 и Д2 остались «висеть» в начальном поло­ жении. Пусть деталь Д2 покоится, а Д1 совершает П-движение, т. е. движение в некотором поле П. Если это движение совершить до конца нельзя из-за столкновения с деталью Д2, то будем говорить, что Д2 является пре­ пятствием для Д1 в поле П, или, короче, П-препятствием. В одних полях Д2 — препятствие для Д1, в других — нет.

Г р а ф о ва я м о д ель р а с ч л е н е н и я . Графом называется все то, что можно нарисовать на листе бумаги следую­ щим образом. Сначала нужно отметить несколько точек,

161

Рис. 4. Графы препятствий (А, Б, В)

/7/?а/?а/7бШ £ гж а /гга я

#елра#а/г& #0£

£ж я/7?а£

//е л р а ^ и м м е

Рис. 5. Приметы разбиенпй и сжатий А-предятствий

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

162

отождествляются с теми объектами, которые ставятся им в соответствие.

Для каждого сборочного изделия и поля П, в которое оно погружено, можно построить так называемый граф П-препятствий. Вершинами этого графа являются детали изделия, а дуги проводятся по правилу: дуга из верши­ ны Д1 в вершину Д2 проводится тогда и только тогда, когда Д2 является П-препятствием для Д1. Рис. 3, б иллюстрирует это правило, а на рис. 4 изображены гра­ фы А-, Б- и В-препятствий для приведенного выше при­ мера сборочного изделия.

Теперь нужно объяснить, что такое сжатие графа. Нарисуйте какой-либо граф и произвольно разбейте его вершины на несколько блоков, обводя их, скажем, замк­ нутыми пунктирными линиями. Затем представьте, что дуги графа —резиновые, и мысленно сожмите каждый блок вершин в одну вершину. Удалив образовавшиеся при этом петли и копии дуг между полученными новыми вершинами, вы получите сжатие исходного графа относи­ тельно выбранного разбиения. Таким образом, сжатие графа относительно некоторого разбиения его вершин — это тоже граф, в котором вершинами являются блоки разбиения, а его дуги передаются как бы по наследству от сжимаемого графа.

Сжатие и соответствующее ему разбиение называют­ ся правильными, если в этом сжатии отсутствуют циклы, т. е. замкнутые пути, проходящие по дугам согласно их ориентации; в противном случае —неправильными. На рис. 5 представлены примеры правильного и непра­ вильного сжатия графа A-препятствий с рис. 4.

Покажем, как применяются графы для решения зада­ чи расчленения. Рассмотррш какой-либо граф препятст­ вий, скажем, П-препятствий. Поскольку вершины гра­ фа —это детали изделия, блоки разбиения его вершин можно интерпретировать как отдельные узлы изделия. Правда, возникают вопросы: можно или нельзя разо­ брать изделие на такие узлы? Если можно, то какие дви­ жения должны совершать эти узлы при разборке? Отве­ ты на них дает следующее утверждение.

i Т е о р е м а о р а с ч л е н е н и и

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

163

1

in!

1

 

Я ^

rv

1l

1

 

/

1

\

|

 

/7ра#а/7б//яе

j

V©J

r7 u

сж ат и е

flacv/7e//e^

/7ра0а/ГА//0*

 

 

разбиение

/7/?a#UJ76tf/7g

cwcя/яиe

r '.'2C<//7S//P//ue

р а зд а ет #

 

 

 

Рис. 6. Приметы расчленений с помощью правильных сжатий гра­ фов А- { в в е р х у ) и Б-преиятствий

(оказательство этого утверждения содержится в рабо- ?11]. При наличии некоторого правильного разбиения вершин графа П-препятствий изделие можно разобрат

следующим образом.

Ч а с т н ы й а л г о р и т м р а с ч л е н е н и я

Шаг 1. Построить сжатие графа П-препятствий по данному правильному разбиению.

Шаг 2. Найти блок разбиения (т. е. вершину сжатия), из которого не исходит ни одна дуга сжатия. Отсутствие исходящих дуг означает, что все детали узла, соответстствующего найденному блоку, не имеют П-препятствий. Следовательно, этот узел может быть целиком отделен от остальной части изделия с помощью П-движения. Заметим, что блок с указанным свойством всегда найдет­ ся в силу отсутствия в правильном сжатии циклов.

Шаг 3. Снять найденный узел с помощью П-движения и проверить: если этот узел —последний, закончить ра­ боту, в противном случае перейти к следующему шагу.

Шаг 4. Удалить из сжатия найденную вершину вмес­ те с входящими в нее дугами и перейти к шагу 2,

164

На рис. 6 представлены два примера расчленения изде­ лия с помощью правильных разбиений графов А- и Б-препятствий. Полученные после расчленения узлы можно расчленять точно так же, считая их самостоятель­ ными изделиями.

Итак, мы показали, как можно разбирать изделие с помощью движений в одном поле. Однако расчленение можно вести с помощью движений в нескольких полях сразу. Для этого нужно предварительно сделать две вещи: назначить несколько полей с учетом уже сделан­ ных выше замечаний и выбрать способ правильного раз­ биения. Этот способ должен быть общим для всех графов препятствий, поскольку он должен отражать единый принцип образования узлов данного изделия в данных технических условиях. Например, выбранный способ дол­ жен исключать появление узлов, которые объединяют не скрепленные между собой детали или которые невозмож­ но собрать из-за отсутствия нужных приспособлений, и т. д. Выбор способа правильного разбиения является отдельной серьезной задачей, па которой мы не будем здесь останавливаться, но будем считать, что перед на­ чалом работы следующего алгоритма он уже выбран.

Об щи й а л г о р и т м р а с ч л е н е н и я

Шаг 1. Для каждого из заданных полей рп членить изделие на узлы, применяя предыдущий алгоритм.

Шаг 2. Для каждого из полученных на шаге 1 узлов выполнить тот же шаг 1, считая эти узлы самостоятель­ ными изделиями. Причем шаг 1 нужно выполнять до тех пор, пока будут получаться все более мелкие узлы.

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

С одной стороны, желательно, чтобы набор полей был невелик, поскольку его увеличение приводит к резкому

увеличению

числа порождаемых узлов, а

следовательно,

к большим

затратам памяти компьютера,

а также к из-

185

flftsfcmfawiqus Ш слшёа cfypm

Рис, 7. Формальное представление сборки

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

Г р а ф о ва я м о д ель выбора способа с б о р ки . Множество узлов, порождаемых общим алгоритмом расчленения, можно разбить на два подмножества: одно содержит три­ виальные узлы —это узлы с одной деталью (их столько, сколько деталей в изделии), и еще один —само изделие; другое содержит нетривиальные узлы, каждый из кото­ рых включает в себя не менее двух деталей, но и не все детали изделия.

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

166

подмножества можно интерпретировать в терминах гра­ фов. Здесь нам понадобятся обычные графы —неориен­ тированные.

Множество (не обязательно всех) вершин некоторого графа называется независимым, если никакие две из них не соединены ребром [13]. Построим так называемый граф узлов. Его вершинами являются все нетривиальны^ узлы, порожденные общим алгоритмом расчленения* при­ чем каждые две вершины соединены ребром: тогда и только тогда, когда соответствующие этим вершинам узлы пересекаются частично. Нетрудно теперь убедиться, что все способы сборки взаимно однозначно соответст­ вуют всем независимым множествам графа узлрд. На рис. 7 представлены все нетривиальные узлы нашего прежнего изделия, соответствующий им граф узлов й два примера независимых множеств, отмеченных двумя замк­ нутыми пунктирными линиями. Соответствующие им спо­ собы сборки показаны в виде двух корневых деревьев.

Если потребуется найти способ сборки по максимуму некоторого критерия, то по этому же критерию, мож­ но находить и независимое множество графа узлов. На­ пример, критерием может быть число собираемых нетри­ виальных узлов. Тогда задача выбора способа сборки по такому критерию сводится к отысканию максимального независимого множества графа —хорошо известной зада­ че теории графов [13].

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

тельности

сборки и связанных с ней движений описан

в работе

[И].

Заключение

Шутливая Фантазия, с которой мы начали, легко препод­ несла нам эскиз идеального гибкого сборочного производ­ ства, а последовавшая суровая Реальность показала, на­ сколько трудно (и, может быть, невозможно) достичь такого идеала, даже если путь к нему принципиально

167

ясен. Насколько быстро можно

пойти по этому пути?

Во всяком случае, фантазия

и реальность —это два

спутника, которые помогают выбрать правильную ско­ рость.

Взглянув на приведенный список литературы, можно понять, что создание гибкого сборочного производства, хоть сколько-нибудь близкого к описанному идеалу, свя­ зано с необходимостью развития целых научных направ­ лений. Конечно, сегодня уже существуют гибкие сбороч­ ные производства, но они способны быстро переналажи­ ваться пока на очень ограниченную номенклатуру изделий, причем не автоматически, а все же с немалым участием человека. Если их сравнивать с другими гибки­ ми производствами, например механообработки, то со­ здается общее впечатление о гораздо большей гибкости последних. Это можно объяснить тем, что сборка связана с гораздо большим кругом трудно формализуемых за­ дач, возникающих из ее сложной комбинаторной приро­ ды [14].

Во второй части нашего повествования был сделан не­ большой набросок теоретической разработки в области проектирования технологии сборки. Если вас заинтересо­ вала эта тема, попытайтесь решить задачу обобщения из­ ложенных здесь идей на случай нетвердых тел. Ключ к решению —формализация понятия препятствия, а также методический совет выдающегося математика и педагога Джорджа Пойа: «Как вам лучше всего поступить с этой задачей? Оставьте ее в покое и придумайте себе какую-

нибудь другую»

[15, с. 219].

Л И Т Е Р А Т У Р А

 

1. К о з л о в с к и й В .

А К о з л о в с к а я Э. А ., М а к а р о в В . М . Эффектив­

 

ность переналаживаемых роботизированных производств. Л.:

2.

Машиностроение, 1985. 224 с.

Системы очувствления и адаптивные промышленные роботы/

 

Под ред. Е. П. Попова, В. В. Клюева. М.: Машиностроение,

3.

1985. 256 с.

 

 

К у з и н Л . Т. Основы кибернетики. Т. 2. Основы кибернетиче*

4.

ских моделей. М.: Энергия, 1979. 584 с.

Ф о к с Я., Прат М . Вычислительная геометрия: Применение в

 

проектировании и производстве. М.: Мир, 1982. 304 с.

5. К о ч у р о в В.

А . Система кодирования конструкторской и техно­

 

логической информации/ / Автоматизированные системы техно­

.

логической

подготовки

производства в машиностроении / Под

ред. Г. К.

Горанского,

М.: Машиностроение, 1976. С. 29-68.

168

6.Кузнецов О. Я., Аделъсон-Велъский / \ М. Дискретная матема* тика для инженера. 3VL: Энергоатомиздат, 1988. 480 с.

7.Пол Р . Моделирование, планирование траекторий и управле­ ние движением робота-манипулятора. М.: Наука. 1976. 104 с.

8.Шпур Г., Краузе Ф.-Л. Автоматизированное проектирование в

машиностроении. Н.: Машиностроение, 1988. 648 с.

ред.

9. Теория расписаний

и

вычислительные машины / Под

Э. Г. Коффмана. Наука,

1984. 334 с.

техно­

10. Темпельгоф

К.-Х. Автоматизированное проектирование

логических

процессов

сборки // Автоматизация проектирования

технологических процессов в машиностроении/Под ред. Н. М. Ка­ пустина. М.: Машиностроение, 1985. С. 277-293.

11.Timkovsky V. G. Mathematical Modelling of Assembly Design// Preprints of the 7th PROLAMAT Conference: Software for Manu­ facturing. Dresden, 1988. P. 157166.

12.Форсайт P. Паскаль для всех. M.: Машиностроение, 1986. 288 с.

13.Свами М., Тхуласираман К. Графы, сети и алгоритмы. М.: Мир,

1984. 455 с.

14.Лебедовский М. С., Вейц В. Л., Федотов А. И. Научные основы автоматической сборки. Л.: Машиностроение, 1985. 387 с.

15.Пойа Д . Математическое открытие. М.: Наука, 1976. 448 с.

ОБ АВТОРАХ

Макаров Игорь Михайлович —академик, главный ученый сек­ ретарь Президиума АН СССР.

Михалевич Владимир Сергеевич —академик, директор Инсти­ тута кибернетики АН УССР.

Рыбак Виталий Иванович - кандидат технических наук, на­ чальник отдела Института кибернетики АН УССР.

Попов Евгений Павлович - член-корреспондент АН СССР, ру­ ководитель научно-учебного центра «Робототехника» ГК по народ­ ному образованию и АН СССР.

Письменный Георгий Валентинович - кандидат технических наук, заведующий сектором научно-учебного центра «Робототех­ ника» ГК по народному образованию и АН СССР.

Рахманкулов Виль Закирович - кандидат технических наук, заведующий лабораторией Всесоюзного научно-исследовательского института системных исследований АН СССР.

Переслени Сергей Александрович - кандидат технических наук, старший научный сотрудник ВНИИ системных исследований АН

СССР.

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

Руцков Михаил Вадимович - кандидат технических наук, за­ ведующий лабораторией Московского городского центра информа­ тики ГК ВТИ.

Михайлов Алексей Михайлович - кандидат технических наук, старший научный сотрудник ВНИИ системных исследований АН

СССР.

Пазаретов Виктор Михайлович —кандидат технических наук, заведующий лабораторией Института автоматизации проектирова­ ния АН СССР.

Тимковский Вадим Георгиевич - кандидат технических наук, доцент Московского станкоинструментального института.