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

Роботы и робототехника лабораторный практикум. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
I
– inputs – множество входных функций, отражающих
μ
x
входные позиции перехода;
O – outputs – множество выходных функций, отражающих
выходные позиции перехода;
– вектор нента которого – количество меток/точек в
сети Петри.
Для иллюстрации сетей Петри удобно использовать их гра­фическое представление. В соответствии с ним сеть Петри пред­ставляет собой ориентированный граф с двумя типами вершин, в котором:
– позициям сети Петри соответствуют вершины, изображае­мые кружками O;
– переходам сети Петри – вершины, изображаемые утол­щенными черточками
– функциям I соответствуют дуги, направленные от позиций к переходам;
– функциям О соответствуют дуги от переходов к позициям.
Вершины одного типа не могут быть соединены непосредст­венно (рис. 5.5).
x
– маркировка сети Петри – вектор, i-я компо-
i-ой позиции структуры
|;
2
1
t
1
t
1
Рис. 5.5. Недопустимое соединение вершин графа сети Петри
Внутри позиций сети Петри, которые являются статически­ми объектами, проставляют маркеры сети, которые являются ди­намическими объектами. Наличие и количество маркеров в пози­циях меняется в процессе изменения состояния моделируемой системы – маркеры перемещаются по позициям сети. Каждое из­менение маркировки (количество маркеров в позициях) называют
81
событием. События совершаются при срабатывании (возбуждение
или запуск) переходов. При этом маркеры из входных позиций пе­реходов перемещаются в их выходные позиции. Считается, что события происходят мгновенно и разновременно при выполнении некоторых условий. Последовательность событий образует моде­лируемый процесс.
Количество маркеров в позициях определяется или соответ­ствующим количеством точек в кружках,
обозначающих соответ­ствующие вершины графа или целым числом, если маркеров в по­зиции больше пяти.
Правила срабатывания переходов конкретизируют следую­щим образом: переход срабатывает, если для каждой из его вход­ных позиций выполняется условие в
i-й входной позиции, Кi – число дуг, идущих от i-й позиции к пе-
реходу. При срабатывании перехода число маркеров в позиции уменьшается на ется на
Мj, где Мj – число дуг, связывающих переход с j-й пози-
Ki а в j-й выходной позиции увеличива-
Ni > Ki, где Ni – число маркеров
i-й входной
цией.
Иными словами:
– условие для данного перехода считается выполненным, ко­гда в каждой входящей в этот переход позиции количество меток больше или равно количеству дуг, соединяющих данную позицию и переход;
В результате срабатывания перехода/выполнения события:
– в позициях, входящих в переход, меток убавляется на ко­личество, равное
числу дуг, соединяющих позицию и переход;
– в позициях, выходящих из перехода, меток увеличивается на количество, равное числу дуг, соединяющих переход и пози­цию.
Маркировка сети Петри при этом изменяется.
На рис. 5.6 и 5.7 приведены примеры невыполнения и вы­полнения условий для переходов сетей Петри.
На рис. 5.8 показан пример распределения маркеров по
по-
зициям перед срабатыванием переходов и после.
Маркировка сетей Петри, представленных на рис. 5.8 (а) и 5.8 (б), до перехода записывается в виде (1, 0, 2) и (..., 3, 2, 1). После срабатывания переходов маркировка становится (0, 1, 3) и
(..., 2, 0, 2) соответвственно.
82
а)
x
x
x
2
t
x
1
1
x
3
б)
x
2
x
3
x
4
t
2
в)
x
2
x
3
x
4
t
2
x
2
г)
x
3
x
4
t
2
Рис. 5.6. Некоторые случаи невыполнения условий
для переходов сетей Петри
2
а)
x
t
1
1
x
3
б)
Рис. 5.7. Случаи выполнения условий для переходов сетей Петри
до:
x
2
а)
t
x
1
1
x
3
после:
x
1
2
t
x
3
4
2
x
2
t
1
x
3
б)
x
2
x
3
x
4
t
2
x
2
x
3
x
4
t
2
Рис. 5.8. Сеть Петри до и после события/срабатывания переходов t
83
и t2
1
На рис. 5.9 приведен пример графического представления
μ
сети Петри.
2
4
x
1
Рис. 5.9. Пример графического представления сети Петри
t
1
x
t
2
3
Эту же сеть Петри можно представить в виде структуры:
{}
()
,
xtI =
11
() { }
,,, xxxxP =
, xxtO =
321
,
4321
,
Начальная маркировка
() { }
() { }
()
,
{}
,ttT =
21
, xxtI =
322
, xxtO =
142
1,2,0,1=
.
Также можно представить структуру сети Петри (см. рис.
5.9) в виде таблицы, показанной на рис. 5.10. Цифра 0 в таблице означает, что у перехода 1 отсутствует второй вход.
№ перехода
1 1 0 2 3 2 2 3 1 4
Input Output
I 1 I 2 O 1 O 2
Рис. 5.10. Табличное представление сети Петри
События в сети Петри делятся на «примитивные» и «непри­митивные».
«Примитивные» события (при моделировании) мгновенны и неодновременны. «Примитивные» события изображаются в виде вертикальной линии. «Непримитивными» называются события, длительность которых отлична от нуля. Они изображаются в виде прямоугольника. Продолжительность срабатывания (задержки)
84
событий задается путем придания переходам веса. В этом случае используется модельное время и моделируется не только последо­вательность событий, но и их привязка ко времени. Полученную модель называют временной сетью Петри.
Описание конечными автоматами работы группы из че­тырёх роботов-манипуляторов в задаче по переносу деталей из одного крайнего лотка в другой.
Задача – необходимо с помощью роботов перемещать стопку
n дисков из положения a в положение c, а затем из положения
из
c – в положение a и так далее – в бесконечном цикле (рис. 5.11).
Рис. 5.11. Схема переноса детали группой роботов
Для упрощения описания задачи переноса группой роботов­манипуляторов деталей из одного крайнего лотка в другой приве­дём пояснительный рисунок, условно показывающий группу робо­тов сверху (рис. 5.12).
На рис. 5.12 условно показаны:
– кружки – основания роботов-манипуляторов;
– штриховые линии – траектории движения схватов робо-
тов-манипуляторов при переносе детали;
– штриховые области – области рабочих зон, где запрещено
совместное положение схватов соседних роботов-манипуляторов;
– цифры 2020,2040,2060 – названия совместных рабочих
зон;
85
– буквы aa,a2b, … – переменные, обозначающие характер-
ные точки положения схватов роботов-манипуляторов.
2020 2040 2060
c2d
dd
Р 2 Р 1
d2e
e2f
ee
ff
f2g
gg
Р 4
aa
bb
Р 3
b2ca2b
cc
Рис. 5.12. Траектория переноса детали с обозначением характерных точек
При разработке алгоритма управления группой роботов, обеспечивающего описанный выше перенос деталей, нужно учи­тывать следующие ограничения:
– соседние роботы не могут одновременно находиться в об­щей для них области рабочей зоны;
– в общем случае неизвестно, когда соседние роботы будут входить в общую область рабочей зоны, но известно, что соседние роботы должны
Следовательно, можно говорить о понятии «принадлежно­сти» области рабочей зоны одному из двух соседних роботов. В данной задаче понятие принадлежности – это бинарное состоя­ние области рабочей зоны. В процессе работы принадлежность общих областей рабочих зон роботов будет меняться. В дальней­шем будем задавать начальное положение принадлежность общих областей рабочих зон.
Постараемся понять, как должна синхронизироваться работа роботов. Например, если какой-либо робот кладёт деталь, нахо­дясь в общей области рабочих зон, то он «знает», что при выходе из нее туда может и должен войти соседний робот, чтобы эту де­таль взять. Когда именно ся общую область рабочих зон, первый робот не знает, но он знает,
входить в нее строго последовательно.
роботов и начальную
соседний робот войдёт в освободившую-
86
что можно снова войти в эту область только тогда, когда соседний робот ее освободит.
Используя понятие «принадлежности» общей области рабо­чих зон, можно организовать совместную работу следующим об­разом:
– каждый из роботов-соседей знает, кому принадлежит об­щая область рабочих зон;
– в рабочую зону может входить тот робот, кому эта в данный момент времени принадлежит;
– при выходе из общей области рабочих зон робот посыла­ет сигнал о смене принадлежности этой общей области рабо­чих зон.
В силу того что каждый робот управляется отдельным кон­троллером, необходима их синхронизация, например, синхро­импульсами по выделенным дискретным линиям. Синхроимпуль­сы должны посылаться тей рабочих зон. Соседние роботы должны получать синхроим­пульсы информирующие их, что соответствующая общая область рабочих зон принадлежит им.
Далее рассмотрим две возможные схемы синхронизации ро­ботов в группе.
Схема непосредственного обмена синхроимпульсами
роботами при их выходе из общих облас-
область
Следует отметить: для данной схемы синхронизации (рис. 5.13, 5.14) робот, выходя из
только посылает соседу синхроимпульс о том, что зона ему не принадлежит, но и отмечает данный факт у себя в памяти – на­пример, изменяя состояние выделенной для этого булевой пере­менной.
Бинарное понятие принадлежности общих областей рабочих зон и изменение этого понятия теми же синхросигналами можно описать
с помощью конечных автоматов.
R4
Рис. 5.13. Схема непосредственного обмена синхроимпульсами
R3
совместной рабочей зоны, не
R2
87
R1
R2
R1
DO
DO
1HW D70D70 1HW
DI
Рис. 5.14. Соединение контроллеров двух роботов дискретными линиями
связи при непосредственном обмене синхроимпульсами:
D70 – контроллер робота Kawasaki; 1HW – плата дискретного входа/выхода,
которым оснащён контроллер; DI – Digital Input – дискретный вход;
DO – Digital Output – дискретный выход
DI
Для схемы непосредственного обмена синхроимпульсами примем следующие правила:
– В памяти контроллера каждого робота содержатся булевы переменные состояния граничащих с этим роботов общих облас­тей рабочих зон. Для робота R2 это переменные 2040, 2060 (см. рис. 5.12).
– Имена булевых переменных совпадают с именами общих областей рабочих зон.
– О принадлежности роботу общей области рабочих зон
сви-
детельствует значение TRUE соответствующей булевой переменной.
– В контроллере каждого робота моделируются конечные
автоматы примыкающих к нему общих областей рабочих зон. На­пример, у робота R2 это конечные автоматы общих областей 2040 и 2060, а у робота R3 – конечные автоматы общих областей 2020 и
2040. Если общая область 2040 принадлежит роботу R3, то в кон­троллере R3 переменная 2040 имеет
значение TRUE, а в контрол-
лере робота R2 та же переменная имеет значение FALSE.
– Перед началом работы группы роботов булевы перемен­ные состояния общих областей инициализируются в соответствии с начальным состоянием робототехнической системы.
Пример непосредственного соединения контроллеров робо­тов Kawasaki представлен на рис. 5.15. Условные обозначения син­хросигналов, посылаемых роботами при непосредственном обмене синхроимпульсами, показаны
на рис. 5.16.
88
+24V
GND
Доп-но
9
Разъём X9
Робот 1
Разъём X9
Робот 2
Разъём X9
Робот 3
№ ножки
Доп-но
№ ножки
Доп-но
№ ножки
+24V
9
+24V
9
12
10
11
GND
10
12
11
GND
10
12
11
Доп-но
сигналы
5
11
№ ножки
Разъём CN2 - выходные
Доп-но
сигналы
4
11
№ ножки
Разъём CN2 - выходные
Доп-но
Vin 1-16
Com 1-16
сигналы
№ ножки
Разъём CN2 - выходные
Vin 1-16
Com 1-16
36
18
Vin 1-16
Com 1-16
36
18
36
18
11
Доп-но
сигналы
11
14
№ ножки
Разъём CN4 - входные
Доп-но
сигналы
4
11
№ ножки
Разъём CN4 - входные
Доп-но
Com 1-16
сигналы
18
11
№ ножки
Разъём CN4 - входные
Com 1-16
18
Com 1-16
18
+24V
GND
Доп-но
9
Разъём X9
10
12
Робот 4
11
№ ножки
Доп-но
Vin 1-16
Com 1-16
сигналы
№ ножки
Разъём CN2 - выходные
36
18
11
Доп-но
Com 1-16
сигналы
18
11
№ ножки
Разъём CN4 - входные
Рис. 5.15. Пример соединения контроллеров роботов Kawasaki для непосредственной связи между ними
89
P
2020
P
2040
P
2060
R4
P
3
2020
R3
P
2
2040
R2
P
1
2060
R1
Рис. 5.16. Условные обозначения синхросигналов
при непосредственном обмене синхроимпульсами
Реализация конечного автомата рабочей зоны 2060
на роботе R2: на роботе R1:
а) б)
2060 2060
R2
2060=TRUE
2
P
2060
1
P
2060
R1
2060=FALSE
2060 2060
R2
2060=FALSE
2
P
2060
1
P
2060
R1
2060=TRUE
Рис. 5.17. Конечные автоматы общей области 2060 на роботах R2 и R1
реализация конечного автомата рабочей зоны 2060
на роботе R2: на роботе R1:
а)
pulse 5,1
signal -2060
2060 2060
R2
swait 14 signal 2060
2060=TRUE
Рис. 5.18. Конечные автоматы состояния общей области 2060,
2
;(P
)
2060
1
)
;(P
2060
2060=FALSE
R1
б)
2060 2060
R2
2060=FALSE
с программными командами
90
swait 11
signal 2060
pulse 11,1 signal -2060
2
;(P
2060
R1
1
;(P )
2060
2060=TRUE
)
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]