Journal of the Korean Institute of Industrial Engineers
[ Article ]
Journal of the Korean Institute of Industrial Engineers - Vol. 50, No. 6, pp.437-447
ISSN: 1225-0988 (Print) 2234-6457 (Online)
Print publication date 15 Dec 2024
Received 08 May 2024 Revised 20 Aug 2024 Accepted 24 Sep 2024
DOI: https://doi.org/10.7232/JKIIE.2024.50.6.437

로봇 조립 특징 형상 분류를 위한 3D CNN 개발

도남철1, ; 한효녕2 ; 조준면2
1경상국립대학교 산업시스템공학부
2한국전자통신연구원 지능․제조융합연구실
Development of a 3D Convolution Neural Network for Classifying Robot Assembly form Features
Namchul Do1, ; Hyonyoung Han2 ; Joonmyun Cho2
1Department of Industrial and Systems Engineering, Gyeongsang National University, ERI
2ICT-enabled Intelligent Manufacturing Research Section, Electronics and Telecommunications Research Institute

Correspondence to: 도남철 교수, 52828 경남 진주시 진주대로 501 경상국립대학교 산업시스템공학부, Tel: 055-772-1703, Fax: 055-772-1699 E-mail : dnc@gnu.ac.kr

© 2024 KIIE

Abstract

The voxel-based 3D convolution neural network (3D CNN) proposed in this paper classifies form features to decide candidate assembly directions for automated robot assembly planning. It can classify not only form features of a part but also its candidate assembly directions that are needed for the following assembly planning procedures. In the implemented automated robot assembly planning system, it will take the place of the current rule-based form feature classification module. The 3D CNN uses classification classes that integrate both form features and their directions to assist candidate assembly directions to the following component ordering and robot assembly planning procedures in the automated robot assembly system. This study generated 3D CAD models for each form feature class and converted them into voxel models for the training of the 3D CNN. This study also contrasted rule-based classification methods with voxel-based CNN and evaluated the advantages and disadvantages of each method.

Keywords:

Form Features, Robot Assembly Planning, Convolution Neural Network, 3D CNN, Voxel

1. 서 론

자동 로봇 조립 계획(Automated Robot Assembly Planning)은 디지털 제품 설계 정보인 CAD 모델을 기반으로 로봇 조립 계획을 자동 생성하는 Computer-Aided Process Planning(CAPP)의 일종이다. CAPP는 CAD 모델의 저수준 기하 정보로부터 공정 계획을 위한 고급 정보인 제품의 특징 형상(Form Feature)을 인식하는 기능이 필요하다(Zhang et al., 2022). 예로 기계 가공을 위한 CAPP는 CAD의 부품 형상을 구성하는 점, 선 그리고 면 등의 저수준 기하 정보를 이용하여 기계 가공 방법을 결정하기 위한 스탭(Step), 슬롯(Slot) 혹은 실린더(Cylinder) 등의 고수준 가공 특징 형상을 결정해야 한다. 본 논문의 대상인 자동 로봇 조립 계획을 위한 CAPP는 로봇 조립 공정 계획에 필요한 부품의 조립 가능 방향(Candidate Assembly Directions)을 결정할 수 있는 특징 형상을 요구한다(Do et al., 2023).

특징 형상 분류 방법은 크게 규칙 기반(Rule-based)과 학습 기반(Learning-based) 방법으로 나눌 수 있다. 기존 자동 (로봇) 조립 계획을 위한 특징 형상 분류는 미리 준비된 특징 형상 분류 규칙에 CAD 모델에서 추출한 기하 정보를 적용하는 규칙 기반(Rule-based) 방법을 사용하였다(Kim and Choi, 2006; Rafibakhsh, 2017; Do et al., 2023). 규칙 기반 방법은 전문가가 매번 CAD 형상 자료와 자동 로봇 조립 계획을 고려한 복잡한 분류 규칙을 개발해야하는 단점이 있다.

최근 특징 형상 분류 규칙을 자동으로 생성할 수 있는 인공 신경망(Artificial Neural Network: ANN)을 적용한 학습 기반(Learning-based) 방법이 활발히 시도되고 있다. 학습 기반 방법은 훈련 데이터셋(Training Dataset)으로부터 특징 형상 분류 규칙을 자동 생성하므로 분류 규칙을 따로 개발할 필요가 없다. 특히 이미지 형상 패턴 추출 성능이 뛰어난 합성곱 신경망(Convolution Neural Network: CNN)을 특징 형상 분류에 적용하는 방법이 많이 시도되었다(Zhang et al., 2022). 특징 형상 분류를 위한 CNN 중 볼륨(Volume) 모델을 이용한 방법은 제품의 CAD 모델을 공간 점유 모델로 전환하여 훈련 데이터셋을 생성한다.

하지만 볼륨 모델을 이용한 학습 기반 특징 형상 분류(Zhang et al., 2018; Kim, 2018; Shi et al., 2020a; Shi et al., 2022)는 CAD의 기하학적 형상 정보를 볼륨 기반 모델로 전환함으로써 CAPP 내의 공정 계획 모듈에 필요한 기하학적 제품 형상 정보를 제공하지 못하는 단점이 있다. 이를 해결하기 위하여 일부 기계 가공을 위한 학습 기반 접근은 CAD 모델을 Vector화 하여 ANN에 적용한 후, 이를 다시 변환하여 공정 계획 모듈에 전달한다(Yoe et al., 2021; Kim, 2020; Shi et al., 2020b). 이 접근은 각 응용에 적합한 CAD 객체의 Vector화 모델과 전환 과정을 추가로 구현해야 하는 단점이 있다(Shi et al., 2020b).

본 연구는 자동 로봇 조립 계획에서 볼륨 모델을 이용한 학습 기반 특징 형상 분류의 기하학적 제품 형상 정보 단절 문제를 해결하기 위하여 조립 가능 방향과 특징 형상 분류를 통합한 볼륨 모델 기반 3D CNN을 제안한다. 또한 제안한 학습 기반 방법이 유효한지 확인하기 위하여 자동 로봇 조립 계획 시스템의 규칙 기반 특징 형상 분류 모듈을 대체하는 볼륨 모델을 이용한 3D CNN을 적용한다. 제안한 방법을 사용할 경우, CAD 모델에서 전환된 볼륨 기반 데이터셋으로 부터 자동으로 특징 형상 분류 규칙을 생성할 수 있으며, 추가 Vector 모델을 사용할 필요 없이 데이터셋에 통합된 조립 가능 방향 정보를 이용하여 후방 로봇 조립 공정 계획에 필요한 기하학적 제품 정보를 제공할 수 있다.

본 연구의 로봇 조립 계획 특징 형상 인식에 대한 기여는 다음과 같다. 첫째, 로봇 조립 공정 계획에 기하학적 정보 전달 문제를 해결하는 조립 가능 방향과 특징 형상 분류가 통합된 볼륨 모델을 이용한 특징 형상 분류 3D CNN을 제공한다. 둘째, 일반적인 기계 가공이 아닌 자동 로봇 조립 계획을 위한 학습 기반 특징 형상 분류 모델을 제공한다. 마지막으로 제안한 3D CNN 기반 특징 형상 분류 모듈을 이용한 로봇 조립 계획 정보 시스템 구현 예를 제공한다.

본 논문 제2장은 관련 연구를 살펴본다. 제3장은 자동 로봇 조립 계획과 규칙 및 학습 기반 조립 특징 형상 분류 모듈을 소개한다. 제4장은 본 연구에서 제안한 로봇 조립 특징 형상 분류를 위한 3D CNN 개발 과정을 서술한다. 제5장은 결론을 도출하고 추후 연구를 제안한다.


2. 관련 연구

<Figure 1>은 본 연구와 관련된 규칙 기반(<Figure 1a>), 볼륨 모델을 이용한 학습 기반(<Figure 1b>) 그리고 Vector 모델을 이용한 학습 기반(<Figure 1c>) 특징 형상 분류 방법을 구별하였다.

Figure 1.

Comparisons of the Rule-based(a), Learning-based Using Volume Model(b) and Learning-based Using Vector Model(c) Methods

2.1 규칙 기반 특징 형상 분류

규칙 기반 방법(Rule-based Method)은 CAD에서 추출한 기하학적 속성을 미리 준비된 분류 규칙(Rules)에 적용하여 특징 형상을 구별한다(<Figure 1a>). 입력인 3D CAD 모델은 주로 기하학적 면을 연결하여 3차원 형상을 표현하는 Boundary Representation(B-rep) 형식의 자료를 제공한다. 규칙 기반 방법은 특징 형상 분류 과정에서 CAD 모델에서 제공하는 제품의 기하학적 형상 정보를 사용하므로 이를 쉽게 후방 공정 계획 모듈에 전달할 수 있다(<Figure 1a>의 Geometric Info.).

CAD 모델을 이용한 규칙 기반 특징 형상 분류는 논리, 그래프, Volume 분해, Hint 기반 방법 등이 시도되었다(Youn et al., 2023). 일반적으로 특징 형상 분류에 관한 연구는 부품의 가공 특징 형상(Manufacturing Features) 분류 연구가 주를 이루며, 본 로봇 조립 특징 형상 연구는 부품의 특징 형상으로부터 후방 로봇 조립 계획에 사용되는 조립 가능 방향을 결정하는 과정을 대상으로 한다(Do et al., 2023).

로봇 조립 특징 형상 분류에 관한 연구로(Kim and Choi, 2006)는 CAD 모델을 B-rep으로 표현한 STEP 형식 제품 형상 자료에서 자동 조립 계획을 위한 특징 형상을 분류하는 논리적 규칙을 개발하여 평면, Cylinder 그리고 Blind Hole 등의 특징 형상을 분류하였다. Do et al.(2023)은 Kim and Choi(2006)이 제안한 논리 규칙을 이용하여 자동 로봇 조립 계획을 위한 특징 형상 분류 모델을 개발하였다. 또한 Do et al.(2023)은 규칙 기반 특징 형상 분류와 로봇 조립 계획 모듈에 필요한 제품 형상 자료를 통합적으로 제공하기 위하여 파일 대신 CAD 데이터베이스를 사용하였다. Rafibakhsh(2017)는 Tessellated된 CAD 모델로부터 자동 로봇 조립 계획을 위한 특징 형상(Surface)을 추출하기 위하여 Edge와 Surface를 재구성하는 규칙을 개발하였다.

규칙 기반 방법은 매번 응용에 필요한 특징 형상 분류 규칙을 개발해야 하는 문제가 있다. 특징 형상 분류 규칙을 개발하기 위하여 제품 형상의 기하학적 표현과 공정 계획에 관한 상당한 지식을 가진 규칙 개발자가 필요하다. 또한 대상 특징 형상이 상호 연관되어 있을 때 이를 분리하는 규칙도 필요하다. 아울러 규칙 확인을 위한 검색에 많은 컴퓨팅 자원이 필요하다.

2.2 볼륨 모델을 이용한 학습 기반 특징 형상 분류

학습 기반 특징 형상 분류는 훈련 데이터셋을 이용하여 인공 신경망(ANN)을 학습시켜 특징 형상 분류 규칙을 자동으로 생성하고, 훈련된 신경망(생성된 분류 규칙)을 이용하여 예측 데이터셋의 특징 형상을 분류하는 방법이다(<Figure 1b>와 <Figure 1c>). 특징 형상 분류에 사용되는 ANN은 1958년 Frank Rosenblatt가 제안한 Perceptron(Rosenblatt, 1958)이 그 시작으로 알려져 있다. ANN은 복수의 계층을 추가한 심층 신경망(Deep Neural Network: DNN)으로 발전했으며 DNN 중 Filter를 적용하여 Feature Map을 추출하는 합성곱 신경망(Convolution Neural Network: CNN)(LeCun et al., 1989)이 이미지 분류 등에 효과적으로 알려져 있다. CNN은 계층별 Feature Map을 통해 서로 다른 수준의 특징 형상 요소 추출이 가능하므로 특징 형상 분류(Zhang et al., 2018; Kim, 2018; Kim, 2020, Yeo et al., 2021)에 활발히 적용되고 있다.

볼륨 모델 이용 학습 기반 특징 형상 분류는 B-Rep에서 변환한 볼륨 기반 데이터셋을 사용한다(<Figure 1b>의 Convert to Volume Model). 볼륨 모델을 이용한 학습 기반 특징 형상 분류(<Figure 1b>)는 B-rep을 통해 처리하기 복잡한 CAD 모델을 ANN 입력에 적합한 새로운 공간 기반 자료로 변경하는 시도이다. 이 방법은 B-rep 자료를 이용한 규칙 기반 혹은 Vector를 이용한 분류(2.3절 참조)를 벗어나 복잡한 특징 형상을 효과적으로 분류할 수 있는 또 다른 방법을 제안한다. 볼륨 모델을 이용한 접근은 데이터셋의 형태에 따라 크게 점군(Point Cloud) (Kim, 2018), 다중 뷰 이미지(Multi-view Images)(Shi et al., 2020a; Shi et al., 2022) 그리고 Voxel 기반(Zhang et al., 2018)으로 나눌 수 있다.

점군을 이용한 접근은 라이다 등을 이용하여 공간의 점을 스캔한 결과를 DNN의 입력으로 사용하는 방법이다. 본 연구는 3D CAD 모델에서 직접 제품 형상 정보를 얻으므로 점군 기반 접근을 고려하지 않았다. 다중 뷰 이미지 방법은 제품 외부의 다양한 각도에서 촬영한 영상을 이용하여 특징 형상을 구별하는 방법이다. CAD 모델을 이용한 경우 3D 모델의 단면 형상을 이용하여 학습 데이터셋을 생성한다(Shi et al., 2020a; Shi et al., 2022).

볼륨 모델의 하나인 Voxel 모델은 3차원 단위 공간의 점유 여부로 형상을 표현한다. Voxel 모델을 이용한 특징 형상 분류는 부품의 3D 공간 점유 여부를 표시한 3차원 행렬을 입력으로 CNN을 훈련함으로써 특징 형상을 자동으로 분류할 수 있다. Voxel 기반 데이터셋에 대응하기 위하여 2차원 이미지를 처리하는 기존 CNN을 3차원으로 확장할 수 있다. 본 연구는 CAD 모델을 Voxel 기반 데이터셋으로 변환시켜 특징 형상 분류를 위한 3D CNN을 훈련시키는 방법을 채택하였다.

Zhang et al.(2018)은 3D CNN을 이용하여 기계 가공을 위한 Voxel 기반 특징 형상을 분류하는 FeatureNet을 제안하였다. 이 연구는 기계 가공을 위한 Voxel 기반 특징 형상을 분류하고, 복합 특징 형상을 이미지 Segmentation 기능을 이용하여 분리할 수 있다. 하지만 FeatureNet은 후방 가공 공정을 위한 기하학적 정보 전달을 고려하지 않고 특징 형상 분류만 제공한다. Kim(2018)은 점군 데이터셋 기반 CNN을 이용하여 공정 설비 유지 보수를 위한 부품을 분류하는 방법을 제안하였으나, 단순 특징 형상 분류만 제공하고, 분류 이후 공정 계획을 위한 기하학적 정보의 전달을 고려하지 않았다. Shi et al.(2020a), Shi et al.(2022)은 특징 형상 분류 학습을 위한 데이터셋의 크기를 축소하기 위하여 Transfer Learning 기법을 사용한 다중 뷰 기반 CNN인 MVNet을 제안하였다. 하지만 이 방법도 구체적 후방 공정과 공정 계획에 필요한 기하학적 정보의 전달을 다루지 않았다.

볼륨 모델을 이용한 학습 기반 방법의 가장 큰 장점은 응용 분야의 훈련 데이터셋이 준비되면 특징 형상 분류 규칙을 자동으로 생성할 수 있다는 점이다. 이를 통해 규칙 기반 접근에서 발생하는 CAD 자료 모델과 자동 로봇 조립 지식을 기반으로 명시적인 분류 규칙을 작성해야 하는 어려움을 피할 수 있다. 하지만 CAD 모델을 볼륨 모델로 변환하면서 후방 공정 계획에 필요한 기하학적 제품 형상 정보를 전달할 수 없게 된다(<Figure 1b>). 또한, 3차원 볼륨 기반의 데이터셋 준비와 ANN 학습에 상당한 컴퓨팅 자원이 요구되며, CAD 모델을 변경할 때 볼륨 모델의 해상도에 따라 제품의 기하학적 정보가 손실될 수 있다(Zhang et al., 2022).

2.3 Vector 모델을 이용한 학습 기반 특징 형상 분류

Vector 모델을 이용한 학습 기반 특징 형상 분류는 ANN에 필요한 훈련과 예측 데이터셋으로 CAD에서 추출한 속성으로 구성된 Vector를 이용한다(<Figure 1c>). 이 Vector는 CAD 모델에서 특성을 추출하거나 계산한 값을 요소값으로 구성하며, ANN 모델을 통해 분류 클래스별 Vector 요소값의 차이를 학습하여 패턴을 찾을 수 있다.

ANN 개발 초기부터 최근까지 CAD에서 추출한 Vector를 훈련 데이터셋으로 사용하는 다양한 특징 형상 분류가 시도되었다. Hwang(1992)은 1계층 ANN인 Perceptron을 이용하여 3D 특징 형상을 분류하기 위해 B-rep에서 추출한 8D Vector를 사용하였다. Onwubolu(1999)는 DNN을 이용하여 특징 형상을 분류하기 위해 9D Vector를 입력으로 사용하였다. Sunil and Pande(2009)는 특징 형상 분류를 위해 12D Vector를 입력으로 사용하였다. Rafibakhsh(2017)는 로봇 자동 조립 계획을 위해 스프링 부품을 구별하는 면 개수와 에지 비율을 이용한 Vector를 개발하였다.

볼륨 데이터셋을 이용한 학습 기반 특징 형상 분류는 B-rep을 볼륨 모델로 전환하며 특징 형상 분류와 연결된 기하학적 정보가 손실되므로 기하학적 정보를 후방 공정 계획에 전달할 수 없다. Vector를 이용한 학습 기반 특징 형상 분류는 CAD 모델에서 특징 형상 분류와 공정 계획에 필요한 속성을 Vector로 전환하여 ANN 학습을 위한 훈련 데이터셋을 제공한다. 이 방법는 특징 형상 분류가 완성되면 관련 Vector를 변환하여 공정 계획에 필요한 기하학적 정보를 제공한다(<Figure 1c>의 Vectors 참조). 기하학적 정보 전달을 고려한 Vector로 형상 분산(Shape Distribution)(Kim, 2020)과 Feature Descriptor(Yeo et al., 2021)를 예로 들 수 있다.

Vector를 이용한 학습 기반 특징 형상 분류는 Voxel이나 점군 3D 자료 등 볼륨 기반 특징 형상 분류에 비하여 DNN 훈련을 위한 데이터셋 준비와 처리 시간 등에서 유리한 것으로 알려져 있다(Kim, 2020; Yeo et al., 2021). 하지만 Vector를 이용한 방법은 Vector를 생성하는 방법과 이를 다시 전환하는 모델을 개발해야 하는 부담을 가진다(Zhang et al., 2022).

본 연구는 자동 로봇 조립 계획을 위한 볼륨 모델을 이용한 학습 기반 특징 형상 분류 방법을 제안한다. 제안한 방법은 Voxel 모델에 조립 가능 방향을 통합하여 추가 Vector 변환 없이 특징 형상 분류와 로봇 조립 계획을 위한 기하학적 제품 형상 정보인 조립 가능 방향을 제공할 수 있다.


3. 자동 로봇 조립 계획을 위한 특징 형상 분류

3.1 자동 로봇 조립 계획을 위한 특징 형상 분류

본 연구의 대상인 로봇 조립 특징 형상 분류는 TRIP(Team Robotics Intelligence Platform)으로 불리는 CAD와 BOM 데이터베이스 기반 자동 로봇 조립 계획 아키텍처(Do et al., 2023)의 구성 요소로서 개발되었다(<Figure 2>의 색칠된 첫째 단계). TRIP은 조립품의 3D CAD 모델로부터 자동으로 로봇 조립 계획을 생성하는 CAPP 아키텍처이다. TRIP에서 제공하는 자동 로봇 조립 계획의 3단계는 다음과 같다(<Figure 2> 참조).

Figure 2.

Process for the Automated Robot Assembly Planning(Do et al., 2023)

첫째 단계는 개별 조립 부품의 로봇 조립 특징 형상 분류를 통해 조립 가능 방향을 결정하는 단계이다. 기존 시스템(Do et al., 2023)은 규칙 기반 특징 형상 분류 방법으로 구현되어 있다. 둘째 단계는 조립에 참여하는 부품의 조립 순서(Assembly Order)를 결정하고, 그 결과를 BOM 데이터베이스에 생산 BOM(Manufacturing BOM: M-BOM)으로 저장한다. 이 과정에서 조립 가능 방향을 이용하여 조립 가능성을 확인하고 조립 방향을 결정한다. 마지막 셋째 단계는 M-BOM과 제품 형상을 이용하여 로봇팔의 경로인 로봇 조립 계획을 작성하고 그 결과를 기존 BOM 체계와 통합된 공정 BOM(Process BOM: P-BOM)으로 저장한다.

본 연구에서 제안하는 3D CNN 기반 로봇 조립 특징 형상 분류는 규칙 기반 방식으로 구현된 TRIP의 첫째 구성 요소(<Figure 2>의 색칠된 첫째 단계)를 대체한다. 본 연구에서 제안한 3D CNN 기반 특징 형상 분류는 자동화된 후방 공정(자동 조립 순서 결정과 로봇 조립 계획)의 선행 공정으로 사용되므로 후방 공정에서 필요한 조립 가능 방향 정보를 포함한 모델을 사용하였다. 이처럼 자동화된 시스템 일부로서 동작하는 특징 형상 분류는 자체로서 완결되기보다 후방의 컴퓨터 기반 공정 계획의 입력으로 사용되므로 이에 대한 고려가 필요하다.

3.2 조립 가능 방향 결정을 위한 규칙 기반 특징 형상 분류

규칙 기반 특징 형상 분류는 형상 객체 속성값이 If-then 형식의 조건을 만족하는지 확인하는 방법이다. <Figure 3>은 <Figure 2>의 자동 로봇 조립 계획에 적용된 규칙 기반 모듈이 Blind Hole 특징 형상을 분류하는 예를 보여준다.

Figure 3.

Example of Rule-based Blind Hole Feature Detection

예제 부품은 기하 형상이 원이고 경계 엣지 연결(Bound Edges)의 수가 2인 면(Face)을 1개 가지므로 Boss나 Blind Hole 특징 형상을 가진다(<Figure 3>의 # of face bound edges =2). 경계 엣지 연결이 2개인 면은 도넛 단면처럼 외부 경계와 내부 경계를 동시에 가지는 면이다. 형상 축이 +z 방향일 경우, 다중 경계 에지 면을 구성하는 점(Vertices)의 z 좌표값이 같은 x, y 좌표를 가지는 부품 내 모든 점의 z 좌표값보다 작으면 Boss, 그렇지 않으면 Blind Hole로 분류한다. Blind Hole 특징 형상을 가진 부품의 조립 가능 방향은 부품의 경계 엣지 연결의 수가 2인 면의 수직 방향 중 개방된 쪽으로 정해진다. <Figure 3>의 예제 부품의 경우 +z 방향이 조립 가능 방향이 된다.

자동 로봇 조립 계획에 규칙 기반 특징 형상 분류 방법을 실제 적용 후 다음과 같은 추가 문제를 발견하였다. 첫째, 규칙 검사를 위해 복잡한 제품 형상 객체의 관계에 대한 효율적 검색이 필요하다. 자동 로봇 조립 계획에 관한 이전 연구(Do et al., 2023)는 특징 형상 분류를 포함한 로봇 조립 계획 과정에 필요한 효율적 형상 객체 검색을 위하여 관계형 데이터베이스 기반 CAD 데이터베이스를 구축하였다.

둘째, 특징 형상 분류 규칙은 특징 형상과 관계없는 모든 형상 객체를 검색하고 확인해야 한다. 예로 부품 형상에 특징 형상과 관계없는 Fillet 형상이 추가되어도 B-rep 모델에 관련 객체가 생성되므로 이를 제외하는 규칙을 구현해야 한다.

셋째, 새로운 특징 형상 분류가 필요할 경우 기존 객체와 관계를 고려한 분류 규칙을 추가로 개발하고 구현해야 한다. 이는 둘째 요구와 함께 분류 대상이 늘어날수록 복잡하고 방대한 형상 관계 검색과 규칙 준수 검사 프로시저의 구현을 요구한다.

3.3 조립 가능 방향 결정을 위한 Voxel 기반 특징 형상 분류

기존 규칙 기반 특징 형상 분류 문제를 해결하기 위하여 Voxel 모델을 이용한 3D CNN을 도입하였다. Voxel 기반 특징 형상 분류 CNN은 분류 규칙을 자동으로 생성하므로 특징 형상 분류에 대한 명시적 규칙을 개발하고 구현할 필요가 없다. 또한 CNN은 Feature Map을 통해 일반적으로 구분이 어려운 복잡한 특징 형상 패턴을 분류할 수 있으므로 부가적인 형상, 형상 변화 그리고 방대한 형상 검색의 부담에서 벗어날 수 있다.

<Figure 4>는 <Figure 3>의 규칙 기반 특징 형상 분류와 대응되는 Voxel 기반 Blind Hole 특징 형상 분류 예이다. <Figure 4>는 B-rep CAD 모델을 64x64x64 3차원 공간 점유 여부로 전환한 Voxel 모델을 가시화하였다. Voxel 모델은 2차원 이미지를 3차원으로 확장한 것으로 볼 수 있으므로 이미지 분류에 뛰어난 CNN을 3차원으로 확장한 3D CNN을 분석 모델로 사용하였다.

Figure 4.

Voxel Models for Integrated form Features And Candidate Assembly Directions

본 연구는 부품의 조립 가능 방향을 Voxel 모델에 통합하기 위하여 3D CNN 훈련 데이터셋을 특징 형상 종류와 조립 가능 방향별로 분류하였다. <Figure 4>는 Blind Hole 특징 형상을 ±x, ±y, ±z 방향을 가지는 6개 서로 다른 특징 형상으로 분류하였다. 그러므로 학습된 3D CNN은 서로 다른 6개 Blind Hole 특징 형상을 구별하도록 훈련된다. 제안한 방법은 Voxel을 이용한 데이터셋에 특징 형상과 조립 가능 방향을 통합함으로써 추가 Vector 전환이 없이 후방 로봇 조립 계획에 기하학적 정보인 조립 가능 방향을 전달할 수 있다.

제안한 방법을 사용하면 <Figure 1a>, <Figure 1b> 그리고 <Figure 1c>와 비교되는 <Figure 5>의 구조를 제안할 수 있다. <Figure 5>의 구조는 <Figure 1b>와 같이 특징 형상 분류 CNN을 학습시키기 위하여 CAD 모델을 Voxel 모델로 전환한다. Voxel 모델은 B-rep 모델에서 단순 전환 과정을 거쳐 추출할 수 있다. Voxel 모델은 특징 형상의 종류뿐만 아니라 조립 가능 방향도 분류하므로 Vector화 노력 없이 후방 로봇 조립 계획에 필요한 조립 가능 방향 정보를 전달할 수 있다(<Figure 5>의 Asm. Direction 참조).

Figure 5.

The proposed process for robot assembly form feature recognition


4. 조립 특징 형상 분류 3D CNN 개발

4.1 데이터셋 준비

본 연구는 특징 형상 분류 3D CNN을 훈련하기 위하여 Voxel 기반 합성 데이터셋(Voxel-based Synthetic Dataset)을 준비하였다. CNN은 입력된 훈련 데이터셋을 학습하여 스스로 특징 형상을 분류할 수 있게 되므로 다른 특징 형상 분류가 필요할 경우 데이터셋만 변경하여 훈련하면 된다. 그러므로 본 연구는 이전 연구(Do et al., 2023)와 비교를 위해 이전 연구에서 사용한 동일 예제(<Figure 6>의 Asm C 참고)의 로봇 조립 특징 형상 분류를 지원하는 훈련 데이터셋을 준비하였다.

Figure 6.

Example Product and its Product Structure

본 연구에서 분류 클래스는 예제 제품의 구성 부품이 가지는 모든 특징 형상 종류를 뜻한다. 이때 로봇 조립 특징 형상은 형상의 모양뿐만 아니라 조립 가능 방향까지 고려하여 구분된다. 적용된 로봇 조립 가능 방향은 이전 연구와 동일한 ±x, ±y, ±z 방향으로 제한한다.

조립 가능 방향이란 각 특징 형상을 가지는 부품이 조립될 수 있는 방향을 뜻한다. <Figure 7>에 Asm C 구성 부품에 포함되는 Cylinder, Tube 그리고 Base 부품의 특징 형상과 조립 가능 방향을 표시하고 있다. Top 부품은 Base 부품과 조립 가능 방향이 반대인 Blind Hole 특징 형상을 가진다.

부품의 특징 형상이 Cylinder나 Through Hole로 분류되면 조립 가능 방향이 축의 양쪽이 된다. 예로 <Figure 7>의 Cylinder나 Tube 부품의 경우 부품 축이 +z 축 방향이므로 ±z 방향이 조립 가능 방향이다. Blind Hole 특징 형상의 경우 축 방향 중 면이 열린 방향으로만 조립할 수 있다. 예로 <Figure 7>의 Base 부품의 특징 형상이 Blind Hole이므로 +z 방향만 조립할 수 있다. 그러므로 로봇 조립 특징 형상을 구별하면 부품의 조립 가능 방향이 결정되며, 이에 따라 로봇 조립 가능성을 검사하고 조립 계획을 생성할 수 있다(Do et al., 2023).

<Figure 7>의 특징 형상 외에 Plan, Slot, Step, Pocket 그리고 Boss 등의 다양한 특징 형상에 대한 조립 가능 방향을 결정할 수 있다(Kim and Choi, 2006). 또한 구성 부품의 조립 가능 방향을 이용하여 두 구성품이 조립 가능한지 확인하고 조립품의 조립 가능 방향을 결정할 수 있다(Do et al., 2023). 예로 <Figure 7>의 Cylinder와 Blind Hole 특징 형상이 조립된 Cylinder + Base 조립품은 각각의 조립 가능 방향 중 -z와 +z가 서로 반대 방향으로 상쇄되고, 조립품의 조립 가능 방향은 두 구성 부품의 나머지 조립 가능 방향인 +z가 된다.

Figure 7.

Candidate Assembly Directions of Cylinder, Tube and Base

<Figure 8>은 Asm C 제품에 적용되는 12종의 로봇 조립 특징 형상을 보여준다. 본 연구에서 특징 형상은 Cylinder, Through Hole 그리고 Blind Hole로 분류되며, 조립 가능 방향을 부품의 축 양쪽 방향 2개를 가지는 Cylinder와 Through Hole은 x, y, z 방향 3개 특징 형상 클래스로 세분화(특징 형상 00~02와 특징 형상 03~05)되며, 개방된 방향으로만 조립되는 Blind Hole은 ±x, ±y, ±z 총 6개 특징 형상 클래스로 세분화(특징 형상 06~11)된다.

Figure 8.

12 Robot Assembly form Features for Asm C

본 연구는 3D CNN을 학습시키기 위하여 각 특징 형상 당 정한 수량의 합성 데이터셋을 자동으로 생성한다. 이를 위해 CAD 응용 프로그램을 개발하여 한 번의 길이가 100mm인 정육면체 공간 안에서 정해진 범위의 형상 치수를 랜덤하게 결정한 CAD 모델을 생성한다. 예로 <Figure 9>의 06 Blind Hole Z0의 특징 형상은 ‘높이’ H는 30~70mm, ‘외부 반지름’ R이 30~50mm, ‘내부 반지름’ r은 ‘외부 반지름’의 1/3에서 ‘외부 반지름’-3mm 그리고 ‘Blind Hole 깊이’ h는 ‘높이’의 1/3에서 ‘높이’-5mm 사이의 값을 가지는 다수의 특징 형상 CAD 모델을 무작위로 생성한다.

Figure 9.

Constraints on Dimensions of Auto Generated Blind Hole CAD Models

<Table 1>은 12개 클래스에 적용된 치수 값의 제약 조건을 표시하였다. 12개 클래스에 대하여 무작위 치수를 가진 CAD 모델을 20개씩 생성하여 총 240개의 데이터셋 샘플을 생성하였다. 본 연구는 특징 형상과 조립 가능 방향의 조합을 분류 클래스값으로 가지는 기계 학습 데이터셋의 가능성을 확인하기 위하여 적은 수의 샘플 수를 가지는 데이터셋으로부터 시작하여 90% 이상의 정확도를 가지는 모델이 생성될 때까지 샘플 수를 증가하는 방식으로 진행되었다. 모델 학습 결과 240개의 비교적 적은 샘플 수를 적용한 학습에서 요구하는 정확도가 나왔으며, 적은 수의 샘플이 가능한 이유는 64×64×64 크기의 단위 샘플 자료 크기와 12개의 적은 클래스 수 때문으로 예측된다.

Constraints on Dimensions of Auto Generated CAD Models

각 특징 형상별로 자동 생성된 CAD 모델은 B-rep 형식으로 표현되어 있다. CNN 학습을 위해 B-rep 형식의 부품 형상 자료를 3차원의 공간 점유 열거 모델인 Voxel로 전환한다. CAD 모델은 형상의 공간 정보를 표현하는 Obj 파일 형식으로 변환되며, 다시 OBJ 파일을 Voxel로 변환한다.

단위 공간 점유 여부를 True와 False로 표현한 Voxel 값은 CNN 모델 훈련을 위하여 0.5와 -0.5를 원소값으로 가지는 3차원 행렬로 변경한다. 행렬 자료는 Python의 행렬 연산 모듈에서 제공하는 Numpy Array 형식(Numpy, 2024)으로 변환하여 CNN 훈련에 입력한다. 그러므로 총 240개의 Voxel 샘플을 (240, 64, 64, 64) 행렬의 데이터셋으로 전환한다. 별도로 데이터셋의 각 샘플에 대응하는 클래스 값을 가지는 240개 크기의 행렬을 준비한다.

<Figure 10>은 앞에서 설명한 데이터셋 준비를 자료 처리 과정(직사각형), 입출력(수평 화살표) 그리고 사용 도구와 규칙(수직 화살표)을 그림으로 표시하였다. 사용 도구에 대한 소개와 참고 자료는 4.4절에서 다룬다.

Figure 10.

Data Processing for Voxel Dataset from 3D CAD Models

4.2 3D CNN 구성

본 연구의 3D CNN은 Zhang et al.(2018)이 제안한 FeatureNet을 기반으로 여러 번의 시험을 통해 적절한 손실(Loss) 함수값과 정확도(Accuracy) 값이 나올 수 있도록 변형하였다. <Figure 11>은 본 연구에서 최종 구성하여 훈련한 3D CNN의 구조이다.

Figure 11.

Configuration of the Proposed 3D CNN

3D CNN의 입력 크기는 단위 특징 형상의 Voxel 크기인 64×64×64로 하였다. 출력은 특징 형상 종류(클래스)의 개수인 12로 구성하였다.

3D 합성곱(<Figure 11>의 Conv3D) 층은 총 4개로 각각 32, 32, 64 그리고 64개의 3차원 필터를 가진다. 각 층의 3D 필터의 크기는 7×7×7, 5×5×5, 4×4×4 그리고 2×2×2 크기를 가진다. 3D 합성곱 층은 활성화 함수(Activation Function)로 ReLU 함수를 사용하였다. 3D 합성곱 층 뒤에 2×2×2 크기의 3D 최대값 풀링 층(Max Pooling Layer)을 추가하였다. 2개의 완전 연결 층(Fully Connected Layer)은 각각 128개와 12개 노드로 구성되었으며 128 노드 완전 연결 층에 30%의 Dropout을 적용하였다. Softmax 층은 12개 특징 형상의 종류별 확률을 출력하며, 가장 높은 확률이 출력되는 노드가 예측되는 특징 형상의 종류를 뜻한다. <Table 2>는 제안된 모델의 계층 종류, 필터 수, 뉴론의 구조, Activation 함수 그리고 드롭아웃 여부를 정리하였다.

최종 모델은 총 1,406,508개의 훈련 가능 파라미터를 가지는 3D CNN을 구성하였다. 제안한 CNN은 정수 클래스값을 가진 12개 다중 분류이므로 Sparse Categorial Cross-entropy 손실 함수를 사용하였다. 모델의 손실 함수값 외에 정확도 출력을 위해 Accuracy를 평가 지표로 추가하였다.

Layers of the Suggested 3D CNN Model

4.3 3D CNN 훈련 및 시험

특징 형상 분류 3D CNN 훈련을 위하여 3.1절에서 설명한 64×64×64 Voxel 240개를 전환한 (240, 64, 64, 64) 형태의 행렬을 사용하였다. 240개 샘플 중 168개(70%)를 훈련(Training)에 사용하고 72개(30%)를 검증(Validation)에 사용하였다. 학습의 Batch Size = 40으로 정하였으며, Callback 함수를 이용하여 3회 이상 개선이 이루어지지 않으면 자동으로 학습을 마치고 해당 회수의 CNN 모델과 변수를 파일로 저장하도록 하였다.

특징 형상 분류 3D CNN 훈련 결과로 Loss는 훈련과 검증에서 각각 0.19와 0.53, Accuracy는 훈련과 검증에서 각각 0.98과 0.93이 계산되었다. 훈련 진행에 따른 Loss와 Accuracy의 변화는 <Figure 12>의 (a)와 (b)에 각각 나타나 있다.

Figure 12.

(a) and (b) Shows Training and Validation Dataset Loss and Accuracy

<Figure 13>은 3D CNN 훈련에 사용한 검증 데이터셋(72개 샘플)을 이용하여 작성한 혼동 행렬(Confusion Matrix)을 보여준다.

Figure 13.

Confusion Matrix Generated from Validation Dataset

<Table 3>은 <Figure 13>의 클래스별 모델 성능을 보여준다. True 속성은 클래스별 실제 존재 수량이고 Predict는 모델이 예측한 샘플 수이다. 민감도(Sensitivity)는 선택해야 할 샘플을 모두 선택할 수 있는 능력이다. 정밀도(Precision)는 예측 결과 중에 실제 클래스와 일치하는 비율이다. 정확도(Accuracy)는 실제 클래스를 선택하고 존재하지 않은 클래스를 선택하지 않을 비율이다. 전체 민감도, 정밀도 그리고 정확도는 0.93, 0.95 그리고 0.88로 평가되었다. 클래스 중 06을 07 클래스로 잘못 예측(클래스 07의 샘플 2개를 06으로 예측)한 것이 두 클래스별 모델 성능 지표를 떨어뜨렸다. 두 클래스에 해당하는 Feature는 Blind Hole의 Z+와 Z- 방향 특징 형상(<Figure 8> 참조)이다.

Model Evaluation Metrics by the Classes

<Figure 14>는 훈련된 3D CNN을 이용하여 기존 연구[Do et al., 2023]에서 사용한 Asm C의 4개 구성 부품을 Voxel로 변경 후 특징 형상을 예측한 결과를 보여준다. 이 중 Base, Cylinder 그리고 Tube는 서로 다른 특징 형상을 가지며, Base와 Top은 기본 특징 형상(Blind Hole)은 같으나 그 방향이 반대인 특징 형상(class=06과 class=07)이다. 적용된 부품은 3D CAD 모델에 Chamfer와 Fillet 등 특징 형상과 관계없는 기하 형상이 포함되었지만, 그 특징 형상 분류가 가능하였다.

Figure 14.

Result of Prediction of Example Components with Trained 3D CNN

기존 연구에 적용한 규칙 기반 방법과 본 논문에서 제안한 학습 기반 방법은 CAD 모델을 입력받아 특징 형상과 조립 방향을 분류하는 동일 기능을 제공한다. 하지만 규칙 기반 방법은 분류를 위하여 CAD 모델의 기하학적 특성을 이용한 분류 규칙 자체를 프로그래밍하는 반면, 제안한 학습 기반 방법은 CAD 모델로부터 데이터셋을 추출하여 모델을 학습시키면 분류 규칙을 자동으로 생성한다. 그러므로 제안한 학습 기반 방법을 적용하면 규칙 기반 방법의 복잡한 기하학적 형상 속성을 적용하여 규칙을 개발해야 하는 과정을 피할 수 있다.

4.4 모듈 통합과 구현 소프트웨어와 하드웨어

구현된 특징 형상 분류 모듈은 <Figure 2>의 자동 로봇 조립 계획 체계의 규칙 기반 특징 형상 분류 모듈을 대체하였다. 학습 기반 모듈은 기존 규칙 기반 모듈과 구현 방법이 다르나, 같은 입력(CAD 모델)과 출력(특징 형상 종류와 조립 가능 방향)을 제공하므로 모듈 변경과 데이터셋 준비 과정을 거쳐 자동 로봇 조립 계획 체계에 통합할 수 있었다. 특징 형상 분류를 포함한 전체 자동 로봇 조립 계획 체계의 작동은 Do et al.(2023)에 설명되었다.

3D CNN과 Voxel 기반 데이터셋을 준비하기 위하여 다음과 같은 소프트웨어와 하드웨어가 사용되었다. 3D CAD 모델을 생성하기 위하여 FreeCAD(FreeCAD, 2024a) 소프트웨어를 사용하였다. 훈련 데이터셋으로 사용될 3D CAD 모델을 무작위로 생성하기 위하여 FreeCAD의 Python Macro(FreeCAD, 2024b)를 사용하였다.

FreeCAD로 생성된 B-rep 형식의 CAD 모델을 Voxel 모델로 변경하기 위하여 binvox 유틸리티 소프트웨어(Min, 2024)를 사용하였다. Voxel 모델을 Python 프로그램에서 다차원 행렬로 처리하기 위하여 binvox-wr 모듈(Maturana, 2024)과 Numpy 모듈(Numpy, 2024)을 사용하였다.

3D CNN을 구현하기 위하여 Keras의 conv3D 모듈(Keras, 2024)을 사용하였다. 또한 3D CNN에 필요한 자료 준비와 훈련을 위하여 Scikit-learn에서 제공하는 데이터 분석 모듈(Scikit-learn, 2024)을 사용하였다. 3D CNN의 구성과 훈련을 위하여 사용한 컴퓨터의 CPU는 2.90GHz Intel i7이며 GPU는 1개의 NVIDIA GeForce RTX 3080이다.


5. 토론 및 결론

5.1 제안한 로봇 조립 특징 형상 분류 방법의 한계와 가능성

본 연구에서 제안한 학습 기반 특징 형상 분류 방법은 후방 공정 계획에 필요한 조립 가능 방향을 제공하기 위해 Voxel 기반 특징 형상 분류에 조립 가능 방향을 통합하였다. 하지만, 특징 형상 분류와 조립 가능 방향을 통합하는 Voxel 기반 접근은 다음의 한계를 가진다.

첫째, Voxel로 표현한 클래스로 연속적인 조립 방향을 표현할 수 없다. 제안한 방법은 정해진 몇 개 주요 방향( ±x, ±y, ±z)을 포함하는 것은 가능하나 연속적으로 변화되는 방향 값을 표현할 수 없다. 반면 규칙 기반 방법은 CAD 모델에서 추출한 기하학적 객체를 그대로 전달할 수 있어 연속적인 조립 가능 방향을 표현할 수 있다. 둘째, 특징 형상 클래스에 축 방향을 포함하면 같은 부품 형상이라도 조립 방향에 따라 목표 클래스 종류가 늘어난다. 예로 <Figure 8>의 Blind Hole 특징 형상은 조립 방향 별로 6개 클래스가 필요하다. 셋째, Voxel의 해상도와 클래스의 수의 증가 등에 따라 입력 자료의 양이 늘어나고 이에 따라 필요 컴퓨팅 자원과 훈련 시간이 급격히 늘어난다. 특히 3D 객체는 클래스의 종류가 늘어날수록 처리해야 할 자료가 급격히 증가한다.

마지막으로 제안한 방법의 가장 큰 제약은 특징 형상 분류와 통합할 수 있는 기하학적 정보가 제한적이라는 점이다. 본 논문에서 제안한 자동 로봇 조립 계획에서 조립 가능 방향은 특징 형상 분류와 통합할 수 있는 기하학적 정보지만, 기계 가공에서 많이 필요한 특정 평면이나 곡선 등의 기하학적 정보는 Voxel 기반 클래스와 통합하기 어렵다. 이 경우 2장에서 언급한 Vector 화를 통해 기하학적 정보를 후방 공정에 전달할 수 있다. 예로 Yoe et al.(2021)은 Feature Descriptor 객체를 이용하여 B-rep의 기하학적 특징을 정수로 인코딩하여 특징 형상 분류에 사용하는 동시에 후방 공정 계획에 전달한다. 그러므로 특징 형상 분류는 응용 분야에 따라 볼륨과 Vector 모델을 구별하여 사용할 필요가 있다.

본 연구에서 제안한 방법의 가장 큰 장점은 자동화가 가능한 단순한 과정만 거치면 특징 형상 분류 규칙을 생성할 수 있는 점이다. CAD 모델은 프로그램을 통해 자동으로 Voxel 훈련 데이터셋으로 전환할 수 있으며, 3D CNN 정의 자체는 특징 형상 분류 응용과 직접적 관계없는 일반적인 모델이다. Voxel을 이용한 훈련 데이터셋과 3D CNN만 준비되면 기계 학습을 통해 특징 형상 분류 규칙이 자동으로 생성된다. 추후 컴퓨팅 능력을 향상하면 분류 대상 클래스를 증가시켜 좀 더 세분된 조립 가능 방향 분류가 가능할 것이다. 이 경우 단순 처리 방법을 사용하는 제안된 방법이 응용 대상 확장에 유리할 것으로 예측된다.

5.2 결론

본 연구는 자동 로봇 조립 계획에 적용할 조립 가능 방향과 특징 형상을 분류하기 위한 Voxel 기반 3D CNN을 제안하였다. 본 연구는 3D CAD을 변환하여 Voxel 기반 합성 데이터셋을 생성하고 3D CNN을 훈련하였다. 연구 결과를 이용하여 기존 자동 로봇 조립 계획에 적용하였던 규칙 기반 특징 형상 분류 모듈을 대신하는 기능을 구현하였다.

제안한 특징 형상 분류를 위한 3D CNN과 규칙 기반 방법을 비교한 결과, 제안한 방법은 특별한 규칙을 개발할 필요 없이 특징 형상 분류 규칙을 자동으로 구축할 수 있는 장점이 있었다. 또한 Vector화 필요 없이 후방 공정에 필요한 조립 가능 방향 정보를 전달함으로써 기존 Voxel 기반 방법에서 CAD의 형상 모델이 후방 공정과 단절되는 문제를 해결하였다. 또한 비록 제안한 Voxel 기반 3D CNN이 로봇 조립 계획 후방 공정에서 필요한 조립 가능 방향을 포함한 특징 형상 분류가 가능하였으나, 연속적인 조립 가능 방향 표현 등에서 한계가 있음을 확인하였다.

추후 연구로 자동 로봇 조립 계획에 적용되는 복수의 기계 학습을 지원하기 위해 ANN 모델과 데이터셋을 통합 관리할 수 있는 제품 자료 모델 연구를 계획하고 있다.

Acknowledgments

이 논문은 2024년도 정부(과학기술정보통신부)의 재원으로 정보통신기획평가원의 지원을 받아 수행된 연구임(No.2022-0-00187, 제조 장비·로봇의 지능화를 위한 엣지 브레인 프레임워크 개발, No.2022-0-01049, 자율적 로봇 작업계획 및 작업동작에 기반한 스마트공장 티칭리스 제품 조립 시스템 개발).

References

  • Do, N., Han, H., and Cho, J. (2023), Developing an Architecture of an Automated Robot Assembly Planning System, Journal of KIEE, 49(3), 237-247. [https://doi.org/10.7232/JKIIE.2023.49.3.237]
  • FreeCAD (2024a), FreeCAD, https://www.freecad.org, .
  • FreeCAD (2024b), Scripting in FreeCAD, https://wiki.freecad.org, .
  • Hwang, J. L. (1992), Applying the perceptron to three-dimensional feature recognition, PhD thesis, Arizona State University.
  • Keras (2024), Conv3D, https://keras.io/api/layers/convolution_layers/convolution3d/, .
  • Kim, K.-S. and Choi, H.-G. (2005), STEP-based Algorithms for Extraction and Code Generation of Assembly Information, Korean Journal of Computational Design and Engineering, 10(6), 412-420.
  • Kim, B. C. (2018), Shape Recognition of Plant Equipment from 3-D Scanned Point Cloud Data Using a Convolutional Neural Network, Trans. Korean Soc. Mech. Eng. A, 42(9), 863~869. [https://doi.org/10.3795/KSME-A.2018.42.9.863]
  • Kim, B. C. (2020), Classification of the Three-Dimensional Point Clouds of Plant Piping Parts Using a Shape Distribution and Convolutional Neural Network, Trans. Korean Soc. Mech. Eng. A, 44(4), 313~320. [https://doi.org/10.3795/KSME-A.2020.44.4.313]
  • LeCun, Y., Bottou, L., Bengio, and Y., Haffner, P. (1998), Gradient-based learning applied to document recognition, Proceedings of the IEEE, 86(11), 2278–2324. [https://doi.org/10.1109/5.726791]
  • Maturana, D. (2024), binvox-wr-py, https://github.com/dimatura/binvox-rw-py, .
  • Min, P. (2024), binvox, http://www.patrickmin.com/binvox, .
  • Numpy (2024), Numpy, https://numpy.org, .
  • Onwubolu, G. C. (1999), Manufacturing features recognition using backpropagation neural networks, Journal of Intelligent Manufacturing, 10(3-4), 289-299. [https://doi.org/10.1023/A:1008904109029]
  • Rafibakhsh, N. (2017), Automated assembly planning: From CAD model to virtual assembly process, Doctoral Thesis, Oregon State University.
  • Rosenblatt, F. (1961), Principles of neurodynamics: Perceptrons and the theory of brain mechanisms, Cornell Aeronautical Lab Inc. [https://doi.org/10.21236/AD0256582]
  • Scikit-learn (2024), Scikit-learn, https://scikit-learn.org/, .
  • Shi, P., Qi, Q., Qin, Y., Scott, P. J., and Jiang, X. (2020a), A novel learning-based feature recognition method using multiple sectional view representation, Journal of Intelligent Manufacturing, 31, 1291-1309. [https://doi.org/10.1007/s10845-020-01533-w]
  • Shi, Y., Zhang, Y., and Harik, R. (2020b), Manufacturing feature recognition with a 2D convolutional neural network, CIRP Journal of Manufacturing Science and Technology, 30, 36-57. [https://doi.org/10.1016/j.cirpj.2020.04.001]
  • Shi, P., Qi, Q., Qin, Y., Scott, P. J., and Jiang, X. (2022), Highly interacting machining feature recognition via small sample learning, Robotics and Computer-Integrated Manufacturing, 73, 102260. [https://doi.org/10.1016/j.rcim.2021.102260]
  • Sunil, V. and Pande, S. (2009), Automatic recognition of machining features using artificial neural networks, The International Journal of Advanced Manufacturing Technology, 41(9-10), 932-947. [https://doi.org/10.1007/s00170-008-1536-z]
  • Yeo, C., Kim, B. C., Cheon, S., Lee, J., and Mun, D. (2021), Machining feature recognition based on deep neural networks to support tight integration with 3D CAD systems, Scientific Reports, 11, 22147. [https://doi.org/10.1038/s41598-021-01313-3]
  • Yun, H., Kim, E., Kim, D. M., Park, H. W., and Jun, M. B (2023), Machine Learning for Object Recognition in Manufacturing Applications, International Journal of Precision Engineering and Manufacturing, 24, 683-712. [https://doi.org/10.1007/s12541-022-00764-6]
  • Zhang, Z., Jaiswal, P., and Rai, R. (2018), FeatureNet: Machining feature recognition based on 3D Convolution Neural Network, Computer-Aided Design, 101, 12-22. [https://doi.org/10.1016/j.cad.2018.03.006]
  • Zhang, H., Zhang, S., Zhang, Y., Liang, J. and Wang, Z. (2022), Machining feature recognition based on a novel multi-task deep learning network, Robotics and Computer-Integrated Manufacturing, 77, 102369. [https://doi.org/10.1016/j.rcim.2022.102369]
저자소개

도남철 : 포항공과대학에서 1996년 박사학위를 취득하고, 현재 경상국립대학교 산업시스템공학부 교수로 근무 중이다. 연구분야는 Bill of Material 표현, Product Data Analytics, 스마트 제품 서비스 시스템 그리고 로봇 조립을 위한 CADCAM 데이터베이스 개발이다.

한효녕 : 한국과학기술원 기계공학과에서 2013년 박사학위를 취득하고 한국전자통신연구원 디지털융합연구소에 재직 중이다. 연구분야는 스마트팩토리, 지능형 설비, 로봇AI 이다.

조준면 : 한국과학기술원(KAIST)에서 1993년에 공학사, 2006년에 공학박사 학위를 취득하고 현재 한국전통신연구원 지능제조융합연구실 책임연구원으로 재직 중이다. 연구분야는 지식베이스 시스템(knowledge-based systems), 자동계획(automated planning), AI 로봇이다.

Figure 1.

Figure 1.
Comparisons of the Rule-based(a), Learning-based Using Volume Model(b) and Learning-based Using Vector Model(c) Methods

Figure 2.

Figure 2.
Process for the Automated Robot Assembly Planning(Do et al., 2023)

Figure 3.

Figure 3.
Example of Rule-based Blind Hole Feature Detection

Figure 4.

Figure 4.
Voxel Models for Integrated form Features And Candidate Assembly Directions

Figure 5.

Figure 5.
The proposed process for robot assembly form feature recognition

Figure 6.

Figure 6.
Example Product and its Product Structure

Figure 7.

Figure 7.
Candidate Assembly Directions of Cylinder, Tube and Base

Figure 8.

Figure 8.
12 Robot Assembly form Features for Asm C

Figure 9.

Figure 9.
Constraints on Dimensions of Auto Generated Blind Hole CAD Models

Figure 10.

Figure 10.
Data Processing for Voxel Dataset from 3D CAD Models

Figure 11.

Figure 11.
Configuration of the Proposed 3D CNN

Figure 12.

Figure 12.
(a) and (b) Shows Training and Validation Dataset Loss and Accuracy

Figure 13.

Figure 13.
Confusion Matrix Generated from Validation Dataset

Figure 14.

Figure 14.
Result of Prediction of Example Components with Trained 3D CNN

Table 1.

Constraints on Dimensions of Auto Generated CAD Models

Shape Id Class Name Parameters
00, 01, 02 cylinder Z, X, Y 70 ≤ H ≤ 100,
15 ≤ R ≤ 25
03, 04, 05 through hole Z, X, Y 70 ≤ H ≤ 100,
30 ≤ R ≤ 40,
R/2 ≤ r ≤ R-3
06, 07, 08, 09, 10, 11 blind hole Z0, Z1, X0, X1, Y0, Y1 30 ≤ H ≤ 70,
30 ≤ R ≤ 50,
H/3 ≤ h ≤ H-5,
R/3 ≤ r ≤ R-3

Table 2.

Layers of the Suggested 3D CNN Model

Layer Type Filters Neuron Structure Activation Dropout
0 Input 1 64×64×64
1 Convolution 3D 32 7×7×7 ReLU
2 Convolution 3D 32 5×5×5 ReLU
3 Max Pooling 3D 2 2×2×2
4 Convolution 3D 64 4×4×4 ReLU
5 Max Pooling 3D 2 2×2×2
6 Convolution 3D 64 2×2×2 ReLU
7 Max Pooling 3D 2 2×2×2
8 Fully Connected 128 30%
9 Fully Connected 12
10 Softmax

Table 3.

Model Evaluation Metrics by the Classes

Class Code 00 01 02 03 04 05 06 07 08 09 10 11 Total
True 7 4 2 7 5 10 6 5 6 6 6 8 72
Predict 6 4 2 6 5 10 9 3 6 7 5 9 72
Sensitivity 0.86 1.00 1.00 0.86 1.00 1.00 1.00 0.60 1.00 1.00 0.83 1.00 0.93
Precision 1.00 1.00 1.00 1.00 1.00 1.00 0.67 1.00 1.00 0.86 1.00 0.89 0.95
Accuracy 0.86 1.00 1.00 0.86 1.00 1.00 0.67 0.60 1.00 0.86 0.83 0.89 0.88