Разработка интерпретаторов
  • Разработка интерпретаторов
v3.0.3
Search Results for

    Show / Hide Table of Contents

    Токарный цикл точения канавок

    INCT_LatheGroovingCycleFormer - интерфейс CAM системы, который реализует функциональность по упрощению формирования перемещений токарного цикла точения канавок. Объект, реализующий этот интерфейс, возвращает функция INCT_CLData.CreateLatheCycleFormer, INCT_GeomCLData.CreateLatheCycleFormer при её выполнении с параметром lctGrooving.

    Groove

    Предназначение:

    Выполнение перемещений в различных типах токарных циклов точения канавок, для разных стоек в общем случае повторяют одинаковую траекторию:

    1. Подвод инструмента к стартовой или следующей точке врезания на ускоренной подаче.
    2. Врезание на глубину канавки за один проход или в несколько итераций на величину шага резания на рабочей подаче, с отскоком для ломки стружки.
    3. Возврат в стартовую позицию с отводом или без него, с подачей перехода.
    4. Если ширина канавки не достигнута, вернуться к пункту 1.

    Примеры таких циклов, Sinumerik: CYCLE93.

    Использование формирователя позволяет сформировать траекторию движения инструмента по заданным параметрам: начальная и конечная точки канавки, шаг в ширину канавки, шаг резания, расстояние отвода и пр. А также добавить в траекторию движения на любом формируемом участке необходимые для конкретного цикла особенности, изменить тип или значение подачи, либо пропустить перемещение инструмента, подготовленное формирователем.

    GrooveCycleTraj GrooveCyclePlungeStep

    Использование формирователя:

    Рекомендуем создавать новый формирователь токарного цикла для каждого нового цикла в кадре управляющей программы, кроме случаев повторения работы цикла в новом кадре. Таким образом, интерфейс старого формирователя должен освобождаться при создании нового или в случае завершения работы интерпретатора.

    Для формирования команд движения инструмента по траектории цикла, необходимо выполнить следующие шаги:

    1. Получить интерфейс формирователя (INCT_CLData.CreateLatheCycleFormer, INCT_GeomCLData.CreateLatheCycleFormer).
    2. Задать индексы продольной и поперечной осей, по которым будут производиться перемещения (Set_AxisIndexes).
    3. Задать начальную точку канавки (Set_StartPoint).
    4. Задать конечную точку канавки (Set_EndPoint).
    5. Задать направление канавки (Set_GrooveDirection).
    6. Задать шаг смещения в ширину канавки (Set_Step).
    7. Задать расстояние отвода для возврата (Set_SafeDist).
    8. Задать шаг резания в осевом направлении (Set_PlungeStep).
    9. Задать значение отскока для ломки стружки (Set_ReturnDistance).
    10. Назначить обработчик событий цикла (Set_Events), если в траекторию цикла нужно вносить изменения.
    11. Сформировать команды движения инструмента по траектории цикла (MakeWorkpath).

    Описание методов интерфейса:

    Метод Описание метода
    Set_AxisIndexes Метод устанавливает индексы продольной и поперечной осей, по которым будут производиться перемещения при формировании траектории цикла.
    Входные параметры: Value (TNCLCAxisIndexes) - Transverse (целое число) - индекс поперечной оси, Longitudinal (целое число) - индекс продольной оси.
    Выходных параметров нет.
    Get_AxisIndexes Функция возвращает индексы продольной и поперечной осей, в которых будут производиться перемещения при формировании траектории цикла (TNCLCAxisIndexes).
    Входных параметров нет.
    Set_StartPoint Метод устанавливает значения координат начальной точки канавки.
    Входной параметр: Value (TNC2DPoint) - значение координат начальной точки канавки (Transverse - поперечная, Longitudinal - продольная).
    Выходных параметров нет.
    Get_StartPoint Функция возвращает значение координат начальной точки канавки (TNC2DPoint).
    Входных параметров нет.
    Set_EndPoint Метод устанавливает значение координат конечной точки канавки.
    Входной параметр: Value (TNC2DPoint) - значение координат конечной точки канавки.
    Выходных параметров нет.
    Get_EndPoint Функция возвращает значение координат конечной точки канавки (TNC2DPoint).
    Входных параметров нет.
    Set_GrooveDirection Метод устанавливает значение направления канавки.
    Входной параметр: Value (TNCGrooveDirection) - значение направления канавки.
    gdLongitudinal - продольная;
    gdFace - торцевая.
    Выходных параметров нет.
    Get_GrooveDirection Функция возвращает значение направления канавки (TNCGrooveDirection).
    Входных параметров нет.
    Set_Step Метод устанавливает значение шага в ширину канавки в радиальном направлении.
    Входной параметр: Value (вещественное число) - значение шага.
    Выходных параметров нет.
    Get_Step Функция возвращает значение шага в ширину канавки в радиальном направлении (вещественное число).
    Входных параметров нет.
    Set_SafeDist Метод устанавливает значение отскока в бок перед выводом инструмента.
    Входной параметр: Value (вещественное число) - значение отскока в бок.
    Выходных параметров нет.
    Get_SafeDist Функция возвращает значение отскока в бок перед выводом инструмента (вещественное число).
    Входных параметров нет.
    Set_PlungeStep Метод устанавливает значение шага при выполнении врезания на глубину канавки.
    Входной параметр: Value (вещественное число) - значение шага.
    Выходных параметров нет.
    Get_PlungeStep Функция возвращает значение шага при выполнении врезания на глубину канавки (вещественное число).
    Входных параметров нет.
    Set_ReturnDistance Метод устанавливает значение отскока вверх для ломки стружки.
    Входной параметр: Value (вещественное число) - значение отскока вверх.
    Выходных параметров нет.
    Get_ReturnDistance Функция возвращает значение отскока вверх для ломки стружки (вещественное число).
    Входных параметров нет.
    Set_ReturnDistanceInsidePlungeStep Метод устанавливает значение признака 'Отскок внутри шага врезания'. Истина - отскок включён в шаг врезания, Ложь - отскок складывается с шагом врезания.
    Входной параметр: Value (логическое) - значение признака.
    Выходных параметров нет.
    GrooveCycleReturnDistanceInsidePlungeStep
    Get_ReturnDistanceInsidePlungeStep Функция возвращает значение признака 'Отскок внутри шага врезания'.
    Входных параметров нет.
    Set_RapidLevel Метод устанавливает значение уровня ускоренного перемещения.
    Входной параметр: Value (вещественное число) - значение уровня ускоренного перемещения.
    Выходных параметров нет.
    Get_RapidLevel Функция возвращает значение уровня ускоренного перемещения.
    Входных параметров нет.
    Set_FullReturnDist Метод устанавливает расстояние возврата к уровню ускоренного перемещения.
    Входной параметр: Value (вещественное число) - расстояние возврата к уровню ускоренного перемещения.
    Выходных параметров нет.
    Get_FullReturnDist Функция возвращает расстояние возврата к уровню ускоренного перемещения.
    Входных параметров нет.
    Set_Feedrate Метод устанавливает значение рабочей подачи.
    Входной параметр: Value (вещественное число) - значение рабочей подачи.
    Выходных параметров нет.
    Get_Feedrate Функция возвращает значение рабочей подачи.
    Входных параметров нет.
    Set_MPM Метод устанавливает тип рабочей подачи.
    Входной параметр: Value (логическое) - тип рабочей подачи. Истина - мм/мин, Ложь - мм/об.
    Выходных параметров нет.
    Get_MPM Функция возвращает тип рабочей подачи.
    Входных параметров нет.
    Set_Events Метод назначает события для управления поведением цикла. При использовании событий можно добавить в траекторию движения на любом формируемом участке необходимые для конкретного цикла особенности, изменить тип или значение подачи, либо пропустить перемещение инструмента, подготовленное формирователем.
    Входной параметр: Value (INCT_LatheCycleEvents) - объект, реализующий события. Подробное описание ниже.
    Выходных параметров нет.
    Get_Events Функция возвращает объект, реализующий события, связанный с формирователем цикла (INCT_LatheCycleEvents).
    Входных параметров нет.
    MakeWorkpath Метод формирует траекторию цикла по заданным параметрам.

    INCT_LatheCycleEvents - интерфейс, реализуемый в интерпретаторе, который позволяет управлять поведением токарного цикла. Интерфейс представляет из себя набор методов-событий, которые выполняются при перемещении инструмента внутри формирователя траектории цикла. Используя методы интерфейса можно добавить в траекторию движения на любом формируемом участке необходимые для конкретного цикла особенности: выстой, ориентированный останов и прочее, изменить тип подачи, либо пропустить перемещение инструмента, подготовленное формирователем.

    Если для формирователя траектории цикла назначены события, то любое перемещение инструмента внутри формирователя состоит из 3-х этапов:

    1. Выполняется метод INCT_LatheCycleEvents.BeforeMove. В качестве параметров методу передаются заданные циклом: тип перемещения, координаты точки перемещения, тип подачи.
    2. Выполняется метод INCT_LatheCycleEvents.OnMove. В качестве параметров методу передаются: тип перемещения, координаты точки перемещения, тип подачи, признак выполнения перемещения. Все параметры, кроме типа перемещения, в реализации метода могут быть изменены. В зависимости от заданного в OnMove признака, производится выполнение перемещения инструмента в заданную точку с указанной подачей, или перемещение не производится.
    3. Выполняется метод INCT_LatheCycleEvents.AfterMove. В качестве параметров методу передаются: тип перемещения, координаты точки перемещения, тип подачи, возвращённые методом OnMove.

    Описание методов интерфейса:

    Метод Описание метода Описание использования
    BeforeMove Метод будет выполнен перед каждым перемещением инструмента при формировании траектории цикла.
    Входные параметры: MoveType (TNCLatheCycleMoveType) - тип перемещения, описание см. ниже; Point (TNC2DPoint) - координаты точки перемещения (Transverse - поперечная, Longitudinal - продольная); Feed (TNCFeedType) - тип подачи.
    lmMoveToStartPoint - перемещение к стартовой точке точения канавки;
    lmMoveToNextGroove - перемещение к следующему шагу точения канавки;
    lmMoveToNextLevel - перемещение на очередную глубину врезания канавки;
    lmMoveToBottomLevel - перемещение на дно канавки;
    lmChipBreaking - ломка стружки;
    lmRetractSideways - отскок в бок, перед выводом инструмента;
    lmReturnToTopLevel - возврат на начальный уровень;
    lmReturnToStartPoint - возврат в начальную точку;
    lmCutTheThread - нарезание резьбы (для цикла Токарный цикл резьбонарезания);
    lmApproach - подвод (для цикла Токарный цикл обработки резанием);
    lmRetract - отвод (для цикла обработки резанием);
    lmWorkingMove - рабочее перемещение (для цикла обработки резанием);
    lmOverlapContour - проход по контуру (для цикла обработки резанием);
    lmReturnToSafeDistance - возврат на безопасное расстояние (для цикла обработки резанием);
    lmTtransition - переход (для цикла обработки резанием);
    lmMoveToRapidLevel - возврат на уровень ускоренного перемещения (вывод инструмента).
    Выходных параметров нет.
    При необходимости добавления тех или иных команд перед выполнением перемещения, их нужно добавить в реализацию метода.
    Например, если есть необходимость включить систему охлаждения станка перед точением канавки, сделать это можно добавив в реализацию метода BeforeMove вызов INCT_CLData.AddCoolant с соответствующими параметрами по условию MoveType = lmMoveToStartPoint.
    OnMove Метод будет выполнен непосредственно перед каждым перемещением инструмента при формировании траектории цикла.
    Входные параметры: MoveType (TNCLatheCycleMoveType) - тип перемещения, описание см. выше;
    Входные и выходные параметры: Point (TNC2DPoint) - координаты точки перемещения; Feed (TNCFeedType) - тип подачи; Handled (логическое) - признак выполнения перемещения внутри реализации (Истина - перемещение выполнено, Ложь - перемещение не выполнено).
    Если после вызова OnMove параметр Handled принимает значение Истина, это значит, что перемещение было выполнено внутри реализации метода OnMove и формирователь цикла не добавляет команду перемещения в траекторию движения инструмента.
    Если после вызова OnMove параметр Handled принимает значение Ложь, формирователь считает, что перемещение не было выполнено внутри реализации метода OnMove и добавляет в траекторию движения инструмента команду перемещения в точку Point с типом подачи Feed.
    При необходимости переопределения значений точки перемещения или подачи, либо для отказа от перемещения (пропуска).
    Например, если нужно изменить тип подачи на ускоренную, при возврате на начальный уровень, после точения канавки, то в реализации метода OnMove необходимо изменить значение возвращаемого методом параметра Feed на ffRapid по условию MoveType = lmReturnToTopLevel (типы подачи см. в описании OutStandardFeed).
    Если нужно выполнить перемещение инструмента в точку, отличную от рассчитанной циклом, необходимо изменить значение возвращаемого методом OnMove параметра Point.
    Если перемещение в рассчитанную циклом точку выполнять не нужно, тогда внутри реализации метода OnMove нужно изменить значение параметра Handled на Истина.
    AfterMove Метод будет выполнен после каждого перемещения инструмента при формировании траектории цикла, даже если перемещение было отменено в OnMove.
    Входные параметры: MoveType (TNCLatheCycleMoveType) - тип перемещения, описание см. выше; Point (TNC2DPoint) - координаты точки перемещения; Feed (TNCFeedType) - тип подачи.
    Выходных параметров нет.
    При необходимости добавления тех или иных команд после выполнения перемещения, их нужно добавить в реализацию метода.
    Например, если есть необходимость добавить выстой на дне канавки, сделать это можно добавив в реализацию метода AfterMove вызов INCT_CLData.AddDelay с соответствующими параметрами по условию MoveType = lmMoveToBottomLevel.
    In this article