Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Программирование робототехнических систем. Учебное пособие.pdf
X
- •ВВЕДЕНИЕ
- •Тема 1. СИСТЕМЫ КООРДИНАТ ПРОМЫШЛЕННОГО РОБОТА
- •1.1. Понятие системы координат, виды систем координат
- •1.2. Настройка системы координат инструмента
- •1.3. Настройка системы координат пользователя
- •2.4. Данные позиционирования
- •Тема 2. КОМАНДЫ ПЕРЕМЕЩЕНИЯ РОБОТА
- •2.1. Структура команды перемещения
- •2.2. Форматы движения
- •2.3. Траектория позиционирования
- •2.5. Скорость подачи
- •2.6. Команды условия коррекции
- •2.7. Дополнительные команды перемещения
- •Тема 3. КОМАНДЫ ПЕРЕХОДА И ЦИКЛА РОБОТА FANUC
- •3.1. Команды перехода
- •3.2. Циклы
- •3.3. Команды ожидания
- •Тема 4. ПАЛЕТИЗАЦИЯ
- •4.1. Функция палетизации
- •4.2. Команды палетизации
- •4.3. Обучение функции палетизации и исходные данные
- •4.4. Выполнение функции палетизации и управление палетизацией
- •Тема 5. ПРОГРАММИРОВАНИЕ СИГНАЛОВ ВВОДА-ВЫВОДА
- •5.1. Сигналы ввода-вывода
- •5.2. Команды ввода-вывода
- •5.3. Файловый ввод-вывод
- •5.4. Вывод четырёхмерной графики
- •5.5. Вывод диагностических данных
- •Тема 6. СИСТЕМА ТЕХНИЧЕСКОГО ЗРЕНИЯ РОБОТА
- •6.1. Общие сведения
- •6.2. Процедура установки камеры
- •6.3. Процедура калибровки камеры
- •6.4. Процедура создания видеопроцесса
- •6.6. Задание свойств типа укладки
- •6.7. Настройка конвейера
- •ЗАКЛЮЧЕНИЕ
- •СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Рис. 2.8. Конфигурация
и перемещение робота невозможно. Операцию, которая завершается в особой
точке, невозможно запрограммировать (в некоторых случаях можно выбрать
наиболее осуществимую конфигурацию). Чтобы задать такую операцию, оп-
ределите значения координат по осям. При линейном, круговом движении
или движении по дуге инструмент не может пройти через особую точку
(обобщённое положение невозможно изменить). В таком случ
ае следует ис-
пользовать шарнирное перемещение. Для прохода через особую точку,
на оси запястья также можно выполнить шарнирное перемещение запястья
(Wjnt).
Рис. 2.9. Обобщённое положение
21

Число оборотов представляет количество оборотов оси запястья (J4, J5,
J6). Каждая ось возвращается в исходное положение после одного оборота.
Поэтому требуется указать, сколько оборотов было сделано. Число оборотов
равняется 0, если каждая ось находится в ориентации 0.
Можно отобразить числа оборотов максимум для трёх осей. Число осей
соответствует полям, заданным через системную переменную
$SCR_GRP[i
].$TURN_AXIS[j] (где i – номер группы) следующим образом:
Левое поле: Номер оси, заданный с помощью $SCR_GRP[i].$TURN_AXIS[1]
Среднее поле: Номер оси, заданный с помощью $SCR_GRP[i].$TURN_
AXIS[2] Правое поле: Номер оси, заданный с помощью
$SCR_GRP[i].$TURN_AXIS[3]
При выполнении запрограммированного линейного, кругового движе-
ния или движения по дуге инструмент робота перемещается к конечной точ-
ке, принимая ориентацию, которая мало отличается от ориентации в началь-
ной точке. Чи
сло оборотов, выполняемых в конечной точке, выбирается ав-
томатически. Фактическое число оборотов, выполненных в конечной точке,
может отличаться от числа, указанного в данных позиционирования.
Номер системы координат инструмента (UT). Номер системы коорди-
нат инструмента указывает систему координат фланца или инструмента. Ес-
ли указано число 0, то используется система координат фланца. Если числа в
диапазоне 1 – 10, то используется система координат инструмента с указ
ан-
ным номером.
Номер системы координат пользователя указывает базовую систему
координат или систему координат пользователя. Если указано число 0, то ис-
пользуется базовая система координат. Если числа 1 – 9, то используется
система координат пользователя с указанным номером.
Для просмотра подробных данных позиционирования необходимо
установить курсор на номер положения и нажать кла
вишу F5, POSITION
(рис. 2.10).
22

Рис. 2.10. Просмотр данных позиционирования
Рис. 2.11. Переменная положения и регистр положения
В команде перемещения данные позиционирования представлены пе-
ременной положения (P[i]) или регистром положения (PR[i]). Обычно ис-
пользуется переменная положения.
Переменная положения – это переменная, обычно используемая для
хранения данных позиционирования. При вводе команды перемещения в ре-
жиме обучения данные позиционирования сохраняются автоматически. При
вводе декартовых координат в режиме обучения используются следующие
декартовы системы координат и их ном
ера.
Система координат инструмента, номер которой выбран в настоящий
момент (UT = 1 – 10). Система координат пользователя, номер которой вы-
бран в настоящий момент (UF = 0 – 9).
При воспроизведении используются следующие декартовы системы
координат и их номера: система координат с заданным номером системы ко-
ординат инструмента (UT = 1 – 10); система координат с заданным номером
системы координат пользователя (UF = 0 – 9).
23

Регистр положения служит универсальным регистром для хранения
данных позиционирования. При вводе декартовых координат в режиме обу-
чения используются следующие декартовы системы координат и их номера:
система координат инструмента, номер которой выбран в настоящий момент
(UT = F); система координат пользователя, номер которой выбран в настоя-
щий момент (UF = F).
При воспроизведении используются следующие декартовы системы
координат и их номера: си
стема координат инструмента, номер которой вы-
бран в настоящий момент (UT = F); cистема координат пользователя, номер
которой выбран в настоящий момент (UF = F).
Номер положения используется для обращения к переменной положе-
ния. Номер положения автоматически присваивается каждый раз, когда про-
исходит ввод команды перемещения в режиме обучения и это отражается в
программе. Напри
мер, сначала присваивается номер положения P[1], затем
P[2] и т. д. При добавлении команды перемещения ей присваивается номер
положения, полученный путем увеличения на единицу номера положения,
присвоенного последней добавленной команде перемещения, независимо от
того, где в программе располагается новая команда. Однако в случае измене-
ния номера положения это правило не соблюдается. Если положение удаля-
ется, номера положений других заданных точ
ек не изменяются. Однако в
случае изменения номера положения, это правило не соблюдается. Номер
положения или номер регистра положения можно дополнить комментарием
длиной до 16 символов. Чтобы добавить комментарий, нажмите клавишу
ENTER, когда курсор находится на номере положения или номере регистра
положения.
2.5. Скорость подачи
Скорость подачи определяет скорость, с которой перемещается робот.
Во время исполнения программы скоростью подачи можно управлять путём
коррекции. Для коррекции скорости подачи используется значение в диапа-
24

зоне от 1 до 100%. Единица измерения, в которой указывается скорость по-
дачи, зависит от формата движения, заданного в команде перемещения.
Для шарнирного перемещения скорость подачи указывается в процен-
тах от 1 до 100% от максимальной скорости подачи.
Можно использовать секунды и указать величину в пределах от 0,1 до
3200 с – это продолжительность осуществления операции. Такой способ за-
дания используется, когда важно задат
ь время, затрачиваемое на перемеще-
ние. Иногда операцию невозможно выполнить в указанное время.
Можно использовать миллисекунды и указать величину в пределах от
1 до 32 000 мс – это продолжительность осуществления операции.
Для линейного, кругового движения и движения по дуге скорость по-
дачи указывается следующим образом: в миллиметрах в секунду – от 1 до
2000 мм/с; в сантиметрах в минуту – от 1 до 12 000 см/мин; в дюймах в ми-
нуту – от 0,1 до 4724,4 дюйма/мин.
Скорость подачи можно задать с помощью регистра. Это позв
оляет
пользователю указать скорость подачи для команды перемещения после рас-
чёта скорости с помощью регистра. Скорость подачи также можно задат
ь от
внешнего источника, используя, например, групповой ввод (GI) или перенос
данных.
2.6. Команды условия коррекции
Формат команды: Offset, PR[2] (UFRAME [1]) JP[1] 50% FINEOffset
Команда OFFSET изменяет данные позиционирования, запрограмми-
рованные в конечном положении, на величину коррекции, заданную в реги-
стре положения, и перемещает робот в изменённое положение. Условие кор-
рекции задается командой OFFSETCONDITION. Команда OFFSETCONDI-
TION предварительно указывает величину коррекции, используемую коман-
дой OFFSET. Команду OFFSETCONDITION следует задать до выполнения
команды OFFSET. Заданное условие коррекции действует до завершения
программы или до выполнения следующей команды OFFSETCONDITION.
25

Команда условия прямой коррекции изменяет данные позиционирова-
ния на величину коррекции, непосредственно заданную в регистре положе-
ния, без использования условия коррекции, заданного в команде OFFSET
CONDITION. Базовая система координат указывается с помощью номера вы-
бранной в настоящий момент системы координат пользователя. Формат ко-
манды условия прямой коррекции
JP[1] 50% FINEOffset,PR[2]
Примеры
Пример 1
1: OFFSET CONDITION PR[1]
2: J P[1] 100% FINE
3: L P[2] 500mm/sec FINE Offset
Пример 2
1: J P[1] 100% FINE
2: L P[2] 500mm
/sec FINE Offset, PR[1]
Команда коррекции на инструмент имеет формат
TOOL_OFFSET CONDITION PR[2] ( UTOOL[1] ) J P[1] 50% FINE
Tool_offset
Команда коррекции на инструмент перемещает робот в положение,
смещённое относительно конечного положения, записанного в данных пози-
ционирования, на величину коррекции, заданную в условиях коррекции на
инструмент. Условие применения коррекции определяется командой усло-
вия коррекции на инструмент. Команда условия коррекции на инструмент
задаёт условие коррекции, используемое в команде коррекции на инстр
у-
мент. Перед выполнением соответствующей команды коррекции на инстру-
мент выполните команду условия коррекции на инструмент. Заданное усло-
вие коррекции на инструмент сохраняет силу до завершения программы или
выполнения следующей команды условия коррекции на инструмент. При
указании условий коррекции на инструмент учитывайте следующие особен-
ности. Регистр положения указыв
26
ает направление, в котором смещается ко-

нечное положение, а также величину смещения. Для задания условий кор-
рекции используется система координат инструмента. Если номер системы
координат инструмента не указан, используется выбранная в настоящий мо-
мент система координат инструмента. При вводе оператора перемещения с
командой коррекции на инструмент или изменения определённого положе-
ния, можно также указать положение, которому коррекция не применяется.
Команда непосред
ственной коррекции на инструментимеет формат
J P[1] 50% FINE Tool_Offset, PR[2]
Робот перемещается в соответствии с коррекцией, заданной в опреде-
лённом регистре положения, без учёта условий коррекции, указанных в ко-
манде условия коррекции на инструмент. Используется выбранная в настоя-
щий момент система координат инструмента.
2.7. Дополнительные команды перемещения
Команда коррекции ускорения имеет формат
J P[1] 50% FINE ACC80
Эта команда указывает процентный коэффициент ускоре-
ния/замедления во время движения. Эта функция предназначена для замед-
ления движения. При уменьшении коррекции ускорения время ускорения
увеличивается (ускорение и замедление выполняются медленнее). Для вы-
полнения потенциально опасных операций, например, зачерпывание горячей
воды, следует использовать значение меньше 100%. При увеличении коррек-
ции ускорения время ускорения умен
ьшается (ускорение и замедление вы-
полняются быстрее). На участках, на которых робот перемещается слишком
медленно, задайте значение больше 100%. От коррекции ускорения зависит
время, затрачиваемое на перемещение из начальной точки в конечную точку.
Значение коррекции ускорения может находиться в пределах от 0 до 150%.
Допускается косвенное указание этой величин
ы с использованием регистра.
Коррекция ускорения программируется в конечном положении.
27

Команда приращения имеет формат
J P[1] 50% FINE INC
Команда приращения использует данные позиционирования в команде
перемещения в качестве приращения к текущему положению и перемещает
робот в конечное положение, определяемое путём прибавления приращения
к текущему положению. Таким образом, сумма перемещение приращения
осуществляется на величину, записанную в данных команды перемещения.
Условие приращения задаётся с использованием следующих элементов:
– если данные позиционирования вы
ражены в системе обобщённых
координат, применяется приращение по каждой оси;
– если данные позиционирования заданы с помощью переменной по-
ложения (P[]), базовая система отсчёта указывается номером системы поль-
зователя из данных позиционирования. Однако система координат подверга-
ется проверке (проверка декартовой системы координат);
– если данные позиционирования заданы регистром положения, то ба-
зовой системой отсчёта яв
ляется текущая система координат пользователя;
– если команда приращения (INC) используется вместе с командой
коррекции (OFFSET), тип данных позиционирования в команде перемещения
должен соответствовать типу регистра положения для коррекции. В данном
случае величина коррекции используется как величина указанного приращения.
Команда траектории имеет формат
J P[1] 50% Cnt10 PTH.
Эта функция служит для улучшения характеристик непрерывного дви-
жения (при типе завер
шения Cnt1 – Cnt100), когда робот перемещается на
короткое расстояние. При перемещении робота на короткое расстояние ско-
рость невозможно увеличить до значения, указанного в операторе перемеще-
ния. По этой причине, при планировании оператора, для которого использу-
ется формат позиционирования FINE, следует рассчитывать на «достижи-
мую» скорость, т. е. скорость, которой реально может достичь робот, а не за-
данную скорость (планирование пер
28
емещения предусматривает вычисление

траектории, по которой будет перемещаться робот, перед фактическим пере-
мещением). При использовании данной команды планирование операции
производится с применением достижимой скорости в операции CNT. Благо-
даря этой функции в нормальном режиме работы достигаются следующие
эффекты: сокращение времени цикла, повышение точности траектории.
Команда BREAK имеет формат
LP[1] 2000mm/secCNT100 BREAK.
С помощью команды BREAK пользователь может заставить робот
ожидать в заданном положении, даже если тер
м перед командой WAIT имеет
тип CNT.
При добавлении команды BREAK к команде перемещения с CNT перед
командой WAIT следующее перемещение не начнётся до тех пор, пока не
будет выполнено условие WAIT. Поэтому робот будет перемещаться до это-
го момента в предварительно заданное положение, а траектория прохожде-
ния угла будет изменена в за
висимости от времени ожидания WAIT. Если
время WAIT достаточно продолжительное, робот ожидает в предварительно
заданном положении до начала следующего перемещения (рис. 2.12).
Пример:
1: L P[1] 2000mm/sec FINE
2: L P[2] 2000mm/sec CNT100 BREAK
3: WAIT DI[1]=ON or WAIT x(sec)
4: L P[3] 2000mm/sec FINE
Рис. 2.12. Результат использования команды BREAK
29

Как правило, если WAIT стоит рядом с командой перемещения с CNT,
робот ожидает на повороте до тех пор, пока условие WAIT не будет выпол-
нено. Траектория прохождения угла постоянна, независимо от времени WAIT.
Пример без использования команды BREAK
L P[1] 2000mm/sec FINE
2: L P[2] 2000mm/sec CNT100
3: WAIT DI[1]=ON or WAIT x (sec)
4: LP[3] 2000mm/secFINE
Практические задания для самостоятельной работы
В соответствии с заданием напишите программу для перемещения ро-
бота по заданной траектории. Задайте скорость подачи с помощью регистра.
Задайте коррекцию. Замедлите движение робота при фрезеровании малых
дуг. Отдельные элементы траектории выполните с использованием операции
приращения. Перед выполнением отдельных элементов заставьте робот по-
дождать заданное время. Варианты заданий для практической работы приве-
дены на ри
с. 2.13
Контрольные вопросы
1. Какими составляющими определяются данные позиционирования?
2. Что такое конфигурация робота. Какая она бывает?
3. Как задаётся скорость подачи робота?
4. Поясните назначение основных частей команды перемещения.
5. Перечислите виды перемещения робота и назовите основные ко-
манды для перемещения.
6. В чём отличия основных траекторий позиционирования?
7. Поясните, для чего нужна команда offset и прив
как ею можно воспользоваться?
30
едите пример того,
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
