// WeldingCommon/Devices/ACS/ScannerACS.Parameter.cs // Gun(PrismaticGunACS.Parameter.cs) 기반으로 Scanner용으로 통합 // 26.04.06 NDY using AuroraACS; namespace WeldingCommon.Devices.ACS { // ── 레이저 출력 타입 ────────────────────────────────────── // Gun의 MainRecipe.eOutType과 동일 // partial class 밖에 정의 → IScannerACS 인터페이스에서도 참조 가능 public enum eOutType { Analog, // V Interval, // hz } public partial class ScannerACS { // ── 알람 ────────────────────────────────────────── const string AlarmReset = "iAlarmreset"; const string HeavyAlarm = "iAlarm"; const string LightAlarm = "iLightAlarm"; const string AlarmCodes = "iPCAlarmNo"; // 10개 // ── 레이저 ─────────────────────────────────────── const string IsLaserOn = "LCI_DEVICE.LaserEnabled"; const string iLaserUse = "iPCset_LASER_USE"; // 가공 모션 시 레이저 사용 유무 // ── 홈 ─────────────────────────────────────────── const string iAllAxisHomeComplete = "iPCget_ALLAXIS_HOMECOMP"; // ── 축 번호 ────────────────────────────────────── const string iXAxisNumber = "iPCget_LCI_ASMASK_X"; // 가공 모션 이동 X축 번호 const string iYAxisNumber = "iPCget_LCI_ASMASK_Y"; // 가공 모션 이동 Y축 번호 // ── OneShot ─────────────────────────────────────── const string rOneShotTime = "rPCset_ALINE_SHOT_TIME"; const string rOneShotCoreVoltage = "rPCset_ALINE_SHOT_CORE_VOLTAGE"; const string rOneShotRingVoltage = "rPCset_ALINE_SHOT_RING_VOLTAGE"; const string iOneShotComplete = "iPCget_ALINE_SHOT_COMP"; // ── LineShot ────────────────────────────────────── const string rLineWeldingCoreVoltage = "rPCset_ALINE_LINE_CORE_VOLTAGE"; const string rLineWeldingRingVoltage = "rPCset_ALINE_LINE_RING_VOLTAGE"; const string rLineWeldingVel = "rPCset_ALINE_LINE_VEL"; const string rLineWeldingAcc = "rPCset_ALINE_LINE_ACC"; const string rLineWeldingLaserOnX = "rPCset_ALINE_LINE_LASERON_X"; const string rLineWeldingLaserOnY = "rPCset_ALINE_LINE_LASERON_Y"; const string rLineWeldingLaserOffX = "rPCset_ALINE_LINE_LASEROFF_X"; const string rLineWeldingLaserOffY = "rPCset_ALINE_LINE_LASEROFF_Y"; const string iLineWeldingComplete = "iPCget_ALINE_LINE_COMP"; // ── Welding Teaching Position 1~8 ───────────────── const string rWeldingPosition1PosX = "rPCset_ALINE_WeldingPosition1_X"; const string rWeldingPosition1PosY = "rPCset_ALINE_WeldingPosition1_Y"; const string rWeldingPosition2PosX = "rPCset_ALINE_WeldingPosition2_X"; const string rWeldingPosition2PosY = "rPCset_ALINE_WeldingPosition2_Y"; const string rWeldingPosition3PosX = "rPCset_ALINE_WeldingPosition3_X"; const string rWeldingPosition3PosY = "rPCset_ALINE_WeldingPosition3_Y"; const string rWeldingPosition4PosX = "rPCset_ALINE_WeldingPosition4_X"; const string rWeldingPosition4PosY = "rPCset_ALINE_WeldingPosition4_Y"; const string rWeldingPosition5PosX = "rPCset_ALINE_WeldingPosition5_X"; const string rWeldingPosition5PosY = "rPCset_ALINE_WeldingPosition5_Y"; const string rWeldingPosition6PosX = "rPCset_ALINE_WeldingPosition6_X"; const string rWeldingPosition6PosY = "rPCset_ALINE_WeldingPosition6_Y"; const string rWeldingPosition7PosX = "rPCset_ALINE_WeldingPosition7_X"; const string rWeldingPosition7PosY = "rPCset_ALINE_WeldingPosition7_Y"; const string rWeldingPosition8PosX = "rPCset_ALINE_WeldingPosition8_X"; const string rWeldingPosition8PosY = "rPCset_ALINE_WeldingPosition8_Y"; // ── Welding Arc (R구간) ─────────────────────────── const string rWeldingEdgePointRad1 = "rPCset_ALINE_EdgePointRad1"; const string rWeldingEdgePointRad2 = "rPCset_ALINE_EdgePointRad2"; const string rWeldingEdgePointRad3 = "rPCset_ALINE_EdgePointRad3"; const string rWeldingEdgePointRad4 = "rPCset_ALINE_EdgePointRad4"; // ── Welding Power ───────────────────────────────── const string rWeldingCorePowerMax = "rPCset_ALINE_WEL_COREPOWER_MAX"; // 직선구간 const string rWeldingCorePowerMin = "rPCset_ALINE_WEL_COREPOWER_MIN"; // R구간 const string rWeldingRingPowerMax = "rPCset_ALINE_WEL_RINGPOWER_MAX"; // 직선구간 const string rWeldingRingPowerMin = "rPCset_ALINE_WEL_RINGPOWER_MIN"; // R구간 // ── Welding Velocity ────────────────────────────── const string rWeldingAcc = "rPCset_ALINE_WEL_ACC"; const string rWeldingSVel = "rPCset_ALINE_WEL_SVEL"; // 직선구간 속도 const string rWeldingCVel = "rPCset_ALINE_WEL_CVEL"; // R구간 속도 const string iWeldingComplete = "iPCget_ALINE_WEL_COMP"; // ── Welding Motion Position ─────────────────────── const string rWeldingStartPosX = "rPCset_ALINE_WEL_ST_POS_X"; const string rWeldingStartPosY = "rPCset_ALINE_WEL_ST_POS_Y"; const string rWeldingEndPosX = "rPCset_ALINE_WEL_EN_POS_X"; const string rWeldingEndPosY = "rPCset_ALINE_WEL_EN_POS_Y"; // ── Laser ON Position ───────────────────────────── // rPCset_ALINE_LASER_ON_OFFSET / LASEROFF_X / LASEROFF_OFFSET 는 // xlsx 기준 "미사용" → 정의하지 않음 const string rLaserONPosX = "rPCset_ALINE_LASER_ONPOS_X"; // ── Ramping ─────────────────────────────────────── const string rRampingONOverlapDist = "rPCset_ALINE_RAMP_ON_OVERLAP_DIS"; const string rRampingONStartPower = "rPCset_ALINE_RAMP_ON_STARTPOWER"; const string rRampingOFFStartPosX = "rPCset_ALINE_RAMP_OFF_STPOS_X"; const string rRampingOFFOverlapDist = "rPCset_ALINE_RAMP_OFF_OVERLAP_DIS"; const string rRampingOFFEndPower = "rPCset_ALINE_RAMP_OFF_ENDPOWER"; // ── MOTF (Motion On The Fly) ────────────────────── // 26.04.09 NDY xlsx 글로벌 변수 맵 기준 확정 // iMOTFStart 변수 없음 — 시작은 RunBuffer(eBuffer.MOTF_Start)로 처리 const string rMOTFPosX = "rPCset_MOF_WEL_PPOS_X"; // Stage X (+) 위치 const string rMOTFNegX = "rPCset_MOF_WEL_MPOS_X"; // Stage X (-) 위치 const string rMOTFVelocity = "rPCset_MOF_WEL_VEL"; // 이동 속도 const string rMOTFAcc = "rPCset_MOF_WEL_ACC"; // 이동 가속도 const string iMOTFInterval = "iPCset_MOF_WEL_MOTION_INTERVAL"; // 직선 모션 사이 Delay (msec) const string iMOTFComplete = "iPCset_MOF_WEL_COMP"; // 용접모션 완료 bit // ── 버퍼 ───────────────────────────────────────── private enum eBuffer { All_Axis_Home = 0, AxisX1_Home = 1, AxisX2_Home = 2, AxisY1_Home = 3, AxisY2_Home = 4, AxisZ_Home = 5, Welding_Line = 11, Welding_AllRound = 12, Welding_OneShot = 13, // Ramping = 14, // ACS 내부 버퍼, PC에서 직접 실행 안 함 MOTF_Start = 17, // 26.04.09 NDY xlsx Buffer Info 기준 확정 } } }