diff --git a/AuroraDevices/AuroraIO/IODevice.cs b/AuroraDevices/AuroraIO/IODevice.cs index e62da44..bf820ee 100644 --- a/AuroraDevices/AuroraIO/IODevice.cs +++ b/AuroraDevices/AuroraIO/IODevice.cs @@ -281,9 +281,9 @@ namespace AuroraIO Log.I(string.Format($"파일({fileName})이 존재하지 않습니다. Device Config의 File 경로를 확인하세요.")); return 0; - //StreamWriter writer = new StreamWriter(fileName, false, System.Text.Encoding.Unicode); - //writer.WriteLine("Index,Address,ID,IoType,ActiveLevel,BoardNo,Description,HighNecCond,LowNecCond,HighSensor,LowSensor,WaitInterlockTimeOut,WaitSensorTimeOut,HighSufCond,LowSufCond"); - //writer.Close(); + StreamWriter writer = new StreamWriter(fileName, false, System.Text.Encoding.Unicode); + writer.WriteLine("Index,Address,ID,IoType,ActiveLevel,BoardNo,Description,HighNecCond,LowNecCond,HighSensor,LowSensor,WaitInterlockTimeOut,WaitSensorTimeOut,HighSufCond,LowSufCond"); + writer.Close(); } StreamReader sr = new StreamReader(fileName, System.Text.Encoding.Default); diff --git a/Doc/ToNDH/로그_한글_깨짐_문제해결_260415.docx b/Doc/ToNDH/로그_한글_깨짐_문제해결_260415.docx new file mode 100644 index 0000000..4b76b4a Binary files /dev/null and b/Doc/ToNDH/로그_한글_깨짐_문제해결_260415.docx differ diff --git a/Doc/ToNDH/번들프로그램세팅법_260414.pptx b/Doc/ToNDH/번들프로그램세팅법_260414.pptx new file mode 100644 index 0000000..e69de29 diff --git a/Machines/ILSOS_PrismaticScanner/Alarm/AlarmManager_PrismaticScanner.cs b/Machines/ILSOS_PrismaticScanner/Alarm/AlarmManager_PrismaticScanner.cs index 8c80a72..0bf9890 100644 --- a/Machines/ILSOS_PrismaticScanner/Alarm/AlarmManager_PrismaticScanner.cs +++ b/Machines/ILSOS_PrismaticScanner/Alarm/AlarmManager_PrismaticScanner.cs @@ -24,6 +24,7 @@ namespace ILSOS_PrismaticScanner.Alarm // High Alarm 은 Sequence 정지 if (alarm.Level == AlarmLevel.H) { StopSequence(SequenceIds.SeqAutoRun); + StopSequence(SequenceIds.SeqAutoRunACS); // 26.04.15 추가 } } } diff --git a/Machines/ILSOS_PrismaticScanner/EquipDef.cs b/Machines/ILSOS_PrismaticScanner/EquipDef.cs index f7b0ef6..9d802be 100644 --- a/Machines/ILSOS_PrismaticScanner/EquipDef.cs +++ b/Machines/ILSOS_PrismaticScanner/EquipDef.cs @@ -17,8 +17,8 @@ namespace ILSOS_PrismaticScanner internal class MotorIds { public const string AxisX2 = "AxisX2"; - public const string AxisY1 = "AxisY1"; - public const string AxisY2 = "AxisY2"; + //public const string AxisY1 = "AxisY1"; + //public const string AxisY2 = "AxisY2"; public const string AxisZ = "AxisZ"; // TODO: 이정인 선임 ACS 변수 맵 수신 후 실제 번호 검증 @@ -41,9 +41,6 @@ namespace ILSOS_PrismaticScanner public const string SeqAlarmMonitor = "SeqAlarmMonitor"; public const string SeqStatusMonitor = "SeqStatusMonitor"; - // 26.04.09 NDY - ACS MOTF AutoRun - > SeqAutoRun은 CommonSequenceIds에 존재함. - public const string SeqAutoRunACS = "SeqAutoRunACS"; - } public class StreamMessageNames diff --git a/Machines/ILSOS_PrismaticScanner/EquipmentSetup.cs b/Machines/ILSOS_PrismaticScanner/EquipmentSetup.cs index 1b86372..56f70cc 100644 --- a/Machines/ILSOS_PrismaticScanner/EquipmentSetup.cs +++ b/Machines/ILSOS_PrismaticScanner/EquipmentSetup.cs @@ -153,7 +153,7 @@ namespace ILSOS_PrismaticScanner var ACS = new ScannerACS(isSimul); registry.Register(DeviceIds.ACS, () => ACS, new ACSDeviceConfig()); - // TODO: 축 번호는 이정인 선임 변수 맵 수신 후 검증 + // TODO: 스테이지 X는 2 스테이지 Z는 4 확인완료 Y 사용 안함 var motorX2 = new ACSMotor(MotorIds.AxisX2, ACS, 2, (int)MotorIds.eMotorIdx.AxisX2); registry.Register(MotorIds.AxisX2, () => motorX2, new ACSMotorConfig(MotorIds.AxisX2), @@ -228,7 +228,7 @@ namespace ILSOS_PrismaticScanner // ACS MOTF 전용 시퀀스를 별도 Builder로 등록 var seqAutoRunPrismaticScannerACS = new SeqAutoRunPrismaticScannerACS(); _SeqAutoRunPrismaticScannerACS_Builder = seqAutoRunPrismaticScannerACS.Builder(); - register(SequenceIds.SeqAutoRunACS, _SeqAutoRunPrismaticScannerACS_Builder); + register(CommonSequenceIds.SeqAutoRunACS, _SeqAutoRunPrismaticScannerACS_Builder); #endregion } diff --git a/Machines/ILSOS_PrismaticScanner/Sequences/SequenceManager.cs b/Machines/ILSOS_PrismaticScanner/Sequences/SequenceManager.cs index 704db3b..96a8f4d 100644 --- a/Machines/ILSOS_PrismaticScanner/Sequences/SequenceManager.cs +++ b/Machines/ILSOS_PrismaticScanner/Sequences/SequenceManager.cs @@ -95,6 +95,7 @@ namespace ILSOS_PrismaticScanner.Sequences //register(CommonSequenceIds.DeviceMonitor, DeviceMonitoring.Builder()); base.Register(aurora, register); + //SeqMarkGrid 시퀸스 등록 if (_SeqMarkGrid == null) { _SeqMarkGrid = new SeqMarkGrid(); @@ -169,7 +170,7 @@ namespace ILSOS_PrismaticScanner.Sequences #region 26.04.09 NDY - ACS MOTF AutoRun Sequence 등록 // 기존 SeqAutoRun(SeqAutoRunPrismaticScanner)은 건드리지 않고 - // ACS MOTF 전용 시퀀스를 별도 ID(SeqAutoRunACS)로 등록 + // ACS MOTF 전용 시퀀스를 별도 ID(SeqAutoRunACS)로 등록 - 이미 존재한다고 뜸 if (_SeqAutoRunPrismaticScannerACS == null) { _SeqAutoRunPrismaticScannerACS = new SeqAutoRunPrismaticScannerACS(); diff --git a/WeldingComponents/LASA/GUI/Common/ExcelManagementUnit.cs b/WeldingComponents/LASA/GUI/Common/ExcelManagementUnit.cs index 69d1e11..f5df63f 100644 --- a/WeldingComponents/LASA/GUI/Common/ExcelManagementUnit.cs +++ b/WeldingComponents/LASA/GUI/Common/ExcelManagementUnit.cs @@ -569,7 +569,8 @@ namespace CoreUnit.Common // 다른 프로세스도 파일 읽고 쓸 수 있도록. FileStream FileStream = new FileStream(path, FileMode.Append, FileAccess.Write, FileShare.ReadWrite); - StreamWriter sw = new StreamWriter(FileStream, System.Text.Encoding.Unicode); + StreamWriter sw = new StreamWriter(FileStream, System.Text.Encoding.Unicode); // 26.04.15 기존 코드 주석처리함 + //StreamWriter sw = new StreamWriter(FileStream, System.Text.Encoding.UTF8); // 26.04.15 변경 코드 UTF8로 변경 log 깨짐 현상 if (isFile) { sw.WriteLine(strItem); diff --git a/WeldingComponents/WeldingCommon/Alarm/AlarmManager.cs b/WeldingComponents/WeldingCommon/Alarm/AlarmManager.cs index 86bf626..5d7cc41 100644 --- a/WeldingComponents/WeldingCommon/Alarm/AlarmManager.cs +++ b/WeldingComponents/WeldingCommon/Alarm/AlarmManager.cs @@ -158,6 +158,9 @@ namespace WeldingCommon.Alarm StopSequence(CommonSequenceIds.SeqScoutNormal); StopSequence(CommonSequenceIds.SeqUploadWeldingList); StopSequence(CommonSequenceIds.SeqTeachingRun); + + //26.04.15 추가 + StopSequence(CommonSequenceIds.SeqAutoRunACS); } } diff --git a/WeldingComponents/WeldingCommon/CommonEquipmentSetup.cs b/WeldingComponents/WeldingCommon/CommonEquipmentSetup.cs index 41f8072..d740144 100644 --- a/WeldingComponents/WeldingCommon/CommonEquipmentSetup.cs +++ b/WeldingComponents/WeldingCommon/CommonEquipmentSetup.cs @@ -46,11 +46,16 @@ namespace WeldingCommon builder .AddLanguage("en-US", "ko-KR") .AddDeviceActiveStatus(CommonDeviceIds.Scanner) - .AddDeviceActiveStatus(CommonDeviceIds.Laser) - .AddDeviceActiveStatus(CommonDeviceIds.IODevice) - .AddDeviceActiveStatus(CommonDeviceIds.PLCDevice) + //.AddDeviceActiveStatus(CommonDeviceIds.Laser) + //.AddDeviceActiveStatus(CommonDeviceIds.IODevice) + //.AddDeviceActiveStatus(CommonDeviceIds.PLCDevice) .AddDeviceActiveStatus(CommonDeviceIds.Light) - .AddDeviceActiveStatus(CommonDeviceIds.SmcChiller); + .AddDeviceActiveStatus(CommonDeviceIds.ACS) + .AddDeviceActiveStatus(CommonDeviceIds.AxisX2) + .AddDeviceActiveStatus(CommonDeviceIds.AxisZ); + + //.AddDeviceActiveStatus(CommonDeviceIds.Light) + //.AddDeviceActiveStatus(CommonDeviceIds.SmcChiller); } public bool CanShutDown() diff --git a/WeldingComponents/WeldingCommon/EquipDefCommon.cs b/WeldingComponents/WeldingCommon/EquipDefCommon.cs index d432918..d88fce4 100644 --- a/WeldingComponents/WeldingCommon/EquipDefCommon.cs +++ b/WeldingComponents/WeldingCommon/EquipDefCommon.cs @@ -219,6 +219,8 @@ namespace WeldingCommon public const string MotorInit = "MotorInit"; public const string OneShot = "OneShot"; #endregion + // 26.04.09 NDY - ACS MOTF AutoRun - > SeqAutoRun은 CommonSequenceIds에 존재함. + public const string SeqAutoRunACS = "SeqAutoRunACS"; } public class EquipEvent @@ -266,10 +268,10 @@ namespace WeldingCommon // 26 .04.13 public class CommonMotorIds { - public const string AxisX1 = "AxisX1"; + //public const string AxisX1 = "AxisX1"; public const string AxisX2 = "AxisX2"; - public const string AxisY1 = "AxisY1"; - public const string AxisY2 = "AxisY2"; + //public const string AxisY1 = "AxisY1"; + //public const string AxisY2 = "AxisY2"; // Ajin Motor public const string AxisZ = "AxisZ"; diff --git a/WeldingComponents/WeldingCommon/Sequences/Gun/Monitoring/SeqAlarmMonitor.cs b/WeldingComponents/WeldingCommon/Sequences/Gun/Monitoring/SeqAlarmMonitor.cs index 93ca139..b404229 100644 --- a/WeldingComponents/WeldingCommon/Sequences/Gun/Monitoring/SeqAlarmMonitor.cs +++ b/WeldingComponents/WeldingCommon/Sequences/Gun/Monitoring/SeqAlarmMonitor.cs @@ -51,7 +51,7 @@ namespace WeldingCommon.Sequences.Monitoring private static Laser _laser; private static LaserTruFiber _laserCore; private static ScannerACS _acs; // 26.04.13 - private static ACSMotor _axisX, _axisY1, _axisY2, _axisZ; + private static ACSMotor _axisX, _axisZ; //, _axisY1, _axisY2, public const int NODE_SLEEP = 100; // msec @@ -80,6 +80,7 @@ namespace WeldingCommon.Sequences.Monitoring } + //StartNode 알람 private static SequenceActionResult StartNode(SequenceContext context, string id, SequenceActionResult param) { _SequenceSetting = context.Settings[CommonSettingIds.Sequence] as SequenceSetting; @@ -95,11 +96,11 @@ namespace WeldingCommon.Sequences.Monitoring if (_axisX is null) _axisX = context.Devices[CommonMotorIds.AxisX2] as ACSMotor; - if (_axisY1 is null) - _axisY1 = context.Devices[CommonMotorIds.AxisY1] as ACSMotor; + //if (_axisY1 is null) + // _axisY1 = context.Devices[CommonMotorIds.AxisY1] as ACSMotor; - if (_axisY2 is null) - _axisY2 = context.Devices[CommonMotorIds.AxisY2] as ACSMotor; + //if (_axisY2 is null) + // _axisY2 = context.Devices[CommonMotorIds.AxisY2] as ACSMotor; if (_axisZ is null) _axisZ = context.Devices[CommonMotorIds.AxisZ] as ACSMotor; diff --git a/WeldingComponents/WeldingCommon/Sequences/Gun/SeqSplitLine.cs b/WeldingComponents/WeldingCommon/Sequences/Gun/SeqSplitLine.cs index 1c2fc6f..50b9e21 100644 --- a/WeldingComponents/WeldingCommon/Sequences/Gun/SeqSplitLine.cs +++ b/WeldingComponents/WeldingCommon/Sequences/Gun/SeqSplitLine.cs @@ -137,15 +137,15 @@ namespace WeldingCommon.Sequences _laserCal = context.Settings[CommonSettingIds.LaserPowerCalParam] as LaserPowerCalParam; _AxisX = context.Devices[CommonMotorIds.AxisX2] as ACSMotor; - _AxisZ = context.Devices[CommonMotorIds.AxisZ] as ACSMotor; - if (_data[LineInLinesIndex].YAxisType == (int)eYAxisType.Y1) { - _AxisY = context.Devices[CommonMotorIds.AxisY1] as ACSMotor; - _acsMotion.SetWeldingAxes((int)CommonMotorIds.eMotorIdx.AxisX2, (int)CommonMotorIds.eMotorIdx.AxisY1); - } - else { - _AxisY = context.Devices[CommonMotorIds.AxisY2] as ACSMotor; - _acsMotion.SetWeldingAxes((int)CommonMotorIds.eMotorIdx.AxisX2, (int)CommonMotorIds.eMotorIdx.AxisY2); - } + //_AxisZ = context.Devices[CommonMotorIds.AxisZ] as ACSMotor; + //if (_data[LineInLinesIndex].YAxisType == (int)eYAxisType.Y1) { + // _AxisY = context.Devices[CommonMotorIds.AxisY1] as ACSMotor; + // _acsMotion.SetWeldingAxes((int)CommonMotorIds.eMotorIdx.AxisX2, (int)CommonMotorIds.eMotorIdx.AxisY1); + //} + //else { + // _AxisY = context.Devices[CommonMotorIds.AxisY2] as ACSMotor; + // _acsMotion.SetWeldingAxes((int)CommonMotorIds.eMotorIdx.AxisX2, (int)CommonMotorIds.eMotorIdx.AxisY2); + //} if (Status.EquipmentStatus == eEqpStatus.Manual) diff --git a/WeldingComponents/WeldingCommon/Sequences/Gun/SubSequence/StageA/SeqWeldingCellStageA.cs b/WeldingComponents/WeldingCommon/Sequences/Gun/SubSequence/StageA/SeqWeldingCellStageA.cs index 1719c86..a797403 100644 --- a/WeldingComponents/WeldingCommon/Sequences/Gun/SubSequence/StageA/SeqWeldingCellStageA.cs +++ b/WeldingComponents/WeldingCommon/Sequences/Gun/SubSequence/StageA/SeqWeldingCellStageA.cs @@ -124,8 +124,8 @@ namespace WeldingCommon.Sequences.SubSequence.StageA _AxisX = context.Devices[CommonMotorIds.AxisX2] as ACSMotor; _AxisZ = context.Devices[CommonMotorIds.AxisZ] as ACSMotor; - _MotorY1 = context.Devices[CommonMotorIds.AxisY1] as ACSMotor; - _MotorY2 = context.Devices[CommonMotorIds.AxisY2] as ACSMotor; + //_MotorY1 = context.Devices[CommonMotorIds.AxisY1] as ACSMotor; + //_MotorY2 = context.Devices[CommonMotorIds.AxisY2] as ACSMotor; if (_mainRecipe.YAxisUseType == MainRecipe.YAxisType.Y1) { _AxisY = _MotorY1; diff --git a/WeldingComponents/WeldingCommon/Utils/ExcelManagementUnit.cs b/WeldingComponents/WeldingCommon/Utils/ExcelManagementUnit.cs index d8693a2..ce30cbd 100644 --- a/WeldingComponents/WeldingCommon/Utils/ExcelManagementUnit.cs +++ b/WeldingComponents/WeldingCommon/Utils/ExcelManagementUnit.cs @@ -576,7 +576,8 @@ namespace WeldingCommon.Utils // 다른 프로세스도 파일 읽고 쓸 수 있도록. FileStream FileStream = new FileStream(path, FileMode.Append, FileAccess.Write, FileShare.ReadWrite); - StreamWriter sw = new StreamWriter(FileStream, System.Text.Encoding.Unicode); + StreamWriter sw = new StreamWriter(FileStream, System.Text.Encoding.Unicode); // 26.04.15 기존 코드 주석처리함 + //StreamWriter sw = new StreamWriter(FileStream, System.Text.Encoding.UTF8); // 26.04.15 변경 코드 UTF8로 변경 log 깨짐 현상 if (isFile) { sw.WriteLine(strItem); diff --git a/WeldingComponents/WeldingCommon/Views/Manual/ACS/Stage/UCStageMotorMovingViewModel.cs b/WeldingComponents/WeldingCommon/Views/Manual/ACS/Stage/UCStageMotorMovingViewModel.cs index e11e15c..9dcc847 100644 --- a/WeldingComponents/WeldingCommon/Views/Manual/ACS/Stage/UCStageMotorMovingViewModel.cs +++ b/WeldingComponents/WeldingCommon/Views/Manual/ACS/Stage/UCStageMotorMovingViewModel.cs @@ -112,12 +112,12 @@ namespace WeldingCommon.Views.ACS ACS = _env.DeviceManager[CommonDeviceIds.ACS] as ScannerACS; MotorX = _env.DeviceManager[CommonMotorIds.AxisX2] as ACSMotor; - MotorY1 = _env.DeviceManager[CommonMotorIds.AxisY1] as ACSMotor; - MotorY2 = _env.DeviceManager[CommonMotorIds.AxisY2] as ACSMotor; + //MotorY1 = _env.DeviceManager[CommonMotorIds.AxisY1] as ACSMotor; + //MotorY2 = _env.DeviceManager[CommonMotorIds.AxisY2] as ACSMotor; MotorZ = _env.DeviceManager[CommonMotorIds.AxisZ] as ACSMotor; XAxis = MotorX; - YAxis = MotorY1; + //YAxis = MotorY1; ZAxis = MotorZ; CurrentPosUpdateTimer = CreateTimer( diff --git a/WeldingComponents/WeldingCommon/Views/Recipes/Gun/UCMainRecipeViewModel.cs b/WeldingComponents/WeldingCommon/Views/Recipes/Gun/UCMainRecipeViewModel.cs index 93237e8..111ba47 100644 --- a/WeldingComponents/WeldingCommon/Views/Recipes/Gun/UCMainRecipeViewModel.cs +++ b/WeldingComponents/WeldingCommon/Views/Recipes/Gun/UCMainRecipeViewModel.cs @@ -80,7 +80,7 @@ namespace WeldingCommon.Views private IScannerACS _motion; // 변경 private ScannerACS _acs; // 변경 - private ACSMotor _AxisX; + private ACSMotor _AxisX; // AxisX,Y는 갈보모터 기준이고 private ACSMotor _AxisY; private ACSMotor _MotorY1, _MotorY2; public MainRecipe Recipe { get => _Recipe; private set => SetProperty(ref _Recipe, value); } @@ -118,8 +118,8 @@ namespace WeldingCommon.Views Recipe = recipeItem as MainRecipe; - _MotorY1 = _devices[CommonMotorIds.AxisY1] as ACSMotor; //변경 - _MotorY2 = _devices[CommonMotorIds.AxisY2] as ACSMotor; //변경 + //_MotorY1 = _devices[CommonMotorIds.AxisY1] as ACSMotor; //변경 + //_MotorY2 = _devices[CommonMotorIds.AxisY2] as ACSMotor; //변경 _AxisX = _env.DeviceManager[CommonMotorIds.AxisX2] as ACSMotor; // 변경 //if (Recipe.YAxisUseType == MainRecipe.YAxisType.Y1) { @@ -313,8 +313,8 @@ namespace WeldingCommon.Views _MotorY2.Move(); Log.V($"Move Y2 Position : {teachingSetting.SettingPositions[(int)eTeachingPosition.StageWeldingStartPos].AxisY2}"); - _AxisY = _env.DeviceManager[CommonMotorIds.AxisY1] as ACSMotor; - _acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY1); + //_AxisY = _env.DeviceManager[CommonMotorIds.AxisY1] as ACSMotor; + //_acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY1); } else { @@ -323,8 +323,8 @@ namespace WeldingCommon.Views _MotorY1.Move(); Log.V($"Move Y1 Position : {teachingSetting.SettingPositions[(int)eTeachingPosition.StageWeldingStartPos].AxisY1}"); - _AxisY = _env.DeviceManager[CommonMotorIds.AxisY2] as ACSMotor; - _acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY2); + //_AxisY = _env.DeviceManager[CommonMotorIds.AxisY2] as ACSMotor; + //_acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY2); } } } @@ -341,8 +341,8 @@ namespace WeldingCommon.Views _MotorY2.Move(); Log.V($"Move Y2 Position : {teachingSetting.SettingPositions[(int)eTeachingPosition.StageWeldingStartPos].AxisY2}"); - _AxisY = _env.DeviceManager[CommonMotorIds.AxisY1] as ACSMotor; - _acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY1); + //_AxisY = _env.DeviceManager[CommonMotorIds.AxisY1] as ACSMotor; + //_acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY1); } else { @@ -351,8 +351,8 @@ namespace WeldingCommon.Views _MotorY1.Move(); Log.V($"Move Y1 Position : {teachingSetting.SettingPositions[(int)eTeachingPosition.StageWeldingStartPos].AxisY1}"); - _AxisY = _env.DeviceManager[CommonMotorIds.AxisY2] as ACSMotor; - _acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY2); + //_AxisY = _env.DeviceManager[CommonMotorIds.AxisY2] as ACSMotor; + //_acs.WriteVariableInt("iPCget_LCI_ASMASK_Y", (int)CommonMotorIds.eMotorIdx.AxisY2); } }