Датчик- энкодер представляет собой небольшую платку с установленным на ней вращающимся переключателем, пяти контактным разъемом.
+ - контакт для подключения напряжения питания 5 Вольт.
GND- контакт для подключения общего провода.
DT- выводы с переключателя.
CLK- выводы с переключателя.
SW- выводы с переключателя.
Энкодер содержит внутри две пары контактов. При вращении ручки, первая пара контактов замыкается чуть раньше второй пары, соответственно размыкается тоже чуть раньше второй пары. Такая особенность расположения контактов позволяет определить, в какую сторону происходит вращение ручки. Заодно можно подсчитать, сколько оборотов сделала ручка. Если известно, сколько всего импульсов поступило с контактов валкодера и известно, сколько импульсов на один оборот ручки имеет сам валкодер. Данный тип валкодера имеет 20 импульсов на один оборот ручки.
Один из примеров использования датчика будет такой:
Подключаем питание 5 Вольт к плате валкодера
SLK вывод платы энкодера подключаем к Arduino на цифровой вход 4.
DT вывод платы энкодера подключаем к Arduino на аналоговый вход 3.
Запишем в Arduino вот такой скетч:
Ссылка на витрину магазина http://dvrobot.ru/238/367.html
+ - контакт для подключения напряжения питания 5 Вольт.
GND- контакт для подключения общего провода.
DT- выводы с переключателя.
CLK- выводы с переключателя.
SW- выводы с переключателя.
Энкодер содержит внутри две пары контактов. При вращении ручки, первая пара контактов замыкается чуть раньше второй пары, соответственно размыкается тоже чуть раньше второй пары. Такая особенность расположения контактов позволяет определить, в какую сторону происходит вращение ручки. Заодно можно подсчитать, сколько оборотов сделала ручка. Если известно, сколько всего импульсов поступило с контактов валкодера и известно, сколько импульсов на один оборот ручки имеет сам валкодер. Данный тип валкодера имеет 20 импульсов на один оборот ручки.
Один из примеров использования датчика будет такой:
Подключаем питание 5 Вольт к плате валкодера
SLK вывод платы энкодера подключаем к Arduino на цифровой вход 4.
DT вывод платы энкодера подключаем к Arduino на аналоговый вход 3.
Запишем в Arduino вот такой скетч:
int val; int encoderA = 3; int encoderB = 4; int encoderPos = 0; int encoderLast = LOW; int n = LOW; void setup() { pinMode (encoderA,INPUT); pinMode (encoderB,INPUT); Serial.begin (9600); } void loop() { n = digitalRead(encoderA); if ((encoderLast == LOW) && (n == HIGH)) { if (digitalRead(encoderB) == LOW) { encoderPos--; } else { encoderPos++; } Serial.println (encoderPos); } encoderLast = n; }Включаем монитор порта, вращаем ручку энкодера и наблюдаем бегущие цифры.
Ссылка на витрину магазина http://dvrobot.ru/238/367.html