데이터계측분석/센서 기술자료

로터리 엔코더

에이티에스 2023. 9. 13. 13:02
728x90

엔코더는 리니어 및 로터리와 같은 두 가지 구성으로 제공되지만 가장 자주 사용되는 구성은 로터리입니다.

로터리 엔코더는 앱솔루트 엔코더와 인크리멘탈 엔코더와 같은 두 가지 기본 형태로 설계됩니다.

대부분의 로터리 엔코더는 플라스틱 또는 유리 슬롯 디스크로 설계되는데, 이는 모든 트랙 내의 방사형 라인이 광방출기-검출기 쌍 사이의 빔을 방해하여 디지털 펄스를 생성하기 때문입니다. 

 

로터리 엔코더란?

로터리 엔코더 (샤프트 엔코더)는 샤프트의 움직임, 로터리 샤프트의 각도 위치를 변경하는 데 사용되는 전기 기계 장치입니다. 이 엔코더는 아날로그 또는 디지털과 같은 회전 움직임을 기반으로 전기 신호를 생성합니다.

이들은 로봇 공학, 산업 제어, 사진 렌즈, 트랙볼과 같은 컴퓨터의 입력 장치, 광기계 마우스, 제어된 응력 레오미터 등과 같이 제어 또는 모니터링이 필요한 다양한 응용 분야에 사용됩니다.

 

로터리 엔코더 구조는 엔코더 샤프트, 코드 디스크 또는 라벨을 포함한 로터리 디스크, 전자 보드를 포함한 광원, IR 광 센서, 기어를 포함한 광학 기계 블록, 디지털 인터페이스 컨버터 및 신호 프로세서가있는 전자 보드와 같은 다른 부품을 사용하여 수행 할 수 있습니다.

 

핀 구성

로터리 엔코더의 핀 구성에는 5개의 핀이 포함되며 각 핀과 그 기능은 아래에 설명되어 있습니다.

로터리 엔코더 핀 구성

  • 핀1 (GND): 접지 핀입니다
  • 핀2(VCC): 3.3V 또는 5V에서 작동하는 양극 전압 공급 핀입니다.
  • 핀3 (SW): 능동형 로우 푸시 버튼 스위치입니다. 노브를 누르면 voltage는 LOW가 됩니다.
  • DT(출력 B): 클럭 출력과 유사합니다. 그러나 90° 위상 변이로 클럭보다 뒤쳐집니다. 따라서 이 출력은 회전 방향을 결정하는 데 사용할 수 있습니다.
  • CLK(출력-A): 이것은 회전량을 결정하는 데 사용되는 주요 출력 신호입니다. 매번 인코더의 노브는 어떤 방향으로든 단일 멈춤쇠를 통해 회전합니다. 'CLK'의 출력은 단일 HIGH 사이클을 거치고 그 LOW 이후에 진행됩니다

 

반응형

로터리 엔코더 작동

로터리 엔코더에서 구형파 신호가 어떻게 생성되는지 관찰할 수 있습니다. 일반적으로 이 인코더에는 접촉 영역과 균일한 간격의 디스크가 포함됩니다. 이러한 접촉 영역의 연결은 공통 핀 C 및 아래 표시된 A 및 B와 같은 다른 두 개의 개별 접촉 핀에 수행 할 수 있습니다.

로터리 엔코더 작동

이 엔코더의 디스크는 천천히 회전하기 시작하고 A 및 B와 같은 두 핀은 공통 핀을 통해 접촉합니다. 따라서, 2개의 구형파 출력 신호의 생성이 그에 따라 수행될 수 있다.
여기서, 회전 위치는 두 출력 중 어느 하나를 사용하여 결정될 수 있다. 그러나 회전 방향을 결정하려면 두 신호를 동시에 고려해야 합니다.

두 개의 o/p 신호가 서로 위상차가 90도 떨어진 것을 관찰할 수 있습니다. 이 인코더가 시계 방향으로 회전하면 출력 A는 출력 B 다음에 옵니다.

매번 단계를 계산하면 신호가 낮음에서 높음 또는 높음에서 낮음으로 변경됩니다. 그 때, A & B와 같은 두 개의 출력 신호가 역 값을 갖는 것을 관찰 할 수 있습니다.

이 엔코더 시계 반대 방향으로 회전하면 두 출력 신호의 값이 동일합니다. 이를 고려하면 엔코더의 위치와 회전 방향을 연구하도록 컨트롤러를 간단히 프로그래밍할 수 있습니다.

 

로터리 엔코더 유형

이러한 인코더는 다음과 같은 두 가지 유형으로 분류됩니다.

  • 증분 유형
  • 절대 유형

 

인크리멘털 로터리 엔코더

증분형 로터리 엔코더는 일련의 저파 및 고파를 제공하는 데 사용됩니다. 이 파동은 위치의 움직임을 지정합니다. 이러한 유형의 인코더는 샤프트 회전 운동으로 인해 펄스 형태 내에서 주기적인 신호 시퀀스를 제공합니다.

물체의 속도는 일정 시간 동안 펄스 카운팅을 통해 측정할 수 있습니다. 이러한 펄스는 기준점에서 간단히 계산하여 그렇지 않으면 커버되는 거리를 결정할 수 있습니다.

 

증분형 로터리 엔코더는 두 개의 디지털 O/P 신호를 생성하며, 이 두 센서 간의 위상 관계에 따라 엔코더의 샤프트가 시계 방향으로 회전하는지, 그렇지 않으면 시계 반대 방향으로 회전하는지 여부가 결정됩니다. 따라서 이 인코더를 사용하여 위치를 간단하게 결정할 수 있습니다.

 

발광 다이오드가 빛을 생성하면 수정처럼 맑은 디스크를 통해 전송합니다. 이 광 신호가 광센서에 의해 수신되면 정현파 신호가 생성될 수 있으며, 이는 펄스 트레인 또는 구형파로 변경됩니다. 맥파는 바람직한 기능을 생성하기 위하여 신호를 전달할 회전하는 카운터쪽으로 전송될 수 있다.

 

반응형

앱솔루트 로터리 엔코더

앱솔루트 로터리 엔코더는 로터리 엔코더에서 전원이 분리된 후 위치 정보를 유지하는 데 사용됩니다. 이 엔코더의 위치는 전원이 공급되면 즉시 사용할 수 있습니다.

이 엔코더는 단일 회전에서 로터리 엔코더의 절대 위치를 나타내기 위한 데이터 워드를 제공하는 다양한 이진 가중치를 통해 서로 다른 코드 링을 포함합니다. 따라서 이러한 유형의 인코더를 병렬 앱솔루트 엔코더라고도 합니다.

 

멀티 턴이 가능한 앱솔루트 로터리 엔코더는 주로 추가 기어 및 코드 휠로 구성됩니다. 고분해능의 휠은 분수 회전을 측정할 수 있고, 저해상도의 기어드 코드 휠은 샤프트의 전체 회전을 기록할 수 있습니다.

 

로터리 엔코더 연결 다이어그램

Arduino를 사용한 로터리 엔코더 배선도는 아래와 같습니다. 이 엔코더의 출력은 일반적으로 컨트롤러 또는 프로세서 내에서 거리, 위치 및 속도와 같은 정보로 처리되는 샤프트의 모션에 대한 정보를 제공합니다. 샤프트의 회전은 360도입니다.

이 배선도에 필요한 재료는 주로 Arduino Uno, 로터리 인코더, USB Cable3,  점퍼 와이어 등을 포함합니다.

 

Arduino와 인터페이스하는 로터리 엔코더

로터리 엔코더와 Arduino Uno의 인터페이스는 아래와 같이 수행할 수 있습니다.

  • 엔코더의 VCC 핀을 Arduino의 5V 핀에 연결합니다.
  • 코더의 GND 핀을 Arduino의 GND 핀에 연결합니다.
  • 코더의 CLK 핀을 Arduino의 D3 핀에 연결합니다.
  • 코더의 CLK 핀을 Arduino의 D4 핀에 연결합니다.

 

연결이 완료되면 Arduino Uno 보드를 PC에 연결합니다. 코더를 Arduino Uno 보드에 업로드합니다. tools-> select serial monitor를 클릭하면 직렬 모니터에서 BEGIN을 찾을 수 있습니다. 이제 인코더의 샤프트를 돌리고 직렬 모니터에서 인쇄된 출력을 관찰할 수 있습니다.

 

샤프트를 시계 방향으로 돌리면 직렬 모니터가 인코더 수를 인쇄합니다.

반응형

Arduino Uno와 인터페이스된 로터리 엔코더를 읽기 위한 코드

아래는 코드입니다

 

/**************
* VCC에서 5V * * GND에서 GND *
* CLK에서 D3 * * CLK에서 D4 *


**************/
int pinA = 3;
int 핀B = 4;
int encoderPosCount = 0;
int pinALast;
int aVal;
부울 bCW;
void setup() { //핀 설정, 핀 및 핀 B 및 입력
pinMode (pinA,INPUT); 핀모드 (pinB,INPUT); pinALast = digitalRead(pinA)
;/
/핀 A
읽기 Serial.begin (9600);


Serial.println("시작");
Serial.println();
} void loop() { aVal = digitalRead(pinA);
if (aVal != pinALast) {
if (digitalRead(pinB) !=
aVal)

//시계 방향으로 회전합니다
{
encoderPosCount ++; bCW = true;

}

else
{
bCW = 거짓; 인코더PosCount–;

}
if (bCW)
{
Serial.println ("시계 방향으로 회전");
}
else
{
Serial.println("시계 반대 방향으로 회전");
}
Serial.print("인코더 수: ");
Serial.println(인코더포스카운트);
Serial.println();
}
pinALast = aVal;

 

로터리 인코더를 마이크로 컨트롤러와 인터페이스하는 코드는 마이크로 컨트롤러 특정 API를 사용해야 한다는 점을 제외하고 위와 동일합니다.

 

로터리 엔코더의 응용 분야는 다음과 같습니다.

  • 속도, 방향, 가속도 및 모니터링 회전 속도가 필요한 경우에 사용됩니다.
  • 이들은 자재 취급, 포장 및 컨베이어와 같은 다양한 산업 분야에서 사용됩니다.
  • 자동화 분야에서 이러한 엔코더는 속도, 각도, 가속도 및 위치에 대한 센서로 활용됩니다.
  • 이들은 기어 랙, 스핀들, 케이블 풀 또는 측정 휠을 사용하여 직선 운동을 측정하는 데 사용됩니다.
  • 이 엔코더는 산업 분야에서 회전 속도계, 카운터, PLC 시스템 및 PC를 사용하여 전기 신호에 대한 기계적 입력을 변경하는 데 사용됩니다.
  • 이들은 포장, 조립 기계, 표시 시스템, 프린터, CNC 기계, 시험기, 로봇 공학, 섬유, 모터 피드백, 의료 장비, 드릴링 및 라벨링 기계에 사용됩니다.

 

728x90
반응형
그리드형