高速讀取正交編碼器信號(hào)(例如,1MHz,或1m/s,分辨率為1μm)通常需要專用硬件。本設(shè)計(jì)方案展示了一個(gè)簡(jiǎn)單的方案,僅使用ATtiny2313A AVR微控制器即可實(shí)現(xiàn)此功能。當(dāng)然,微控制器也可以通過串行接口連接到其他設(shè)備,或者測(cè)量位置可以顯示在本地LCD上,可以連接到端口PB。此外,可以添加一個(gè)或多個(gè)LED來指示錯(cuò)誤情況。
圖1用ATtiny2313A讀取正交信號(hào); Z索引信號(hào)是可選的。
在這個(gè)實(shí)現(xiàn)中,中斷處理程序非常重要。它在不到1μs的時(shí)間內(nèi)讀取輸入信號(hào)A和B.差分信號(hào)AP/N和BP/N由SN75157接收器處理,如果編碼器輸出邏輯電平信號(hào),則不需要。
處理器配置為端口PD引腳的任何更改產(chǎn)生中斷。該中斷是中斷向量表中的最后一個(gè),因此
可以省去跳轉(zhuǎn)指令,從而減少2-3個(gè)時(shí)鐘(100-150ns)的中斷服務(wù)時(shí)間。
先前和當(dāng)前信號(hào)之間的異或操作( A 舊 ? B new或 A new ? B old )確定當(dāng)前位置是否從前一個(gè)增加或減少。 old 和 B old 是改變狀態(tài)前的A和B信號(hào), A new 和 B new 是中斷后的值。中斷處理程序位于 PCIsubroutine1.txt 文件中。
中斷處理程序的執(zhí)行時(shí)間為800-850ns(16-17個(gè)時(shí)鐘)。為了最大限度地縮短ISR的執(zhí)行時(shí)間,一些寄存器專門用于它,主程序不能使用它:
R10保存SREG并測(cè)試激活新的中斷
R11和R12用于新舊狀態(tài)
R24和R25用于位置傳感器
要計(jì)算當(dāng)前位置,需要只有一個(gè)時(shí)鐘周期。缺點(diǎn)是該位置只能有65536個(gè)值。您可以使用3或4個(gè)字節(jié)確定位置,在這種情況下,子程序執(zhí)行時(shí)間從添加必要指令后增加到18-19個(gè)周期(使用寄存器對(duì)R24,R26,R28或R30)。
中斷處理程序在退出當(dāng)前ISR之前檢查新中斷。通過在SREG中設(shè)置位T來指示該情況。執(zhí)行此檢查,執(zhí)行時(shí)間增加3個(gè)周期。我們使用RB6029(每轉(zhuǎn)4,000個(gè)脈沖)以最大速度測(cè)試子程序的操作,沒有檢測(cè)到錯(cuò)誤。
在激活中斷之前,PCIE2值必須放在寄存器R12中(讀取PIND寄存器)在啟用PCINT2中斷并設(shè)置SREG -I標(biāo)志之前。
如果要使用Z索引信號(hào),該位置將存儲(chǔ)在三個(gè)寄存器中,為1,024,000個(gè)值? (4,000次計(jì)數(shù)/旋轉(zhuǎn); 256次旋轉(zhuǎn))。讀取數(shù)據(jù)的中斷處理程序更復(fù)雜,如 PCIsubroutine2.txt 中所示。長(zhǎng)度為19個(gè)周期,或當(dāng)Z激活時(shí)當(dāng)前位置遞增時(shí)為20個(gè)周期。
如果Z索引處于激活狀態(tài),我們清除角度位置,增加轉(zhuǎn)數(shù),并檢查先前的角度價(jià)值是3,999。在該子程序中,檢測(cè)到三個(gè)錯(cuò)誤:一個(gè)用于重疊的新中斷(如前一種情況),另外兩個(gè)與Z索引相關(guān)(檢查先前角位置的正確性)。錯(cuò)誤計(jì)數(shù)器寄存器rerr1,rerr2和rerr3應(yīng)由用戶定義。要初始化系統(tǒng),請(qǐng)運(yùn)行 InitIndexZ.txt ,等待Z處于活動(dòng)狀態(tài)。
-
微控制器
+關(guān)注
關(guān)注
48文章
7849瀏覽量
153427 -
PCB打樣
+關(guān)注
關(guān)注
17文章
2971瀏覽量
22265 -
華強(qiáng)PCB
+關(guān)注
關(guān)注
8文章
1831瀏覽量
28367 -
華強(qiáng)pcb線路板打樣
+關(guān)注
關(guān)注
5文章
14629瀏覽量
43668
發(fā)布評(píng)論請(qǐng)先 登錄
正交編碼器原理什么是正交?
如何利用STM32的正交編碼器模式讀取編碼器的角度數(shù)據(jù)和速度?
一個(gè)基于ATtiny13A/5xIO的微型微控制器PCB
attiny2313中文資料pdf
attiny2313 pdf
Atmel推出快閃AVR微控制器封裝產(chǎn)品ATtiny4/5/
ATtiny2313 AVR增強(qiáng)型RISC架構(gòu)的低功耗CMOS 8位微控制器的資料概述

ATtiny2313低功耗8位CMOS微控制器數(shù)據(jù)手冊(cè)免費(fèi)下載

評(píng)論