4.9 KiB
Raw Blame History

PTOP 소스 → 산출물 필드 매핑

이 파일은 소스 파일과 산출물 필드 간 1:1 매핑 인덱스. 다른 PC에서 스킬 실행 시 이 파일을 보고 어떤 소스를 읽어야 할지 판단한다.


A. PLC-PC 인터페이스 신호정의서

출력: 02.설계/IO_DB설계/PLC_PC_인터페이스_신호정의서.md

시트 소스 파일 읽어야 할 심볼
통신 사양 Device/PLC/PLCContoller.Config.cs ePLCNetType, PLCMMapFileType, 베이스 주소 설정
PC→PLC (Write) Device/PLC/PLCController.Address.cs eBitOutput, eWordOutput enum 전수
PLC→PC (Read) Device/PLC/PLCController.Address.cs eBitInput, eWordInput enum 전수
핸드셰이크 시퀀스 Sequences/SeqAutoRunPTOP.cs CheckPageNo, CheckRecipeNoComp, CheckPageNoComp, WaitWeldingStart, WriteWeldComplete

PLC 주소 규칙:

  • eBitOutput offset → M70000 + offset
  • eBitInput offset → M70500 + offset
  • eWordOutput offset → D70000 + offset
  • eWordInput offset → D70500 + offset
  • 두 번째 블록(0x65~, 양극 P) → M70600~ (현재 미사용)

B. 모션축·IO 맵 정의서

출력: 02.설계/IO_DB설계/모션축_IO맵_정의서.md

시트 소스 파일 읽어야 할 심볼
통신·제어 구성 EquipmentSetup.cs RegisterDevices() 내 모든 Register*Device 호출
모션축 정의 docs/architecture.md §4 AuroraACS(X/Y), AuroraMotionBoard(Z), RTC(Scanner)
I/O 맵 DI Device/IO/PAIX_PTOP.cs ePrismaticDIAddress enum — 채널 번호·신호명
I/O 맵 DO Device/IO/PAIX_PTOP.cs ePrismaticDOAddress enum — 채널 번호·신호명

모션축 주의사항:

  • X/Y 행정·속도·Home 방식 = 소스에 없음 → 전부 (제안) 표기.
  • AuroraACS = EtherCAT SPiiPlus. AuroraMotionBoard = Ajin 보드.

C. 기능명세서 / UI 설계

출력: 02.설계/UIUX_기능설계/기능명세서.md

탭 소스 파일 읽어야 할 심볼
메뉴 구조 EquipmentSetup.cs RegisterViews() 전수 (MenuId, ViewType, AuthLevel)
MainView Views/Main/UCMainAutoRun*.cs 버튼·이벤트·바인딩 목록
RecipeView Views/Recipe/UCRecipe*.cs ActivateRecipe, RecipeChangeHistory, UCModel
ManualView Views/Manual/UCManualScannerOperation*.cs ScannerOperation, ModelFinder
MonitoringView Views/Monitoring/UCPLC*.cs, UCIOInterfaceView.cs PLCBit, PLCWord, IOInterface
Sequence 흐름 Sequences/SeqAutoRunPTOP.cs Builder() 노드 목록 순서대로

8탭 고정 (xlsx ref 호환): OverView / MainView / RecipeView / ManualView / DeviceView / SettingView / VisionView / Sequence 흐름


D. 제어 시퀀스·인터락 정의서

출력: 02.설계/시퀀스_인터록/제어시퀀스_인터락_정의서.md

섹션 소스 파일 읽어야 할 심볼
메인 시퀀스 노드 흐름 SeqAutoRunPTOP.cs Builder() 내 모든 AddNode·AddTransition
단계별 동작 요약 SeqAutoRunPTOP.cs 각 노드 메서드 구현 첫 줄 주석·로그
인터락 정의 Settings/LaserInterlockSetting.cs HeadThetaInterlockEnabled, ThetaTolerance
인터락 정의 (추가) SeqAutoRunPTOP.cs LaserInterlock, PLC_HEAVY_ALARM_STATUS 처리
정지/에러 처리 SeqAutoRunPTOP.cs OnStopped, OnForceError, ResumeMode

Resume(bit15) 흐름: PLC_WELD_READY_REQ(0x0F) 수신 → 팝업 + Auto→Manual 전환 → PC_WELD_READY_ACK(0x0F) ON → 1사이클 후 OFF.


E. TactTime 산정서

출력: 02.설계/시퀀스_인터록/TactTime_산정서.md

단위동작 소스 파일 상수/값
Page 3회 검증 SeqAutoRunPTOP.cs PAGE_VERIFY_DELAY_MS × 3 (≈200ms×3 = 600ms)
준비 응답 SeqAutoRunPTOP.cs WELD_START_DELAY_MS (200ms) + 소신호(5ms)
Gate ON delay SeqAutoRunPTOP.cs laserEmissionGateDelayMs = 15ms
실제 발진 SeqAutoRunPTOP.cs 로그 "TactTime: [Nms]" — 예시 285ms (라인 수 의존)
Jump 복귀 SeqAutoRunPTOP.cs Thread.Sleep(500)
완료비트 SeqAutoRunPTOP.cs 50ms + 5ms
Pre/Post Scout SeqAutoRunPTOP.cs SCOUT_PROCEED_DELAY_MS = 100ms/회 (M70509 ON 시)

F. _task.md 진행률 기준 (현황 기준)

단계 상태 진행률 근거
1.분석/협의 해야 할 일 0% 사양서 미입수
2.설계 업무 진행중 85% xlsx 4종 완료, 모션 파라미터 미확정
3.제작 해야 할 일 0% CheckList 미작성
4.셋업 해야 할 일 0% 현장 셋업 미완료
5.양산 업무 진행중 40% 운영매뉴얼 3종 완료, 나머지 미완료
6.CS 해야 할 일 0% 미착수

이 값은 스킬 실행 시점 기준. 재실행 시 소스·폴더 현황 재확인 후 갱신.