
- •As язык программирования руководство
- •1.0 Общее представление об as системе
- •Краткий обзор
- •Характеристики as системы
- •1.3 Конфигурация as системы
- •2.0 As система
- •2.1 Состояние as системы
- •2.2 Системные переключатели as системы
- •2.4 Операции ввода и вывода
- •2.4.1 Управление терминалом
- •2.4.2 Внешние устройства памяти
- •2.5 Установка программного обеспечения терминала
- •2.6 Работа с персональным компьютером
- •2.6.1 Запуск системы
- •2.6.1.1 Подключение к порту rs -232c
- •2.6.1.2 Подключение роботов, используя сеть ethernet
- •2.6.2 Загрузка и выгрузка данных
- •2.6.3 Завершение работы системы
- •2.6.4 Полезные функции krterm
- •2.6.4.1 Создание журнала регистрации
- •2.6.4.2 Макро функции
- •Информационные выражения в as языке
- •3.1 Система обозначений и соглашений
- •3.2. Информация о позиции, числовая информация, символьная информация
- •3.2.1 Позиционная информация
- •3.2.2 Числовая информация
- •3.2.3 Символьная информация
- •3.3 Переменные
- •3.3.1 Переменные (глобальные переменные)
- •3.3.2 Локальные переменные
- •3.4 Имена переменной
- •Задание переменных позиции
- •3.5.1 Задание мониторными командами
- •3.5.2 Задание программными инструкциями
- •3.5.3 Использование значений составных (сложных) координат
- •3.6 Задание реальных переменных
- •3.7 Задание переменных символьной строки
- •3.8 Числовые выражения
- •3.8.1 Операторы
- •3.8.2 Порядок операций
- •3.8.3 Логические выражения
- •3.9 Строковые выражения
- •4.0 As программы
- •4.1 Типы as программ
- •4.1.1 Программа управления роботом
- •4.1.2 Программа управления производственным процессом (pc program)
- •4.1.3 Автостарт
- •4.2 Создание и редактирование программ
- •4.2.1 As программный формат
- •4.2.2 Команды редактора
- •4.2.3 Процедуры программирования
- •4.2.4 Создание программ
- •4.3 Выполнение программы
- •4.3.1 Выполнение управляющих программ робота
- •4.3.2 Останов программ
- •4.3.3 Возобновление выполнения управляющих программ робота
- •4.3.4 Выполнение pc программ
- •4.4 Процесс выполнения программы
- •4.4.1 Подпрограмма
- •4.4.2 Подпрограмма с параметрами
- •4.4.3 Асинхронная обработка (прерывание)
- •4.5 Движение робота
- •4.5.1 Синхронизация движения робота и выполнения шага программы
- •4.5.2 Непрерывная траектория (cp) движения
- •4.5.3 Прерывание cp движения
- •4.5.4 Отношение между переключателем cp и инструкциями accuracy, accel, и decel
- •4.5.5 Движение по указанной траектории
- •4.5.6 Установка данных нагрузки
- •5.0 Мониторные команды
- •5.1 Команды редактирования
- •Xd step count
- •Xy step count
- •Команды управления программой и данными
- •Примечание Если в программе адресате для осуществления изображения информации используются status, pcstatus команды или команды редактора, xfer команда не может быть использована.
- •5.3. Команды сохранения программ и данных
- •Команды управления программой
- •5.5 Команды позиционной информации
- •5. 6. Команды управления системой
- •Io/e signal number
- •1. Для того чтобы проверить, изменились ли нулевые данные, когда позиция манипулятора не соответствует заданной позиции.
- •2. Для того чтобы исправить обнуление данных, если они неожиданно изменились.
- •Inertia moment ab. Y axis, inertia moment ab. Z axis
- •Ipeaklog
- •Ipeakclr
- •5.7. Команды двоичных сигналов
- •2.Сигнальное выражение
- •5.8. Команды отображения выражений
- •6.0 Программные инструкции
- •6.1.Инструкции движения
- •Xmove mode pose variable name till signal number
- •6.2. Инструкции управлния скоростью и точностью
- •6.3 Инструкции управления фиксаторами
- •6.4. Инструкции конфигурации робота
- •6.5. Инструкции управления программой
- •If condition goto label
- •6.6. Инструкции построения программных структур
- •If logical expression then
- •Value case number 1,....
- •Value case number 2,....
- •Value case number n,....
- •6.7.Программные инструкции двоичных сигналов
- •Ignore signal number
- •2.Сигнальное выражение
- •Clamp clamp number 1,……., clamp number 8
- •6.8. Программные инструкции сообщений
- •6.9. Инструкции позиционной информации
- •Inertia moment ab. Y axis, inertia moment ab. Z axis
- •Mc monitor command
- •Назначение
- •Tplight
- •6.10. Инструкции управления программой и данными
- •Удаляет выбранные данные из памяти
- •Trace stepper number: on/off
- •7.0 Системные переключатели
- •Check/hold
- •Назначение
- •Ox.Preout Назначение
- •Prefetch.Sigins
- •Errstart.Pc
- •Dispio_01
- •Hold.Step
- •Ws_compoff
- •Flowrate
- •Abs.Speed
- •Slow_start
- •After.Wait.Timr
- •8.0 Операторы
- •8.1 Арифметические операторы
- •8.2 Относительные операторы (операторы сравнения)
- •8.3 Логические операторы
- •8.4 Бинарные операторы
- •8.5 Операторы векторной алгебры
- •Строковые операторы
- •9.0 Функции
- •9.1 Функции реальных значений
- •Val(string, code)
- •Instr(starting point, string1, string2)
- •Int (numerical expression)
- •Priority
- •Inrange (pose variable, joint displacement values)
- •9.2 Функции позиционных значений
- •Назначение
- •То же самое действие можно сделать следующим образом
- •Ave_trans (transformation values 1, transformation values 2)
- •Trsub (transformation values)
- •Ccenter (transformation values 1, transformation values 2, transformation values 3, configuration transformation values)
- •Cshift (transformation values 1, transformation values 2, transformation values 3, object transformation values by shift amount)
- •9.3 Математические функции
- •9.4 Строковые функции
- •Назначение
- •Pcabort pc program number
- •Pckill pc program number Назначение
- •Pccontinue pc program number next
- •Pcscan time
- •11. Примеры программ
- •11.1 Первоначальные установки для программ
- •11.2 Паллетирование
- •11.3 Внешнее взаимодействие
- •11.4 Преобразование инструментальной системы координат
- •11.4.1 Значение преобразования инструментальной системы координат 1 (когда размер инструмента неизвестен)
- •11.4.1 Значение преобразования инструментальной системы координат 2 (когда размер инструмента известен)
- •11.5 Относительные позиции
- •11.5.1 Использование относительных позиций
- •11.5.2 Пример программы при использовании относительных позиций
- •11.6 Использование относительных позиций с функцией frame
- •11.7 Установка конфигураций робота
11.5 Относительные позиции
11.5.1 Использование относительных позиций
Позиция может быть определена относительно контрольной точки. Когда определено таким способом, отношение между этой позицией и контрольной точкой остается постоянным, даже если контрольная точка переопределяется.
Например, когда обучаются четыре угла поверхности, позиционная зависимость между
роботом и поверхностью изменяются в зависимости от того, куда они помещены, но пока форма поверхности остается той же самой, зависимость между этими четырьмя углами не изменяется. Поэтому, если один из углов обучается, как контрольная точка для того, чтобы определить абсолютную позиционную зависимость между роботом и поверхностью, и другие три угла обучаются относительно первого угла, тогда, когда поверхность перемещена, только контрольная точка должна быть переопределена.
На рисунке (A) вверху, обучаются контрольная точка a, и сложные координаты для других углов. Затем, на рисунке (B) контрольная точка переопределяется. Если конфигурация запястья робота вновь не установлена (то есть сохраняется в том же самом положении, как это было в (A)), робот будет двигаться по траектории, показанной сплошной линией.
Если робот, как предполагается, проходит пунктир, необходимо переопределить конфигурацию так же как позицию.
11.5.2 Пример программы при использовании относительных позиций
В этом примере, детали раскладываются как в предыдущем примере, за исключением, что используется два поддона.
Поддоны помещены отдельно, но зависимость между контрольной точкой и местами, где детали должны быть размещены, одинаковы на любом из поддонов. Эта программы выполняет установку детали с подающего лотка на поддон A. После того, как шесть деталей установлены, робот продолжает делать то же самое, устанавливая детали на поддон B. (процедура синхронизации с подающим лотком опущена).
Позиции для обучения
#a : позиция, где робот берет детали с подающего лотка
a : контрольная точка на поддоне A
b : контрольная точка на поддоне B
start : позиция первой детали на поддоне по отношению к контрольной точке
Пример программы
.PROGRAM relative.test
; начальные установки (2 ряда, 3 столбца, ΔX=90, ΔY=50, etc.)
row.max=2
col.max=3
xs=90
ys=50
OPENI
flg=0 ; flg=0:Pallet A, flg=1:Pallet B
POINT pallet=a
; начало пакетирования деталей
10 POINT put=start
FOR ro w1 TO row.max
FOR col=1 TO col.max
JAPPRO #a,100
LMOVE #a берет деталь с подающего лотка
CLOSEI
LDEPART 100
;
POINT put_pt=pallet+put
JAPPRO put pt,200
LMOVE кладет деталь на поддон
OPENI
LDEPART 200
;
POINT put=SHIFT(put BY xs,0,0) определяет место для детали в следующем столбце
END
;
POINT put=SHIFT(start BY 0,ys*row,0) ; определяет место для детали в следующей строке
END
;
IF flg<>0 GOTO 30 ; переходит к финишной процедуре, когда поддон В заполнен (flg=1)
flg=1
POINT pallet=b ;определяет контрольную точку на поддоне В
GOTO 10
30 TYPE "*** end ***"
STOP
.END