시작에 앞서
라인 센서를 사용해 정확한 2D영상을 얻기 위해서는 피사체의 이동 속도와 Scan rate을 동일하게 설정해야 합니다.
※Scan Rate: 1 촬영에 걸리는 시간
피사체의 이동속도와 카메라의 Scan rate를 각각 개별로 설정한 경우에 카메라의 Scan rate는 고정이고 피사체의 이동속도가 변화되었을 때 촬영 영상은 실제보다 늘어나거나 줄어들게 촬영됩니다. 정확한 영상을 촬영하기 위해 엔코더 동기촬영을 사용합니다.
엔코더 동기촬영이란, 로터리 엔코더(이하 엔코더)를 피사체의 이동 속도와 Scan rate를 동기시키는 촬영 방법입니다.
이 페이지에서는 엔코더 동기 촬영의 개요, 엔코더 관련 문제들에 대해 AIPTool을 사용하여 설명합니다.
엔코더의 개요
엔코더란 축의 회전(이동) 방향, 이동량, 각도를 감지하는 센서로, 이동량에 따라 A상, B상으로 불리는 펄스가 발생할 때 펄스를 카운트하여 스테이지 등의 이동속도(=피사체의 이동속도)를 검출할 수 있습니다.
엔코더를 사용하면 피사체의 이동 속도와 Scan rate을 동기화하여 촬영할 수 있습니다.
엔코더는 인크리멘털(Incremental) 엔코더와 앱솔루트(Absolute)엔코더 2종류가 있으며,
자사의 Frame Grabber에서는 인크리멘털 엔코더만 사용 가능합니다.
자사의 보드는 라인 드라이버 출력(RS422 출력)의 엔코더만 접속 가능합니다.
엔코더 사용 장치
엔코더와 CC(Camera Control)신호를 사용하여 촬영 시, 구성 장치들은 다음과 같이 구성됩니다.
- 컨베이어 벨트에서 엔코더의 축이 회전하면서 피사체가 이동함
- 엔코더의 회전에 의해 A,B,Z 상이 출력됨
- A,B,Z상이 케이블로부터 확장 케이블 및 보드로 전송됨
- 보드가 A,B,Z상을 받아 그에 따라 CC신호가 출력됨
- 카메라가 CC신호를 받아서(1라인) 촬영함
컨베이어 벨트의 이동 속도에 따라 A,B,Z 상이 출력되기 때문에 Scan rate은 조정이 가능합니다. 이를 통해 이동 속도가 일정하지 않은 경우에도 촬영 영상이 실제 피사체보다 늘어나거나 줄어들게 촬영되는 것을 방지할 수 있습니다.
엔코더 신호와 보드 동작
보드의 설정 방법에 대해 설명하기 전에 엔코더 신호가 입력되었을 때 보드의 동작에 대해 간단하게 설명합니다
보드는 엔코더 신호가 입력되면 엔코더 신호 펄스 수를 ※임의의 값까지 카운트합니다.
※이 임의의 값을 Starting Point 또는 Sampling Interval라고 합니다.
→Starting Point, Sampling Interval
카운트 값이 임의의 값에 도달했을 때, “※일치 펄스” 발생하여, CC 합니다.
※일치 펄스 – 보드의 내부 신호
→일치 펄스의 상세한 설명은 Starting Point와 Sampling Interval의 설정 부분을 참조하십시오.
다양한 상황에 대응하기 위해서 각각의 상황에 맞는 보드 설정이 필요합니다.
다음 항목에서 보드의 설정 방법에 대해 설명합니다.
보드의 설정
자사의 보드는 AIPTool을 사용하여 설정합니다.
먼저 AIPTool의 Setup화면을 Open 한 뒤, 다음8개 항목(빨간색 박스)으로 엔코더 설정 변경이 가능합니다.
엔코더 동기 사용 설정
엔코더 동기의 사용관련 설정이 가능하며, 사용할 엔코더 카운트 모드는 Relative, Absolute 중에서 선택할 수 있습니다.
◆상대(Relative) 카운트 모드
상대 카운트 모드로 동작할 때의 설정에 대해 설명합니다.
- Starting Point = 100
- Sampling Interval = 4
상대 카운트 모드로 사용 시, 아래의 순서로 실행됩니다.
- Count start 트리거 입력
- Count start
- Count가 100(Starting Point)에 도달하면 일치 펄스 발생
- Count reset
- Count start
- Count가 4(Sampling Interval)에 도달하면 일치 펄스 발생
- Count reset
- 이후 5~7을 반복
◆절대(Absolute) 카운트 모드
절대 카운트 모드로 동작할 때의 설정에 대해 설명합니다.
- Starting Point = 100
- Sampling Interval = 4
절대 카운트 모드로 사용 시, 아래의 순서로 실행됩니다.
- Count start 트리거 입력
- Absolute count가 카운트를 시작
- Absolute count가 100(Starting Point)에 도달하면 일치 펄스 발생
- Absolute count는 카운트를 계속 진행
- Relative count가 카운트를 시작
- Relative count가 4(Sampling Interval)에 도달하면 일치 펄스 발생
- Relative count리셋
- 이후 5~7 반복
※엔코더 신호의 count stop→start로 카운터가 리셋됩니다.
엔코더 신호의 입력 펄스
사용하는 엔코더 신호의 입력 펄스를 AB상, A상 중에서 선택합니다.
◆엔코더의 카운트 방법
기본적으로 상승 엣지(Rising Edge), 하강 엣지(Falling Edge) 모두 엔코더 입력시점에서 계산합니다.
엔코더 신호의의 회전 방향 선택
엔코더 축의 회전 방향을 CW(시계 방향), CCW(시계 반대 방향) 중에서 선택합니다.
방향을 확인하는 방법은 다음 그림을 참조하십시오.
A상 보다B상이 90도 늦게 출력되는 경우CW(시계방향),
B상 보다A상이 90도 늦게 출력되는 경우CCW(반 시계방향)로 판단합니다.
Starting Point와 Sampling Interval의 설정
엔코더 카운트가 Starting Point또는 Sampling Interval값에 도달하면 일치 펄스가 발생합니다.
- Starting Point: 엔코더의 카운트가 시작되고 최초의 일치 펄스 발생까지의 엔코더 카운트 수
- Sampling Interval:첫 번째 일치 펄스 발생 이후의 일치 펄스 간격(엔코더 카운트)
일치 펄스가 발생하면 보드는 주로 다음과 같은 동작을 합니다.
- CC신호를 출력
- 이미지 데이터를 1라인 촬영
촬영 방법에 의해 1, 2 중 하나의 동작을 수행합니다.
※설정에 따라 일치 펄스 발생 타이밍에 카운터가 리셋 되는 경우도 있습니다.
Z상의 사용 설정
Z상의 사용 여부를 선택합니다.
Z상은 A상이나 B상과 달리 엔코더의 1회전에 1회만 출력 됩니다.
사용으로 설정하면 Z상을 엔코더의 카운트 개시 트리거로 설정할 수 있습니다.
Count 개시 트리거의 설정
엔코더가 Count를 시작하기 위한 Parameter 값 등을 셋팅합니다.
다음의 Parameter에서 선택할 수 있습니다.
Z상 엔코더 Count start 트리거로 설정할 수 있습니다.
CC1Shot은 엔코더가 아닌 외부 트리거를 사용하여 일치 펄스를 발생시키는 설정입니다.
외부 트리거 1펄스에서 일치펄스가 1회 발생합니다.
즉, 외부 트리거 = 일치 펄스로 사용합니다.
동작 모드의 선택
엔코더의 입력 모드를 엔코더 스캔모드와 엔코더 라인 선택 모드로 선택 가능합니다.
◆엔코더 스캔 모드
일치 펄스가 발생할 때마다 CC 신호를 출력하는 모드입니다.
카메라의 촬영 타이밍을 엔코더로 제어하고 싶은 경우에 사용합니다.
카메라는 반드시 랜덤 셔터(CC 신호에 의한 제어) 모드로 설정하십시오.
일치 펄스의 발생에서 데이터 출력(영상)까지의 타이밍 차트는 다음과 같습니다
타이밍 차트를 작동 순서에 따라 도식화하면 다음과 같습니다.
위의 그림과 같이 엔코더 스캔 모드에서 카메라는 CC 신호가 입력될 때까지 작동하지 않고,
보드는 일치 펄스가 발생할 때까지 CC 신호를 출력하지 않습니다.
또한 엔코더 스캔 모드에서는 카메라로부터 출력된 이미지 데이터를 가져옵니다.
◆엔코더 라인 선택 모드
일치 펄스 검출 후 최초의 카메라 데이터(LVAL)를 입력(영상)모드 입니다.
엔코더 신호와는 무관하게 노광(노출) 제어하고, 영상 데이터를 받는 타이밍만 엔코더로 제어하고 싶은 경우에 효과적입니다.
일치 펄스의 발생에서 데이터 입력(영상)까지의 타이밍 차트는 다음과 같습니다.
타이밍 차트를 작동 순서에 따라 도식화하면 다음과 같습니다.
<카메라 설정이 Free run의 경우>
카메라는 항상 Free run으로 촬영하고 있더라도 보드는 일치 펄스가 발생할 때까지 영상 데이터를 받지 않습니다.
<카메라 설정 노출 제어(CC 신호 동기화)의 경우>
카메라는 항상 CC 신호에 동기하여 촬영 중에 있지만, 보드 측은 일치 펄스가 발생할 때까지 영상 데이터를 받지 않습니다.
문제 사례
아래와 같은 문제가 발생한 경우의 해결방안에 대해서 설명합니다.
・엔코더 신호에 동기화가 안되는 경우
・Line rate가 예상 되는 값보다 낮은 경우
・촬영 영상이 예상되는 이미지보다 늘어나거나 혹은 줄어드는 경우
・이미지의 핀트가 맞지 않아 흐린 경우
・피사체의 이동 속도를 변경하면 촬영 영상의 밝기가 바뀌는 경우
・상대 카운트 모드 설정 시에 엔코더 카운트의 변화가 없을 때
엔코더로 제어하는 경우 위의 문제가 자주 발생합니다.
아래에서는 엔코더로 인해 문제가 발생한 각 사례에 대해 소개합니다.
◆엔코더 신호에 동기화가 안되는 경우
체크) 카메라가 Free run으로 설정되어 있지 않습니까?
보드: 엔코더 스캔 설정
카메라:Free run 설정
위와 같이 설정된 경우,
카메라가 보드로부터의 CC신호를 기다리지 않고 계속 촬영을 하며, 보드는 카메라의 영상을 모두 취득합니다.
따라서 엔코더 신호에 동기하여 입력할 수 없습니다.
보드가 엔코더 스캔 설정의 경우 반드시 카메라를 CC 신호 동기로 설정을 변경해 주세요.
◆Line rate가 예상되는 값보다 낮은 경우
체크) 일치 펄스 발생 주기보다 CC 신호 주기가 늦지 않습니까?
엔코더 스캔 모드를 사용하는 경우 보드에서 CC신호의 주기와 펄스폭을 설정하지만,
엔코더 신호의 입력 주파수와 보드의 설정 상태에 따라서 다음과 같은 현상이 발생할 가능성이 있습니다.
위의 그림과 같이 일치 펄스 발생 주기 > CC 신호의 주기가 되면 일부의 일치 펄스는 무시됩니다.
엔코더 스캔 모드를 사용하는 경우에는 CC 신호의 주기보다 Line rate를 올릴 수 없습니다.
※AIPTool에는 일치 펄스의 발생주기와 CC신호의 주기 무결성을 확인하는 기능이 있습니다.
아래에서 확인방법을 확인하시기 바랍니다.
Setup화면의 Step5까지 내려가면 다음과 같은 화면이 나타나며, Encoder Frequency란에 엔코더의 주파수를 입력할 수 있습니다.
설정 시 문제가 있는 경우 다음과 같이 설정된 항목이 빨간색으로 표시됩니다.
마우스 커서를 항목에 맞추면 상세 내용을 확인할 수 있습니다.
위의 경고를 없애기 위해서 아래의 방법을 시도해보시기 바랍니다.
- 엔코더 주파수 낮추기
- Sampling Interval값을 올리기
- CC신호의 주기를 올리기
※현재 보드에 입력되어 있는 엔코더의 주파수를 확인하려면 AIPTool의 I/O 상태 표시를 사용합니다
I/O상태 표시의 갱신은 AIPTool의 화면 좌측 상단에 있는 Board Info update 버튼을 클릭해주세요.
※CC신호의 주기를 보드 측에서 설정하는 이유는 아래와 같습니다.
엔코더 신호의 입력 주기가 빠른 경우 CC신호의 출력 주기도 함께 빨라집니다.
만일 카메라의 Spec이상의 CC신호가 입력되면 카메라가 이상 동작을 일으킬 가능성이 있습니다.
그러므로 보드의CC 신호 주기의 한계를 설정하면 이런 문제를 예방할 수 있습니다.
◆촬영 영상이 예상되는 이미지보다 늘어나거나 혹은 줄어드는 경우
체크) 피사체의 이동 속도와 카메라의 영상(또는 보드 캡처) 타이밍이 맞습니까?
엔코더의 주기가 피사체의 이동 속도와 맞지 않을 경우 발생합니다.
- 늘어나는 경우: 촬영(영상) 주기에 비해 이동 속도가 느림
→Sampling Interval 값을 늘리십시오. - 줄어드는 경우: 촬영(영상) 주기에 비해 이동 속도가 빠름
→Sampling Interval 값을 줄이십시오.
◆이미지의 핀트가 맞지 않아 흐린 경우
체크) TDI카메라를 사용하고 있지 않습니까?
TDI카메라는 피사체를 조금씩 옮기면서 피사체의 움직임에 따라 촬영하고 휘도 값을 적산하는 카메라입니다.
Scan rate와 피사체의 이동속도가 일치하지 않는 경우, 다른 포인트를 적산하여 촬영 영상이 흐려집니다.
또 카메라의 적산 방향이나 센서와 이동방향이 수직이 아닌 경우에도 같은 현상이 발생합니다.
◆피사체의 이동 속도를 변경하면 촬영 영상의 밝기가 바뀌는 경우
체크) 카메라의 설정이 노광(노출)시간 = CC 신호 주기로 되어 있지 않습니까?
카메라에 따라서는 CC 신호1회의 주기로 노출하는 모드가 있습니다.
이 경우 피사체의 이동 속도에 따라 노출 시간이 다음과 같이 변경합니다.
・ 피사체의 이동 속도가 느림 → CC 신호 주기가 내려 감 → 노출시간이 길어짐
・ 피사체의 이동 속도가 빠름 → CC신호 주기가 상승 → 노출시간이 짧아짐
이동 속도에 따라 노출시간이 변경되면,
이미지 밝기 값의 편차가 발생하므로 다음 두 가지 중 하나를 개선을 해야 합니다.
- 카메라의 설정을 노출 시간 = CC 신호 주기 이외로 설정한다.
- 보드의 설정을 엔코더 라인 선택 모드로 설정한다
◆상대 카운트 모드 설정 시에 엔코더 카운트의 변화가 없을 때
체크) 이미지 촬영이 정지되지 않았습니까?
상대 카운트 모드는 촬영 시작(Snap or Grab)을 하지 않으면 카운트하지 않습니다.
카운트 변화를 확인하려면 촬영 시작(Snap or Grab)을 실행하십시오.
엔코더 카운트를 확인하는 방법은 다음과 같습니다.
<상대 카운트 모드의 경우>
<절대 카운트 모드의 경우>