Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабор Пума.doc
Скачиваний:
406
Добавлен:
04.06.2015
Размер:
10.79 Mб
Скачать

Подробное описание мониторных директив

Ниже приводится описание отдельных мониторных директив с примерами. Кроме того указывается уровень, на котором можно выполнять каждую директиву. Символ * означает, что данную директиву можно выполнять даже тогда, когда выполняется одна из программ пользователя. Остальные директивы выполняются только в случае, если робот ничего не выполняет (на экране монитора символ «>»).

ABORT* – директива прерывает выполнение программы в конце текущего шага.

C* – директиваC(текст) выводит строку комментариев в режиме монитора. Здесь (текст) произвольная строка символов.

Пример:

а) C+++++++++++++++++++++++++++++++

C PROGRAM NAME: PRO1

C+++++++++++++++++++++++++++++++

C

CAL – с помощью этой команды производится калибровка системы позиционирования звеньев. Иначе говоря, устройство управления определяет точные углы сочленений, соответствующих текущему состоянию манипулятора. Формат директивы:

CAL <+- (номер сочленения) >,

где номер сочленения = 1…6 и определяет сочленение в котором компенсация возможна. Если номер сочленения со знаком плюс, то положение его будет скомпенсировано в положительном направлении. Если номер сочленения со знаком минус, то компенсация положения сочленения идет в противоположном направлении. Величина компенсации соответствует одному обороту двигателя данного сочленения, причем число их неограниченно.

Примечание: успешность калибровки можно проверить с помощью команды GO READY.

Примеры:

а) CAL– выполняет калибровку.

а) CAL1, -5 – выполняет калибровку и прибавляет к положению сочленения 1 один компенсирующий оборот двигателя сочленения, а для сочленения 5 выполняет один компенсирующий оборот двигателя в противоположном направлении.

CHANGE* – спомощью этой директивы можно изменить значения точек и/или записывать новые точки.

CHANGE имя точки,

где имя точки – имя координатной точки, абсолютной точки или комбинированной точки. После директивы CHANGEна дисплей выводится значение позиции и появляется знак вопроса:

CHANGE location? (изменить точку?)

После чего пользователь может задать с клавиатуры новые значения элементам точек, разделенным запятыми. Если значения каких-либо элементов не задано, а на клавиатуре набираются лишь разделительные символы (запятые), то соответствующие значения остаются неизменными. Операция CHANGE(замена) заканчивается тем, что на дисплей выводится новое значение. Если была задана новая точка, то она будет записана в ЗУ с нулевыми значениями (по умолчанию). Если точка комбинированная, то лишь внутренняя точка может быть новой (напр.X(A), а точкаXдолжна быть задана ранее).

Примеры:

а) Точка A1 изменяется следующим образом:

>CHANGE A1

x y z o a t

--------- -------- -------- -------- ------ -------

10.00 5.00 0.00 5.000 0.000 0.000

CHANGE location? 5,,5,0

x y z o a t

--------- -------- --------- -------- -------- -------

5.00 5.00 5.00 0.000 0.000 0.000

б) Абсолютная точка B1 изменяется следующим образом:

>CHANGE #В1

сочл.1 сочл.2 сочл.3 сочл.4 сочл.5 сочл.6

--------- -------- --------- -------- -------- -------

0.000 0.000 0.000 0.000 0.000 0.000

CHANGE location? ,,,10

x y z o a t

-------- -------- --------- -------- -------- -------

0.000 0.000 0.000 10.000 0.000 0.000

COM – директиваCOM (COMMANDS)инициирует программу, которая содержит мониторные директивы (при редактировании программыCOMпишут перед каждой командой, например,COM CALL). Формат директивы:

COM программа,

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

Пример:

а) COM СPROG – инициализируется программа командCPROG(заметим, что операцияCOMиспользуется в операции автоматического запускаAUTOSTART).

CONTINUE – спомощью этой директивы можно снова запустить прерванную программу. Формат директивы:

CONTINUE (целое число),

где целое число = -32768…32767. Если число не задано или оно положительно, то работа программы продолжается со следующего шага. Если же число отрицательное (рекомендуется -1), то программа продолжается с прерванного шага. Если программа была прервана во время движения манипулятора, то директива CONTINUEзапускает программу движения робота с прерванной команды движения. Иногда возникают ситуации, когда продолжить прогон программы с помощью директивыCONTINUEневозможно. Тогда на дисплее после директивыCONTINUE выводится:Try RUN command (попробуйте команду «Запуск»), т. е. оператор должен с помощью командыRUNзапустить программу с самого начала.

Примеры:

а) >CONTINUE – продолжает выполнение прерванной программы;

б) >CONTINUE-1 – продолжает выполнение программы с прерванного шага.

DLOAD* – директиваDLOAD (DELETE LOAD)удаляет программы из ЗУ блока управления и/или точки на основании названия файла. Формат директивы:

DLOAD файл,

где файл – наименование файла, в массиве которого производится удаление. С помощью этой директивы происходит считывание файла программ из диска (файл.P) или файла точек (файл.L) или обоих файлов (при отсутствии спецификаторов .Pили .L) и удаляют те программы и/или точки из ЗУ, которые можно найти в файлах.

Примечание: Операцию можно прерывать, нажав клавишу RETURNилиCONTROL+S.

Примеры:

а) DLOAD PROG.P – удаляет программы, перечисленные в файлеPROG.P;

б) DLOAD PROG – стирает программы, перечисленные в файлеPROG.Pи точки, перечисленные вPROG.L.

DIA – спомощью директивыDIA (DIAGNOSTIC)происходит загрузка нужной сервисной программы с гибкого диска и ее инициализация. Формат директивы:

DIA (файл),

где файл – наименование сервисной программы, находящейся на диске. (В наименовании файла нет спецификации или это нечто иное, чем .Lили .Pс целью разделения наименований файлов программ и точек ). В начале выполнения директивы проверять, включено ли питание манипулятора, и если так, то на дисплее появляется следующее сообщение:Warning:ARMPOWERON(Внимание! Питание манипулятора включено.) Примечание: после выполнения любой сервисной программы, когда робот снова запускается, оператор должен обязательно стирать ОЗУ (режимZEROMEMORY).

Пример: >DIAPOT10SE– инициализируется сервисная программаPOT10SE.

DISABLE* – с помощью этой программы происходит обнуление переключателей программы. Формат директивы:

DISABLEprogramswitch(переключатель программы выключен)

Пример: DISABLEINCALLS– запрет на все прерывания входов/выходов.

ENABLE* – директива переводит переключатели программы в активное состояние. Формат директивы:

ENABLEprogramswitch(переключатель программы включен)

Пример: ENABLEINCALLS– разрешает внешние прерывания входов/выходов.

EDIT* – директива инициализирует редактор. Формат директивы:

EDITпрограмма,

где программа – наименование программы, которую надо редактировать. Если наименование программы не указано, то редактируется последняя программа, с которой работали в режиме редактора.

Пример: EDITPROG1 – редактируется программаPROG1.

EXIT – директива останавливает выполнение программы по окончании рабочего цикла (число прогонов программы, заданное командойRUN, обнуляется).

Формат директивы: EXIT

FDEL* – с помощью директивыFDEL(FILE-DELETE) происходит стирание файлов с гибкого диска. Формат директивы:

FDELфайл,

где файл – имя файла, который надо стереть.

Примеры:

а) FDELPROG.P– стирает файлPROG.P;

б) FDELPROG.L– стирает файлPROG.L;

в) FDELPOT10 – стирает сервисную программуPOT10.

FDIR* – с помощью директивыFDIR(FILE-DIRECTORY) выводится список наименований файлов, находящихся на гибком диске, их длина в блоках (блок – 256 символов) и объем свободных блоков на гибком диске.

Формат директивы: FDIR

FPACK* – благодаря директивеFPACK(FILE-PACK) свободные зоны, имеющиеся на гибком диске, подготавливаются для использования за счет сжатия файлов.

Формат директивы: FPACK

HERE* – с помощью директивыHEREустанавливается в ЗУ координаты точки, соответствующие текущей позиции манипулятора.

Формат команды: HEREточка,

где точка – координатная точка, комбинированная точка или абсолютная точка. Примечание: если используется комбинированная точка, то неопределенной может быть только внутренняя точка (например, X(A), а точкаXдолжна быть предварительно задана).

Например:

а) >HEREA1 – значение точкиA1– значение текущей позиции манипулятора (значениеx,y,z,o,a,t);

б) >HERE#B1 – значение абсолютной точки #B1 – угловые значения шарниров манипулятора;

в) >HEREPALLET(A) – значение точкиA– разность значений между точкойPALLETи текущей позицией манипулятора.

LDEL* – директиваLDEL(LOCATION-DELETE) стирает точки из ЗУ робота.

Формат директивы: LDELточка, точка…,

где точка – координатная или абсолютная точка.

Примеры:

а) >LDELA1,A2 – стирает в ЗУ точкиA1 иA2;

б) >LDEL#B1 – стирает в ЗУ абсолютную точку #B1.

LIST COMMANDS* – директива выводит на дисплей в сокращенной форме мониторные директивы, команды, команды редактора а также типы аргументов команд.

Формат директивы: LISTCOMMANDS

Символы типов аргументов команд, выводящиеся на экран дисплея, имеют следующее значение:

ang– угловая величина;

aopr– арифметический оператор;

cmp– оператор сравнения;

dis– расстояние;

file– наименование файла;

jnt– индекс сочленения (шарнира) ;

lbl– метка, адрес строки;

loc– точка;

nn.n– десятичное число, -3276.8…3276.7;

n.nn– десятичное число, -327.68…327.67;

nnn– целое число -32768…32767;

prg– наименование программы;

str– строка символов;

swit– переключатель программы;

var– переменная;

… – повторение аргумента без ограничений;

Если аргумент заключен в угловые скобки (< >), то это означает, что он необязателен.

LIST STATUS* – директива выводит на дисплей данные о внутреннем состоянии, такие как:

  • сдвиг основной системы координат;

  • объем свободной области памяти (ОЗУ) ;

  • состояние переключателей программы;

  • зеркальная система координат, если она используется;

  • масштабная система координат, если она применяется;

  • сдвиг системы координат инструмента;

  • задание скорости (максимальная скорость перемещения манипулятора, абсолютная ско- рость, масштабный коэффициент скорости) ;

  • выполняемые программа и шаги программы;

  • выполненное число прогонов программы и общее число прогонов;

Формат директивы:

LISTSTATUS

Пример:

LISTSTATUS

BASE0.00 0.00 0.00 0.000 (координаты основной системы координат)

Unusedmem( % ) : 78.55 (неиспользуемая память)

BREAKDISABLED(переключательBREAKвыключен)

DIST10DISABLED(переключательDIST10 выключен)

INCALLSDISABLED(переключательINCALLSвыключен)

PRINTENABLED(переключательPRINTвключен)

SERRORENABLED(переключательSERRORвключен)

TOOL:TL1 0.00 0.00 100.00 0.000 0.000 0.000 (сдвиг системы координат инструмента)

Maxspeed(mm/s): 500.0speed(mm/s):100.0speed% 100 (максимальная скорость (мм/с): 500.0 скорость (мм/с): 100.0 скорость % 100 )

Loops done: 1. Of 1. (выполнено циклов: 1. Из 1.)

Next step: 5. Program START (следующий шаг 5. программы START)

Next step: 9. ProgramDEMO(следующий шаг 9. программыDEMO)

Примечание 1: в этом примере программа STARTвызвала программуDEMOна 4-м шаге. ПрограммаDEMOбыла прервана на 8-м шаге.

Примечание 2: Если на дисплее появилось сообщение об ошибке типа “Unusedmem(%):RAMerror” (Объем незанятой памяти (%): ошибка ОЗУ), то произошло обнуление ЗУ, т. к. ОЗУ потеряло часть своего содержимого или все содержимое полностью.

LLIST* – по директиве >LLIST(LOCATION-LIST) на дисплей выводятся наименования точек и их значения.

Формат директивы: LLIST<точка>, …,

где точка – координатная или абсолютная точка. Если в директиве точки не заданы, все значения точек, имеющихся в ЗУ, выводятся на дисплей. Если же в директиве заданы одна или несколько точек, то на дисплей будут выведены только они.

LOAD* – с помощью директивыLOADв ЗУ блока управления с диска загружаются программы, команды и/или точки.

Формат директивы: LOADфайл,

где файл – наименование файла, из которого загружаются программы и/или точки. Если в наименовании файла есть спецификатор .P, то загружается только файл программ. Если стоит спецификатор .L, то загружается только файл точек. Если же в наименовании файла спецификатора нет, то загружается и то и другое. Примечание: операция загрузки может быть прервана нажатием клавишиRETURNилиCONTROL+S.

LTEACH* – с помощью директивыLTEACH(LOCATION-TEACH) обучают робот точкам в режиме ручного управления. При каждом нажатии кнопкиSTEP(шаг) на пульте ручного управления определяется одна точка и ей придается значение, соответствующее текущему положению манипулятора.

Формат директивы: LTEACHточка,

где точка – координатная, абсолютная или комбинированная точка. При каждом нажатии кнопки STEPна дисплей выводятся наименование точки и ее значение. Кроме наименования точки ей присваивается и индекс, который для каждой следующей точки автоматически увеличивается на 1. Этот режим обучения заканчивается нажатием клавишиRETURN. Если в директиве в качестве точки задается комбинированная точка, неопределенной может быть только внутренняя точка (напримерX(A1)), а значение точкиXдолжно быть определено ранее.

MAXSPEED* – директива задает желаемый предел скоростей движения манипулятора. Формат директивы:

MAXSPEEDскорость,

где скорость – скорость в мм/с в пределах: 2 мм/сек…3000.0 мм/сек. (Прямолинейное движение) По умолчанию максимальная скорость 500 мм/сек.

PDIR* – директиваPDIR(PROGRAM-DIRECTORY) выводит на дисплей наименования программ, находящихся в ЗУ.

Формат директивы: PDIR

PLIST* – с помощью директивыPLIST(PROGRAM-LIST) выводятся программы на дисплей. Формат директивы:

PLIST<программа>,

где программа – наименование выводимой на дисплей программы. Если в директиве наименование программы не указано, то на дисплей выводятся все прjграммы, хранящиеся в ЗУ. Если же в директиве наименования программ указаны, то на дисплей выводятся именно они.

Примеры:

а) >PLIST– вывод на дисплей всех программ из ЗУ;

б) >PLISTPRG1,PRG2 – на дисплей выводятся программыPRG1 ИPRG2.

RUN – директива запускает программы. Формат директивы:

RUNпрограмма, число прогонов,

где программа – наименование программы, которую надо выполнить; число прогонов – число прогонов программы (-32768…32767). Отрицательное значение числа циклов выполнения программы приводит к непрерывному циклу, который можно прервать командами ABORTилиEXIT. Рабочий цикл прерывается если происходит какой-либо сбой. Значение циклов по умолчанию равно 1.

Примеры:

а) >RUNPRG– выполнит программу один раз;

б) >RUNPRG,10 – выполнит программуPRGдесять раз;

в) >RUNPRG, -1 – выполняет программуPRGнеограниченное число раз.

SPEED* – директивой задается базовая скорость движения манипулятора. Формат директивы:

SPEEDскорость,

где скорость – скорость в мм/сек, которая выбирается в пределах 2…3000 мм/сек.

Примечание: чтобы получить действительную скорость, надо умножить базовую скорость на масштабный коэффициент скорости.

SPEED % *– директива используется для задания масштабного коэффициента скорости, с помощью которого можно рассчитать абсолютную скорость движения манипулятора. Формат директивы:

SPEED50 %уменьшает скорость движения манипулятора в два раза.

STORE*– с помощью этой директивы программы и/или точки записываются из ОЗУ на магнитный диск. Формат директивы:

STOREфайл < = программа>, …,

где файл – файл в котором будут храниться программы и/или точки.

Если наименование файла заканчивается спецификатором .P, то в нем сохраняются только программы. Если наименование файла заканчивается спецификатором .L, то сохранятся только точки. Если же спецификатора нет, то автоматически формируются два файла, один из которых имеет спецификатор .P(файл программ), а второй – имеет спецификатор .L(файл точек); программа – наименование программы, которую надо записать. Если в директиве не указывается наименование программы, то записываются все программы и/или точки.

SYSMON – директивойSYSMON(SYSTEM-MONITOR) можно обращаться в собственный монитор центрального процессора. Формат директивы:

SYSMON

Перед началом выполнения директивы блок управления спрашивает: Ayousure(y,n)? (Вы уверены?) И только после нажатия клавишиYдиректива будет выполнена.

WHERE* – директива выводит на дисплей текущую позицию инструмента манипулятора. Формат директивы:

WHERE< # >

Вывод точек происходит также, как и в рассмотренной выше директиве CHANGE.

WEAVE* – директива задает параметры для колебательного движения манипулятора. Формат директивы:

WEAVEамплитуда, <время колебания>, <задержка>,

где амплитуда – удвоенная амплитуда (колебания от пика до пика, максимальное значение ее 256 мм).

Если амплитуда равна 0, то колебаний не будет; время колебания – время одного цикла колебания (это движение удвоенных амплитуд) оно может быть в диапазоне 0.00…327.67 сек.; задержка – время останова (задержки движения робота в крайних точках колебания). Его величина лежит в пределах 0.00…327.67 сек.

Пример:

WEAVE5,0.5 – устанавливает амплитуду колебания манипулятора равную 5мм и время колебания равное 0.5сек.