using Hermes; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using WeldingCommon.Devices; namespace ILSOS_SampleWeldEquipment.Device { partial class PLCControllerSampleWeldEquipment { public override void MappingPLCAddr() { AutoCompleteAddr = (int)eBitOutput.PC_AUTO_COMPLETE; ManualCompleteAddr = (int)eBitOutput.PC_MANUAL_COMPLETE; AutoReqAddr = (int)eBitInput.PLC_AUTO_REQ; ManualReqAddr = (int)eBitInput.PLC_MANUAL_REQ; RecipeReqAddr = (int)eBitInput.PLC_RECIPE_CHANGE_REQ; RecipeNoAddr = (int)eWordInput.PLC_RECIPE_NO; LightAlarmStatusAddr = (int)eBitOutput.PC_LIGHT_ALARM_STATUS; HeavyAlarmStatusAddr = (int)eBitOutput.PC_HEAVY_ALARM_STATUS; PLCLiveStatusAddr = (int)eBitInput.PLC_LIVE_STATUS; PLCEMOStatusAddr = (int)eBitInput.PLC_EMO_STATUS; } public double ReadDWordByDivision(eWordInput input) { var result = ReadDWord((int)input); if (result.err != E1.OK) { // 로그 에러 넣기 //Log.E("Error While Reading Double Word Division {0}", result.err.ToString()); } int divisionIndex = ConvertTo2WordDivisionIndex(input); return (double)(result.data / divisionIndex); } public int ConvertTo2WordDivisionIndex(eWordInput input) { var id = input.ToString(); if (id.Contains("RAMPING_START_POWER") || id.Contains("RAMPING_END_POWER") || id.Contains("NUM") || id.Contains("TIME")) return 1; else if (id.Contains("SPEED") || id.Contains("POWER_CORE") || id.Contains("POWER_RING")) return 10; //else if (id.Contains("POWER_CORE") || id.Contains("POWER_RING")) // return 100; else// if (id.Contains("DIST")) return 1000; //if (id == "PLC_HOR_WELDING_RECIPE_NUM1" || // id == "PLC_VER_WELDING_MAIN_POWER_CORE1" || // id == "PLC_VER_WELDING_MAIN_POWER_RING1" || // id == "PLC_VER_WELDING_MAIN_RAMPING_START_POWER1" || // id == "PLC_VER_WELDING_MAIN_RAMPING_END_POWER1" || // id == "PLC_VER_WELDING_SUB_POWER_CORE1" || // id == "PLC_VER_WELDING_SUB_POWER_RING1" || // id == "PLC_VER_WELDING_RECIPE_NUM1" || // id == "PLC_HOR_WELDING_MAIN_POWER_CORE1" || // id == "PLC_HOR_WELDING_MAIN_POWER_RING1" || // id == "PC_HOR_WELDING_RECIPE_NUM1" || // id == "PC_HOR_WELDING_MAIN_POWER_CORE1" || // id == "PC_HOR_WELDING_MAIN_POWER_RING1" || // id == "PC_VER_WELDING_RECIPE_NUM1" || // id == "PC_VER_WELDING_MAIN_POWER_CORE1" || // id == "PC_VER_WELDING_MAIN_POWER_RING1" || // id == "PC_VER_WELDING_SUB_POWER_CORE1" || // id == "PC_VER_WELDING_SUB_POWER_RING1" || // id == "PC_VER_WELDING_MAIN_RAMPING_START_POWER1"|| // id == "PC_VER_WELDING_MAIN_RAMPING_END_POWER1" // ) // return true; //else // return false; } public int ConvertTo2WordDivisionIndex(eWordOutput input) { var id = input.ToString(); if (id.Contains("RAMPING_START_POWER") || id.Contains("RAMPING_END_POWER") || id.Contains("NUM") || id.Contains("TIME")) return 1; else if (id.Contains("SPEED") || id.Contains("POWER_CORE") || id.Contains("POWER_RING")) return 10; //else if (id.Contains("POWER_CORE") || id.Contains("POWER_RING")) // return 100; else// if (id.Contains("DIST")) return 1000; //if (id == "PLC_HOR_WELDING_RECIPE_NUM1" || // id == "PLC_VER_WELDING_MAIN_POWER_CORE1" || // id == "PLC_VER_WELDING_MAIN_POWER_RING1" || // id == "PLC_VER_WELDING_MAIN_RAMPING_START_POWER1" || // id == "PLC_VER_WELDING_MAIN_RAMPING_END_POWER1" || // id == "PLC_VER_WELDING_SUB_POWER_CORE1" || // id == "PLC_VER_WELDING_SUB_POWER_RING1" || // id == "PLC_VER_WELDING_RECIPE_NUM1" || // id == "PLC_HOR_WELDING_MAIN_POWER_CORE1" || // id == "PLC_HOR_WELDING_MAIN_POWER_RING1" || // id == "PC_HOR_WELDING_RECIPE_NUM1" || // id == "PC_HOR_WELDING_MAIN_POWER_CORE1" || // id == "PC_HOR_WELDING_MAIN_POWER_RING1" || // id == "PC_VER_WELDING_RECIPE_NUM1" || // id == "PC_VER_WELDING_MAIN_POWER_CORE1" || // id == "PC_VER_WELDING_MAIN_POWER_RING1" || // id == "PC_VER_WELDING_SUB_POWER_CORE1" || // id == "PC_VER_WELDING_SUB_POWER_RING1" || // id == "PC_VER_WELDING_MAIN_RAMPING_START_POWER1"|| // id == "PC_VER_WELDING_MAIN_RAMPING_END_POWER1" // ) // return true; //else // return false; } } }