Разработка постпроцессоров
  • Разработка постпроцессоров
v20.0.1
Search Results for

    Show / Hide Table of Contents

    EFFECTOR - Активация рабочего органа

    Отображение команды

    Как команда отображается в списке команд CLData:

    EFFECTOR N n, Value ON(71) | OFF(72)
    

    Команда CLData EFFECTOR активирует или деактивирует рабочий орган станка или робота (лазер, форсунку, сварочную горелку и т. д.).

    Доступ из sppx

    Обработчик: program Effector

    Параметр Массив CLD Имя CLD Описание
    N CLD[1] CLD.N Уникальный идентификатор рабочего органа, который включается или выключается
    Value CLD[2] CLD.Value Тип команды: 71 - включение, 72 - выключение.

    Пример:

    program Effector
      ! cld[1] - идентификатор рабочего органа, cld[2] - 71 (ON) | 72 (OFF)
      if cld[2] = 71 then
        Output "DOUT M#(" + cld[1] + ")=ON"
      else
        Output "DOUT M#(" + cld[1] + ")=OFF"
    end
    

    Доступ из .NET

    Обработчик:

    public override void OnEffector(ICLDEffectorCommand cmd, CLDArray cld)
    

    Наследование: ICLDEffectorCommand : ICLDCommand.

    Читайте параметры из строго типизированного объекта cmd (рекомендуется); доступны также «сырой» массив cld[i] (те же индексы, что и в sppx) и именованные обёртки cmd["..."]. В таблице перечислены члены команды, включая унаследованные от базовых интерфейсов; общие члены ICLDCommand (навигация, CLD, CLDFile, TechOperation, ...) описаны в разделе Модель доступа к CLData.

    Член Тип Описание
    cmd.IsOn bool Возвращает "true", если эта команда EFFECTOR - команда включения, иначе "false".
    cmd.IsOff bool Возвращает "true", если эта команда EFFECTOR - команда выключения, иначе "false".
    cmd.EffectorID int Числовой идентификатор активируемого-деактивируемого рабочего органа.

    Пример - OnEffector (из постпроцессора CRP_robot_DN):

    public override void OnEffector(ICLDEffectorCommand cmd, CLDArray cld)
    {
    //    if (cmd.IsOn && !effectorIsOn) {
    //        prg.WriteLine("DOUT M#(111)=ON");
    //    } else if (cmd.IsOff  && effectorIsOn) {
    //        prg.WriteLine("DOUT M#(111)=OFF");
    //    }
        effectorIsOn = cmd.IsOn;
    }
    

    Сопутствующие ссылки

    • Модель доступа к CLData
    In this article