온도 드리프트 보정 솔루션

현재 최신 버전 (1.3.0)에 대한 매뉴얼을 보고 계십니다. 다른 버전에 액세스하려면 페이지 오른쪽 상단 모서리에 있는 '버전 전환' 버튼을 클릭하세요.

■ 현재 사용하고 있는 제품의 버전이 확실하지 않은 경우에는 언제든지 당사 기술 지원팀에 문의하시기 바랍니다.

이 절에서는 온라인 측정 시나리오에서 발생하는 온도 드리프트 현상과 온라인 측정 시스템의 온도 드리프트 보정 솔루션의 구성, 동작 원리 및 배포 방법을 소개합니다.

온온도 드리프트란 무엇입니까?

온라인 측정 시나리오에서 온도 드리프트는 장비 온도 변화로 인해 측정 결과가 서서히 오프셋 현상을 의미합니다. 온도 드리프트는 일반적으로 “변화 폭이 작고, 지속적으로 누적되며, 환경과 장비 상태에 따라 달라지는” 특징이 있습니다. 단일 측정에서는 뚜렷하지 않을 수 있지만, 장시간 운전 후에는 결과가 추세적으로 드리프트하는 형태로 나타납니다.

온라인 측정 시스템에서 온도 드리프트는 주로 다음과 같이 나타납니다:

  • 로봇, 카메라, 지그 및 현장 환경의 온도 변화로 인해 포인트 클라우드와 특징 피팅 결과가 오프셋됩니다.

  • 동일한 특징의 결과 분포 중심이 시간대에 따라 이동하여 반복성 지표가 악화됩니다.

  • 현장에서 “초기에는 정상이지만 후반으로 갈수록 점차 벗어나는” 품질 변동이 나타납니다.

온라인 온도 드리프트 시스템 보정 솔루션 개요

생산 라인이 양산 단계에 진입하면 온도 드리프트는 제품의 의사결정 품질에 직접적인 영향을 미칩니다. 온도 드리프트 보정 솔루션의 목표는 공정 역량을 대체하는 것이 아니라, 기존 측정 체인 내에서 온도 관련 편차를 보정하여 결과의 장기 안정성을 유지하는 것입니다.

이 솔루션은 주로 다음 문제를 해결합니다:

  • 장주기 운전 후 측정 평균값이 서서히 오프셋되어 오판 위험이 증가하는 문제

  • 주간/야간 교대, 계절 변화 또는 작업장 온도 제어 변동 시 결과 일관성이 저하되는 문제

  • 생산 takt는 안정적이지만 측정 결과가 드리프트하여 원인 분석 비용이 높고 위치 파악이 어려운 문제

thermal drift compensation solution

온도 드리프트 보정 솔루션의 구성 및 동작 원리

온도 드리프트 보정 솔루션 구성

온도 드리프트 보정 솔루션은 온도 드리프트 로드, 로봇 측,Mech-Metrics Mech-MSR의 네 부분으로 구성됩니다.

구성 요소 역할 핵심 책임

온도 드리프트 로드

안정적인 기준체

장기간 운전 중 고정된 기하 기준 대상으로서, 온도 변화 조건에서의 드리프트 샘플 데이터를 지속적으로 제공합니다.

로봇 측

프로세스 편성 및 takt 구동

PLC가 사전 설정된 시점에 따라 온도 드리프트 로드의 표준구 측정을 트리거하고, 로봇 프로그램이 로봇 이동과 촬영을 수행하여 데이터를 수집합니다.

Mech-Metrics

데이터 수신 및 보정 효과 분석

온도 드리프트 로드 대상 물체와 측정 구성을 관리하고, 보정 전후 데이터를 수신하며, 온도 드리프트 분석 및 추세 비교 기능을 제공합니다.

Mech-MSR

측정 실행 및 보정 계산

온도 드리프트 보정 프로젝트를 실행하고, 프로젝트와 로봇의 연결을 완료하며, 보정 후 측정 결과를 출력합니다.

작업 원리

온도 드리프트 보정 솔루션의 동작 메커니즘은 “샘플링, 모델링, 보정, 검증”의 폐루프로 요약할 수 있습니다.

  1. 로봇 프로그램은 사전 설정된 시점에 따라, 일반적으로 PLC 또는 상위 제어기가 신호를 보낼 때 온도 드리프트 로드 측정을 트리거하며, 시스템은 서로 다른 온도 조건에서의 기준 샘플을 지속적으로 획득합니다.

  2. Mech-MSR은 온도 드리프트 로드 측정 프로젝트를 실행하고 보정 전략을 적용하여 보정 후 데이터를 출력합니다.

  3. Mech-Metrics는 보정 전후 결과를 수신하고 동일한 분석 화면에서 비교합니다.

  4. X/Y/Z 방향과 온도 추세의 연동 분석을 통해, 보정 후 데이터가 수렴하는지, 장기적인 단방향 드리프트가 억제되었는지를 판단합니다.

실제 프로젝트에서는 온도 드리프트 보정이 “전 시간대 추세 안정성”에 초점을 맞추며, 개별 점 위치의 우연한 개선만을 보지 않습니다.

온도 드리프트 보정 솔루션 배포

온도 드리프트 보정 체인을 완전하게 구축하기 위해 다음 절차에 따라 구현할 것을 권장합니다.

deploy-thermal-drift-flow
  1. 온도 드리프트 로드 설치

  2. 로봇 프로그램을 작성하고 티칭 촬영 포즈를 설정합니다.

  3. Mech-MSR 프로젝트와 통신 출력을 구성합니다.

  4. Mech-Metrics에 온도 드리프트 바 대상 물체를 추가하고, 온도 드리프트 보정을 모니터링합니다.

온도 드리프트 바 설치

온도 드리프트 보정 솔루션을 배포하려면 Mech-Mind에서 제공하는 “캘리브레이션 바” 표준 제품(이하 “온도 드리프트 바”)을 사용해야 합니다. 이 제품에는 6개의 캘리브레이션 구가 달린 바 부품 1개와 관련 부속품 및 설치 공구가 포함되어 있습니다.

온도 드리프트 바를 설치할 때는 먼저 다음 요구사항을 충족해야 합니다:

  • 온도 드리프트 바는 로봇 한쪽에 설치하고, 6개의 캘리브레이션 구에 대한 촬영 포즈에 모두 로봇이 도달할 수 있도록 해야 합니다.

  • 상부/하부 구형 링의 위치를 조정할 때는 상부 구형 링이 대상 물체보다 높고, 하부 구형 링이 대상 물체보다 낮아야 하며, 두 구형 링의 높이 차는 450~550mm 범위로 유지해야 합니다.

thermal drift rod installation

위 조건을 만족한 후, 다음 스텝에 따라 설치를 완료합니다:

  1. 워크스테이션에 온도 드리프트 바를 설치하고 기계적으로 고정하여, 흔들림이나 위치 이동 위험이 없도록 합니다.

  2. 6개 캘리브레이션 구에 해당하는 촬영 포즈의 도달 가능 여부를 다시 확인하고, 필요 시 온도 드리프트 바 위치를 미세 조정합니다..

  3. 상부/하부 구형 링의 높이를 조정한 뒤 차이를 다시 측정하여, 450~550mm 범위에 안정적으로 들어가는지 확인합니다.

  4. 여러 차례 공회전 검증을 완료하여, 로봇, 카메라 및 온도 드리프트 바 사이에 충돌 위험이 없음을 확인합니다..

로봇 프로그램을 작성하고 티칭 촬영 포즈를 설정합니다

로봇 프로그램 작성

아래는 FANUC 로봇 예제 프로그램이며, 다른 브랜드의 로봇은 예제 프로그램의 로직을 참고하여 작성하십시오..

   1:  !-------------------------------- ;
   2:  !FUNCTION: MSR_Metrics_Sample1 ;
   3:  !Mech-Mind, 2025-12-24 ;
   4:  !-------------------------------- ;
   5:
   6:  !set current uframe NO. to 0 ;
   7:  UFRAME_NUM=0 ;
   8:  !set current tool NO. to 1 ;
   9:  UTOOL_NUM=1 ;
  10:   ;
  11:  LBL[1] ;
  12:  !Init Socket!Modify IP Address ;
  13:  CALL MSR_INIT_SKT('8','192.168.1.20',50000,5) ;
  14:  !Set Custom Values ;
  15:  CALL MSR_MEAS_PARM(0,0,0,0,0,0,0,0) ;
  16:  !SR:String Register; R:Register ;
  17:  !Set Robot_Id,SR No.1,SR No.2,Qc_Mode,R NO.1,R NO.2;
  18:  !SR No.1:Piece_Name ;
  19:  !SR No.2:Piece_Sn ;
  20:  !R No.1:Continuous Mode, R No.2:MM Status ;
  21:  CALL MSR_ST_MEAS(1,11,12,0,10,95) ;
  22:   ;
  23:  !move to robot home position ;
  24:J P[0] 100% FINE ;
  25:   ;
  26:  !UP-BALL1 ;
  27:J P[1] 100% FINE ;
  28:  WAIT 1.00(sec) ;
  29:  CALL MSR_MEAS_FEAT(1,101,95) ;
  30:J P[2] 100% FINE ;
  31:  WAIT 1.00(sec) ;
  32:  CALL MSR_MEAS_FEAT(1,102,95) ;
  33:J P[3] 100% FINE ;
  34:  WAIT 1.00(sec) ;
  35:  CALL MSR_MEAS_FEAT(1,103,95) ;
  36:J P[4] 100% FINE ;
  37:  WAIT 1.00(sec) ;
  38:  CALL MSR_MEAS_FEAT(1,104,95) ;
  39:  ;
  40:  !UP-BALL2 ;
  …​
  130:  ;
  131: WAIT .50(sec) ;
  132: CALL MSR_END_MEAS(1,10,91,92,93,95) ;
  133:  ;
  134: !Init Socket!Modify IP Address ;
  135:  CALL MSR_INIT_SKT('8','192.168.1.20',50000,5) ;
  136:  !Set Custom Values ;
  137:  CALL MSR_MEAS_PARM(0,0,0,0,0,0,0,0) ;
  138:  !SR:String Register; R:Register ;
  139:  !Set Robot_Id,SR No.1,SR No.2,Qc_Mode,R NO.1,R NO.2;
  140:  !SR No.1:Piece_Name ;
  141:  !SR No.2:Piece_Sn ;
  142:  !R No.:Continuous Mode, R No.2:MM Status ;
  143:  CALL MSR_ST_MEAS(1,5,6,0,10,95) ;
  144:   ;
  145:  !Feature1 ;
  146:J P[41] 100% FINE ;
  147:  WAIT 1.00(sec) ;
  148:  CALL MSR_MEAS_FEAT(1,101,95) ;
  149:  !Feature2 ;
  …​
  234:  ;
  235: WAIT .50(sec) ;
  236: CALL MSR_END_MEAS(1,10,91,92,93,95) ;
  237:  ;
  238: WAIT .50(sec) ;
  239:J P[71] 100% FINE ;
  240:  JMP LBL[1] ;
  241:  PAUSE ;

다음 표는 상기 프로그램의 로직 설명입니다.

행 번호 범위 로직 설명

1~10

기본 설정.

11

점프 라벨(반복 실행 코드용).

12~22

로봇 통신 설정 및 측정 작업 시작 (Mech-Metrics의 온도 드리프트 바 대상 물체에 대응).

  • 13: 로봇이Mech-MSR와 통신 연결을 설정합니다. IP 주소와 포트 번호는 실제 상황에 맞게 수정해야 합니다.

  • 15와 21: 측정 작업의 파라미터를 지정하고 측정 시작 작업을 실행합니다. MSR_ST_MEAS의 첫 번째 값은 대상 물체 번호이며, 지정한 대상 물체 번호는 반드시 대상 물체 번호 구성 화면에서 먼저 설정되어 있어야 합니다. 두 번째 값과 세 번째 값은 문자열 레지스터 SR 번호이며, 해당 내용은 각각 대상 물체 이름과 대상 물체 SN이고, Mech-Metrics의 구성과 일치해야 합니다. 예제에서 11, 12는 문자열 레지스터 SR의 번호이며, SR11의 값은 ysphere, SR12의 값은 ySN999입니다.

23~25

로봇을 Home 위치로 이동합니다.

26~39

촬영을 통해 캘리브레이션 구 1의 데이터를 수집합니다.

  • 27: 캘리브레이션 구1의 첫 번째 촬영 포즈로 이동합니다.

  • 28: 1초 대기합니다(로봇이 안정된 후 촬영하기 위함).

  • 29: “특징 측정 실행” 명령을 트리거합니다. MSR_MEAS_FEAT 명령의 두 번째 값은 Mech-Metrics안의 특징 번호입니다.

  • 30~38: 캘리브레이션 구 1의 2~~4번째 포즈에서 촬영하여 데이터를 수집합니다.

40~130

촬영을 통해 캘리브레이션 구 2~표준구 6의 데이터를 수집합니다.

131~133

측정 작업을 종료합니다.

134~144

로봇 통신 설정 및 측정 작업 시작 (Mech-Metrics의 생산 대상 물체에 대응).

145~234

촬영을 통해 생산 대상 물체의 측정 대상 특징 데이터를 수집합니다.

235~237

측정 작업을 종료합니다.

238~239

로봇을 경유점으로 이동합니다.

240

점프 플래그입니다. 11행과 함께 사용하여 로봇 프로그램이 반복 실행되도록 합니다.

촬영 포즈 티칭

캘리브레이션 구가 촬영 포즈를 티칭하고, 로봇이 4가지 서로 다른 포즈로 각 캘리브레이션 구를 촬영하도록 확인합니다. 온도 드리프트 바의 상하에는 총 6개의 캘리브레이션 구가 있으며, 총 24개의 촬영 포즈가 있습니다.

각 캘리브레이션 구의 4가지 촬영 포즈 사이에는 충분한 차이가 있어야 샘플링 방향의 다양성을 보장할 수 있습니다. 아래 그림의 각도 또는 포즈와 완전히 일치할 필요는 없습니다.

teaching capturing positions

Mech-MSR프로젝트와 통신 출력을 구성

Mech-MSR 측에서는 다음 작업을 완료해야 합니다:

  • 온도 드리프트 바 캘리브레이션 구 프로젝트 구성: 핵심 특징 인식이 안정적인지 확인하고, 출력 관리에서 통신 출력의 측정 항목과 통신 키를 점검하여 Mech-Metrics측과 일대일로 대응되도록 합니다.

  • 측정 프로젝트에 온도 드리프트 보정 적용: 온도 드리프트 보정 도구를 사용하여 로봇과 프로젝트를 연결하고, 프로젝트별로 보정을 활성화합니다.

  • 통신 출력 구성: 보정 후 측정 결과가 통신 출력을 통해Mech-Metrics로 올바르게 전달되고, 통신 키가Mech-Metrics 측 설정과 일치하는지 확인합니다.

온도 드리프트 바 캘리브레이션 구 프로젝트 구성

입문 튜토리얼의 “서브프레임 예제 프로젝트”에는6개 구 훈련 세트프로젝트가 포함되어 있으며, 온도 드리프트 바 캘리브레이션 구 데이터를 수집하고 온도 드리프트 보정 모델을 업데이트하는 데 사용됩니다.

6개 구 훈련 세트프로젝트의 구조는 다음과 같습니다:

sphere project structure

이 프로젝트의 핵심 스텝 설명은 다음과 같습니다:

  • 표면 사전 처리:

    3D ROI를 설정해야 하며,필터 유형이 이 “자르기”로 설정되어 있는지 확인하고, 특징 영역 사용을 체크합니다.

    온도 드리프트 바에는 상하 총 6개의 캘리브레이션 구가 있고, 각 구은 4개 각도에서 촬영합니다. 총 6×4=24개 포즈가 공유하는 영역을 덮을 수 있도록 약간 더 큰 ROI 하나를 사용할 수 있습니다.

    sphere preprocessing
  • 로봇 온도 드리프트 보정

    배포 시에는 아래와 같이 온도 드리프트 보상 파라미터를 설정합니다:

    • 현재 데이터 그룹: “기준 그룹”과 “관찰 그룹”으로 구분됩니다. 최초 실행 시에는 “기준 그룹”으로 설정해야 하며, 첫 번째 라운드 실행이 끝나면 소프트웨어가 자동으로 “관찰 그룹”으로 전환합니다.

    • 로봇 모델: 해당 로봇 모델을 선택합니다.

    • 보정 파일 저장 경로: 기본값은 프로젝트 파일 디렉터리 아래의 “robot_compensation_data” 폴더입니다.

    • 현재 라운드에서 수집한 포즈 삭제: 기본적으로 체크 상태이며, 실행이 시작되면 소프트웨어가 자동으로 체크를 해제합니다.

    • 모든 라운드의 포즈 재수집: 기본적으로 체크 상태이며, 실행이 시작되면 소프트웨어가 자동으로 체크를 해제합니다.

    thermal drift compensation 1

    후속 실행 중 한 라운드의 캘리브레이션 구(24개 포즈) 수집이 완료되기 전에 예기치 않게 중단된 경우, 아래 그림을 참고하여 해당 값을 설정한 뒤 로봇 프로그램을 다시 실행해야 합니다.

    thermal drift compensation 2

측정 프로젝트에 온도 드리프트 보정 적용

  1. Mech-MSR메뉴 바에서 툴킷  온도 드리프트 보상 도구 선택합니다. 온도 드리프트 보상 도구 대화상자가 팝업됩니다.

  2. 로봇 수량을 선택하고, 각 로봇의 보정 파일 경로를 선택한 뒤, 각 측정 프로젝트에 대응하는 로봇을 설정하고 보정을 활성화합니다.

    enable thermal drift compensation

통신 출력 구성

Mech-MSR의 측정 데이터는출력 관리  통신출력 의 통신 키를 통해 Mech-Metrics로 전송됩니다.

  • 측정 프로젝트가 하나의 특징만 출력하는 경우, 통신 키를 “feature”로 설정할 수 있습니다.

  • 측정 프로젝트가 하나의 특징과 하나의 GD&T를 출력하는 경우, 특징의 통신 키는 “feature”, GD&T의 통신 키는 “gdt”로 설정할 수 있습니다.

  • 측정 프로젝트가 여러 특징과 여러 GD&T를 출력하는 경우, 각 특징의 통신 키는Mech-Metrics안의 해당 특징 이름으로, 각 GD&T의 통신 키는 Mech-Metrics 안의 해당 GD&T 이름으로 설정해야 합니다. 즉, 통신 키는 반드시 Mech-Metrics안의 이름 구성과 일치해야 합니다. 그래야Mech-Metrics가 서로 다른 특징과 GD&T의 데이터를 정확히 구분할 수 있습니다.

캘리브레이션 구 프로젝트의 경우, 통신 출력의 통신 키는 아래와 같이 고정 설정합니다:

측정 항목 통신 버튼

특징 포즈 변환 스텝에서 출력되는 변환 후 특징

original_pose_in_robot

로봇 온도 드리프트 보정 스텝에서 출력되는 보정 후 포즈

feature

configure communication output

Mech-Metrics에 온도 드리프트 바 대상 물체를 추가하고 온도 드리프트 보정을 모니터링합니다

온도 드리프트 바 대상 물체 가져오기

입문 튜토리얼의 “서브프레임 예제 프로젝트”에는 온도 드리프트 바 대상 물체(sphere.mtpart)가 포함되어 있으며, 이를Mech-Metrics로 가져와 사용할 수 있습니다.

  1. Mech-Metrics를 열고, 메뉴 바에서파일  대상 물체 가져오기 를 클릭합니다.

  2. 팝업 대화상자에서 서브프레임 예제 프로젝트의 sphere.mtpart 파일을 선택한 다음, 열기 버튼을 클릭합니다.

  3. 대상 물체 가져오기 다이얼로드 박스에서 확인 버튼을 클릭합니다.

  4. 리소스 트리에서 대상 물체를 선택한 다음, 속성 편집 영역에서 대상 물체 유형이온도 드리프트 바로 설정되어 있는지 확인하고, 솔루션 경로를 실제Mech-MSR 솔루션 경로로 수정합니다.

리소스 트리의 특징 노드 아래에서 총 24개의 특징을 볼 수 있으며, 이는 각각 온도 드리프트 바의 6개 캘리브레이션 구에 대한 4개의 촬영 포즈에 대응합니다.

온도 드리프트 보정 모니터링

  1. Mech-Metrics소프트웨어 설정 화면의 분석 및 보정 탭에서 온도 드리프트 분석을 클릭합니다.

  2. 왼쪽의 필터 설정 영역에서 필요에 따라 필터 조건을 설정한 뒤, 오른쪽에서 온도 드리프트 보정 효과를 확인합니다.

    보통은 온도 드리프트 바 대상 물체의 보정 효과만 확인하면 됩니다. 온도 드리프트 바의 경우, 도구에 두 개의 곡선이 표시됩니다: “보정 전 온도 드리프트 값”, “보정 후 온도 드리프트 값”.

    생산 대상 물체의 경우에는 “보정 전후 차이값”이라는 하나의 곡선만 표시되며, 이는 곧 보정값입니다.

    왜 생산 대상 물체에 그려지는 그래프는 온도 드리프트 바와 다릅니까?

    생산 대상 물체의 경우, 어셈블리 라인에서 매번 측정하는 대상이 서로 다르므로, 고정된 온도 드리프트 바처럼 보정 전후를 직접 비교할 수 없습니다.

    서로 다른 대상 물체 자체에 개체 차이가 있으므로 측정값은 본래 변동이 생깁니다.

    그래도 보정 전후의 절대값 곡선을 그리면 대상 물체 차이로 인해 생긴 변화가 함께 섞여, 보정 효과를 직접 판단하기 어려워집니다.

이 페이지가 도움이 되었습니까?

다음 방법을 통해 피드백을 보내주실 수 있습니다:

저희는 귀하의 개인정보를 소중히 다룹니다.

당사 웹사이트는 최상의 사용자 경험을 제공하기 위해 쿠키를 사용하고 있습니다. "모두 수락"을 클릭하시면 쿠키 사용에 동의하시는 것이며, "모두 거부"를 클릭하시면 이 웹사이트 방문 시 귀하의 정보가 추적되거나 기억되지 않도록 단일 쿠키만 사용됩니다.