using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ILSOS_KS.Device { partial class PLCControllerKS { // Config 폴더에 있는 메모리 맵 정보 //public enum eBitInput : int //{ // PLC_LIVE_STATUS = 0x00, // PLC 라이브 상태 // PLC_AUTO_STATUS, // PLC 자동운전 상태 // PLC_AUTO_REQ, // PLC 자동운전 변경 요청 // PLC_MANUAL_REQ, // PLC 수동운전 변경 요청 // PLC_LIGHT_ALARM_STATUS, // PLC 경알람 상태 // PLC_HEAVY_ALARM_STATUS, // PLC 중알람 상태 // PLC_DOOR_INTERLOCK, // PLC 도어 인터락 // PLC_EMO_STATUS, // PLC EMO 상태 // PLC_RECIPE_CHANGE_REQ, // PLC 레시피 변경 요청 // PLC_JIG_LOAD_COMPLETE = 0X0C, // PLC_WELD_REQUEST_FIRST, // PLC_WELD_REQUEST_SECOND, // PLC_WELD_COMPLETE_FIRST_ACK, // PLC_WELD_COMPLETE_SECOND_ACK, // PLC_PARAM_READ_REQ = 0X25, // PLC_PARAM_SET_REQ, // PLC_PARAM_CHANGE_ACK, // SPC_DATA_UPDATE_ENABLE = 0X29, // FDC_DATA_UPDATE_ENABLE, // CHECK_NO_ADDRRESS //} //public enum eBitOutput : int //{ // PC_LIVE_STATUS = 0x00, // PC 라이브 상태 // PC_AUTO_STATUS, // PC 자동운전 상태 // PC_AUTO_COMPLETE, // PC 자동운전 변경 완료 // PC_MANUAL_COMPLETE, // PC 수동운전 변경 완료 // PC_LIGHT_ALARM_STATUS, // PC 경알람 상태 // PC_HEAVY_ALARM_STATUS, // PC 중알람 상태 // PC_RECIPE_CHANGE_COMPLETE = 0x08,// PC 레시피 변경 완료 // PC_WELD_MANUAL_TEST = 0x0A, // PC 용접 수동 테스트 // PC_WELD_READY, // PC 용접 준비 완료 // PC_WELD_REQEUST_ACK, // PC 용접 준비 완료 ACK // PC_WELD_COMPLETE, // PC 용접 완료 // PC_PARAM_READ_ACK = 0X25, // PC RMS 요청 ACK // PC_PARAM_SET_ACK, // PC RMS SET ACK // PC_PARAM_CHANGE_REQ, // PC RMS 수정 요청 // CHECK_NO_ADDRRESS //} //public enum eWordInput : int //{ // PLC_ERROR_CODE = 0x00, // PLC 에러 코드 // PLC_RECIPE_NO, // 설정할 PLC Recipe 번호 // PLC_CURRENT_JIG_NO, // 현재 지그 번호 // PLC_STAGE_SPEED, // 로터리 회전 속도 // PLC_CURRENT_POS_1, // 현재 Rotary 절대엔코더값 1 // PLC_CURRENT_POS_2, // 현재 Rotary 절대엔코더값 2 // CHECK_NO_ADDRRESS, // PLC_VER_WELDING_RECIPE_NUM1, // PLC_VER_WELDING_MAIN_POWER_CORE1, // PLC_VER_WELDING_MAIN_POWER_RING1, // PLC_VER_WELDING_MAIN_JUMP_SPEED1, // PLC_VER_WELDING_MAIN_DRAW_SPEED1, // PLC_VER_WELDING_MAIN_RAMPING_START_POWER1, // PLC_VER_WELDING_MAIN_RAMPING_START_DIST1, // PLC_VER_WELDING_MAIN_RAMPING_END_POWER1, // PLC_VER_WELDING_MAIN_RAMPING_END_DIST1, // PLC_VER_WELDING_SUB_POWER_CORE1, // PLC_VER_WELDING_SUB_POWER_RING1, // PLC_VER_WELDING_SUB_SPOT_SHOT_TIME1 //} //public enum eWordOutput : int //{ // PC_ERROR_CODE = 0x00, // PC 에러 코드 // PC_RECIPE_NO, // 설정된 PC Recipe 번호 // LBAD_ERROR_CODE, // LBAD 에러 코드 // LDD_ERROR_CODE, // LDD 에러 코드 // CHILLER_ERROR_CODE, // 칠러 에러 코듣 // PC_WELD_RESULT_1 = 0x12, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_2, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_3, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_4, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_5, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_6, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_7, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_8, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_9, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_10, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_11, // PC 용접 결과(이상감지 포함) // PC_WELD_RESULT_12, // PC 용접 결과(이상감지 포함) // CHECK_NO_ADDRRESS, // PC_VER_WELDING_MAIN_RAMPING_START_POWER1, // PC_VER_WELDING_MAIN_RAMPING_END_POWER1, // PC_VER_WELDING_MAIN_RAMPING_END_DIST2, // PC_VER_WELDING_SUB_POWER_CORE1, // PC_VER_WELDING_RECIPE_NUM1, // PC_VER_WELDING_MAIN_POWER_CORE1, // PC_VER_WELDING_MAIN_POWER_RING1, // PC_VER_WELDING_MAIN_RAMPING_START_DIST1, // PC_VER_WELDING_SUB_POWER_RING1 //} // 최신화 된 메모리 맵 정보 // 최신화 된 메모리 맵 정보 public enum eBitInput : int { PLC_LIVE_STATUS = 0X00, PLC_AUTO_STATUS, PLC_AUTO_REQ, PLC_MANUAL_REQ, PLC_LIGHT_ALARM_STATUS, PLC_HEAVY_ALARM_STATUS, PLC_DOOR_INTERLOCK, PLC_EMO_STATUS, PLC_RECIPE_CHANGE_REQ, PLC_RCC_PATTERN_CHANGED_ACK = 0X09, // B2409 : B2506(RCC 패턴 변경) 수신 ACK PLC_JIG_LOAD_COMPLETE = 0X0C, /// /// 용접 시작 -> 다음 용접 있음 /// PLC_WELD_REQEUST, PLC_WELD_COMPLETE_ACK, /// /// 다음 지그 -> 용접완료 배출 /// PLC_RESULT_REQUEST = 0x10, PLC_SET_WELD_PAGE_1 = 0x20, PLC_SET_WELD_PAGE_2, PLC_SET_WELD_PAGE_3, PLC_SET_WELD_PAGE_4, PLC_PARAM_READ_REQ = 0X25, PLC_PARAM_SET_REQ, PLC_PARAM_CHANGE_ACK, SPC_DATA_UPDATE_ENABLE = 0X29, FDC_DATA_UPDATE_ENABLE, } public enum eBitOutput : int { PC_LIVE_STATUS = 0X00, PC_AUTO_STATUS, PC_AUTO_COMPLETE, PC_MANUAL_COMPLETE, PC_LIGHT_ALARM_STATUS, PC_HEAVY_ALARM_STATUS, PC_RCC_PATTERN_CHANGED = 0X06, // B2506 : RCC 패턴 변경 알림 (B2409 ACK 를 받으면 끈다) PC_RECIPE_CHANGE_COMPLETE = 0X08, PC_RECIPE_PARAM_UPLOAD_COMPLETE, PC_WELD_MANUAL_TEST, PC_WELD_READY, PC_WELD_REQEUST_ACK, PC_WELD_COMPLETE, PC_LBAD_RESULT_OK = 0x10, PC_LBAD_RESULT_NG = 0x11, PC_WELD_PAGE_CHANGE_COMPLETE_1 = 0x20, PC_WELD_PAGE_CHANGE_COMPLETE_2, PC_WELD_PAGE_CHANGE_COMPLETE_3, PC_WELD_PAGE_CHANGE_COMPLETE_4, PC_PARAM_READ_ACK = 0X25, PC_PARAM_SET_ACK, PC_PARAM_CHANGE_REQ, SPC_DATA_UPDATED = 0X29, FDC_DATA_UPDATED, } //public enum eWordInput : int //{ // PLC_ERROR_CODE = 0x00, // PLC_RECIPE_NO, // PLC_BCR_ID, //} public enum eWordInput : int { PLC_ERROR_CODE = 0x00, PLC_RECIPE_NO, PLC_BCR_ID, //PLC_HOR_WELDING_SPOT_SHOT_TIME = 0x20, //PLC_HOR_WELDING_RECIPE_NUM = 0x22, //PLC_HOR_WELDING_MAIN_POWER_CORE = 0x24, //PLC_HOR_WELDING_MAIN_POWER_RING = 0x26, //PLC_VER_WELDING_RECIPE_NUM = 0x28, //PLC_VER_WELDING_MAIN_POWER_CORE = 0x2A, //PLC_VER_WELDING_MAIN_POWER_RING = 0x2C, //PLC_VER_WELDING_MAIN_DRAW_SPEED = 0x2E, //PLC_VER_WELDING_MAIN_JUMP_SPEED = 0x30, //PLC_VER_WELDING_SUB_POWER_CORE = 0x32, //PLC_VER_WELDING_SUB_POWER_RING = 0x34, //PLC_VER_WELDING_SUB_SPOT_SHOT_TIME = 0x36, //PLC_VER_WELDING_MAIN_RAMPING_START_POWER = 0x38, //PLC_VER_WELDING_MAIN_RAMPING_START_DIST = 0x3A, //PLC_VER_WELDING_MAIN_RAMPING_END_POWER = 0x3C, //PLC_VER_WELDING_MAIN_RAMPING_END_DIST = 0x3E } //public enum eWordOutput : int //{ // PC_ERROR_CODE = 0X00, // PC_RECIPE_NO, // LBAD_ERROR_CODE, // LDD_ERROR_CODE, // CHILLER_ERROR_CODE, // STEP1_Arc1_LowerLimit = 0x20, // STEP1_Arc1_UpperLimit, // STEP1_Arc1_Result, // STEP1_Arc1_OK_NG, // STEP1_Arc2_LowerLimit, // STEP1_Arc2_UpperLimit, // STEP1_Arc2_Result, // STEP1_Arc2_OK_NG, // STEP1_Arc3_LowerLimit, // STEP1_Arc3_UpperLimit, // STEP1_Arc3_Result, // STEP1_Arc3_OK_NG, // STEP1_Arc4_LowerLimit, // STEP1_Arc4_UpperLimit, // STEP1_Arc4_Result, // STEP1_Arc4_OK_NG, // STEP1_Arc5_LowerLimit, // STEP1_Arc5_UpperLimit, // STEP1_Arc5_Result, // STEP1_Arc5_OK_NG, // STEP1_Arc6_LowerLimit, // STEP1_Arc6_UpperLimit, // STEP1_Arc6_Result, // STEP1_Arc6_OK_NG, // STEP2_Spiral1_HorizontalLowerLimit = 0x38, // STEP2_Spiral1_HorizontalUpperLimit, // STEP2_Spiral1_HorizontalResult, // STEP2_Spiral1_VerticalLowerLimit, // STEP2_Spiral1_VerticalUpperLimit, // STEP2_Spiral1_VerticalResult, // STEP2_Spiral1_WidthOK_NG, // STEP2_Spiral2_HorizontalLowerLimit, // STEP2_Spiral2_HorizontalUpperLimit, // STEP2_Spiral2_HorizontalResult, // STEP2_Spiral2_VerticalLowerLimit, // STEP2_Spiral2_VerticalUpperLimit, // STEP2_Spiral2_VerticalResult, // STEP2_Spiral2_WidthOK_NG, // STEP2_Spiral3_HorizontalLowerLimit, // STEP2_Spiral3_HorizontalUpperLimit, // STEP2_Spiral3_HorizontalResult, // STEP2_Spiral3_VerticalLowerLimit, // STEP2_Spiral3_VerticalUpperLimit, // STEP2_Spiral3_VerticalResult, // STEP2_Spiral3_WidthOK_NG, // STEP3_Arc1_LowerLimit = 0x4D, // STEP3_Arc1_UpperLimit, // STEP3_Arc1_Result, // STEP3_Arc1_OK_NG, // STEP3_Arc2_LowerLimit, // STEP3_Arc2_UpperLimit, // STEP3_Arc2_Result, // STEP3_Arc2_OK_NG, // STEP3_Arc3_LowerLimit, // STEP3_Arc3_UpperLimit, // STEP3_Arc3_Result, // STEP3_Arc3_OK_NG, // STEP3_Arc4_LowerLimit, // STEP3_Arc4_UpperLimit, // STEP3_Arc4_Result, // STEP3_Arc4_OK_NG, // STEP3_Arc5_LowerLimit, // STEP3_Arc5_UpperLimit, // STEP3_Arc5_Result, // STEP3_Arc5_OK_NG, // STEP3_Arc6_LowerLimit, // STEP3_Arc6_UpperLimit, // STEP3_Arc6_Result, // STEP3_Arc6_OK_NG, // STEP4_Spiral1_HorizontalLowerLimit = 0x65, // STEP4_Spiral1_HorizontalUpperLimit, // STEP4_Spiral1_HorizontalResult, // STEP4_Spiral1_VerticalLowerLimit, // STEP4_Spiral1_VerticalUpperLimit, // STEP4_Spiral1_VerticalResult, // STEP4_Spiral1_WidthOK_NG, // STEP4_Spiral2_HorizontalLowerLimit, // STEP4_Spiral2_HorizontalUpperLimit, // STEP4_Spiral2_HorizontalResult, // STEP4_Spiral2_VerticalLowerLimit, // STEP4_Spiral2_VerticalUpperLimit, // STEP4_Spiral2_VerticalResult, // STEP4_Spiral2_WidthOK_NG, // STEP4_Spiral3_HorizontalLowerLimit, // STEP4_Spiral3_HorizontalUpperLimit, // STEP4_Spiral3_HorizontalResult, // STEP4_Spiral3_VerticalLowerLimit, // STEP4_Spiral3_VerticalUpperLimit, // STEP4_Spiral3_VerticalResult, // STEP4_Spiral3_WidthOK_NG, // Line_LaserPower1 = 0x7A, // Line_LaserPower2, // Line_MarkSpeed, // Arc_LaserPower1, // Arc_LaserPower2, // Arc_MarkSpeed, // Spline_LaserPower1, // Spline_LaserPower2, // Spline_MarkSpeed, // LBADOK_NG, // WeldingOK_NG = 0x84, //} public enum eWordOutput : int { PC_ERROR_CODE = 0X00, PC_RECIPE_NO, LBAD_ERROR_CODE, LDD_ERROR_CODE, CHILLER_ERROR_CODE, STEP1_Arc1_LowerLimit = 0x20, STEP1_Arc1_UpperLimit, //STEP1_Arc1_AVG, //STEP1_Arc1_MIN, //STEP1_Arc1_MAX, STEP1_Arc1_Bead1, STEP1_Arc1_Bead2, STEP1_Arc1_Bead3, STEP1_Arc1_Bead4, STEP1_Arc1_OK_NG, STEP1_Arc2_LowerLimit, STEP1_Arc2_UpperLimit, //STEP1_Arc2_AVG, //STEP1_Arc2_MIN, //STEP1_Arc2_MAX, STEP1_Arc2_Bead1, STEP1_Arc2_Bead2, STEP1_Arc2_Bead3, STEP1_Arc2_Bead4, STEP1_Arc2_OK_NG, STEP1_Arc3_LowerLimit, STEP1_Arc3_UpperLimit, //STEP1_Arc3_AVG, //STEP1_Arc3_MIN, //STEP1_Arc3_MAX, STEP1_Arc3_Bead1, STEP1_Arc3_Bead2, STEP1_Arc3_Bead3, STEP1_Arc3_Bead4, STEP1_Arc3_OK_NG, STEP1_Arc4_LowerLimit, STEP1_Arc4_UpperLimit, //STEP1_Arc4_AVG, //STEP1_Arc4_MIN, //STEP1_Arc4_MAX, STEP1_Arc4_Bead1, STEP1_Arc4_Bead2, STEP1_Arc4_Bead3, STEP1_Arc4_Bead4, STEP1_Arc4_OK_NG, STEP1_Arc5_LowerLimit, STEP1_Arc5_UpperLimit, //STEP1_Arc5_AVG, //STEP1_Arc5_MIN, //STEP1_Arc5_MAX, STEP1_Arc5_Bead1, STEP1_Arc5_Bead2, STEP1_Arc5_Bead3, STEP1_Arc5_Bead4, STEP1_Arc5_OK_NG, STEP1_Arc6_LowerLimit, STEP1_Arc6_UpperLimit, //STEP1_Arc6_AVG, //STEP1_Arc6_MIN, //STEP1_Arc6_MAX, STEP1_Arc6_Bead1, STEP1_Arc6_Bead2, STEP1_Arc6_Bead3, STEP1_Arc6_Bead4, STEP1_Arc6_OK_NG, STEP2_Spiral1_HorizontalLowerLimit = 0x4A, STEP2_Spiral1_HorizontalUpperLimit, STEP2_Spiral1_HorizontalResult, STEP2_Spiral1_VerticalLowerLimit, STEP2_Spiral1_VerticalUpperLimit, STEP2_Spiral1_VerticalResult, STEP2_Spiral1_WidthOK_NG, STEP2_Spiral2_HorizontalLowerLimit, STEP2_Spiral2_HorizontalUpperLimit, STEP2_Spiral2_HorizontalResult, STEP2_Spiral2_VerticalLowerLimit, STEP2_Spiral2_VerticalUpperLimit, STEP2_Spiral2_VerticalResult, STEP2_Spiral2_WidthOK_NG, STEP2_Spiral3_HorizontalLowerLimit, STEP2_Spiral3_HorizontalUpperLimit, STEP2_Spiral3_HorizontalResult, STEP2_Spiral3_VerticalLowerLimit, STEP2_Spiral3_VerticalUpperLimit, STEP2_Spiral3_VerticalResult, STEP2_Spiral3_WidthOK_NG, STEP3_Arc1_LowerLimit = 0x5F, STEP3_Arc1_UpperLimit, //STEP3_Arc1_AVG, //STEP3_Arc1_MIN, //STEP3_Arc1_MAX, STEP3_Arc1_Bead1, STEP3_Arc1_Bead2, STEP3_Arc1_Bead3, STEP3_Arc1_Bead4, STEP3_Arc1_OK_NG, STEP3_Arc2_LowerLimit, STEP3_Arc2_UpperLimit, //STEP3_Arc2_AVG, //STEP3_Arc2_MIN, //STEP3_Arc2_MAX, STEP3_Arc2_Bead1, STEP3_Arc2_Bead2, STEP3_Arc2_Bead3, STEP3_Arc2_Bead4, STEP3_Arc2_OK_NG, STEP3_Arc3_LowerLimit, STEP3_Arc3_UpperLimit, //STEP3_Arc3_AVG, //STEP3_Arc3_MIN, //STEP3_Arc3_MAX, STEP3_Arc3_Bead1, STEP3_Arc3_Bead2, STEP3_Arc3_Bead3, STEP3_Arc3_Bead4, STEP3_Arc3_OK_NG, STEP3_Arc4_LowerLimit, STEP3_Arc4_UpperLimit, //STEP3_Arc4_AVG, //STEP3_Arc4_MIN, //STEP3_Arc4_MAX, STEP3_Arc4_Bead1, STEP3_Arc4_Bead2, STEP3_Arc4_Bead3, STEP3_Arc4_Bead4, STEP3_Arc4_OK_NG, STEP3_Arc5_LowerLimit, STEP3_Arc5_UpperLimit, //STEP3_Arc5_AVG, //STEP3_Arc5_MIN, //STEP3_Arc5_MAX, STEP3_Arc5_Bead1, STEP3_Arc5_Bead2, STEP3_Arc5_Bead3, STEP3_Arc5_Bead4, STEP3_Arc5_OK_NG, STEP3_Arc6_LowerLimit, STEP3_Arc6_UpperLimit, //STEP3_Arc6_AVG, //STEP3_Arc6_MIN, //STEP3_Arc6_MAX, STEP3_Arc6_Bead1, STEP3_Arc6_Bead2, STEP3_Arc6_Bead3, STEP3_Arc6_Bead4, STEP3_Arc6_OK_NG, STEP4_Spiral1_HorizontalLowerLimit = 0x89, STEP4_Spiral1_HorizontalUpperLimit, STEP4_Spiral1_HorizontalResult, STEP4_Spiral1_VerticalLowerLimit, STEP4_Spiral1_VerticalUpperLimit, STEP4_Spiral1_VerticalResult, STEP4_Spiral1_WidthOK_NG, STEP4_Spiral2_HorizontalLowerLimit, STEP4_Spiral2_HorizontalUpperLimit, STEP4_Spiral2_HorizontalResult, STEP4_Spiral2_VerticalLowerLimit, STEP4_Spiral2_VerticalUpperLimit, STEP4_Spiral2_VerticalResult, STEP4_Spiral2_WidthOK_NG, STEP4_Spiral3_HorizontalLowerLimit, STEP4_Spiral3_HorizontalUpperLimit, STEP4_Spiral3_HorizontalResult, STEP4_Spiral3_VerticalLowerLimit, STEP4_Spiral3_VerticalUpperLimit, STEP4_Spiral3_VerticalResult, STEP4_Spiral3_WidthOK_NG, Line_LaserPower1 = 0x9E, Line_LaserPower2, Line_MarkSpeed, Arc_LaserPower1, Arc_LaserPower2, Arc_MarkSpeed, Spline_LaserPower1, Spline_LaserPower2, Spline_MarkSpeed, LBAD_Total_Power_Average_H, LBAD_Total_Power_Average_L, LBAD_Total_Power_Max_H, LBAD_Total_Power_Max_L, LBAD_Total_Power_Min_H, LBAD_Total_Power_Min_L, LBADOK_NG, WeldingOK_NG = 0xAE, } } }