Initial commit: HC900 Crawler

Honeywell HC900을 Modbus TCP로 직접 폴링 → gRPC → C# 크롤러 → PostgreSQL.
기존 Experion OPC UA 데이터 경로를 HC900 직접 통신으로 대체.

- industrial-comm/cpp: C++ Modbus 게이트웨이 (gRPC 서버)
- src: C# .NET 8 ASP.NET Core 크롤러 + 웹 UI (3-Layer)
- mcp-server: Python FastMCP (RAG/NL2SQL/P&ID)
- 다중 컨트롤러(N-Controller) 지원

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
windpacer
2026-06-03 20:28:14 +09:00
commit 16fc7a2598
325 changed files with 126583 additions and 0 deletions

View File

@@ -0,0 +1,101 @@
# PGMEA 회수 플랜트 운전 일반상식
> 단일 컬럼, Packing Type, 진공 가열 방식
---
## 1. PGMEA 물성 및 진공 증류 필요성
| 항목 | 값 |
|------|-----|
| 화학식 | Propylene Glycol Methyl Ether Acetate |
| 상압 끓는점 | 약 146°C |
| 인화점 | 약 34°C (Class IB 가연성) |
| 분해 온도 | 180°C 이상에서 열분해 시작 |
**진공 증류 필요성:** 상압 끓는점(146°C)이 분해 온도에 가까워 열분해 위험이 있습니다. 진공(약 50~100 Torr)으로 압력을 낮추면 끓는점을 **70~90°C 대**로 낮출 수 있어 열분해를 방지합니다.
---
## 2. 주요 구성 요소
- **증류탑 (Distillation Column)**: **Packing Type** (패킹 충전식), 상단에서 정제된 PGMEA 증기 추출
- **리보일러 (Reboiler)**: 간접 가열형 (steam 또는 열유), 열분해 방지를 위해 과열 방지
- **콘덴서 (Condenser)**: 탑상 증기를 액화, 냉각수 순환
- **진공 펌프 (Vacuum Pump)**: 수봉식(Liquid Ring) 또는 제트 펌프, 탑 내 감압 유지
- **리플럭스 펌프 (Reflux Pump)**: 콘덴서드에서 일부 액체를 탑상으로 순환
- **저장 탱크**: 회수 PGMEA 제품 탱크, 잔여물(바텀) 탱크
### 분배기 (Distributor)
Packing Type 증류탑의 핵심 내부부품. 패킹(충전제) 위에 액체를 균일하게 분배하여 기액 접촉 면적을 최대화합니다. 분배가 불균일하면 채널링이 발생해 분리 효율이 급격히 저하됩니다.
| 종류 | 영어 | 역할 |
|------|------|------|
| 환류액 분배기 | Reflux Distributor | 탑상에서 내려오는 리플럭스액을 패킹 위에 균일하게 분배 |
| 원료 분배기 | Feed Distributor | 중간에 투입되는 피드(원료)를 패킹 위에 균일하게 분배 |
| 액체 분배기 | Liquid Distributor | 일반적인 액체 분배용 (다단계 패킹 구간마다 설치) |
---
## 3. 운전 순서
### 시동
1. 진공 펌프 가동 → 탑 내 압력 목표치까지 감압
2. 냉각수 공급 시작 (콘덴서)
3. 리플럭스 탱크 충전 후 리플럭스 펌프 가동
4. 리보일러 서서히 가열 (ramp-up, 1~2°C/min)
5. 피드 탱크에서 사용된 PGMEA를 피드 펌프로 공급 시작
6. 정상 운전 파라미터 도달까지 안정화
### 정상 운전
- 압력, 온도, 리플럭스 비, 피드 유량 자동 제어
- 상단 제품 (PGMEA) 품질 모니터링 (굴절률, GC 분석)
### 정지
1. 피드 공급 중단
2. 리보일러 가열 중단, 자연 냉각
3. 탑 내 잔여액 드레인
4. 진공 해제 (대기압 복귀)
5. 냉각수 중단
---
## 4. 주요 운전 파라미터 (참고값)
| 파라미터 | 범위 |
|----------|------|
| 탑 압력 | 50~100 Torr (진공) |
| 탑저 온도 | 80~100°C |
| 탑상 온도 | 60~80°C |
| 리플럭스 비 | 3:1 ~ 10:1 (순도에 따라) |
| 제품 순도 | 99.5% 이상 (반도체 등급) |
---
## 5. 안전 고려사항
- **가연성**: 인화점 34°C → 정전식 장비, 폭발방지 설계, 가연성 가스 감지기 필수
- **열분해**: 리보일러 온도 과승 시 아세테이트 분해 → 독성 가스 발생 가능
- **진공 파손**: 대기압 유입 시 급격한 끓음 가능 → 진공 rupture 디스크 설치
- **정전기**: 정전기 발생 방지 (접지, 유속 제한)
---
## 6. 일반적인 문제점
| 문제 | 원인 | 대응 |
|------|------|------|
| 제품 순도 저하 | 리플럭스 비 부족, 패킹 막힘 | 리플럭스 증가, 세정 |
| 진공 불안정 | 실(Seal) 불량, 펌프 성능 저하 | 실 점검, 펌프 유지보수 |
| 압력 강하 증가 | 패킹 fouling, 채널링 | 패킹 세정 또는 교체 |
| 열분해 증상 | 리보일러 온도 과승 | 온도 제한, 가열율 감소 |
---
## 7. 용어 정리
| 잘못된 표기 | 올바른 표기 | 영어 |
|-------------|-------------|------|
| 리프러드 | **리플럭스** | Reflux |
| vakuum | **진공** | Vacuum |
| 시일 | **실** | Seal |

View File

@@ -0,0 +1,75 @@
# 반도체 신너(PGMEA) 증류탑 측류 추출(Side-stream) 운전 방식 및 주의점
본 문서는 반도체 공정용 초고순도 PGMEA 정제 과정에서 사용되는 '측류 추출 방식(Side-stream Draw)'의 원리, 2기 직렬 탑 대비 단점, 그리고 정밀 운전을 위한 최우선 관리 항목에 대해 정리한 엔지니어링 가이드입니다.
---
## 1. 측류 추출 운전 방식의 개요 및 목적
단일 증류탑에서 탑 상부(Top) 환류 라인 일부와 탑 하부(Bottom) 리보일러 유량 일부를 제거(Purge/Blowdown)하고, 탑 중간(Middle)에서 제품을 추출하는 이유는 **하나의 증류탑 내에서 PGMEA보다 끓는점이 낮은 물질(경비물)과 높은 물질(중비물)을 동시에 완벽히 분리**하기 위함입니다.
```
[ 탑 상부 (Top) ]
---> 경비물 제거 (수분, 메탄올, PGME 등)
| (리플럭스 라인 일부 Purge)
|
|===|
| |
Feed | | ---> [ 탑 중간 (Middle) ]
------> | | 초고순도 PGMEA 제품 측류 추출 (Side-stream Draw)
| |
|===|
|
|---> [ 탑 하부 (Bottom) ]
중비물 제거 (DPGMEA, 금속 불순물, 중합물 등)
(열교환 유량 일부 Blowdown)
```
* **탑 상부(Top) 리플럭스일부 제거:** 수분, 메탄올, PGME 등 끓는점이 낮은 가벼운 불순물을 계 외로 배출하여 탑 내 농축 및 제품단으로의 하강을 차단합니다.
* **탑 하부(Bottom) 유량 일부 제거:** DPGMEA, 고분자 중합물, 금속 성분 등 끓는점이 높은 무거운 불순물을 배출하여 리보일러 파울링(Fouling)을 방지하고 기류를 통한 제품단 오염을 방지합니다.
* **탑 중간(Middle) 제품 추출:** 가벼운 물질과 무거운 물질이 모두 최소화된 탑 중간의 '최고 순도 구간(Sweet Spot)'에서 측류로 제품을 뽑아내어 반도체급 스펙을 만족시킵니다.
* **경제적 이점:** 2개의 증류탑을 직렬로 연결하는 대신 1개의 증류탑만 사용하여 설비 투자비(CAPEX) 및 에너지 비용(OPEX)을 극적으로 절감할 수 있습니다.
---
## 2. 2개 탑 직렬 연결 방식 대비 단점
측류 추출 방식은 경제성이 우수한 반면, 기술적·운전 측면에서 다음과 같은 명확한 단점과 한계를 가집니다.
### ① 운전 및 제어의 극악한 난이도 (Process Coupling)
* **직렬 방식:** 1번 탑(경비물 제거)과 2번 탑(중비물 제거)의 제어 루프가 독립적입니다.
* **측류 추출 방식:** 모든 운전 변수가 하나로 복잡하게 얽혀 있습니다. 예를 들어, 상부 환류량을 미세하게 조정하더라도 탑 전체의 온도 및 조성 프로파일이 흔들려 중간 제품의 순도가 동시에 출렁이게 되므로 고도의 고급 공정 제어(APC)가 요구됩니다.
### ② 원료 조성 및 공급 조건 변화에 대한 취약성
* 증류탑 내부에서 순도가 가장 높은 '최적의 추출 지점'은 고정되어 있지 않고, 유입되는 원료의 불순물 농도 및 유량에 따라 위아래로 계속 이동합니다.
* 실제 운전 중에는 물리적인 추출단 배관 위치를 바꿀 수 없으므로, 피드(Feed) 조건이 조금만 흔들려도 경비물이나 중비물이 제품단으로 쉽게 유입됩니다.
### ③ 초고순도(Electronic Grade) 달성의 구조적 한계
* 탑 내부의 격렬한 기-액 접촉 과정에서 발생하는 미세한 액적 비산(Entrainment)이나 급격한 증기 흐름으로 인해, 경비물이나 중비물이 제품 측류에 미량 혼입될 위험이 늘 존재합니다.
* ppb(parts per billion) 단위의 극단적인 불순물 제어가 필요한 반도체 최고 등급 품질 관리에서는 안정성 면에서 직렬 방식보다 불리할 수 있습니다.
### ④ 운전 유연성(Turndown Ratio) 저하
* 시장 수요 감소 등으로 인해 공장 생산량을 낮추어 저부하(Low Load) 운전을 할 때, 탑 내부의 유체역학적 균형(기-액 밸런스)이 쉽게 깨집니다.
* 기류 유속이 떨어지면 상부 불순물이 하강하고, 액체 흐름이 약해지면 하부 불순물이 축적되어 생산량을 줄였을 때 오히려 순도가 저하되는 역설적인 상황이 발생할 수 있습니다.
---
## 3. 측류 추출 운전 시 최우선 제어 관리 항목 (우선순위)
단일 측류 추출탑의 운전 성패는 **"탑 내부의 온도 및 조성 프로파일을 설정된 제어 위치에 완벽하게 고정하는 것"**에 달려 있습니다.
### 1순위 | 감도 트레이(Sensitive Tray) 온도의 정밀 제어
* **개념:** 외부 외란에 의해 탑 내부 조성 분포가 흔들리는 것을 막기 위해, 온도가 가장 민감하게 변하는 특정 트레이(Tray)를 지정합니다.
* **조치:** 감도 트레이의 온도를 소수점 단위로 실시간 감시하고, 이 온도와 상부 환류량(Reflux) 또는 리보일러 열량을 연동(Cascaded Control)시켜 탑 전체의 온도 경계선이 위아래로 출렁이지 않도록 묶어두어야 합니다.
### 2순위 | 측류 추출량(Draw Rate)과 내부 물질 수지의 밸런스
* **개념:** 중간에서 제품을 지나치게 많이 뽑아내면(Over-draw), 제품단 아래쪽으로 내려가야 할 액체 환류량이 부족해져 상부의 경비물이 제품단으로 빨려 내려오게 됩니다.
* **조치:** 측류 추출량은 독립 제어하기보다 피드(Feed) 유량 및 상부 환류량과 일정 비율을 유지하도록 비율 제어(Ratio Control)를 적용해야 합니다.
### 3순위 | 피드(Feed) 조건의 외란 원천 차단
* **개념:** 유입되는 원료의 온도, 유량, 조성(수분 등)이 흔들리면 탑 내부 밸런스가 즉시 붕괴됩니다.
* **조치:** 증류탑 전단에 피드 예열기(Preheater)를 설치하여 입조 온도를 항시 일정하게 유지하고, 원료 탱크 내 조성을 균일화하는 완충(Buffering) 시스템을 철저히 관리해야 합니다.
### 4순위 | 물리적 비산(Entrainment) 및 플러딩(Flooding) 방지
* **개념:** 탑 내부의 증기 유속이 임계치를 넘으면 하부의 무거운 불순물(금속, 고분자 중합물)이 기류를 타고 튀어 올라와 제품을 오염시킵니다.
* **조치:** 제품 추출단 하부에 데미스터(Demister) 등 물리적 차단 장치를 점검하고, 탑 내부 차압(Delta P)을 모니터링하여 상한선을 엄격히 통제해야 합니다.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,230 @@
# 반도체 신너(PGMEA) 측류 추출 운전 - 전방먹임 비례 제어(Feedforward Ratio Control) 관계식
본 문서는 실제 석유화학 및 반도체 소재 공장의 DCS(분산제어시스템)나 APC(고급공정제어)에서 사용하는 '전방먹임 비례 제어(Feedforward Ratio Control)' 모델의 핵심 공식을 물질수지(Material Balance)와 열수지(Energy Balance) 관점에서 정리한 자료입니다.
---
## 0. 기호 정의 (Variables)
관계식의 명확성을 위해 다음과 같이 변수를 정의합니다. (단위: kg/h 또는 ton/h)
* F : 원료 투입량 (Feed)
* D : 탑 상부 제거량 (Distillate / Light Purge)
* B : 탑 하부 제거량 (Bottom / Heavy Blowdown)
* P : 탑 중간 제품 추출량 (Side Product)
* R : 탑 상부 환류량 (Reflux)
* S : 리보일러 스팀 공급량 (Steam)
---
## 1. 총 물질수지 관계식 (Total Material Balance)
증류탑으로 유입되는 총 질량과 유출되는 총 질량은 같아야 한다는 기본 법칙입니다.
F = D + P + B
이를 원료 투입량(F) 기준으로 제어하기 위해 각각의 **추출 비율 계수(K)**를 도입하여 DCS 제어식을 도출합니다.
* K_D : 원료 대비 상부 제거 비율 (D/F)
* K_P : 원료 대비 제품 수율 (P/F)
* K_B : 원료 대비 하부 제거 비율 (B/F)
### [DCS 제어 설정식]
D = K_D × F
P = K_P × F
B = K_B × F
> 💡 **추출 비율 계수(K) 산정 팁:**
> 원료(Feed) 내의 불순물 분석 데이터에 따라 결정됩니다. 예를 들어 원료 내 경비물(수분 등)이 1%, 중비물이 1%이고 목표 PGMEA 회수율이 98%라면, K_D = 0.01, K_B = 0.01, K_P = 0.98로 초기 세팅 후 품질을 보며 미세 조정합니다. (단, K_D + K_P + K_B = 1을 만족해야 합니다.)
---
## 2. 환류량(Reflux) 관계식
환류량(R)은 상부 제거량(D)과 연동하며, 기-액 평형 조건을 유지하기 위한 **설계 환류비(R_f = R/D)**를 이용합니다.
R = R_f × D
위의 물질수지 제어식(D = K_D × F)을 대입하여, 최종적으로 원료 투입량(F)에 대한 관계식으로 풀면 다음과 같습니다.
### [DCS 제어 설정식]
R = R_f × K_D × F
* 원료 투입량이 변하면 상부로 나가는 가스/액체 유량도 변하므로, 이에 비례하여 환류량(R)도 자동으로 조절되도록 로직을 구성합니다.
---
## 3. 스팀량(Steam) 관계식
스팀량(S)은 탑 내부에서 끓어 올라가야 하는 **총 증기량(V, Vapor Load)**과 직결됩니다.
PGMEA를 액체(Liquid) 상태로 측류 추출한다고 가정할 때, 탑 상부로 올라가는 대략적인 필요 증기량은 다음과 같습니다.
V ≈ R + D
리보일러 스팀 공급량(S)은 이 증기량(V)을 만드는 데 필요한 잠열을 공급해야 하므로, 스팀-증기 비례 상수(α)를 적용합니다.
S = α × V = α × (R + D)
이 식에 앞서 구한 R과 D의 제어식을 대입하면, 최종적으로 **원료 투입량(F) 기준의 스팀량 공식**이 완성됩니다.
S = α × (R_f × K_D × F + K_D × F) = α × K_D × (R_f + 1) × F
상수들을 하나로 묶어 **K_S (스팀/피드 비례 계수)**로 단순화하면 DCS 식은 매우 간결해집니다.
### [DCS 제어 설정식]
S = K_S × F
---
## 4. DCS 실제 적용을 위한 최종 로직 요약
실제 공장 제어실(DCS)에 알고리즘을 구현할 때는 원료 유량 계측기(FT)의 값을 실시간으로 받아 각 제어 밸브의 유량 설정치(SV)를 아래와 같이 자동 계산(Feedforward Ratio)하도록 연동합니다.
1. **상부 Purge 밸브 설정치 (Distillate SV):** D_SV = K_D × F
2. **중간 제품 밸브 설정치 (Side Product SV):** P_SV = K_P × F
3. **하부 Blowdown 밸브 설정치 (Bottom SV):** B_SV = K_B × F
4. **상부 환류 밸브 설정치 (Reflux SV):** R_SV = R_f × D
5. **리보일러 스팀 밸브 설정치 (Steam SV):** S_SV = K_S × F + f(ΔP) + Bias
---
## ⚠️ 현업 운전 시 필독 주의점 (Bias의 필요성)
이론적인 비례 관계식은 위와 같으나, 실제 현장에서는 **탑 자체의 열손실(Heat Loss), 외기 온도 변화, 계측기 오차, 원료 공급 온도의 미세한 흔들림**이 발생합니다.
따라서 DCS 로직을 설계할 때는 완전 비례식만 적용하기보다, 운전원이 공정 상태를 보며 미세 조정할 수 있도록 **보정값(Bias)** 튜닝 탭을 반드시 확보해야 합니다.
특히 스팀 제어의 경우, 앞서 언급한 **탑 내부 차압[f(ΔP)]에 따른 감쇄(Override) 제어 알고리즘**을 상기 스팀 설정식에 더하여(Cascade/Override 구조) 안전성을 이중으로 확보해야 합니다.
## 리플럭스량 계산 재검토
의문이 맞습니다. **리플럭스량 350 → 33으로 줄어드는 것은 공정적으로 문제가 있습니다.**
### 🔍 문제점 분석
제 이전 계산에서 사용한 공식:
R = R_f × D = 2.0 × 16.36 = 32.72
이 공식은 **관계식 문서의 일반 증류탑 공식**입니다. 하지만 **측류 추출식(C-6111)** 에는 적합하지 않습니다.
### 📐 측류 추출식에서의 리플럭스량
측류 추출식에서는 리플럭스량이 **상부 제거량(D)** 이 아니라 **원료량(F)** 또는 **제품량(P)** 과 연동됩니다.
| 구분 | 현재 운전 | 설계 기준 (R/F) | 설계 기준 (R/P) |
|------|----------|----------------|----------------|
| **리플럭스량 (R)** | 350 | — | — |
| **원료량 (F)** | 818.13 | — | — |
| **제품량 (P)** | 481.05 | — | — |
| **R/F 비율** | 0.428 | 0.5~1.0 | — |
| **R/P 비율** | 0.727 | — | 0.8~1.2 |
### 📊 올바른 리플럭스량 산출
**현재 운전 상태의 R/F 비율(0.428)을 유지하거나, 설계 기준(R/F = 0.5~1.0) 적용:**
| 시나리오 | 계산식 | **새 SP값** | 현재 SP |
|----------|--------|------------|---------|
| **현재 R/F 유지** | 0.428 × 818.13 | **350** | 350 |
| **설계 R/F = 0.5** | 0.5 × 818.13 | **409** | 350 |
| **설계 R/F = 0.8** | 0.8 × 818.13 | **655** | 350 |
| **설계 R/F = 1.0** | 1.0 × 818.13 | **818** | 350 |
### 💡 권고
1. **리플럭스량 33은 너무 작음** — 컬럼 내 기-액 평형 유지 불가
2. **현재 운전 상태(R=350, R/F=0.428)는 합리적** — 반도체 등급 PGMEA 증류에 적합한 범위
3. **리플럭스량 조정 시** — R/F = 0.5~0.8 범위에서 점진적 조정 권장
### 📋 수정된 SP값 산출 (리플럭스량 제외)
| 태그명 | 역할 | 계산식 | **새 SP값** | 현재 SP |
|--------|------|--------|------------|---------|
| ficq-6114 | 경비물 제거량 (D) | 0.02 × 818.13 | **16.36** | 85.5 |
| ficq-6118 | 제품 추출량 (P) | 0.95 × 818.13 | **777.22** | 485 |
| ficq-6116 | 하부 제거량 (B) | 0.03 × 818.13 | **24.54** | 53.2 |
| ficq-6113 | 리플럭스량 (R) | **현재 R/F 유지** | **350** | 350 |
**리플럭스량은 현재 상태를 유지하고, D/P/B만 조정하시기 바랍니다.**
1. 측류 추출식 C-6111 — 통합 유량 설정 공식
📐 기본 물질수지
F = D + P + B
F: 원료투입량 (kg/hr)
P: 제품 추출량 (kg/hr) ← 주요 제어 변수
D: 경비물 제거량 (kg/hr)
B: 하부 제거량 (kg/hr)
📐 분할 비율 (설계 기준)
항목 계수 비율 근거
P k_P 0.95 주 제품 fraction
D k_D 0.02 경비물 fraction
B k_B 0.03 중비물 fraction
k_D + k_P + k_B = 1.00
📐 P 기준 환산식
설정값 공식 예 (P=777.2)
F P ÷ k_P 777.2 ÷ 0.95 = 818.1
D (k_D/k_P) × P (0.02/0.95) × 777.2 = 16.36
B (k_B/k_P) × P (0.03/0.95) × 777.2 = 24.54
📐 환류량 (온도보정 포함)
외부 환류 (FICQ 계측값):
R_ext = R_f × P
R_f: 제품기준 환류비 (설계 0.5~1.2)
현재 R_f = 350/777.2 = 0.45
내부 환류 (과냉각 보정):
R_int = R_ext × (1 + c_p × ΔT / λ)
c_p: PGMEA 비열 (kJ/kg·K)
λ: PGMEA 증발잠열 (kJ/kg)
ΔT: T_top - T_reflux_drum (°C)
= 컬럼 상부 온도 - 환류 drum 온도
보정계수 TCF = 1 + c_p × ΔT / λ
📐 컬럼 내부 실제 L/V 비
L/V = R_int / (R_int + P)
2. 실시간 데이터 적용
현재 컬럼 온도 Profile
태그 위치 PV (°C)
TICA-6111A 최하부 (Reboiler) 79.6
TI-6111B 원료투입구 위 중부 79.1
TI-6111C 제품추출 노즐 근처 중상부 78.8
TI-6111D 상부 제품추출 노즐 근처 77.8
→ 컬럼 상부 온도(T_top) = 77.8°C (TI-6111D)
현재 유량 현황
태그 역할 PV
FICQ-6101 F (원료) 820.7
FICQ-6114 D (경비물) 17.4
FICQ-6118 P (제품) 784.0
FICQ-6116 B (하부) 25.2
FICQ-6113 R_ext (환류) 350.7
→ P/F = 784/820.7 = 0.955 (설계 0.95와 일치 ✓)
온도보정 환류량 계산
PGMEA 물성치 (일반값, 실제 PGMEA 순도/압력에 따라 조정 필요):
물성 기호 값
비열 (액체) c_p 2.0
증발잠열 λ 330
c_p/λ 0.00606
ΔT를 추정할 환류 drum 온도 센서가 확인되지 않습니다. TI-6111D=77.8°C이므로, ΔT 시나리오별 결과:
ΔT (°C) TCF R_int (R_f=0.8, P=777.2) R_int (R_f=0.45, P=777.2)
0 (포화) 1.000 622 350
5 1.030 641 361
10 1.061 660 371
15 1.091 679 382
20 1.121 697 392
권장 설정값 (R_f=0.8, ΔT=5°C 가정)
설정값 공식 계산값 현재 SP
F (FICQ-6101) P ÷ 0.95 818.1 820
D (FICQ-6114) 0.02/0.95 × P 16.4 16.7
P (FICQ-6118) (기준) 777.2 777.2
B (FICQ-6116) 0.03/0.95 × P 24.5 24.54
R_ext (FICQ-6113) R_f × P 622 350
R_int (보정 후) 622 × 1.030 641 -
⚠️ 확인 필요 사항
1. 환류 drum 온도 센서 (reflux drum TI) 태그를 찾지 못했습니다 — ΔT 확인 후 TCF 재계산 필요
2. PGMEA 물성치(c_p, λ) 는 일반값입니다 — 실제 분석 데이터로 대체 권장
3. R_f = 0.8은 설계 범위 내 첫 권장값 — 순도 결과 보며 0.5~1.2 범위에서 조정

View File

@@ -0,0 +1,193 @@
# 측류 추출 증류탑 — 원료 투입량 변화에 따른 시간 지연(Time Delay / Dead Time) 및 프로세스 시차(Lag) 적용 방안
> **핵심 개념**: 원료 투입량(Feed)이 변했을 때, 그 변화가 탑 상부·중간·하부에 도달하는 데는 물리적인 유체 이동 시간이 걸립니다. 이를 공정 제어에서는 **시간 지연(Time Delay / Dead Time)** 및 **프로세스 시차(Lag)** 라고 부릅니다.
>
> 투입량이 늘어났다고 해서 상·하부 밸브와 제품 밸브를 동시에 즉각적으로 열어버리면, 아직 불순물이 도달하지도 않았는데 정품 PGMEA를 버리거나 내부 밸런스가 깨져 불순물이 제품단으로 유입되는 **역효과**가 납니다.
---
## 1. 위치별 시간 지연의 특징 (물리적 메커니즘)
### 1.1 하부 제거량 (B) & 리보일러 스팀량 (S) — [매우 빠름: 수초~수분]
- 투입된 액체 원료는 **중력**에 의해 탑 내부 트레이를 타고 아래로 흘러내립니다.
- 하부까지 도달하는 시간은 탑의 높이와 트레이 단수에 비례합니다.
- **압력 변화**는 거의 즉시 전달되므로 지연 시간이 **가장 짧습니다**.
### 1.2 상부 제거량 (D) & 환류량 (R) — [중간: 수분~십수 분]
- 하부 리보일러에서 끓여진 **증기(Vapor)** 가 탑 꼭대기(Top)까지 솟구쳐 올라가 **응축기(Condenser)** 를 거쳐 **환류 드럼**에 모이기까지의 시간입니다.
- 기체의 상승 속도는 빠르지만, **응축 및 드럼 체류 시간** 때문에 지연이 발생합니다.
### 1.3 중간 제품 추출량 (P) — [가장 느림: 십수 분~수십 분]
- 위에서 내려오는 액체 흐름과 아래에서 올라오는 기체 흐름이 만나 **새로운 기-액 평형**을 이루고 중간단 조성이 안정화될 때까지 **가장 오랜 시간**이 걸립니다.
---
## 2. DCS/APC 실제 적용 방법: 전방투입 동적 보상 (Dynamic Compensation)
단순 비례식 `Y = K × F`**시간 지연 함수**를 결합한 **이동평균(Moving Average)** 또는 **1차 지연 + 데드타임(FOPDT)** 필터를 원료 유량(F) 신호 전단에 걸어주어야 합니다.
### 방법 A. 가장 구현하기 쉬운 '시간 차 설정 (Dead Time Block)'
DCS 내의 **Dead Time** 또는 **Delay** 블록을 활용하여 원료 신호 자체를 미뤄서 밸브에 전달하는 방식입니다.
| 제어 대상 | 지연 시간 | 설명 |
|-----------|-----------|------|
| 하부 제거량 (B) | 1분 | 원료 계측기(FT) 신호가 변하면 1분 뒤에 반응 |
| 상부 제거량 (D) | 5분 | 원료 계측기(FT) 신호가 변하면 5분 뒤에 반응 |
```
상부 제거량(D) = K_D × F_delayed_by_5min
하부 제거량(B) = K_B × F_delayed_by_1min
```
> **원리**: 원료 계측기(FT)의 신호가 변하면, 하부 밸브는 1분 뒤에, 상부 밸브는 5분 뒤에 반응하도록 변수값(`F_delayed`)을 따로 만들어 밸브 설정치(SV) 공식에 넣어줍니다.
### 방법 B. 실무에서 가장 추천하는 '램프(Ramping) 및 시차 필터(Lag Filter)'
갑작스러운 유량 변화(**Step Change**)는 탑 내부를 요동치게 만듭니다. 따라서 투입량이 변할 때 밸브들이 **부드럽게 따라오도록 1차 지연(Lag) 필터**를 결합합니다.
#### 1차 지연 필터 수식
```
1
D(s) = ───── × F(s)
τ·s + 1
```
여기서 **τ(타우, Time Constant)** 는 밸브가 최종 목적지의 **63.2%** 까지 도달하는 데 걸리는 시간입니다.
#### 적용 가이드
| 제어 대상 | τ (Time Constant) | 설명 |
|-----------|-------------------|------|
| 하부 제거량 (B) | 1~2분 | 즉시 대응하여 탑 넘침(Flooding) 방지 |
| 상부 제거량 (D) | 5분 | 조금 느긋하게 반응 |
| 중간 제품 추출량 (P) | 15~20분 | 가장 보수적이고 느리게 — 초고순도 PGMEA 품질 불량 방지 |
> **핵심**: 제품 추출량(P) 제어는 가장 느리게 반응해야 하므로, τ 값을 **15~20분** 정도로 길게 주어 원료가 늘어나더라도 제품 밸브는 **아주 천천히** 서서히 열리도록 유도합니다. 그래야 탑 중간의 **순도 영역**이 깨지지 않습니다.
---
## 3. 증류탑 '실제 지연 시간' 측정하는 법 (Step Test)
설계 데이터만으로는 정확한 분을 알 수 없습니다. **가동 중 일시적으로 테스트**를 수행해 정확한 타이밍을 찾아내야 합니다.
### Step Test 절차
1. **안정된 운전 상태**에서 원료 투입량(F)을 약 **5~10%** 가량 한 번에 툭 올려봅니다 (**Step Input**).
2. 그 상태에서 **각 구간의 온도 변화**를 관찰합니다.
3. 다음 시점을 측정합니다:
| 측정 항목 | 지연 시간 정의 |
|-----------|----------------|
| 하부 트레이 온도 | 하부 트레이 온도가 들썩이기 시작하는 시간 = **하부 지연 시간** |
| 탑 상부 온도 / 환류 드럼 수위 | 탑 상부 온도나 환류 드럼 수위가 반응하는 시간 = **상부 지연 시간** |
| 측류 제품단(Tray) 온도 / Analyzer | 측류 제품단의 온도가 변하거나 Analyzer의 순도 데이터가 변하기 시작하는 시간 = **제품단 지연 시간** |
4. 이때 측정된 **분(Minute)** 을 DCS의 **Delay****Lag** 시간 변수값으로 입력합니다.
---
## 4. 원료 유량계 노이즈(헌팅) 대응 — PID 제어기 환경의 현실적인 대책
> **현장의 날카로운 현실**: 유량계(특히 원료 공급 펌프나 전단 공정에서 오는 배관)는 맥동이나 와류 때문에 노이즈가 심하고 위아래로 미세하게 튀는 **'헌팅(Hunting/Noise)'** 이 늘 존재합니다.
>
> 이 상황에서 전방투입(Feedforward) 공식을 그대로 적용하면, 원료 유량계가 떨릴 때마다 상·하부 밸브, 제품 밸브, 스팀 밸브까지 **온 동네 밸브들이 동시에 파르르 떨리면서 공정 전체가 대혼란**에 빠지게 됩니다. 밸브 구동부(Actuator)의 수명도 극도로 단축되죠.
>
> 일반 제어기(PID) 위주의 환경에서 이 유량 노이즈를 칼처럼 잘라내고 공정을 안정화하는 **3가지 실무 대책**을 알려드립니다.
### 4.1 1순위 대책: DCS 내 '이동평균(Moving Average)' 또는 '신호 감쇠 필터' 적용
가장 먼저 해야 하고, 효과가 가장 확실한 방법입니다. 유량계의 날카로운 헌팅 신호를 **부드러운 곡선으로 뭉개주는 필터(Filter) 블록**을 원료 유량 신호(`FT`) 바로 뒤에 설치하는 것입니다.
#### DCS 구성 방법
원료 유량계 신호를 각 밸브 공식에 **직접 넣지 말고**, 중간에 **Lag Block** 또는 **Filter Block**을 하나 거치게 만듭니다.
#### 필터 시상수(Time Constant, τ) 설정
- 이 필터의 시간을 **3분 ~ 5분 (180초~300초)** 정도로 길게 줍니다.
- 이렇게 하면 실제 유량계가 `95 ~ 105 kg/h` 사이를 초 단위로 정신없이 흔들려도, 필터를 통과한 신호는 그 중간값인 `100 kg/h` 근처에서 **아주 묵직하고 평온하게** 움직입니다.
- 각 밸브의 설정치(SV)는 이 **'필터링된 부드러운 유량 신호'** 를 기준으로 계산되므로 헌팅이 도미노처럼 전파되는 것을 원천 차단할 수 있습니다.
### 4.2 2순위 대책: 제어 밸브의 '불감대(Dead Band / Gap Control)' 설정
DCS 내의 PID 제어기 블록에는 보통 **Dead Band(불감대)** 또는 **Gap**이라는 설정 옵션이 있습니다.
#### 원리
오차(설정치와 현재 값의 차이)가 아주 미세할 때는 제어기가 밸브에 **"움직이지 마"** 라고 명령하고, 오차가 일정 수준 이상으로 벌어졌을 때만 밸브를 움직이게 만드는 기능입니다.
#### 설정 방법
- 환류량, 상·하부 제거량, 제품 추출량 조절 PID 블록에 불감대를 **0.5% ~ 1.0%** 수준으로 설정합니다.
- 이렇게 하면 원료 유량 노이즈 때문에 밸브 설정치(SV)가 미세하게 들썩이더라도, 밸브가 멍청하리만치 가만히 버티고 서 있게 되어 시스템 전체의 물리적 헌팅을 방지합니다.
### 4.3 3순위 대책: 수위 제어기(Level Controller)를 완충재로 활용 (설비적 보완)
만약 원료 탱크(Feed Tank)에서 증류탑으로 원료가 바로 들어오는 구조라면, 원료 탱크의 **수위 제어(Level Control)** 방식을 바꾸어 헌팅을 흡수할 수 있습니다.
#### 문제 상황
보통 탱크 수위 제어기는 수위를 일정하게 유지하려고(**Tight Control**) 펌프 후단 밸브를 세게 흔듭니다. 이것이 증류탑 투입량 헌팅의 주원인이 됩니다.
#### 해결 방안 (Surge Control 기법)
- 원료 탱크 수위 PID의 **P-Gain을 대폭 낮추고 I-Time을 길게 가져갑니다.**
- 탱크 수위가 `45% ~ 55%` 사이에서 조금 차오르거나 빠지더라도 증류탑으로 보내는 유량 밸브는 **최대한 일정한 개도**를 유지하도록 둔한(Sluggish) 제어를 하는 것입니다.
- 탱크 자체를 **'유량 헌팅 흡수용 완충기(Buffer)'** 로 쓰는 정석적인 방법입니다.
---
## 🛠️ 실무 엔지니어를 위한 추천 세팅 요약
DCS 로직을 수정하실 수 있다면 **[1번 대책: 5분짜리 시상수를 가진 필터 블록 추가]** 를 강력히 권장합니다. 로직 구조는 다음과 같이 바뀝니다.
```
원료 실제 유량(Hunting 함)
┌─────────────────────┐
│ Filter Block (300초)│
└─────────┬───────────┘
깨끗하고 부드러운 유량값
┌─────────────────────┐
│ 각종 밸브 연동 공식 │
└─────────────────────┘
```
이렇게 필터 하나만 제대로 걸어주어도 **"언제 그랬냐는 듯이"** 상하부 밸브와 제품 추출 밸브가 얌전하게 제 자리를 잡을 것입니다. 편안한 운전 관리가 가능해지니 꼭 적용해 보세요!
---
## 💡 요약 및 조언
> **투입량이 늘어났을 때:**
>
> | 제어 대상 | 대응 타이밍 | 목적 |
> |-----------|-------------|------|
> | 하부 스팀 & Blowdown (B) | **즉시 (1~2분 내)** | 탑 넘침(Flooding) 방지 |
> | 상부 Purge & 환류량 (D) | **조금 느긋하게 (5분 뒤)** | 내부 압력/조성 안정화 |
> | 중간 제품 추출량 (P) | **가장 보수적이고 느리게 (15~20분 뒤)** | 초고순도 PGMEA 품질 불량 방지 |
---
## 📋 현재 시스템 확인 사항
현재 공정 시스템에 이러한 시간 지연(Delay/Lag)을 구현할 수 있는 **고급 제어 블록(APC 등)** 이 내장되어 있나요? 아니면 **일반 PID 제어기** 위주로 구성되어 있으신가요?
> 이 확인 결과는 위 방법 A 또는 방법 B 중 어떤 접근 방식을 우선 적용할지 결정하는 데 필요합니다.
---
*문서 생성일: 2026-05-20*
*적용 대상: 측류 추출 증류탑 (PGMEA 초고순도 공정)*