步驟1:旋轉(zhuǎn)編碼器的脈沖流

以下旋轉(zhuǎn)編碼器產(chǎn)生的脈沖流與上圖類似。
步驟2:旋轉(zhuǎn)編碼器的引腳排列
說明:
GND-》 GND
+-》 + 5V
SW -》按下時旋轉(zhuǎn)編碼器的按鈕
DT-》數(shù)據(jù)
CLK-》數(shù)據(jù)2
DT之一或CLK引腳必須連接到Arduino Uno的中斷腳,或者DT和CLK都連接到中斷引腳。
步驟3:示意圖
GNDàGND Arduino Uno
+à+ 5V Arduino Uno
SWàPIN 4 Arduino Uno
DT àPIN 3 Arduino Uno
CLKàPIN2 Arduino Uno
第4步:代碼
在以下教程中,PI將用作中斷Arduino Uno的N 2,而PIN 3僅用作常規(guī)輸入。
#define encoder0PinA 2
#define encoder0PinB 3
#define encoder0Btn 4
int encoder0Pos = 0;
void setup() {
Serial.begin(9600);
pinMode(encoder0PinA, INPUT_PULLUP);
pinMode(encoder0PinB, INPUT_PULLUP);
pinMode(encoder0Btn, INPUT_PULLUP);
attachInterrupt(0, doEncoder, CHANGE);
}
int valRotary,lastValRotary;
void loop() {
int btn = digitalRead(encoder0Btn);
Serial.print(btn);
Serial.print(“ ”);
Serial.print(valRotary);
if(valRotary》lastValRotary)
{
Serial.print(“ CW”);
}
if(valRotary {
Serial.print(“ CCW”);
}
lastValRotary = valRotary;
Serial.println(“ ”);
delay(250);
}
void doEncoder()
{
if (digitalRead(encoder0PinA) == digitalRead(encoder0PinB))
{
encoder0Pos++;
}
else
{
encoder0Pos--;
}
valRotary = encoder0Pos/2.5;
}
上面草圖的第10行用于啟用Arduino Uno的2號插針的中斷。在“ doEncoder”功能中,由旋轉(zhuǎn)編碼器計算得出。如果DT和CLK(Arduino Uno的引腳中斷)的值相同,則“ encoder0Pos”變量將增加/添加,除此條件外,“ encoder0Pos”變量將減少。
步驟5:說明
ValRotary值是已運行的步驟數(shù)的值。 ValRotary值由旋轉(zhuǎn)傳感器編碼器讀數(shù)值除以2.5獲得。從測試中獲得的值為2.5,因為旋轉(zhuǎn)編碼器的一個步驟可能會超過1,因此請根據(jù)每個步長以及讀取延遲的增加將其值除以2.5。
第19-25行是確定旋轉(zhuǎn)旋轉(zhuǎn)編碼器是CW還是CCW的程序。第19-25行的解釋是當(dāng)前的旋轉(zhuǎn)編碼器讀數(shù)大于先前的旋轉(zhuǎn)數(shù)據(jù),然后表示為CW。
步驟6:輸出

責(zé)任編輯:wv
-
編碼器
+關(guān)注
關(guān)注
45文章
3953瀏覽量
142621 -
Arduino
+關(guān)注
關(guān)注
190文章
6526瀏覽量
196914
發(fā)布評論請先 登錄
增量型旋轉(zhuǎn)編碼器:工業(yè)自動化的“精密之眼”
探索AEDR - 9930E:三通道反射式增量旋轉(zhuǎn)編碼器的技術(shù)剖析
增量旋轉(zhuǎn)編碼器:工業(yè)自動化的“精密之眼”
Vishay RAIK060 旋轉(zhuǎn)絕對感應(yīng)套件編碼器技術(shù)解析
使用簡儀科技產(chǎn)品搭建編碼器信號完整性測試系統(tǒng)
國產(chǎn)編碼器在人形機器人領(lǐng)域的進展
多圈增量式編碼器:工業(yè)自動化中的“旋轉(zhuǎn)記憶大師”
新品|Unit Step16,16 定位BCD旋轉(zhuǎn)編碼器控制單元
增量型旋轉(zhuǎn)編碼器:工業(yè)智能化的“精密羅盤”
一文讀懂什么是磁性編碼器
磁旋轉(zhuǎn)編碼器在永磁同步電機位置測量中的應(yīng)用(可下載)
磁性位置編碼器傳感器SME150產(chǎn)品概述
創(chuàng)新伺服電機使用的多圈絕對式旋轉(zhuǎn)編碼器
軸編碼器與無軸承編碼器,到底如何選擇?
伺服電機編碼器怎么選型
Arduino旋轉(zhuǎn)編碼器的教程
評論