Смена инструмента
Общий алгоритм работы макроса смены инструмента
- В начале работы макроса функция GetToolSlot() возвращает номер ячейки предыдущего инструмента, который необходимо вернуть в ячейку.
- Для получения номера ячейки инструмента, на который производится замена, используется функция GetSelectedToolSlot().
- Изменение номера текущего инструмента производится непосредственно из макроса функцией SetToolSlot () после фактической замены. После того как предыдущий инструмент помещён в ячейку, необходимо вызвать функцию SetToolSlot(0). После того как взят новый инструмент, вызывается функция SetToolSlot(slot), где slot=GetSelectedToolSlot().
- Если выполнение макроса смены инструмента необходимо разбить на две части с остановкой между ними, используются функции GetStage и SetStage.
void SetStage(number stage, bool disable_prep_move)
Установка текущего этапа смены инструмента.
Параметры:
- number stage – номер этапа смены инструмента;
- bool disable_prep_move – логическое значение, определяющее, будет ли выполнено подготовительное перемещение при продолжении выполнения макроса после нажатия кнопки Старт. True – не выполнять подготовительное перемещение, false – выполнять. Как правило, если передаётся значение true, логика макроса на втором этапе смены инструмента должна обеспечить возврат в точку, откуда будет продолжено выполнение G-кода.
number GetStage()
Получение текущего этапа смены инструмента. Возвращает значение, которое ранее было установлено функцией SetStage. Если функция SetStage ранее не вызывалась, возвращается значение 0. При выполнении любой другой строки G-кода функция также начинает возвращать значение 0.
Возвращаемое значение:
- текущий этап смены инструмента.
number GetToolSlot()
Получение номера ячейки текущего инструмента, который необходимо вернуть в ячейку. При отсутствии инструмента в шпинделе возвращается значение 0.
Возвращаемое значение:
- номер ячейки текущего инструмента.
number GetSelectedToolSlot()
Получение номера ячейки инструмента, на который производится замена. Если после возврата предыдущего инструмента новый инструмент брать не нужно, возвращается значение 0.
Возвращаемое значение:
- номер ячейки инструмента, на который производится замена.
void SetToolSlot(number slot)
Изменение номера ячейки текущего инструмента. Производится в момент фактической замены инструмента. После того как предыдущий инструмент помещён в ячейку, необходимо вызвать функцию SetToolSlot(0). После того как взят новый инструмент, вызывается функция SetToolSlot(slot), где slot – номер ячейки выбранного инструмента, полученный при вызове GetSelectedToolSlot().
Параметры:
- number slot – номер ячейки инструмента, на который произведена замена.
bool GetUseGeneralToolchangePosition()
Позволяет проверить, выбрана ли в настройках таблицы инструментов опция использовать общую для всех инструментов позицию смены инструмента.
Возвращаемое значение:
- true – если выбрана опция использовать общую для всех инструментов позицию;
- false – если позиция для каждого инструмента задана в таблице инструментов.
number GetGeneralToolchangePosition(number axisId)
Параметры:
- number axisId – номер оси, целое число от 0 до 8.
В качестве этого параметра может передаваться одна из констант, определённых в списке Axis.
Возвращаемое значение:
- машинная координата общей позиции смены инструмента по указанной оси.
number GetCurrentToolToolchangePosition(number axisId)
Параметры:
- number axisId – номер оси, целое число от 0 до 8.
В качестве этого параметра может передаваться одна из констант, определённых в списке Axis.
Возвращаемое значение:
- машинная координата позиции смены инструмента для текущего инструмента по указанной оси.
number GetSelectedToolToolchangePosition(number axisId)
Параметры:
- number axisId – номер оси, целое число от 0 до 8.
В качестве этого параметра может передаваться одна из констант, определённых в списке Axis.
Возвращаемое значение:
- машинная координата позиции смены инструмента для выбранного инструмента по указанной оси.
void SwapToolSlots(number slot)
Позволяет реализовать алгоритм смены инструмента с использованием манипулятора, производящего обмен двух инструментов, находящихся, соответственно, в шпинделе и в ячейке.
Параметры:
- number slot – номер ячейки заданного инструмента.
number GetToolNumber(number slot)
Возвращает номер инструмента соответствующего указанной ячейки.
Параметры:
- number slot – номер ячейки заданного инструмента.
Возвращаемое значение:
- номер инструмента соответствующего указанной ячейки.