정보 & 소식

머신 러닝을 이용한 3D프린터의 자동화된 프로세스 모니터링
2018-08-15 18:23:31

3D프린터의 출력품질 모니터링은 여전히 해결해야 할 도전과제중의 하나입니다. 3D프린터가 출력중에 불량을 발견한다면, 소재와 시간의 낭비를 막을 수 있을 것입니다. 출력한지 얼마안된 초기에 이런 불량을 발견하면 출력을 잠시멈추게(pause) 하거나 정지(stop) 하여서, 처음부터 다시 출력하는 수고로움을 덜어줄 수 있을 겁니다.

캔사스 주립대학의 IMSE(Industrial and Manufacturing Systems Engineering)의 두 연구원이 새로운 3D프린팅 프로세스를 위한 품질 모니터링 시스템을 개발했습니다.

 

 

연구원들은 카메라, 이미지 프로세싱, 머신러닝(machine learning) 을 통합하여 3D프린트 출력물의 품질을 자동으로 평가하는 방법을 논문으로 발표했습니다.(논문 다운로드)

 

<실험장비 셋팅된 모습>

 

연구원들은 Lulzbot Mini 3D프린터를 이용했습니다. 우리나라에서는 사용하는 분들이 거의 없지만 해외에서는 좋은 평을 받고 있는 FDM방식의 데스크탑 3D프린터입니다. 출력 소재는 ABS와 PLA를 이용하여 출력했습니다.

출력 품질을 평가는 아래와 같이 3단계로 구성하였습니다.

 

1단계, 출력물의 형태에 따라 적절한 체크포인트를 인식

2단계, 각각의 체크포인트에서 출력중인 상태의 이미지를 촬영

3단계, 이미지 프로세싱과 분석 수행

<2단계인 체크포인트에서 찍힌 출력중인 이미지>

 

머신러닝 방법인, 서포트 벡터 머신(SVM, Support Vector Machine) 을 적용하여 출력물의 품질을 "양품(good)" 과 "불량(defective)" 으로 구분합니다.

<SVM의 기본 개념>

 

SVM은 머신러닝에서 사용되는 알고리즘중의 하나입니다. 위키백과에서 SVM에 대해 정의한 것을 간략하게 살펴보면,

"기계 학습(machine learning)의 분야 중 하나로 패턴 인식, 자료 분석을 위한 지도 학습 모델이며, 두 카테고리 중 어느 하나에 속한 데이터의 집합이 주어졌을 때, SVM 알고리즘은 주어진 데이터 집합을 바탕으로 하여 새로운 데이터가 어느 카테고리에 속할지 판단하는 비확률적 이진 선형 분류 모델을 만든다."

 

결론적으로, 머신러닝을 활용하여 실시간 출력품질 모니터링은 성공적으로 수행되었다고 합니다. 

연구원들은 이 방법론의 약점에 대해서도 친절하게 정리를 해주었습니다.

체크포인트에서 이미지를 촬영하기 위해 출력을 잠시 멈춰야 한다는 겁니다. 또 다른 약점은, 이미지를 위에서만 찍을 수 밖에 없다는 것입니다. 결국 Z방향의 결함을 볼 수 없으므로, Z 축방향의 결함을 알 수없는 거죠. 이러한 약점들은 극복할 수 있을 것 같네요.

 

<3DGURU's Opinion>

3D프린터가 프로토타입용이 아니라, 최종품 생산용으로 영역을 확장해 나가고 있습니다. 3D프린터 제조업체들은 용처를 "생산" 용으로 확장해 나가기 위해서 많은 노력을 하고 있습니다. 왜냐하면, 프로토 타입 시장과는 비교도 할 수 없을 정도로 생산 쪽의 시장사이즈가 크기 때문입니다. 당연히 제품이 많이 팔리겠고, 매출이 증가할 것입니다.

하지만 생산용으로 사용되는 비율이 매년 증가하고 있다는 통계 그래프만 보여줄게 아니라,  3D프린터 제조업체들은 생산용으로 쓰일수 있게 제품의 신뢰성 향상과 생산용에 걸맞는 기능들을 제공해야 합니다.  그 중에 하나가 모니터링 도구입니다.

3D프린터가 R&D 연구실 한 귀퉁이에서 혼자서 프로토 타입을 출력하는게 아니라, 공장 생산라인에서 다른 생산 장비들과 함께 운영되기 위해서는 장비를 모니터링을  하고, 공장의 전산시스템과 연결할 수 있는 소프트웨어도 함께 제공해야 할 것입니다. 생산라인에 설치된 여러대의 3D프린터 장비 상태와 각 장비들의 출력 품질을 실시간으로 모니터링할 수 있는 도구를 같이 제공해주고, 규모가 있는 생산공장에서 이미 많이 사용하는 ERP나 생산관리 소프트웨어와 연계(integration)하여 데이터를 주고 받을 수 있는 소프트웨어나 인터페이스 방법을 제공해주어야 생산관리팀에서 3D프린터를 생산용도로 운용하는데 도움이 될 것입니다.

 

이 논문에서 제시한 방법은 아직은 초기단계로 여러가지 좀 더 보완이 필요해 보입니다만,  3D프린터 출력품질을 모니터링하는 방법으로 머신러닝을 이용하는 것은 좋은 시도로 보입니다. 왜냐하면, 머신 러닝은 경험치가 쌓일 수록 품질 결과를 판정하는 정확도가 점점 더 높아질 것이기 때문입니다. 그리고, 연구원들은 데스크탑 3D프린터로 테스트를 하였지만, 이 모니터링 방법은 산업용 3D프린터에 좀 더 활용 가치가 있어 보입니다.

IoT 기술등을 적용하여 3D프린터의 상태를 모니터링하는 것도 함께 제공해준다면 3D프린터의 기기 상태와 출력품질을 동시에 실시간 모니터링을 할 수 있으면 더 좋겠네요.^^

 

참고) https://www.sciencedirect.com/science/article/pii/S2351978918307820

 

이상입니다. -3D그루-

크리에이티브 커먼즈 라이선스
top