feat: 260415 장비 활성화 추가 및 알람매니저에 AutoRunACS 추가
-> 사용안하는 Device의 AxisY1,Y2 주석처리 -> 모터 동작에 영향 x , 스캐너 갈보모터 영향 X 확인
This commit is contained in:
parent
b2589be67d
commit
69679864ef
@ -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);
|
||||
|
||||
BIN
Doc/ToNDH/로그_한글_깨짐_문제해결_260415.docx
Normal file
BIN
Doc/ToNDH/로그_한글_깨짐_문제해결_260415.docx
Normal file
Binary file not shown.
0
Doc/ToNDH/번들프로그램세팅법_260414.pptx
Normal file
0
Doc/ToNDH/번들프로그램세팅법_260414.pptx
Normal file
@ -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 추가
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -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
|
||||
|
||||
@ -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
|
||||
}
|
||||
|
||||
|
||||
@ -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();
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -158,6 +158,9 @@ namespace WeldingCommon.Alarm
|
||||
StopSequence(CommonSequenceIds.SeqScoutNormal);
|
||||
StopSequence(CommonSequenceIds.SeqUploadWeldingList);
|
||||
StopSequence(CommonSequenceIds.SeqTeachingRun);
|
||||
|
||||
//26.04.15 추가
|
||||
StopSequence(CommonSequenceIds.SeqAutoRunACS);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -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()
|
||||
|
||||
@ -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";
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -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)
|
||||
|
||||
@ -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;
|
||||
|
||||
@ -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);
|
||||
|
||||
@ -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(
|
||||
|
||||
@ -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);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user