개발자로 후회없는 삶 살기
MES 데이터 분석을 통한 최적의 생산관리 시스템 구축 본문
서론
이 프로젝트는 기계부품 제조업 공장의 생산성 증대를 위한 최적의 생산 운영 계획 및 전략을 제시합니다. MES 데이터 분석을 통해 생산 현황을 파악하고 공정에서의 병목 원인을 추측하며 안전 재고량을 계산합니다.
-> 전체 코드
https://github.com/SangBeom-Hahn/Kdata_Team_Project
본론
- 주제
다산이엔지(참고 1)는 공장에 사용되는 부품을 생산하는 제조업 기업으로 30000개가 넘는 제품을 생산합니다. 수많은 제품을 생산하기에 수주 납기일을 못 맞추는 일도 있고 한 해 생산한 제품보다 적게 판매하여 손해를 보는 일도 있습니다. 이에 우리는 이 기업의 데이터를 분석하여 문제점을 파악하고 생산성을 높이기 위한 방안을 제시합니다.
=> 세부 사항
① 개요
② 분석 및 해결방안
③ 서비스 활용방안 및 기대효과
- 프로젝트 구성도
- 형상 관리
노션을 통해 진행합니다.
- 프로젝트 시작
1. 개요
1) 회사 소개
다산이엔지는 3만개가 넘는 제품들을 제조하는 다품종 소량 생산 공장입니다. 따라서 한 제품을 생산하기 위해 많은 설비들이 나란히 배치되는 라인 공정이 아닌 적재적소에 필요한 설비를 거쳐 제조하는 방식인 job-shop 형식의 공정을 채택하였습니다.
> 주 사업 분야는 진공벨브, 장비, 진공 부품을 제조이며 job-shop 공정은 공정 흐름이 일관된 것이 아니라 제품에 따라 공정 과정이 달라지기 때문에 생산 운영 계획 및 전략 수립에 어려움이 있습니다.
2) 공정 프로세스 소개
가공 단계 : 기계가 자동으로 제품들을 생산하는 것
후처리 : 사람이 제품을 직접 가공하는 공정
가공단계 | 설명 |
CNC | 기계가 부품을 회전시켜 가공하는 과정 |
밀링 | 기계가 부품을 고정시켜 특정 모양을 만드는 과정 |
MCT | 기계가 여러 종류의 공구를 교환하면서 여러 가공을 하는 과정 |
후처리 | 설명 |
사상 | 작업자가 제품의 모서리를 다듬는 과정 |
후처리 | 작업자가 제품의 거친 표면을 다듬고 코팅하는 과정 |
3) 분석 배경
다산의 경우 MES 도입 4년, ERP 도입 1년, 스마트팩토리 고도화 1.5인 상태로 라인 방식이 아닌 job-shop 방식을 사용합니다. 따라서 제품별 공정 순서를 알 수가 없고 제품이 공정을 통과할 때마나 매번 담당자가 일일이 바코드를 찍어야 합니다.
다산과 유사한 생산 방식과 공정 방식을 채택하고 있는 기업들이 MES를 도입한 후 고객 만족도 향상, 작업 및 품질 만족이 증가했습니다. 시스템 도입으로 그동안 부서별, 개인별로 관리하던 자료들을 통합 관리하고 실시간 재고 관리, 제품 불량 데이터 수집 및 통계ㆍ분석이 가능해졌습니다.
★ 우리는 이러한 기업들을 벤치마킹 하여 이를 다산이엔지 현황에 맞게 적용해보고자 하였습니다. ★
4) 분석 전략
어떻게 하면 다산이 수요 예측 및 생산전략 / 재고관리 / 공정 최적화 등 총 3가지 관점에서 생산운영 최적화를 이룰 수 있는지 고민하여 정리하였습니다. 다산의 생산전략과 공정 및 재고 현황을 분석하여 문제점을 발굴하고, 해결책을 제시할 것입니다.
=> 전략 용어 설명
① 수요 예측 및 생산 전략
생산 전략은 크게 3가지가 있습니다. 추종 전략, 수평 전략, 두 가지를 같이 활용하는 복합 전략이 있습니다.
② 재고 관리
재고는 기업 운영의 불확실성을 줄일 수 있다는 점에서 중요합니다. 적절한 재고 관리를 위해서는 언제 재고를 보충해야 하는지 알아야 하고 얼만큼 재고를 보충해야 하는지 알아야 합니다.
얼만큼 재고를 보충해야 하는지 고려할 때 안전재고 개념을 활용해야 합니다. 안전 재고란 갑작스러운 수요 증가 등 사업 운영에 있어 예측하지 못한 상황으로 재고가 모두 소진되었을 때 대비 할 수 있는 추가 재고입니다.안전 재고는 결품 가능성을 줄이고 재고 비용을 높일 수 있는 특징을 가지고 있습니다.
③ 공정 최적화
최적의 공정을 선택할 수 있다면 생산 비용을 크게 단축시킬 수 있습니다. 굉장히 많은 다방면의 요인이 작용하기 때문에 다양한 시선으로 원인 분석을 해야 합니다.
> 또한 최적의 공정은 이상적인 것이기 때문에 현실적으로는 타협점을 찾아 조금의 비용이 감소하더라도 큰 이익을 얻을 수 있습니다.
5) 데이터 정의
우리는 기본적으로 다음과 같이 총 3가지 데이터 셋을 필요에 따라 활용합니다.
-> 리드타임 데이터
제품별로 ID, 라우트, 생산 소요 시간 등 하나의 제품이 생산되는 데 걸리는 시간을 포함하고 있는 데이터입니다. 이는 프로세스 마이닝에 사용했습니다.
프로세스 마이닝은 공정 과정 전체를 분석하고 시각화하여 최적의 공정을 “마이닝”하는 것입니다. 이때 사용한 툴이 disco(참고 2)입니다. Disco 내부적으로 데이터 전처리 기능을 많이 제공합니다. 저희는 이러한 disco 툴을 활용하여 전처리 및 이상치 처리를 하였습니다.
6) 데이터 전처리
① 데이터 통합
제공받은 데이터는 CNC 싸이클 타임과 MCT 싸이클 타임이 따로 저장되어 있었기 때문에 총 리드타임을 구하기 위해서 두 데이터를 병합하는 것이 필요합니다.
② disco 전처리
2. 분석 및 해결방안
최적화 전략 3가지를 각각의 관점별로 현황 파악 - 문제점 발굴 - 해결방안을 제시합니다.
1) 수요 전략 및 생산 운영 계획 전략 관점
① 현황 분석 + 문제점 발굴
다산의 3년치 생산량을 분석해보니 5개의 고객사가 대부분의 생산량 지분을 차지하며 고객사 별로 꾸준히 생산하는 제품이 있었다는 점입니다.
또한, 수요량과 생산량 그래프를 이중 축으로 나타내어 보니 AY,BU,ZD 고객사의 제품은 생산량이 수요량 보다 훨씬 많았고, DP, KT 고객사의 제품은 수요량이 생산량보다 많거나 비슷한 경향을 보였습니다.
마지막으로, 고객사별 수요를 지수 평활법을 사용하여 예측했지만 추세 및 계절성을 찾을 수 없었습니다.
② 해결 방안
수요 예측을 위한 추세 및 계절성을 찾을 수 없어서 이동평균법을 활용하여 예측하였고 AY BU ZD 고객사의 1달간 수요량을 예측하였더니 다음과 같은 결과를 얻을 수 있었습니다. 3사의 경우 예측된 수요량에 비해 재고량이 압도적으로 많아서 생산량을 줄여야 한다는 결론을 낼 수 있었습니다.
2) 재고 관리 관점
① 현황 분석
앞서 설명드린 바와 같이 상대적으로 AY,BU,ZD 기업은 재고량이 많았고, 나머지 두 기업은 재고량이 적었습니다. 또한, 다산은 비교적 저렴한 품목이 적합하고 수주현황 데이터 셋에서 고정적인 기간이 있었기 때문에 고정 발주기간 모델을 사용하는 것이 적합할 것이라고 판단했습니다.
② 문제점 발굴
앞서 언급해드렸듯이 DP, KT 고객사는 수요량이 생산량보다 많을 시기가 종종 있었고 이러한 원인을 안전 재고량을 고려하지 않았기 때문이라고 판단했습니다.
③ 해결 방안
고객사 | 안전재고량 |
DP | 9652 |
KT | 11265 |
따라서, 저희는 각 고객사 별로 안전 재고량을 구해 보았고 안전재고 도입이 시급한 DP, KT 고객사의 경우 각각 안전 재고량을 계산할 수 있었습니다.
3) 공정 최적화
① 현황 분석
다음은 주 고객사별로 주 제품을 선별 후 제품별 프로세스 마이닝 결과를 보여주는 장표입니다. 프로세스 마이닝을 통해 각 제품이 어떤 공정을 거쳤고, 병목 구간을 알 수 있었습니다. 6개 그림의 기업별 제품 선별 기준은 수주를 꾸준히 받는 스터디 셀러 제품입니다.
② 문제점 발굴
프로세스 마이닝 결과 다산의 공정 과정 중 특이한 점을 발견할 수 있었습니다. 한 제품이 생산되는데 다양한 라우트로 생산된다는 점입니다.이 점은 다산이 잡샵 형태의 공정과정을 사용하였기 때문입니다.
그림과 같은 두 제품은 같은 공정을 거쳤을 때 CNC 과정이 리드 타임이 짧았기 때문에 두 제품 가공 시 CNC 공정을 거치는 것이 최적의 공정임을 알 수 있었습니다. ∴ 최적의 공정을 추천할 수 있습니다.
병목은 특정 공정이 다른 공정으로 인해 지연이 일어나는 현상을 의미합니다. 저희는 각 공정의 리드타임 중에 값이 비정상적으로 큰 경우를 병목이라고 의심을 했습니다.
위 그림의 경우, 동일한 제품이 동일한 공정을 거칠 때 리드 타임이 상이한 경우
위 그림의 경우 동일한 제품이 상이한 공정 프로세스를 거치는데 리드타임 평균의 비율 차이가 심한 경우를 보여 줍니다. 저희는 이러한 점을 병목이라고 의심했고 이는 시뮬레이션(참고 3)을 통해 해결할 수 있었습니다.
③ 해결 방안
상단은 최적의 라우트를 제외한 시뮬레이션 모델이고 하단은 최적의 라우트만으로 시뮬레이션한 결과입니다. 노란색이 병목을 표시하는 것으로 최적의 라우트만으로 만든 모델이 병목이 적습니다.
생산량도 증가했다는 해결책을 얻었습니다. 요약하자면, 공정 과정에서 최적의 라우트를 찾아내고, 이를 시뮬레이션을 통해 해결한다는 점이 핵심입니다.
3. 기대 효과 및 한계점
1) 기대 효과
① 수요 예측 및 생산 전략 관점 : 적합한 생산 운영 전략을 제시할 수 있습니다.
② 안전 재고량 관점 : 안전 재고량을 데이터셋에 컬럼으로 추가한다면 재고 파악을 유연하게 할 수 있을 것입니다.
③ 공정 최적화 관점 : 시뮬레이션을 통해 공정에서 일어나는 병목들을 최소화하고 생산성 향상을 기대할 수 있습니다.
2) 한계점
① 다산의 MES시스템에는 제품들, 즉 어셈블리를 구성하는 파트들이 명확하게 구분되어 있지 않아 데이터 핸들링에 큰 어려움이 있었습니다. 파트가 모여서 어셈블리가 되고 어셈블리가 모여서 제품이 되니 어셈블리, 파트가 아닌 제품의 리드타임만 최적화할 수 있도록 구분이 필요합니다.
② 데이터가 불충분하여 리드타임 예측 회귀모델을 개발할 수 없었고 고객사별 생산량 예측 또한 데이터가 부족하여 추세패턴을 파악하기 힘들었습니다.
결론
- 느낀 점
1. 생산성 향상의 목적을 다양한 관점에서 해결했다는 점에서 우리에게 주어진 문제를 창의적인 시선으로 바라볼 수 있는 스킬이 생겼습니다.
2. 현황 파악 및 문제점 분석에서 다양한 원인을 시대 상황, 기업 스타일, 데이터 상태 등을 고려하였다는 점에서 제조 데이터 외 모든 분야에 적용 가능한 능력을 키웠습니다.
3. 데이터의 중요성을 깨달았습니다. 가공된 데이터가 아닌 비가공 데이터를 처리하는 과정에서 현업의 데이터 분석가의 역할을 체험할 수 있었습니다.
-> 데이터 분석가의 역할은 다음과 같습니다.
① 현재 보유한 데이터로 해결할 수 있는 문제인지 확인하고 못 한다면 불가능한 문제라고 말할 수 있는 것도 실력입니다.
② 현재 어떠한 데이터를 보유하고 있는지 알아내고 설명하는 것입니다.