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

    Show / Hide Table of Contents

    Токарный цикл резьбонарезания

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

    ThreadCuttingCycle_Outer ThreadCuttingCycle_Inner ThreadCuttingCycle_Params

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

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

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

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

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

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

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

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

    1. Получить интерфейс формирователя (INCT_CLData.CreateLatheCycleFormer, INCT_GeomCLData.CreateLatheCycleFormer).
    2. Задать индексы продольной и поперечной осей по которым будут производиться перемещения (Set_AxisIndexes).
    3. Установить параметры цикла (Set_ThreadOrientation, Set_ThreadDepth, Set_ThreadStep, Set_ThreadStartAngle, Set_StartPoint и пр. описание см. ниже).
    4. Назначить обработчик событий цикла (Set_Events), если в траекторию цикла нужно вносить изменения.
    5. Сформировать команды движения инструмента по траектории цикла (MakeWorkpath).

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

    Метод Описание метода
    Set_AxisIndexes Метод устанавливает индексы продольной и поперечной осей по которым будут производиться перемещения при формировании траектории цикла.
    Входные параметры: Value (TNCLCAxisIndexes) - Transverse (целое число) - индекс поперечной оси, Longitudinal (целое число) - индекс продольной оси.
    Выходных параметров нет.
    Get_AxisIndexes Функция возвращает индексы продольной и поперечной осей в которых будут производиться перемещения при формировании траектории цикла (TNCLCAxisIndexes).
    Входных параметров нет.
    Set_Direction Метод устанавливает направление цикла нарезания резьбы.
    Входной параметр: Value (TNCThreadCuttingDirection) - направление цикла: drLongitudinal - продольное, drTransverse - поперечное.
    Выходных параметров нет.
    Get_Direction Функция возвращает направление цикла (TNCThreadCuttingDirection).
    Входных параметров нет.
    Set_ThreadOrientation Метод устанавливает тип ориентации резьбы.
    Входной параметр: Value (TNCThreadOrientation см. INCT_CLData.AddSinglePassThread) - тип ориентации резьбы.
    Выходных параметров нет.
    Get_ThreadOrientation Функция возвращает тип ориентации резьбы (TNCThreadOrientation).
    Входных параметров нет.
    Set_ThreadDepth Метод устанавливает значение глубины резьбы.
    Входной параметр: Value (вещественное число) - значение глубины резьбы.
    Выходных параметров нет.
    Get_ThreadDepth Функция возвращает значение глубины резьбы (вещественное число).
    Входных параметров нет.
    Set_ThreadStep Метод устанавливает значение шага резьбы.
    Входной параметр: Value (вещественное число) - значение шага резьбы.
    Выходных параметров нет.
    Get_ThreadStep Функция возвращает значение шага резьбы (вещественное число).
    Входных параметров нет.
    Set_ThreadStartAngle Метод устанавливает значение начального угла резьбы.
    Входной параметр: Value (вещественное число) - значение начального угла резьбы.
    Выходных параметров нет.
    Get_ThreadStartAngle Функция возвращает значение начального угла резьбы (вещественное число).
    Входных параметров нет.
    Set_ThreadStartCount Метод устанавливает количество заходов резьбы.
    Входной параметр: Value (целое число) - количество заходов резьбы.
    Выходных параметров нет.
    Get_ThreadStartCount Функция возвращает количество заходов резьбы (целое число).
    Входных параметров нет.
    Set_StartPoint Метод устанавливает значения координат начальной точки резьбы.
    Входной параметр: Value (TNC2DPoint) - значения координат начальной точки резьбы.
    Выходных параметров нет.
    Get_StartPoint Функция возвращает значения координат начальной точки резьбы (TNC2DPoint).
    Входных параметров нет.
    Set_EndPoint Метод устанавливает значения координат конечной точки резьбы.
    Входной параметр: Value (TNC2DPoint) - значения координат конечной точки резьбы.
    Выходных параметров нет.
    Get_EndPoint Функция возвращает значения координат конечной точки резьбы (TNC2DPoint).
    Входных параметров нет.
    Set_TaperDist Метод устанавливает значение конусности между начальной и конечной точкой резьбы.
    Входной параметр: Value (вещественное число) - значение конусности между начальной и конечной точкой резьбы.
    Выходных параметров нет.
    Get_TaperDist Функция возвращает значение значение конусности между начальной и конечной точкой резьбы (вещественное число).
    Входных параметров нет.
    Set_ChamferLength Метод устанавливает длину фаски для выхода инструмента в конце резьбы.
    Входной параметр: Value (вещественное число) - длина фаски для выхода инструмента в конце резьбы.
    Выходных параметров нет.
    Get_ChamferLength Функция возвращает длину фаски для выхода инструмента в конце резьбы (вещественное число).
    Входных параметров нет.
    Set_ChamferAngle Метод устанавливает значение угла фаски в градусах.
    Входной параметр: Value (вещественное число) - значение угла фаски в градусах.
    Выходных параметров нет.
    Get_ChamferAngle Функция возвращает значение угла фаски в градусах (вещественное число).
    Входных параметров нет.
    Set_RetractionPath Метод устанавливает уровень плоскости отвода.
    Входной параметр: Value (вещественное число) - уровень плоскости отвода.
    Выходных параметров нет.
    Get_RetractionPath Функция возвращает заданный уровень плоскости отвода (вещественное число).
    Входных параметров нет.
    Set_RunInPath Метод устанавливает значение входного участка.
    Входной параметр: Value (вещественное число) - значение входного участка.
    Выходных параметров нет.
    Get_RunInPath Функция возвращает значение входного участка (вещественное число).
    Входных параметров нет.
    Set_RunOutPath Метод устанавливает значение выходного участка.
    Входной параметр: Value (вещественное число) - значение выходного участка.
    Выходных параметров нет.
    Get_RunOutPath Функция возвращает значение выходного участка (вещественное число).
    Входных параметров нет.
    Set_ThreadAngle Метод устанавливает значение угла профиля резьбы.
    Входной параметр: Value (вещественное число) - значение угла профиля резьбы.
    Выходных параметров нет.
    Get_ThreadAngle Функция возвращает значение угла профиля резьбы (вещественное число).
    Входных параметров нет.
    Set_InclinationAngle Метод устанавливает значение угла одной из стенок профиля резьбы относительно вертикали.
    Входной параметр: Value (вещественное число) - значение.
    Выходных параметров нет.
    Get_InclinationAngle Функция возвращает значение угла одной из стенок профиля резьбы относительно вертикали (вещественное число).
    Входных параметров нет.
    Set_SequenceType Метод устанавливает способ врезания на черновых проходах.
    Входной параметр: Value (TNCThreadSequenceType) - способ врезания на черновых проходах.
    stRadial - радиально;
    stFlank - гранью;
    stModifiedFlank - под углом;
    stAlternateFlank - попеременно гранями.
    Выходных параметров нет.
    Get_SequenceType Функция возвращает значение способа врезания на черновых проходах (TNCThreadSequenceType).
    Входных параметров нет.
    Set_PlungeAngle Метод устанавливает значение угла врезания для стратегии stModifiedFlank.
    Входной параметр: Value (вещественное число) - значение угла врезания в градусах.
    Выходных параметров нет.
    Get_PlungeAngle Функция возвращает значение угла врезания для стратегии stModifiedFlank (вещественное число).
    Входных параметров нет.
    Set_DepthIsEqual Метод устанавливает способ определения глубины резания.
    Входной параметр: Value (логическое) - способ определения глубины резания. Истина - постоянная глубина, Ложь - постоянная площадь резания.
    Выходных параметров нет.
    Get_DepthIsEqual Функция возвращает способ определения глубины резания (логическое).
    Входных параметров нет.
    Set_IsPassCountDefined Метод устанавливает метод определения глубины резания.
    Входной параметр: Value (логическое) - метод определения глубины резания. Истина - по количеству проходов, Ложь - по начальной глубине.
    Выходных параметров нет.
    Get_IsPassCountDefined Функция возвращает метод определения глубины резания (логическое).
    Входных параметров нет.
    Set_MinCutDepth Метод устанавливает значение минимально возможной глубины чернового прохода.
    Входной параметр: Value (вещественное число) - значение минимально возможной глубины чернового прохода.
    Выходных параметров нет.
    Get_MinCutDepth Функция возвращает значение минимально возможной глубины чернового прохода (вещественное число).
    Входных параметров нет.
    Set_FirstCutDepth Метод устанавливает значение глубины первого чернового прохода.
    Входной параметр: Value (вещественное число) - значение глубины первого чернового прохода.
    Выходных параметров нет.
    Get_FirstCutDepth Функция возвращает значение глубины первого чернового прохода (вещественное число).
    Входных параметров нет.
    Set_RoughPassCount Метод устанавливает количество черновых проходов.
    Входной параметр: Value (целое число) - количество черновых проходов.
    Выходных параметров нет.
    Get_RoughPassCount Функция возвращает количество черновых проходов (целое число).
    Входных параметров нет.
    Set_FinishPassCount Метод устанавливает количество чистовых проходов.
    Входной параметр: Value (целое число) - количество чистовых проходов.
    Выходных параметров нет.
    Get_FinishPassCount Функция возвращает количество чистовых проходов (целое число).
    Входных параметров нет.
    Set_FinishPassDepth Метод устанавливает значение глубины чистовых проходов.
    Входной параметр: Value (вещественное число) - значение глубины чистовых проходов.
    Выходных параметров нет.
    Get_FinishPassDepth Функция возвращает значение глубины чистовых проходов (вещественное число).
    Входных параметров нет.
    Set_Feedrate Метод устанавливает значение рабочей подачи.
    Входной параметр: Value (вещественное число) - значение рабочей подачи.
    Выходных параметров нет.
    Get_Feedrate Функция возвращает значение рабочей подачи.
    Входных параметров нет.
    Set_MPM Метод устанавливает тип рабочей подачи.
    Входной параметр: Value (логическое) - тип рабочей подачи. Истина - мм/мин, Ложь - мм/об.
    Выходных параметров нет.
    Get_MPM Функция возвращает тип рабочей подачи.
    Входных параметров нет.
    Set_Events Метод назначает события для управления поведением цикла. При использовании событий можно добавить в траекторию движения на любом формируемом участке необходимые для конкретного цикла особенности: выстой, ориентированный останов и прочее, изменить тип или значение подачи, либо пропустить перемещение инструмента подготовленное формирователем.
    Входной параметр: Value (интерфейс) - объект, реализующий интерфейсы INCT_LatheCycleEvents, INCT_LatheThreadCuttingCycleEvents. Подробное описание ниже.
    Выходных параметров нет.
    Get_Events Функция возвращает объект, реализующий события, связанный с формирователем цикла (INCT_LatheCycleEvents, INCT_LatheThreadCuttingCycleEvents).
    Входных параметров нет.
    MakeWorkpath Метод формирует траекторию цикла по заданным параметрам.

    INCT_LatheThreadCuttingCycleFormer2 - интерфейс CAM системы, который реализует функциональность по упрощению формирования перемещений токарного цикла нарезания резьбы.

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

    Метод Описание метода
    Set_Approach Метод устанавливает тип подвода.
    Входной параметр: Value (TNCThreadApproach) - тип подвода.
    taOutside - снаружи (по-умолчанию)
    taIndise - изнутри
    Выходных параметров нет.
    Get_Approach Функция возвращает тип подвода (TNCThreadApproach).
    Входных параметров нет.
    Get_SignLongitudinal Функция возвращает знак перемещения вдоль продольной оси (целое число).
    Get_SignTransverse Функция возвращает знак перемещения вдоль поперечной оси (целое число).

    INCT_LatheCycleEvents - интерфейс реализуемый в интерпретаторе, который позволяет управлять поведением токарного цикла. Подробно описан в статье Токарный цикл точения канавок.

    INCT_LatheThreadCuttingCycleEvents - интерфейс реализуемый в интерпретаторе, который позволяет управлять нарезанием резьбы. В интерфейсе описан метод-событие OnThread, который выполняется при выполнении нарезания резьбы внутри формирователя, и методы-события расчёта проходов: OnCalcBaseDepth, OnCalcCount, OnCalcNextDepth, OnCalcPoint.

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

    МетодОписание методаОписание использования
    OnThread

    Метод будет выполнен перед каждым нарезанием резьбы при формировании траектории цикла. Реализация этого метода позволяет изменить параметры резьбы для выбранной итерации.

    Входные параметры: Orient (TNCThreadOrientation) - ориентация резьбы; LeadType (TNCThreadLeadType) - способ задания шага резьбы; Step (вещественное число) - значение шага резьбы; StartAngle (вещественное число) - начальное угловое положение шпинделя в градусах (используется для многозаходной резьбы). См. INCT_CLData.AddSinglePassThread.

    Входные и выходные параметры: Handled (логическое) - признак выполнения перемещения внутри реализации (Истина - перемещение выполнено, Ложь - перемещение не выполнено).

    Если после вызова OnThread параметр Handled принимает значение Истина, это значит, что нарезание резьбы было выполнено внутри реализации метода OnThread и формирователь цикла не добавляет команду нарезания резьбы в траекторию движения инструмента.

    Если после вызова OnThread параметр Handled принимает значение Ложь, формирователь считает, что нарезание резьбы не было выполнено внутри реализации метода OnThread и добавляет в траекторию движения инструмента команду нарезания резьбы.

    При необходимости замены параметров нарезания резьбы. Либо задания алгоритма изменения резьбы на различных заходах, не реализованных в формирователе.
    OnCalcBaseDepth

    Метод будет выполнен для режима IsPassCountDefined = Истина после расчёта базовой (первой) глубины. Реализация этого метода позволяет изменить значение базовой глубины.

    Входной и выходной параметр: BaseDepth (вещественное число) - базовая глубина.

    OnCalcCount

    Метод будет выполнен для режима IsPassCountDefined = Ложь после расчёта количества проходов. Реализация этого метода позволяет изменить значение количества проходов.

    Входной и выходной параметр: Count (целое число) - количество проходов.

    OnCalcNextDepth

    Метод будет выполнен при расчёте очередной глубины (если количество проходов больше или равно одному). Реализация этого метода позволяет изменить значение глубины для итерации.

    Входной параметр: Iteration (целое число) - номер итерации (прохода);

    Входной и выходной параметр: Depth (вещественное число) - глубина на итерации.

    OnCalcPoint

    Метод будет выполнен при расчёте координат положения инструмента для очередного перемещения. Реализация этого метода позволяет изменить значение координат для итерации.

    Входной параметр: Iteration (целое число) - номер итерации (прохода);

    Входной и выходной параметр: Point (TNC2DPoint) - координаты положения инструмента на итерации.

    In this article