2026-04-14 20:44:08 +09:00

248 lines
14 KiB
C#

// 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
}
#region 26.04.14
//public partial class ScannerACS
//{
// const string AlarmReset = "iAlarmreset";
// const string HeavyAlarm = "iAlarm";
// const string LightAlarm = "iLightAlarm";
// const string AlarmCodes = "iPCAlarmNo"; // 10개
// const string BStageRemarkUse = "iPCset_BLINE_WeldingRemarkUse";
// const string IsLaserOn = "LCI_DEVICE.LaserEnabled";
// /// <summary>
// /// //////////////////////////////////////////////////////
// /// </summary>
// ///
// 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";
// 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";
// 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";
// const string rWeldingEdgePointRad1 = "rPCset_ALINE_EdgePointRad1";
// const string rWeldingEdgePointRad2 = "rPCset_ALINE_EdgePointRad2";
// const string rWeldingEdgePointRad3 = "rPCset_ALINE_EdgePointRad3";
// const string rWeldingEdgePointRad4 = "rPCset_ALINE_EdgePointRad4";
// const string rWeldingCorePowerMax = "rPCset_ALINE_WEL_COREPOWER_MAX";
// const string rWeldingCorePowerMin = "rPCset_ALINE_WEL_COREPOWER_MIN";
// const string rWeldingRingPowerMax = "rPCset_ALINE_WEL_RINGPOWER_MAX";
// const string rWeldingRingPowerMin = "rPCset_ALINE_WEL_RINGPOWER_MIN";
// const string rWeldingAcc = "rPCset_ALINE_WEL_ACC";
// const string rWeldingSVel = "rPCset_ALINE_WEL_SVEL";
// const string rWeldingCVel = "rPCset_ALINE_WEL_CVEL";
// const string iWeldingComplete = "iPCget_ALINE_WEL_COMP";
// 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";
// const string rLaserONPosX = "rPCset_ALINE_LASER_ONPOS_X";
// const string rLaserONOffset = "rPCset_ALINE_LASER_ON_OFFSET";
// const string rLaserOFFPosX = "rPCset_ALINE_LASER_OFFPOS_X";
// const string rLaserOFFOffset = "rPCset_ALINE_LASER_OFF_OFFSET";
// 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";
// const string iALaserShotMode = "iPCset_ALASER_SHOT_MODE";
// const string iAStageLCType = "iPCset_ALINE_LCTYPE";
// const string iAllAxisHomeComplete = "iPCget_ALLAXIS_HOMECOMP";
// const string iXAxisNumber = "iPCget_LCI_ASMASK_X";
// const string iYAxisNumber = "iPCget_LCI_ASMASK_Y";
// const string iLaserUse = "iPCset_LASER_USE";
// private enum eBuffer
// {
// All_Axis_Home,
// AxisX1_Home,
// AxisX2_Home,
// AxisY1_Home,
// AxisY2_Home,
// AxisZ_Home,
// Welding_Line = 11,
// Welding_AllRound,
// Welding_OneShot
// }
//}
#endregion
#region 26.04.14
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 기준 확정
}
}
#endregion
}