반응형
🎯 서론: 시스템 개발 배경
금속 구조물 제작에서 파이프 자재의 견적과 발주 관리는 반복적이면서도 중요한 업무입니다. 기존에는 도면을 직접으로 확인하고 재료표를 엑셀에 옮기고 계산하고 발주하는 과정에서 많은 시간이 소요되었습니다. 이 과정을 자동화하기 위해 파이프 자동 단가 시스템을 개발하게 되었습니다.
📊 시스템 개요
주요 기능
- PDF 도면 자동 분석: 도면 에서 재료표 정보 추출
- 지능형 데이터 처리: 규격, 수량, 재질 정보 자동 인식
- 폴더 구조 자동 생성: 표준화 된 디렉토리 구조 구성
- 엑셀 문서 자동 생성: 발주서 및 실행 내역서 생성
기술 스택
- Python 3.8+
- PyQt5: GUI 구현
- pdfplumber: PDF 텍스트 추출
- openpyxl: 엑셀 파일 처리
- 정규표현식: 데이터 패턴 매칭
🚀 사용 방법
1. GUI 프로그램

2. 기본 정보 입력
- 현장명: 현장명 입력
- PDF 파일: 도면 파일 선택
- 모델 유형: 금속제울타리/차양/자전거보관대/볼라드 등
- 수량: 설치 수량 입력
- 기초 타입: 일반형/앙카형 선택
3. 처리 과정
- PDF 파일 업로드 및 분석
- 재료표 정보 자동 추출
- 폴더 구조 자동 생성
- 엑셀 문서 생성 (산출물 폴더)
- 처리 완료 및 결과 확인
💡 기술적 도전과 해결방법
도전 1: 다양한 PDF 형식 대응
- "일관된 추출이 어려웠다" → "일관된 추출을 위해서는, 단순한 텍스트 추출을 넘어, 각기 다른 도면 양식의 '문맥'을 이해하는 기술이 필요함을 발견했습니다."
도전 2: 규격 정보 파싱
- "정규표현식으로 해결했다" → "정규표현식만으로는 한계가 명확했습니다. 'Ø89.1'이 '파이프'를 의미한다는 것을 알려주는 '메타데이터' 없이는, 파싱된 텍스트는 단순한 숫자에 불과하다는 것을 깨달았습니다."
📈 예상 성과 및 기대 효과
시간 절감 예상 효과
작업수동 처리자동 처리절감율
| 도면 분석 | 30분 | 1분 | 96.7% |
| 엑셀 작성 | 20분 | 0분 | 100% |
| 폴더 구성 | 10분 | 0분 | 100% |
| 총합 | 60분 | 1분 | 98.3% |
정확도 예상 효과
- 재료 정보 추출 정확도: 95% 이상
- 데이터 입력 오류율: 0.1% 미만
- 표준화된 문서 형식 유지
🛠️ 설치 및 설정 방법
필수 패키지 설치
bash
pip install PyQt5 pdfplumber pandas openpyxl
🔮 향후 개선 방향
단기 개선사항
- 다양한 도면 형식 지원: DWG, DXF 파일 지원
- AI 기반 분석: 머신러닝을 이용한 더 정확한 분석
- 클라우드 연동: 웹 버전 개발
장기 발전 방향
- 모바일 앱: 현장에서 즉시 사용 가능한 앱
- 실시간 협업: 여러 사용자가 동시에 작업
- 통합 관리 시스템: ERP 시스템과 연동
💎 결론
"이 프로토타입을 개발하는 과정에서, 저는 매우 중요한 진실과 마주하게 되었습니다. 진짜 어려운 문제는 '코딩'이 아니라, '표준화되지 않은 데이터' 그 자체라는 것이었습니다.
아무리 뛰어난 PDF 파싱 기술이 있어도, 원본 데이터 자체가 제각각이라면 자동화는 '모래 위의 성'과 같았습니다. 이것이 바로 업계의 다른 회사들이 이 문제를 해결하지 못하는 근본적인 이유임을 깨달았습니다.
그래서 저는, 접근법을 180도 바꾸기로 결정했습니다.
불확실한 '도면 파싱'에 매달리는 대신, 저의 20년 전문가 지식을 활용하여, 먼저 '표준화된 자재 데이터베이스'라는 단단한 반석을 구축하기로 했습니다. 이 깨끗하고 신뢰할 수 있는 데이터베이스가 완성되고 나면, 그 위에 자동화 시스템을 짓는 것은 훨씬 더 빠르고 견고해질 것입니다.
이 글은 실패의 기록이 아닙니다. 이것은 '더 나은 길'을 찾기 위한 소중한 탐험의 기록입니다. 다음 포스팅에서는, 제가 새롭게 설계하고 있는 '데이터베이스 우선' 전략에 대해 이야기해 보겠습니다."
반응형
'Project_Aegis > [BIM & Automation]' 카테고리의 다른 글
| 앱 성장기, 단일 고객용 툴에서 멀티테넌트 SaaS로의 진화 (1) | 2025.10.14 |
|---|---|
| [개발기 #4] WIP 공정관리 시스템 v0.7 — Supabase로 완전 전환한 실시간 제조 관리 앱의 탄생기 (1) | 2025.10.12 |
| [개발기 #3] PDF 파싱이라는 '멋진 실수', 그리고 제가 찾은 '진짜' 자동화 (0) | 2025.10.10 |
| [개발기 #1] 매일 4시간 걸리던 엑셀 노가다, Python 코드 2줄로 10분 만에 끝낸 방법 (0) | 2025.10.06 |
| 파이썬 3주만에 '금속 구조물 자동화 시스템' 프로토타입 v1.0 개발기 (0) | 2025.09.22 |