NI硬體編碼器量測:操作指南

更新 May 15, 2024

環境

硬件

  • Encoder
  • Quadrature Encoder

軟體

  • LabVIEW

驅動程式

  • NI-DAQmx

本文件介紹了編碼器理論、量測編碼器的基礎知識以及使用NI硬體量測編碼器的選項。

編碼器和應用概述

編碼器是一種可以量測運動或位置的機電設備。大多數編碼器使用光學傳感器以脈衝串的形式提供電信號,而這些電信號又可以轉化為運動、方向或位置。

旋轉編碼器用於量測軸的旋轉運動。圖1顯示了旋轉編碼器的基本組件,它由LED、圓盤和位於圓盤另一側的光檢測器組成。安裝在旋轉軸上的磁盤具有編碼到磁盤中的不透明和透明扇區的圖案。當圓盤旋轉時,不透明的部分會阻擋光線,而在玻璃透明的地方,光線可以通過。這會產生方波脈衝,然後可以將其解釋為位置或運動。

編碼器通常每轉有100到6,000個段。這意味著這些編碼器可以為100段編碼器提供3.6度的分辨率,為6,000段編碼器提供0.06度的分辨率。

線性編碼器的工作原理與旋轉編碼器相同,不同之處在於它不是一個旋轉盤,而是一個固定的不透明條帶,其表面有透明狹縫,並且LED檢測器組件連接到移動體上。

圖1 光學編碼器組件
具有一組脈衝的編碼器將沒有用,因為它無法指示旋轉方向。使用相位相差90度的兩個代碼軌道 (圖2),正交編碼器的兩個輸出通道指示旋轉的位置和方向。例如,如果A超前B,則圓盤按順時針方向旋轉。如果B超前A,則圓盤以逆時針方向旋轉。因此,通過監測脈衝數和信號A和B的相對相位,您可以跟踪旋轉的位置和方向。

圖2 正交編碼器 A 和 B 輸出信號
此外,一些正交編碼器包括第三個輸出通道 (稱為零或參考信號) 每轉提供一個脈衝。您可以使用這個單脈衝來精確確定參考位置。在大多數編碼器中,此信號稱為Z端子或索引。

到目前為止,本文件僅涉及所謂的單端增量正交編碼器。這些被稱為單端,因為A和B信號都以地為參考,因此每個信號有一根導線 (或一端)。另一種常用的編碼器類型是差分編碼器,其中每個A和B信號有兩條線。A信號的兩條線是A'和A,B信號的兩條線是B'和B。這種配置也稱為push-pull,因為所有四條線始終提供已知電壓(0 Vcc)。當A為Vcc時,A'為0 V,當A為0 V時,A'為Vcc。在單端編碼器的情況下,A 要麼是Vcc,要麼是浮動的。差分編碼器通常用於有干擾的環境,因為進行差分量測可以保護信號的完整性。

使用增量編碼器,您只能量測位置變化 (從中可以確定速度和加速度),但無法確定物體的絕對位置。第三種編碼器,稱為絕對編碼器,能夠確定物體的絕對位置。這種類型的編碼器像增量編碼器一樣具有交替的不透明和透明段,但是絕對編碼器使用多組段在編碼器輪上形成同心圓,就像目標或飛鏢上的靶心一樣。同心圓從編碼器輪的中間開始,隨著環向環外側伸出,它們的段數是前一個內環的兩倍。第一個環,也就是最裡面的環,有一個透明和一個不透明的部分。從中間向外的第二個環有兩個透明段和兩個不透明段,第三個環每個段有四個。如果編碼器有10個環,它的最外環有512個段,如果它有16個環,最外環有32,767個段。

因為絕對編碼器的每個環的段數是前一個環的兩倍,所以這些值形成二進制計數的數字。在這種類型的編碼器中,編碼器輪上的每個環都有一個光源和接收器。這意味著10環的編碼器有10組光源和接收器,16環的編碼器有16個光源和接收器。

絕對編碼器的優點是您可以將其減速,以便編碼器輪在機器的整個行程中轉一圈。如果機器行程長度為10英寸,並且其編碼器具有16位分辨率,則機器的分辨率為10/65,536,即0.00015英寸。如果機器行程較長,例如6英尺,旋轉變壓器可以跟踪每英尺的行程,第二個稱為精細旋轉變壓器的旋轉變壓器可以跟踪1英尺內的位置。這意味著您可以對粗編碼器進行齒輪傳動,使其在整個6英尺距離和齒輪上旋轉一圈精細編碼器,使其整個分辨率分佈在1英尺 (12英寸) 範圍內。

編碼器如何進行量測

要進行編碼器量測,您需要一個稱為計數器的基本電子元件。基於其幾個輸入,基本計數器發出一個值,該值表示計數的邊沿數(波形中的低到高轉換)。大多數計數器都有三個相關的輸入-SOURCE/UP_DOWN/GATE。計數器對源輸入中註冊的事件進行計數,並且根據UP_DOWN的狀態,它要麼增加計數,要麼減少計數。例如,如果UP_DOWN為"high",則計數器增加計數,如果為"low",則計數器減少計數。圖3顯示了一個簡化版本的計數器。

圖3 計數器的簡化模型
編碼器通常有五根線需要連接到儀器,並且根據編碼器的不同,這些線的顏色會有所不同。您可以使用這些電線為編碼器供電並讀取A、B和Z信號。圖4 顯示了增量編碼器的典型引腳分配表。

圖4 增量編碼器引腳分配
下一步是確定你應該在哪裡連接這些電線。考慮到上述計數器,信號A連接到SOURCE,使其成為對脈衝進行計數的信號。信號B連接到UP_DOWN,您可以將 +5 VDC 和接地信號連接到任何電源。在大多數情況下,資料擷取設備卡中的數位接點就足夠了。

計算完邊後,您需要考慮的下一個概念是如何將這些值轉換為位置。將邊緣計數轉換為位置的過程取決於所使用的編碼類型。存在三種基本類型的編碼,X1、X2和X4。

X1編碼

圖5顯示了X1編碼的正交週期以及由此產生的增量和減量。當通道A領先於通道B時,遞增發生在通道A的上升沿。當通道B領先於通道A時,遞減發生在通道A的下降沿。

圖5  X1編碼
X2編碼

X2 編碼的行為相同,除了通道A的每個邊沿上的計數器遞增或遞減,具體取決於哪個通道領先另一個。每個循環都會導致兩個增量或減量,如圖6 所示。

圖6 X2編碼
X4編碼

對於X4編碼,計數器在通道A和B的每個邊緣上類似地遞增或遞減。計數器是遞增還是遞減取決於哪個通道領先另一個通道。每個週期產生四個增量或減量,如圖7所示。

圖7 X4編碼
設置編碼類型併計算脈衝數後,轉換為位置只需使用以下公式之一:

對於旋轉位置

旋轉量是

其中 N = 編碼器每轉軸產生的脈衝數
x = 編碼類型
對於線性位置

位移量為

其中PPI = 每英寸脈衝數 (每個編碼器特定的參數)

將編碼器連接到儀器

在本節中,考慮使用NI cDAQ-9178機箱和NI 9401 C系列數字I/O模塊的示例。當使用不同的量測儀器或設備時,該過程類似。


圖8 NI cDAQ-9178機箱和NI 9401數字I/O模塊

所需設備:

  • NI CompactDAQ機箱
  • NI 9401 8通道、5 V/TTL高速雙向數位I/O模塊
  • 24 脈衝/轉旋轉正交編碼器

NI 9401有一個DSUB連接器,可為8個數位通道提供連接。每個通道都有一個數位I/O引腳,您可以將數位輸入或輸出設備連接到該引腳。可以在機箱的任何插槽中使用CompactDAQ機箱的4個計數器;如果您使用的是cDAQ-9172,則只能通過插槽5和6使用其兩個計數器,因此將NI 9401插入插槽5。圖9顯示了此配置的引腳分配,表1顯示了默認計數器端子。

要將正交編碼器與DAQ卡一起使用,請將通道A、B和Z分別連接到計數器的SOURCE、AUX和GATE引腳。要查找特定於您的DAQ卡的引腳排列,請在NI MAX中右鍵單擊該卡並選擇Device Pinout。有關連接和配置NI DAQ設備以進行正交編碼器量測的相關說明,請參閱指南將正交編碼器連接到DAQ設備。


圖9 NI 9401引腳分配 (插槽 5)


表1 默認計數器終端

根據這些規範,線A連接到引腳14,線B連接到引腳17,"5 VDC power"連接到設置為"high"的任何未使用的數位接點,"Ground"連接到任何COM 端子。

查看您的量測結果

現在您已將編碼器連接到量測設備,您可以使用NI LabVIEW和DAQmx驅動程式將數據傳輸到電腦進行顯示和分析。

表1 顯示了在LabVIEW環境中顯示邊沿計數和相應位置增量的示例。

可以在<National Instruments>\LabVIEW xxxx\examples\DAQmx\Counter Input中找到DAQmx Counter Input的範例程式,如Counter-Read Encoder (Continuous Clock).vi。

Counter-Read Encoder (Continuous Clock).vi LabVIEW前面板
圖10 LabVIEW Front Panel顯示量測結果