技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術頻道 > 技術百科 > 增量型光電編碼器抗抖動二倍頻電路的設計

增量型光電編碼器抗抖動二倍頻電路的設計

時間:2017-12-01 11:44:58來源:網(wǎng)絡轉載

導語:?在某些工業(yè)自動控制領域、某些裝備應用上,經(jīng)常會遇到各種需要測量長度的場合,目前通常采用的是光電編碼器。

在某些工業(yè)自動控制領域、某些裝備應用上,經(jīng)常會遇到各種需要測量長度的場合,目前通常采用的是光電編碼器。光電編碼器根據(jù)其刻度方法及信號輸出形式,可分為增量式、絕對式、混合式三種。它是一種集光、機、電為一體的傳感器,具有精度高、響應快、性能穩(wěn)定可靠等顯著的優(yōu)點,能夠精確地檢測角度、轉速、位移等參數(shù)。它可以將位移等物理量轉變?yōu)閿?shù)字脈沖信號,通過計算脈沖的個數(shù),實現(xiàn)精確的位移測量。然而由于工作環(huán)境等因素影響,增量型光電編碼器輸出信號中含有較多的抖動誤碼脈沖,將會引起誤計數(shù)。本文分析誤碼脈沖產(chǎn)生的原因,設計一種有效的濾波電路。

1增量型編碼器的工作原理

增量型編碼器是一種通過光電轉換將輸出軸上的機械幾何位移量轉換成脈沖或數(shù)字量的傳感器,它由光柵盤和光電檢測裝置組成。光柵盤是在一定直徑的圓板上等分地開通若干個長方形孔,見圖1。由于光電碼盤與電動機同軸,電動機旋轉時,光柵盤與電動機同速旋轉,經(jīng)發(fā)光二極管等電子元件組成的檢測裝置檢測輸出若干脈沖信號,編碼盤上涂有兩道相差90°黑自相同的柵欄,分別稱之為A道和B道。其輸出脈沖也是相差90°。當編碼器正向旋轉時,A相比B相超前90°,當編碼器反向旋轉時,A相比B相滯后90°。正常情況下編碼器的輸出波形如圖1所示。

2誤碼脈沖產(chǎn)生的原因及其濾除方法

2.1誤碼脈沖產(chǎn)生的原因

為了說明誤碼脈沖的存在性,將編碼器碼盤局部放大。圖1中點0是編碼器旋轉軸的中心,圓角矩形代表碼盤上A列和B列透光狹縫。假定編碼器一相信號處于某種狀態(tài),而另一相信號處于高低電平跳變的交界狀態(tài),則編碼器的誤碼脈沖如圖2(a),圖2(b)所示。由于電機的旋轉或機械設備的振動,會使編碼器輸出脈沖抖動,從而引起誤計數(shù)。它一方面表現(xiàn)為在透光窗口附近的抖動,引起的干擾脈沖,如圖2(a)給出了A相脈沖信號在上升沿和下降沿發(fā)生抖動輸出的時序波形,圖2(b)給出了B相脈沖信號在上升沿和下降沿發(fā)生抖動輸出的時序波形;另一方面表現(xiàn)為在編碼器的某點附近前后振動,引起干擾脈沖。如圖2(c),圖2(d)給出了信號在編碼器b點前后抖動的時序波形。編碼器從a點正轉到b點,然后編碼器反轉到a點,又正轉到b點,兩個b點之間的脈沖數(shù)為干擾脈沖。

2.2誤碼脈沖的濾除

2.2.1濾除編碼器抖動的原理

采用二倍頻技術濾除抖動脈沖。所謂二倍頻技術即對A相或者B相每個脈沖的上升沿和下降沿分別計數(shù)。光電編碼器經(jīng)過二倍頻后正常輸出波形如圖3所示,A相脈沖O→1跳變時,B為O,則編碼器正轉;B為1,則編碼器反轉。A相脈沖1→O跳變時,B為1,則編碼器正轉;B為0,則編碼器反轉。編碼器正常輸出波形時,A、B兩相交替跳變,如果A相發(fā)生跳變后,B相沒有發(fā)生跳變A相又發(fā)生跳變,此時認為是干擾脈沖,反之同樣視為干擾脈沖。

分析圖4,對A相的跳變沿進行二倍頻計數(shù),B相的高低電平用來判斷編碼器的正反轉。B相邊沿的抖動脈沖對二倍頻計數(shù)沒有影響,如圖4(b)所示。分析圖4(a),A相邊緣的抖動認為是干擾脈沖被濾除掉。圖4(c),圖4(d)中的a,b標記的位置是編碼器物理地址,如圖4(d)標記的a,b表示編碼器在此處反復振動。圖4(c)、圖4(d)(1)、(2)標記處跳變沿視為抖動脈沖,應濾除,A相的正轉脈沖數(shù)據(jù)數(shù)和反轉脈沖數(shù)據(jù)數(shù)相減后就是A相實際二倍頻后的脈沖數(shù)據(jù)。

2.2.2FPGA濾除編碼器抖動及仿真結果

根據(jù)以上分析,本文采用FPGA濾除增量型光電編碼器輸出抖動脈沖。編譯環(huán)境采用QuartusⅡ8.O。在FPGA中使用圖形和語言結合的方法設計邏輯模塊。內部的邏輯子模塊采用Verilog語言來實現(xiàn)。頂層模塊的結構圖如圖5所示。A和B輸入引腳連接增量型編碼器A相和B相信號。Acount為16位的數(shù)據(jù)寄存器,輸出當前編碼器的位置。頂層設計中包含兩個模塊,一個是根據(jù)編碼器的B相跳變沿記錄來濾除編碼器A相抖動脈沖的BlockA模塊,該模塊根據(jù)濾除后的A相脈沖數(shù)據(jù)個數(shù)并記錄脈沖數(shù)據(jù)。Verilog的主要程序如下:

另一個模塊BlockB主要完成的功能是濾除編碼器B相的抖動脈沖。根據(jù)分析濾除編碼器抖動的原理,ENA引腳為BlockA模塊的輸出引腳,當A相輸入引腳有跳變時ENA為1,A相引腳有連續(xù)的跳變或者接下來B相有跳變時ENA為0。ENB為編碼器B相跳變使能引腳,當ENA為1時如果B相有跳變ENB為1,當ENA為1時如果B相有連續(xù)跳變ENB為0。主要程序如下:

以圖4(a)的編碼器抖動輸出仿真為例,仿真效果如圖6所示。從圖中分析,A相輸出7個脈沖,應該輸出3個脈沖,二倍頻后是14個脈沖,應該輸出6個脈沖,經(jīng)過濾除后脈沖計數(shù)器數(shù)為6個。A相的抖動脈沖得到有效的濾除。

3結語

現(xiàn)場調試結果證明,該算法可以消除工業(yè)現(xiàn)場出現(xiàn)的干擾和抖動現(xiàn)象,能夠準確地記錄脈沖數(shù)據(jù)。此濾波方法可以采用軟件濾波,但是軟件濾波需要的引腳較多,采用兩個中斷引腳響應A相的上升沿和下降沿,浪費CPU資源。采用FPGA實現(xiàn)編碼器的濾波,設計方便,改動靈活。

標簽:

點贊

分享到:

上一篇:基于施耐德PLC的地鐵BAS控制系統(tǒng)

下一篇:魏德米勒和格林策巴赫在摩擦...

中國傳動網(wǎng)版權與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(wǎng)(www.treenowplaneincome.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。

本網(wǎng)轉載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網(wǎng)站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

中國傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務平臺

網(wǎng)站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權所有 粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號