May 23, 2018

디바이스마트 미디어:

[33호]측정/센서 필수 길라잡이 7.엔코더, 주파수

33 sc ni7 (13)

한국NI에서 알려주는

측정/센서 필수 길라잡이 7

글 | 한국 NI, SW 및 측정 담당 조한길

7. 엔코더, 주파수

측정 및 센서 기본 시리즈의 마지막 순서인 엔코더와 주파수에 대해서 알아보도록 하겠습니다.

33 sc ni7 (1)

엔코더는 선형 또는 회전 변위를 디지털 또는 펄스 신호로 변환하는 전기 기계 디바이스입니다. 가장 많이 사용하는 엔코더 유형은 광학 엔코더로서 회전 디스크, 광원, 광감지기(빛 센서)로 구성되어 있습니다. 회전하는 샤프트에 장착되는 디스크는 부호 처리되어 있는 불투명 및 투명한 섹터들의 패턴을 가지고 있습니다(그림 1 참고). 디스크가 회전하면, 이 패턴은 광감지기에 방출된 빛을 해석하고 디지 털 또는 펄스 신호 출력을 생성합니다.

33 sc ni7 (2)

절대위치 엔코더: 절대위치 엔코더는 샤프트의 모든 위치에 대한 특정 문자 패턴을 생성합니다. 절대위치 엔코더 디스크의 트랙은 일반적으로 4 ~ 6개이며, 일반적으로 바이너리 코드, binary-coded decimal(BCD), 그레이 코드 출력을 생성하도록 부호 처리됩니다. 절대위치 엔코더는 장기간 동안 디바이스가 활성화되지 않고, 전력이 차단될 리스크가 있거나 시작 위치를 알지 못하는 어플리케이션에 가장 많이 사용됩니다.

증분 엔코더: 증분 엔코더는 전체 디지털 문자에 상반되는 펄스를 각 증가 단계를 위해 생성합니다. 증분 엔코더는 절대 위치를 출력하지 않지만, 더 낮은 가격으로 더 뛰어난 분해능을 제공합니다. 예를 들어, 단일 코드 트랙을 가진 증분 엔코더는 타코미터 엔코더라고도 하며 주파수가 변위의 속도를 나타내는 주파수의 펄스 신호를 생성합니다. 하지만, 단일 채널 엔코더의 출력은 방향을 나타내지는 않습니다. 방향을 결정하기 위해 2-채널 또는 구적 엔코더는 두 개의 감지기와 두 개의 코드 트랙을 이용합니다.
증분 엔코더를 이용하면, 위치의 변화만 측정할 수 있지만(속도와 가속을 판단할 수 있는 곳에서), 대상의 절대 위치는 파악할 수 없습니다.

33 sc ni7 (1)
엔코더 측정에는 기본적인 전자 컴포넌트인 카운터가 필요합니다. 여러 개의 입력을 가지고 있는 기본 카운터는 카운트된 에지 수(웨이브폼으로 low ~ high 전환)를 나타내는 값을 출력합니다.
대부분의 카운터는 세 개의 입력인 게이트, 소스, 업/다운을 가지고 있습니다. 카운터는 소스 입력에 등록된 이벤트를 카운트하고 업/다운 라인의 상태에 따라 카운트를 증분하거나 감소시킵니다. 예를 들어, 업/다운 라인이 “high”일 경우 카운터는 카운트를 증분하고 “low”일 경우 카운터는 카운트를 감소시킵니다.

33 sc ni7 (3)

카운터가 수집하고 생성할 수 있는 세 가지 유형의 신호에 대해 알아보겠습니다. 카운터는 TTL 호환 신호로 작동합니다. TTL 호환 신호란 다음과 같습니다:

0V – 0.8V = 로직 low
2V – 5V = 로직 high
최대 상승/하강 시간 = 50ns

디지털 I/O에서 배운 것처럼, 디지털 라인은 디지털 라인의 상태를 설정하거나 모니터링 할 수 있습니다. 카운터는 신호의 상태와 관련이 없을 뿐 아니라 한 상태에서 다른 상태로의 변화에도 관련이 없습니다.
카운터는 상승 에지(로직 low에서 로직 high로 전환)와 하강 에지(로직 high에서 로직 low로)를 감지할 수 있습니다. 상승 및 하강 에지와 관련된 두 개의 중요한 파라미터는 상승/하강 시간 그리고 최소 펄스폭입니다.
상승/하강 시간은 신호가 low에서 high로 얼마나 빠르게 전환되는지 알 수 있는 방법입니다. 카운터가 에지를 감지하기 위해서는 TTL 호환 신호의 사양에 따라 정의된 것처럼 50ns 미만 내에 반드시 발생해야 합니다.
얼마나 빠르게 신호가 전환되는 지에 대한 시간 규제 외에도, 카운터가 다른 상승 또는 하강 에지를 감지할 때까지 상승 또는 하강 에지를 감지할 때 최소한의 지연이 필요합니다. 이런 지연을 최소 펄스폭이라고 합니다. 최소 펄스폭은 사용되는 카운터 칩에 좌우됩니다. 두 소스와 DAQ-STC 칩의 게이트에 대한 최소 펄스폭은 10ns입니다. 카운터의 최소 펄스폭에 대한 사양은 디바이스의 하드웨어 매뉴얼에서 확인할 수 있습니다.

33 sc ni7 (4)

엔코더는 계측기를 연결하는데 필요한 5개의 와이어를 가지고 있으며, 엔코더에 따라 와이어의 색상은 다양합니다. 이 와이어를 이용하면 엔코더에 전력을 공급하고 A, B, Z 신호로 읽을 수 있습니다.
다음 단계는 이 와이어 각각을 연결해야 할 위치를 결정해야 합니다. 위에서 기술한 것처럼 카운터를 고려할 경우, 신호 A는 소스 터미널에 연결되어 펄스가 카운트되는 신호로 만듭니다. 신호 B는 업/다운 터미널에 연결되며, +5V DC와 접지 신호를 원하는 전력원에 연결할 수 있습니다. 대부분은 데이터 수집 디바이스 카드의 디지털 라인이면 충분합니다.
에지가 카운트되면 다음으로 이 값들이 어떻게 위치로 변환될지 개념을 고려해야 합니다. 에지 카운트가 위치로 변환되는 프로세스는 사용되는 엔코딩의 유형에 따라 다릅니다. 기본적인 엔코딩 종류에는 세 가지로 X1, X2, X4가 있습니다.

33 sc ni7 (5)
X1 엔코딩
위 그림은 구적 사이클과 X1 엔코딩의 결과 증분 및 감소를 나타냅니다. 채널 A가 채널 B를 이어줄 때, 증분은 채널 A의 상승 에지에서 발생합니다. 채널 B가 채널 A를 이어줄 때, 감소는 채널 A의 하강 에지에서 발생합니다.

33 sc ni7 (6)

X2 엔코딩
채널 A의 각 에지에서 어떤 채널이 다른 채널로 연결되는 지에 따라 카운터가 증분되거나 감소한다는 점 외에 X2 엔코딩은 X1과 동일합니다. 각 사이클은 두 번의 증분 또는 감소가 발생합니다.

33 sc ni7 (7)
X4 엔코딩
카운터는 X4 엔코딩의 채널 A와 B의 각 에지에서 비슷하게 증분되거나 감소합니다. 각 사이클은 위 그림과 같이 네 번의 증분 또는 감소가 발생합니다.

For Rotational Position

Amount of rotation is Edge Count/xN * 360
where N = number of pulses generated by the encoder per shaft revolution

x = encoding type

For Linear Position

Amount of displacement is (Edge Count/xN) * (1/PPI)
where PPI = pulses per inch (a parameter specific to each encoder)

엔코딩 타입을 설정하고 펄스를 카운트했다면, 위치를 변환하는 것은 위의 공식 중 하나를 이용하면 됩니다.

33 sc ni7 (8)
본 섹션에서는 NI cDAQ-9178 섀시와 NI 9401 C 시리즈 디지털 I/O 모듈을 이용한 예를 들어보겠습니다. 절차는 다른 계측기나 디바이스를 이용할 때와 비슷합니다.
NI 9401은 8개의 디지털 채널과 연결하기 위한 D-Sub 커넥터를 제공합니다. 각 채널은 디지털 입력이나 출력 디바이스를 연결할 수 있는 디지털 I/O 핀을 가지고 있습니다.
cDAQ-9178의 4개 카운터는 섀시의 어떤 슬롯에서도 사용할 수 있습니다. cDAQ-9172를 이용할 경우, 두 개의 카운터는 슬롯 5와 6을 통해서만 가능하기 때문에 9401은 슬롯 5에 삽입합니다.

33 sc ni7 (9)
엔코더를 측정 디바이스에 연결했으므로, NI LabVIEW 그래픽 기반 프로그래밍 소프트웨어를 이용하여 데이터를 시각화 처리하고 분석할 수 있도록 컴퓨터로 전송할 수 있습니다.

33 sc ni7 (10)
디지털 신호의 주파수 측정은 데이터 수집 하드웨어에서 사용할 수 있는 카운터를 이용하여 수행됩니다.

33 sc ni7 (11)
첫 번째 방식은 하나의 카운터를 이용하는 방법입니다. 이는 낮은 주파수를 측정하는데 주로 사용됩니다. 입력신호의 rising edge가 타임베이스의 틱 수를 카운트합니다. 타임베이스 주파수는 알고 있으므로 입력 신호의 주파수를 계산할 수 있습니다.

33 sc ni7 (12)
두 번째 방식은 두 개의 카운터를 이용하는 것입니다. 한 카운터는 알 수 없는 주파수와 함께 펄스 트레인을 생성하고, 한 카운터는 구간 측정을 수행합니다. 카운터 1은 구간 측정을 수행하며, 내부 타임베이스가 아닌 소스를 외부 신호로 사용합니다. 카운터 1의 게이트 신호는 카운터 0의 출력에서 나오며, 이 신호는 펄스 트레인을 생성합니다. 카운터 0의 출력 주파수를 알고 있으므로 카운터 1의 게이트 사이클 길이를 정확히 알고 있습니다. 카운터 1의 소스에 도달하는 소스 에지 수에 따라 주파수를 추정할 수 있고, 카운터 1의 구간 측정을 게이트 구간으로 나눌 수 있습니다. 예를 들어, 카운터 0은 10 Hz의 펄스 트레인을 출력할 경우 게이트 구간은 0.1s입니다. 이 구간 동안일 경우, 100개의 소스 에지를 카운트하고 카운트의 소스 주파수가 (100+/-1)/0.1 또는 1000+/-10 Hz라는 것을 알고 있습니다.

지금까지 엔코더 및 주파수에 대한 원리와 측정하는 방법에 대하여 알아보았습니다. 간단한 DIO 만으로도 엔코더 및 주파수를 쉽게 측정할 수 있는 더 자세한 방법은 www.ni.com에서 확인하시길 바랍니다.

 

 

 

Leave A Comment

*