From 83018da4ac4a583c7e159a025fb382246b880e06 Mon Sep 17 00:00:00 2001 From: NohDoyeon241104 Date: Fri, 21 Aug 2026 00:06:29 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=EC=A0=95=EC=A7=80=20=EC=8B=9C=20PC=5FRE?= =?UTF-8?q?CIPE=5FNO/PC=5FPAGE=5FNO=200=20=EC=B4=88=EA=B8=B0=ED=99=94=20?= =?UTF-8?q?=EC=A0=9C=EA=B1=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PLC는 PC 에코 워드가 0이면 레이저 출사 신호를 내지 않는다(2026-08-20 PLC측 확정). bit15 가접 운전은 페이지마다 정지하므로 OnSeqActionStop의 무조건 0 초기화가 페이지마다 0/0 창을 열었고, PC는 다음 PAGE_CHANGE_REQ를 받아야만 재에코한다. 0 초기화는 SeqStatusMonitor가 Auto OFF 시에만 담당하도록 일원화. --- .../Sequences/SeqAutoRunPTOP.cs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Machines/ILSOS_PrismaticRD_PTOP/Sequences/SeqAutoRunPTOP.cs b/Machines/ILSOS_PrismaticRD_PTOP/Sequences/SeqAutoRunPTOP.cs index a0b6e7c..cf946d0 100644 --- a/Machines/ILSOS_PrismaticRD_PTOP/Sequences/SeqAutoRunPTOP.cs +++ b/Machines/ILSOS_PrismaticRD_PTOP/Sequences/SeqAutoRunPTOP.cs @@ -1651,10 +1651,18 @@ namespace ILSOS_PrismaticRD_PTOP.Sequences } #endregion - #region 260811 정지 시 에코 워드 0 초기화 (원복 시 이 region 삭제) - _PLC.WriteWord(eWordOutput.PC_RECIPE_NO, 0); - _PLC.WriteWord(eWordOutput.PC_PAGE_NO, 0); - Log.I($"[OnSeqActionStop] 에코 워드 0 초기화 (PC_RECIPE_NO/PC_PAGE_NO)"); + #region 260820 260811 초기화 제거 (원복: 아래 3줄 주석을 풀면 260811 무조건판으로 돌아간다) + // PLC측 확정(2026-08-20): PLC 는 PC 에코 워드가 0이면 레이저 출사 신호를 내지 않는다. + // 그런데 bit15 가접 운전은 페이지마다 정지하므로, 여기서 0을 쓰면 페이지마다 0/0 창이 열린다. + // PC 는 다음 PLC_PAGE_CHANGE_REQ 를 받아야만 재에코하므로(CheckPageNo) 그 창 동안 PLC 는 + // 유효값을 못 본다 — 2026-08-20 로그에서 15 사이클 전부 이 경로를 탔다. + // 0 초기화는 SeqStatusMonitor.UpdateStatus() 가 Auto OFF 시에만 담당한다(위 260806 주석과 동일 규칙). + // 여기서 중복으로 쓰면 bit15 Resume 이 의존하는 보존값도 함께 깨진다. + // ※ 남은 창: SeqStatusMonitor 는 Auto OFF 하강엣지에 0을 쓰고 끝이라, Auto 복귀 후 첫 REQ 까지 + // 0/0 이 latch 된다(2026-08-20 10:24:47~10:43:17). 그 구간 재에코는 별건으로 검토한다. + //_PLC.WriteWord(eWordOutput.PC_RECIPE_NO, 0); + //_PLC.WriteWord(eWordOutput.PC_PAGE_NO, 0); + //Log.I($"[OnSeqActionStop] 에코 워드 0 초기화 (PC_RECIPE_NO/PC_PAGE_NO)"); #endregion