docs: PTOP 문서 최신화 및 Aurora 레퍼런스 연결
실제 repo와 어긋난 상위 아키텍처 문서를 현행 구조로 정정. - 모듈명 ILSOS_PrismaticPTOP → ILSOS_PrismaticRD_PTOP 리네임 반영 - 삭제된 형제 모듈(Scanner/Gun/CleanLaser) 기술 정리 - PTOP 폴더구조·EquipDef ID·빌드 출력경로를 실제값으로 갱신 - architecture.md 200줄 이하로 슬림화(하네스 절 요약) - CLAUDE.md에 Aurora 레퍼런스 README @import 연결 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
a12f57e356
commit
eba70a4380
@ -5,6 +5,7 @@
|
||||
1. [프로젝트 문서](#1-프로젝트-문서)
|
||||
2. [협업 규칙](#2-협업-규칙)
|
||||
3. [PTOP 분석 하네스](#3-ptop-분석-하네스)
|
||||
4. [Aurora 프레임워크 레퍼런스](#4-aurora-프레임워크-레퍼런스)
|
||||
|
||||
---
|
||||
|
||||
@ -25,3 +26,11 @@
|
||||
ILSOS_PrismaticRD_PTOP(PtoP) 종합 분석 팀 구성 — 목표, 팀 구성, 호출 방법, 구성 요소, 변경 이력은 아래 문서 참고.
|
||||
|
||||
@import ./docs/harness-ptop.md — PTOP 분석 하네스(팀 구성, 트리거, 구성 요소, 변경 이력)
|
||||
|
||||
---
|
||||
|
||||
## 4. Aurora 프레임워크 레퍼런스
|
||||
|
||||
Aurora 2.0 개발 규칙·API·패턴을 토큰 최소로 찾기 위한 인덱스형 지식베이스. Aurora 관련 작업(디바이스·시퀀스·PLC·ViewModel·빌드) 시 아래 README의 라우팅 표를 먼저 본다.
|
||||
|
||||
@import ./docs/Aurora에이전트레퍼런스모음/README.md — Aurora 레퍼런스 인덱스(라우팅 허브) → 01_concepts / 02_patterns / 03_gotchas …
|
||||
|
||||
@ -62,7 +62,7 @@ file 파일경로.cs
|
||||
## 3. 네이밍 컨벤션
|
||||
|
||||
### 클래스/메서드
|
||||
- **PascalCase**: `SequenceManager`, `ProcessManager`, `SeqAutoRunPrismaticGunStageA`
|
||||
- **PascalCase**: `SequenceManager`, `EquipmentSetup`, `SeqAutoRunPTOP`
|
||||
|
||||
### 필드/변수
|
||||
- **private 필드**: `_camelCase` (언더스코어 접두사)
|
||||
|
||||
@ -7,7 +7,7 @@
|
||||
|
||||
1. [프로젝트 개요](#1-프로젝트-개요)
|
||||
2. [솔루션 구조](#2-솔루션-구조)
|
||||
3. [ILSOS_PrismaticPTOP 핵심 구조](#3-ilsos_prismaticptop-핵심-구조)
|
||||
3. [ILSOS_PrismaticRD_PTOP 핵심 구조](#3-ilsos_prismaticrd_ptop-핵심-구조)
|
||||
4. [AuroraDevices 모듈](#4-auroradevices-모듈)
|
||||
5. [빌드 출력 경로](#5-빌드-출력-경로)
|
||||
6. [PTOP 분석 하네스](#6-ptop-분석-하네스)
|
||||
@ -36,15 +36,12 @@
|
||||
- Simulation | x64
|
||||
- UserDefineUnit | x64
|
||||
|
||||
**주요 머신 모듈:**
|
||||
- **ILSOS_PrismaticPTOP**: 현재 활성 모듈 (주요 개발 대상)
|
||||
- **ILSOS_PrismaticScanner**: 참고 용도의 레거시 소스
|
||||
- ILSOS_PrismaticGun: 미사용
|
||||
- ILSOS_PrismaticCleanLaser: 미사용
|
||||
**머신 모듈:**
|
||||
- **ILSOS_PrismaticRD_PTOP**: 현재 유일한 활성 머신 모듈 (주요 개발 대상)
|
||||
- 과거 Scanner/Gun/CleanLaser 모듈은 제거됨 (솔루션에 csproj 없음)
|
||||
|
||||
**주의사항:**
|
||||
- WeldingComponents와 Aurora 관련 코드 수정 시 반드시 사전 승인 필요
|
||||
- 소스의 `config/` 디렉토리는 분석 시 참고할 것
|
||||
- WeldingComponents·External/Aurora 관련 코드 수정 시 반드시 사전 승인 필요
|
||||
- 모든 파일 수정 시 `docs/CODING_RULES.md` 확인 필수
|
||||
- 한글 포함 파일 작성/수정 시 UTF-8 인코딩 준수
|
||||
|
||||
@ -59,10 +56,7 @@
|
||||
```
|
||||
ILSOS_All.sln
|
||||
├── Machines/
|
||||
│ ├── ILSOS_PrismaticPTOP/ ← 현재 활성 모듈 (3계층 아키텍처)
|
||||
│ ├── ILSOS_PrismaticScanner/ ← 참고 대상 (레거시)
|
||||
│ ├── ILSOS_PrismaticGun/ ← 미사용
|
||||
│ └── ILSOS_PrismaticCleanLaser/ ← 미사용
|
||||
│ └── ILSOS_PrismaticRD_PTOP/ ← 현재 유일한 활성 머신 모듈 (3계층 아키텍처)
|
||||
├── AuroraDevices/ ← 하드웨어 디바이스 드라이버 (22개 프로젝트)
|
||||
├── AuroraComponents/ ← WPF UI 공통 컴포넌트
|
||||
├── AuroraVision/ ← 비전 시스템 (MIL 기반)
|
||||
@ -74,66 +68,54 @@ ILSOS_All.sln
|
||||
|
||||
### 주요 특징
|
||||
|
||||
- **모듈화:** 각 머신 모듈은 독립적인 디바이스 제어 및 시퀀스 구현
|
||||
- **모듈화:** 머신 모듈은 독립적인 디바이스 제어 및 시퀀스 구현
|
||||
- **공유 레이어:** AuroraDevices, AuroraComponents 등으로 코드 재사용
|
||||
- **표준 규칙:** WeldingComponents는 수정 불가 (승인 필수)
|
||||
- **설정 참고:** 각 머신의 `config/` 디렉토리에서 설정 확인 가능
|
||||
- **표준 규칙:** WeldingComponents·External/Aurora는 수정 시 승인 필수
|
||||
|
||||
---
|
||||
|
||||
## 3. ILSOS_PrismaticPTOP 핵심 구조
|
||||
## 3. ILSOS_PrismaticRD_PTOP 핵심 구조
|
||||
|
||||
> 원본: [`ptop-architecture.md`](./ptop-architecture.md)
|
||||
|
||||
### 폴더 구조 및 주요 컴포넌트
|
||||
|
||||
```
|
||||
ILSOS_PrismaticPTOP/
|
||||
├── EquipDef.cs ← ID 상수 정의 (Device/Motor/Sequence/Recipe)
|
||||
├── EquipmentSetup.cs ← 통합 제어 (초기화, 이벤트 구독, 시퀀스 시작)
|
||||
├── Alarm/ ← 알람 코드 및 매니저
|
||||
├── Device/
|
||||
│ ├── ACS/ ← ACS 모션 제어 (X/Y축)
|
||||
│ └── PLC/ ← PLC 통신 로직
|
||||
├── Models/ ← 장비 특화 모델
|
||||
├── Process/ ← ProcessManager, CellInfo, WeldingData
|
||||
├── Recipes/ ← MainRecipe, RMSHandler
|
||||
├── Sequences/
|
||||
│ ├── Monitoring/ ← 알람/상태 모니터링 시퀀스
|
||||
│ ├── SeqAutoRunPrismaticGunStageA/B.cs
|
||||
│ └── SubSequence/
|
||||
│ ├── StageA/ ← Load, Weld, Unload, HeightMeas
|
||||
│ └── StageB/ ← Load, Weld, Unload, HeightMeas
|
||||
├── settings/ ← 세팅 정의 클래스
|
||||
├── Tools/ ← 공통 유틸리티
|
||||
└── Views/ ← WPF View/ViewModel
|
||||
ILSOS_PrismaticRD_PTOP/
|
||||
├── EquipDef.cs ← ID 상수 (DeviceIds / SequenceIds / StreamMessageNames)
|
||||
├── EquipmentSetup.cs ← 디바이스·시퀀스 등록, 이벤트 구독
|
||||
├── Alarm/ ← AlarmCode_PTOP, AlarmManager_PTOP
|
||||
├── Device/{IO,PLC}/ ← PAIX_PTOP(IO), PLCControllerPTOP(PLC)
|
||||
├── Models/ ← EquipmentSpecificModel_PTOP
|
||||
├── Recipes/ ← RMSHandlerForPTOP
|
||||
├── Sequences/ ← SeqAutoRunPTOP(메인) 외 + Manual/, Monitoring/
|
||||
├── Settings/ ← SettingUploadDataListForPTOP
|
||||
└── Views/{Main,Model}/ ← WPF View/ViewModel
|
||||
```
|
||||
|
||||
### 주요 ID 정의 (EquipDef.cs)
|
||||
|
||||
| 카테고리 | 예시 |
|
||||
| 클래스 | 멤버 (발췌) |
|
||||
|---------|------|
|
||||
| **DeviceIds** | ACS, MassFlowMeterStageA/B, HeightSensor, AJIN |
|
||||
| **MotorIds** | ALineX/Y/Z, BLineX/Y/Z |
|
||||
| **RecipeIds** | StageAMainRecipe, StageBMainRecipe |
|
||||
| **SequenceIds** | SeqLoad/Weld/Unload/HeightMeas × StageA/B |
|
||||
| **DeviceIds** : CommonDeviceIds | `MassFlowMeter` (그 외 base 상속) |
|
||||
| **SequenceIds** : CommonSequenceIds | `SeqAutoRunPTOP`, `SeqAutoRunTDC`, `SeqAutoRunComponentWeld`, `SeqAlarmMonitor`, `SeqStatusMonitor`, `SeqTestRun`, `SeqStreamTest`, `SeqEventQTest` |
|
||||
| **StreamMessageNames** | `MessageNameString/Double/Int/JSON/LBAD` |
|
||||
|
||||
> `MotorIds`/`RecipeIds` 클래스는 없음 (base `Common*`·레시피 매니저에서 관리). 상세 → [`ptop-architecture.md`](./ptop-architecture.md)
|
||||
|
||||
### 아키텍처 패턴 (3계층)
|
||||
|
||||
```
|
||||
WPF UI Layer (Views/ + ViewModels)
|
||||
↓
|
||||
Machine Logic Layer (EquipmentSetup + Sequences + Process)
|
||||
Machine Logic Layer (EquipmentSetup + Sequences)
|
||||
↓
|
||||
Device Abstraction (AuroraDevices — 디바이스별 독립 모듈)
|
||||
↓
|
||||
Hardware Layer (ACS.SPiiPlusNET, Melsec, Serial/USB)
|
||||
```
|
||||
|
||||
**기술 스택:**
|
||||
- **이벤트 기반:** System.Reactive (Rx.NET)
|
||||
- **의존성 주입:** AuroraEnv 글로벌 환경
|
||||
- **메시지 큐:** String / Double / Int / JSON / LBAD 타입
|
||||
**기술 스택:** System.Reactive(Rx) · AuroraEnv DI · 메시지 큐(String/Double/Int/JSON/LBAD)
|
||||
|
||||
---
|
||||
|
||||
@ -172,16 +154,13 @@ AuroraDevices는 하드웨어 디바이스 제어를 담당하는 22개 프로
|
||||
|
||||
| 머신 모듈 | 출력 경로 | 상태 |
|
||||
|---------|---------|------|
|
||||
| ILSOS_PrismaticPTOP | `_out_prismatic_ptop/` | 활성 |
|
||||
| ILSOS_PrismaticScanner | `_out_prismatic_scanner/` | 참고 |
|
||||
| ILSOS_PrismaticGun | `_out_prismatic_gun/` | 미사용 |
|
||||
| ILSOS_PrismaticCleanLaser | `_out_prismatic_cleanlaser/` | 미사용 |
|
||||
| ILSOS_PrismaticRD_PTOP | `Machines/_out_prismatic_rd_ptop/` | 활성 |
|
||||
|
||||
### 빌드 구성별 출력
|
||||
|
||||
각 빌드 구성(Debug, Release, Simulation, UserDefineUnit)은 플랫폼(x64)별로 독립적인 출력 디렉토리 생성.
|
||||
|
||||
예: `_out_prismatic_ptop/Debug/x64/`, `_out_prismatic_ptop/Release/x64/`
|
||||
출력은 `구성-플랫폼` 하위 폴더로 분리 (csproj `OutputPath` 기준).
|
||||
- `Machines/_out_prismatic_rd_ptop/x64-Debug/` ← Debug|x64
|
||||
- `Machines/_out_prismatic_rd_ptop/x64-Release/` ← Release|x64 (Simulation·UserDefineUnit도 Release 매핑)
|
||||
|
||||
### 주의사항
|
||||
|
||||
@ -195,40 +174,13 @@ AuroraDevices는 하드웨어 디바이스 제어를 담당하는 22개 프로
|
||||
|
||||
> 원본: [`harness-ptop.md`](./harness-ptop.md)
|
||||
|
||||
### 목표
|
||||
ILSOS_PrismaticRD_PTOP의 아키텍처·구현·빌드를 종합 분석하는 에이전트 하네스.
|
||||
|
||||
ILSOS_PrismaticRD_PTOP(PtoP)의 3계층 아키텍처, 구현 상세, 빌드 최적화를 종합 분석하고 개선안 제시
|
||||
- **팀:** PTOP Lead / PTOP Developer / Build·DevOps Engineer
|
||||
- **트리거:** "PTOP 전체 분석", "PTOP 빌드 최적화" 등 → `/orchestrate-ptop-harness` 스킬
|
||||
- **구성:** `.ubisam_agent/agents/`(3개), `.ubisam_agent/skills/`(4개: analyze-architecture·implementation, optimize-build, orchestrate-harness)
|
||||
|
||||
### 팀 구성
|
||||
|
||||
- **PTOP Lead**: 아키텍처 리더
|
||||
- **PTOP Developer**: 구현 전문가
|
||||
- **Build/DevOps Engineer**: 빌드 최적화 담당
|
||||
|
||||
### 호출 방법
|
||||
|
||||
다음 요청 시 `/orchestrate-ptop-harness` 스킬 사용:
|
||||
- "PTOP 프로젝트 전체 분석"
|
||||
- "PTOP 아키텍처와 구현 분석"
|
||||
- "PTOP 상태 점검"
|
||||
- "PTOP 빌드 최적화"
|
||||
- "PTOP 팀 조율"
|
||||
|
||||
### 구성 요소
|
||||
|
||||
**Agents:**
|
||||
- `.ubisam_agent/agents/ptop-lead.md`
|
||||
- `.ubisam_agent/agents/ptop-developer.md`
|
||||
- `.ubisam_agent/agents/build-devops-engineer.md`
|
||||
|
||||
**Skills:**
|
||||
- `.ubisam_agent/skills/analyze-ptop-architecture/SKILL.md`
|
||||
- `.ubisam_agent/skills/analyze-ptop-implementation/SKILL.md`
|
||||
- `.ubisam_agent/skills/optimize-ptop-build/SKILL.md`
|
||||
- `.ubisam_agent/skills/orchestrate-ptop-harness/SKILL.md`
|
||||
|
||||
**Workspace:**
|
||||
- `_workspace/0X_*.md` (분석 결과 저장)
|
||||
> 세부 트리거·구성 요소·변경 이력은 원본 문서 참고.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@ -4,19 +4,18 @@
|
||||
|
||||
| 머신 모듈 | 출력 경로 | 상태 |
|
||||
|---------|---------|------|
|
||||
| ILSOS_PrismaticPTOP | `_out_prismatic_ptop/` | 활성 |
|
||||
| ILSOS_PrismaticScanner | `_out_prismatic_scanner/` | 참고 |
|
||||
| ILSOS_PrismaticGun | `_out_prismatic_gun/` | 미사용 |
|
||||
| ILSOS_PrismaticCleanLaser | `_out_prismatic_cleanlaser/` | 미사용 |
|
||||
| ILSOS_PrismaticRD_PTOP | `Machines/_out_prismatic_rd_ptop/` | 활성 |
|
||||
|
||||
> 과거 Scanner/Gun/CleanLaser 출력 디렉토리는 해당 모듈 제거로 더 이상 생성되지 않음.
|
||||
|
||||
## 빌드 구성별 출력
|
||||
|
||||
각 빌드 구성(Debug, Release, Simulation, UserDefineUnit)은 플랫폼(x64)별로 독립적인 출력 디렉토리 생성.
|
||||
출력 폴더는 `구성-플랫폼` 형식의 하위 디렉토리로 분리된다 (csproj `OutputPath` 기준).
|
||||
|
||||
예: `_out_prismatic_ptop/Debug/x64/`, `_out_prismatic_ptop/Release/x64/`
|
||||
- `Machines/_out_prismatic_rd_ptop/x64-Debug/` ← Debug|x64
|
||||
- `Machines/_out_prismatic_rd_ptop/x64-Release/` ← Release|x64 (Simulation·UserDefineUnit도 Release로 매핑)
|
||||
|
||||
## 주의사항
|
||||
|
||||
- 빌드 출력 디렉토리는 `.gitignore`에 포함
|
||||
- 빌드 전 이전 출력물이 있으면 자동 정리
|
||||
- 각 머신 모듈은 독립적으로 빌드 가능
|
||||
- **솔루션(`ILSOS_All.sln`) 기준으로 빌드**해야 post-build xcopy의 `$(SolutionDir)`가 정의됨 (단독 csproj 빌드 시 `*Undefined*` 경로로 실패)
|
||||
|
||||
@ -6,25 +6,23 @@
|
||||
|
||||
**플랫폼 및 기술:**
|
||||
- OS: Windows 10 / Windows 11
|
||||
- 프레임워크: .NET Framework 4.8.1
|
||||
- 프레임워크: .NET Framework 4.8.1 (C# 7.3)
|
||||
- IDE: Visual Studio 2022
|
||||
- UI 프레임워크: WPF (Aurora 프레임워크 기반)
|
||||
- 플랫폼: x64 전용
|
||||
- 솔루션 파일: `ILSOS_All.sln`
|
||||
|
||||
**빌드 구성:**
|
||||
- Debug | x64
|
||||
- Release | x64
|
||||
- Simulation | x64
|
||||
- UserDefineUnit | x64
|
||||
- Simulation | x64 (Release 구성으로 매핑)
|
||||
- UserDefineUnit | x64 (Release 구성으로 매핑)
|
||||
|
||||
**주요 머신 모듈:**
|
||||
- **ILSOS_PrismaticPTOP**: 현재 활성 모듈 (주요 개발 대상)
|
||||
- **ILSOS_PrismaticScanner**: 참고 용도의 레거시 소스
|
||||
- ILSOS_PrismaticGun: 미사용
|
||||
- ILSOS_PrismaticCleanLaser: 미사용
|
||||
**머신 모듈:**
|
||||
- **ILSOS_PrismaticRD_PTOP**: 현재 유일한 활성 머신 모듈 (주요 개발 대상). `Machines/ILSOS_PrismaticRD_PTOP/`
|
||||
- 과거 `ILSOS_PrismaticScanner/Gun/CleanLaser` 모듈은 제거됨 (현재 솔루션에 csproj 없음).
|
||||
|
||||
**주의사항:**
|
||||
- WeldingComponents와 Aurora 관련 코드 수정 시 반드시 사전 승인 필요
|
||||
- 소스의 `config/` 디렉토리는 분석 시 참고할 것
|
||||
- WeldingComponents·External/Aurora 관련 코드 수정 시 반드시 사전 승인 필요
|
||||
- 모든 파일 수정 시 `docs/CODING_RULES.md` 확인 필수
|
||||
- 한글 포함 파일 작성/수정 시 UTF-8 인코딩 준수
|
||||
|
||||
@ -1,44 +1,46 @@
|
||||
# ILSOS_PrismaticPTOP 핵심 구조
|
||||
# ILSOS_PrismaticRD_PTOP 핵심 구조
|
||||
|
||||
## 폴더 구조 및 주요 컴포넌트
|
||||
|
||||
```
|
||||
ILSOS_PrismaticPTOP/
|
||||
├── EquipDef.cs ← ID 상수 정의 (Device/Motor/Sequence/Recipe)
|
||||
├── EquipmentSetup.cs ← 통합 제어 (초기화, 이벤트 구독, 시퀀스 시작)
|
||||
├── Alarm/ ← 알람 코드 및 매니저
|
||||
ILSOS_PrismaticRD_PTOP/
|
||||
├── EquipDef.cs ← ID 상수 정의 (DeviceIds / SequenceIds / StreamMessageNames)
|
||||
├── EquipmentSetup.cs ← 통합 제어 (디바이스·시퀀스 등록, 이벤트 구독)
|
||||
├── Alarm/ ← AlarmCode_PTOP, AlarmManager_PTOP
|
||||
├── Device/
|
||||
│ ├── ACS/ ← ACS 모션 제어 (X/Y축)
|
||||
│ └── PLC/ ← PLC 통신 로직
|
||||
├── Models/ ← 장비 특화 모델
|
||||
├── Process/ ← ProcessManager, CellInfo, WeldingData
|
||||
├── Recipes/ ← MainRecipe, RMSHandler
|
||||
│ ├── IO/ ← PAIX_PTOP (디지털 IO)
|
||||
│ └── PLC/ ← PLCControllerPTOP (Config / Address / Logic)
|
||||
├── Models/ ← EquipmentSpecificModel_PTOP
|
||||
├── Recipes/ ← RMSHandlerForPTOP
|
||||
├── Sequences/
|
||||
│ ├── Monitoring/ ← 알람/상태 모니터링 시퀀스
|
||||
│ ├── SeqAutoRunPrismaticGunStageA/B.cs
|
||||
│ └── SubSequence/
|
||||
│ ├── StageA/ ← Load, Weld, Unload, HeightMeas
|
||||
│ └── StageB/ ← Load, Weld, Unload, HeightMeas
|
||||
├── settings/ ← 세팅 정의 클래스
|
||||
├── Tools/ ← 공통 유틸리티
|
||||
└── Views/ ← WPF View/ViewModel
|
||||
│ ├── SeqAutoRunPTOP.cs ← 자동운전 (현행 메인)
|
||||
│ ├── SeqAutoRunComponentWeld.cs / SeqAutoRunPrismatic.cs
|
||||
│ ├── SeqTestRun / SeqStreamTest / SeqEventQTest / SeqWaitWeldOrChangePage
|
||||
│ ├── SequenceManager.cs / SequenceContextEx.cs
|
||||
│ ├── Manual/ ← SeqComponentTeachingRun
|
||||
│ └── Monitoring/ ← SeqAlarmMonitor, SeqStatusMonitor
|
||||
├── Settings/ ← SettingUploadDataListForPTOP
|
||||
└── Views/
|
||||
├── Main/ ← UCMainAutoRun (+ ViewModel)
|
||||
└── Model/ ← UCEquipmentSpecificEditor
|
||||
```
|
||||
|
||||
## 주요 ID 정의 (EquipDef.cs)
|
||||
|
||||
| 카테고리 | 예시 |
|
||||
| 클래스 | 멤버 (발췌) |
|
||||
|---------|------|
|
||||
| **DeviceIds** | ACS, MassFlowMeterStageA/B, HeightSensor, AJIN |
|
||||
| **MotorIds** | ALineX/Y/Z, BLineX/Y/Z |
|
||||
| **RecipeIds** | StageAMainRecipe, StageBMainRecipe |
|
||||
| **SequenceIds** | SeqLoad/Weld/Unload/HeightMeas × StageA/B |
|
||||
| **DeviceIds** : CommonDeviceIds | `MassFlowMeter` (그 외 대부분 base `CommonDeviceIds` 상속) |
|
||||
| **SequenceIds** : CommonSequenceIds | `SeqAutoRunPTOP`, `SeqAutoRunTDC`, `SeqAutoRunComponentWeld`, `SeqAlarmMonitor`, `SeqStatusMonitor`, `SeqTestRun`, `SeqStreamTest`, `SeqEventQTest` |
|
||||
| **StreamMessageNames** | `MessageNameString/Double/Int/JSON/LBAD` |
|
||||
|
||||
## 아키텍처 패턴
|
||||
> 이 머신엔 `MotorIds`/`RecipeIds` 클래스가 없음 — 모터/레시피 ID는 base `Common*` 또는 레시피 매니저에서 관리.
|
||||
|
||||
## 아키텍처 패턴 (3계층)
|
||||
|
||||
```
|
||||
WPF UI Layer (Views/ + ViewModels)
|
||||
↓
|
||||
Machine Logic Layer (EquipmentSetup + Sequences + Process)
|
||||
Machine Logic Layer (EquipmentSetup + Sequences)
|
||||
↓
|
||||
Device Abstraction (AuroraDevices — 디바이스별 독립 모듈)
|
||||
↓
|
||||
@ -49,3 +51,5 @@ Hardware Layer (ACS.SPiiPlusNET, Melsec, Serial/USB)
|
||||
- **이벤트 기반:** System.Reactive (Rx.NET)
|
||||
- **의존성 주입:** AuroraEnv 글로벌 환경
|
||||
- **메시지 큐:** String / Double / Int / JSON / LBAD 타입
|
||||
|
||||
> Aurora 프레임워크 개념·패턴·함정 상세 → `docs/Aurora에이전트레퍼런스모음/`
|
||||
|
||||
@ -5,10 +5,7 @@
|
||||
```
|
||||
ILSOS_All.sln
|
||||
├── Machines/
|
||||
│ ├── ILSOS_PrismaticPTOP/ ← 현재 활성 모듈 (3계층 아키텍처)
|
||||
│ ├── ILSOS_PrismaticScanner/ ← 참고 대상 (레거시)
|
||||
│ ├── ILSOS_PrismaticGun/ ← 미사용
|
||||
│ └── ILSOS_PrismaticCleanLaser/ ← 미사용
|
||||
│ └── ILSOS_PrismaticRD_PTOP/ ← 현재 유일한 활성 머신 모듈 (3계층 아키텍처)
|
||||
├── AuroraDevices/ ← 하드웨어 디바이스 드라이버 (22개 프로젝트)
|
||||
├── AuroraComponents/ ← WPF UI 공통 컴포넌트
|
||||
├── AuroraVision/ ← 비전 시스템 (MIL 기반)
|
||||
@ -18,9 +15,10 @@ ILSOS_All.sln
|
||||
└── External/ ← Aurora 프레임워크 바이너리
|
||||
```
|
||||
|
||||
> 과거 `ILSOS_PrismaticScanner/Gun/CleanLaser` 머신 모듈은 제거됨 (솔루션에 csproj 없음).
|
||||
|
||||
## 주요 특징
|
||||
|
||||
- **모듈화:** 각 머신 모듈은 독립적인 디바이스 제어 및 시퀀스 구현
|
||||
- **모듈화:** 머신 모듈은 독립적인 디바이스 제어 및 시퀀스 구현
|
||||
- **공유 레이어:** AuroraDevices, AuroraComponents 등으로 코드 재사용
|
||||
- **표준 규칙:** WeldingComponents는 수정 불가 (승인 필수)
|
||||
- **설정 참고:** 각 머신의 `config/` 디렉토리에서 설정 확인 가능
|
||||
- **표준 규칙:** WeldingComponents·External/Aurora는 수정 시 승인 필수
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user