《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 一種基于CPLD的編碼器抗干擾電路設(shè)計(jì)
一種基于CPLD的編碼器抗干擾電路設(shè)計(jì)
來(lái)源:微型機(jī)與應(yīng)用2013年第14期
何遠(yuǎn)松, 謝明紅
(華僑大學(xué) 機(jī)電學(xué)院,福建 廈門361021)
摘要: 在交流伺服系統(tǒng)中,準(zhǔn)確可靠地獲取編碼器信號(hào)是整個(gè)閉環(huán)控制的關(guān)鍵;而編碼器信號(hào)常受外界干擾,會(huì)產(chǎn)生誤碼脈沖,給伺服控制帶來(lái)了偏差。在分析了增量式光電編碼器的原理及誤碼產(chǎn)生原因、總結(jié)編碼器信號(hào)處理方法后,設(shè)計(jì)了一種基于CPLD的具有編碼器差分信號(hào)輸入、誤碼濾除和鑒相功能的電路,提高了編碼器信號(hào)檢查的可靠性,并得到了很好的實(shí)際應(yīng)用。具體分析了濾除誤碼原理,并給出了設(shè)計(jì)原理圖和Quartus II下的仿真結(jié)果。
Abstract:
Key words :

摘  要: 在交流伺服系統(tǒng)中,準(zhǔn)確可靠地獲取編碼器信號(hào)是整個(gè)閉環(huán)控制的關(guān)鍵;而編碼器信號(hào)常受外界干擾,會(huì)產(chǎn)生誤碼脈沖,給伺服控制帶來(lái)了偏差。在分析了增量式光電編碼器的原理及誤碼產(chǎn)生原因、總結(jié)編碼器信號(hào)處理方法后,設(shè)計(jì)了一種基于CPLD的具有編碼器差分信號(hào)輸入、誤碼濾除和鑒相功能的電路,提高了編碼器信號(hào)檢查的可靠性,并得到了很好的實(shí)際應(yīng)用。具體分析了濾除誤碼原理,并給出了設(shè)計(jì)原理圖和Quartus II下的仿真結(jié)果。
關(guān)鍵詞: CPLD;增量式編碼器;干擾;誤碼 

    在伺服系統(tǒng)中,編碼器反饋信號(hào)對(duì)伺服閉環(huán)控制系統(tǒng)至關(guān)重要,不管是速度控制模式, 還是位置控制模式,實(shí)時(shí)、可靠地獲取編碼器反饋信號(hào)對(duì)整個(gè)閉環(huán)系統(tǒng)的精度和消除系統(tǒng)滯后都有著至關(guān)重要的作用。假定伺服周期為1 ms,那么需要每隔1 ms計(jì)算出編碼器反饋脈沖的個(gè)數(shù)及其方向。編碼器信號(hào)直接影響著整個(gè)控制系統(tǒng)的精度和可靠性,整個(gè)系統(tǒng)的控制精度不可能高于編碼器檢測(cè)元件的精度。
    參考文獻(xiàn)[1]在設(shè)計(jì)了編碼器信號(hào)處理時(shí),實(shí)現(xiàn)了編碼器輸出信號(hào)的四倍頻、鑒相,但編碼器無(wú)法濾除誤碼。實(shí)際應(yīng)用中,編碼器干擾和抖動(dòng)客觀存在,誤碼的產(chǎn)生影響了檢測(cè)的可靠性。在編碼器的抗干擾、誤碼濾除設(shè)計(jì)中,常出現(xiàn)只能濾除某一相誤碼或換向丟脈沖現(xiàn)象。參考文獻(xiàn)[2]給出的設(shè)計(jì)在電機(jī)高低速切換頻繁時(shí),單穩(wěn)態(tài)觸發(fā)器的脈沖寬度難以確定,計(jì)數(shù)脈沖容易丟失。以往設(shè)計(jì)處理的編碼器輸出信號(hào)都以集電極信號(hào)為對(duì)象,而實(shí)際上編碼器輸出大多為差分信號(hào)。本文利用CPLD設(shè)計(jì)了一種可靠的用于增量式編碼器輸出信號(hào)的檢測(cè)電路,能直接處理編碼器輸出的差分信號(hào),其結(jié)構(gòu)簡(jiǎn)單,性能可靠,提高了控制系統(tǒng)的精度與可靠性。
1 增量式光電編碼器結(jié)構(gòu)及原理
    增量式編碼器因結(jié)構(gòu)簡(jiǎn)單、響應(yīng)迅速、性價(jià)比高等優(yōu)點(diǎn)而被廣泛使用。增量式光電編碼器利用光電轉(zhuǎn)換原理將轉(zhuǎn)子的角信息轉(zhuǎn)換成脈沖信號(hào),每輸出一個(gè)脈沖在對(duì)應(yīng)方向上產(chǎn)生一個(gè)增量的角度位移,通過(guò)統(tǒng)計(jì)脈沖信號(hào)的數(shù)量和方向計(jì)算旋轉(zhuǎn)的角度和位置。由于采用相對(duì)編碼,編碼器輸出的位置數(shù)據(jù)是相對(duì)的,因此,系統(tǒng)每次掉電后旋轉(zhuǎn)角度數(shù)據(jù)會(huì)丟失,需重新復(fù)位。典型的增量式光電編碼器由光源、光柵碼盤、光敏元件和信號(hào)處理電路組成。如圖1所示,碼盤上刻有3條碼道,由外向內(nèi)分別是A、B、Z。在A、B碼道上,等間距地刻有透光的縫隙(用白色表示);兩條碼道上相鄰的縫隙互錯(cuò)半個(gè)縫寬(1/4節(jié)距),所以正常情況下,A相與B相是一組正交脈沖信號(hào),即相位相差90°。在碼道Z上只開有一個(gè)縫隙,每轉(zhuǎn)輸出1個(gè)脈沖,用來(lái)表示碼盤的零位、校正每轉(zhuǎn)編碼器產(chǎn)生的脈沖個(gè)數(shù),將脈沖誤差控制在每一轉(zhuǎn)之內(nèi),避免累積誤差。軸承轉(zhuǎn)動(dòng)時(shí),光源光束交替通過(guò)碼盤上的縫隙,對(duì)應(yīng)光敏元件交替接收光源輸出的高電平或低電平信號(hào),電信號(hào)經(jīng)編碼器內(nèi)部處理電路放大、整形后輸出脈沖序列。圖2為碼盤展開圖(黑色為不透光部分)及碼盤順時(shí)針旋轉(zhuǎn)下對(duì)應(yīng)的電信號(hào)輸出,此時(shí)A相超前B相90°,若逆時(shí)針旋轉(zhuǎn)則B相超前A相90°。由于增量式編碼器的固有結(jié)構(gòu),使得其輸出信號(hào)不能自動(dòng)判別碼盤的旋轉(zhuǎn)方向,需經(jīng)硬件電路或軟件處理后才能完成鑒相工作。

    目前,大多數(shù)編碼器的輸出信號(hào)是便于遠(yuǎn)距離傳輸?shù)牟罘中盘?hào)(即A+、A-、 B+、B-、Z+、Z-),且分辨率很高。比如,安川SGMJV-08ADD6S電機(jī)編碼器輸出為20 bit脈沖信號(hào),即電機(jī)每旋轉(zhuǎn)1圈, 編碼器每相輸出220=1 048 576個(gè)脈沖[3],運(yùn)動(dòng)控制器無(wú)法直接處理這些脈沖,一般將脈沖序列經(jīng)驅(qū)動(dòng)器分頻并轉(zhuǎn)換成集電極信號(hào)后反饋給控制器處理。本文將在CPLD中完成差分信號(hào)轉(zhuǎn)集電極信號(hào)。
2 增量式光電編碼器誤碼的產(chǎn)生
    碼盤縫隙邊緣是編碼器輸出信號(hào)產(chǎn)生抖動(dòng)誤碼脈沖的根源,這是由編碼器固有物理結(jié)構(gòu)所致。在安裝基座的機(jī)械振動(dòng)下,編碼器碼盤振動(dòng)或轉(zhuǎn)軸不穩(wěn)都會(huì)引起輸出誤碼;電機(jī)超低速運(yùn)行或正反轉(zhuǎn)頻繁換向時(shí),碼盤縫隙邊沿附近會(huì)產(chǎn)生小幅度晃動(dòng),也會(huì)產(chǎn)生干擾脈沖,導(dǎo)致計(jì)數(shù)錯(cuò)誤。圖3為編碼器在圖2的S1、S2、S3、S3和S4處,依次出現(xiàn)寬度小于半個(gè)正常脈沖寬度的干擾波形。當(dāng)抖動(dòng)產(chǎn)生時(shí),A、B相脈沖相位不再是固定的90°關(guān)系,脈沖寬度和周期隨抖動(dòng)的不同而不同。本文將從編碼器的鑒相方法入手,濾除誤碼脈沖,提取有效的計(jì)數(shù)脈沖信號(hào)。

3 光電編碼器脈沖處理方法
    常用的編碼器信號(hào)處理方法有:
   (1)基于硬件電路。有觸發(fā)器、邏輯門等,比如通過(guò)74系列芯片、RC電路搭建硬件電路,實(shí)現(xiàn)脈沖的鑒相、計(jì)數(shù)。
 (2)基于軟件算法。直接將編碼器輸出信號(hào)送至微處理器,由軟件算法完成誤碼濾除、倍頻、鑒相和計(jì)數(shù)任務(wù)。    
   (3)硬件和軟件相結(jié)合。一般先由硬件完成倍頻、鑒相,再由軟件完成計(jì)數(shù)。
    基于硬件處理速度響應(yīng)快,但系統(tǒng)器件增多,抗干擾性和可靠性差。基于軟件算法雖實(shí)現(xiàn)簡(jiǎn)單,卻對(duì)處理器要求高。例如參考文獻(xiàn)[4]利用“同一邊沿判斷原則”,采用某相上升沿和下降沿時(shí)刻根據(jù)另一相電平的變化情況來(lái)消除抖動(dòng),很好地濾除了誤碼,但這一算法需頻繁判斷上升沿和下降沿,軟件時(shí)間消耗大。參考文獻(xiàn)[5]采用“散轉(zhuǎn)地址的方法”,將所有的前一個(gè)A、B電平狀態(tài)作為散轉(zhuǎn)地址的高2 bit,所有后一個(gè)A、B電平狀態(tài)作為散轉(zhuǎn)地址的低2 bit,合成4 bit,排列組合出16種狀態(tài)。由于每種狀態(tài)對(duì)應(yīng)了編碼器的轉(zhuǎn)相和計(jì)數(shù)脈沖是否有效,因此加快了軟件執(zhí)行速度,但同時(shí)增加了存儲(chǔ)空間。
    本文采用軟件和硬件結(jié)合的方法,由CPLD完成信號(hào)轉(zhuǎn)換、誤碼濾除、倍頻和鑒相等工作,最終將差分編碼器信號(hào)轉(zhuǎn)換為脈沖/方向信號(hào)。CPLD具有可用門電路多、處理速度快、可靠性和性價(jià)比高等優(yōu)點(diǎn);并且,將誤碼信號(hào)轉(zhuǎn)換、誤碼濾除等電路集于同一芯片,提高了系統(tǒng)的通用性和靈活性。同時(shí),CPLD支持可編程,方便現(xiàn)場(chǎng)對(duì)電路進(jìn)行升級(jí)。
4 CPLD濾除編碼器抖動(dòng)及仿真結(jié)果
4.1誤碼濾除原理

    由編碼器固有結(jié)構(gòu)可知,A、B相電平不能同時(shí)突變。假設(shè)以A相為計(jì)數(shù)脈沖參考, 在A相脈沖相鄰兩個(gè)跳變沿時(shí)刻,比較B相信號(hào)電平邏輯,若B相電平不同,則認(rèn)為編碼器輸出是正常計(jì)數(shù)脈沖信號(hào),使能計(jì)數(shù)端對(duì)A相脈沖計(jì)數(shù),此時(shí)B相有誤碼不影響脈沖計(jì)數(shù);若B相電平相同,則認(rèn)為A相出現(xiàn)了誤碼,不予計(jì)數(shù)。依據(jù)A相上升沿和下降沿時(shí)刻B相電平的高低,判斷A、B相位關(guān)系,若A相上升沿處B為低電平,則A相超前B相;若A相下降沿處B相為低電平,則B相超前A相。A、B脈沖相異或產(chǎn)生倍頻脈沖,作為觸發(fā)器(上升沿觸發(fā))的時(shí)鐘信號(hào),A相脈沖經(jīng)觸發(fā)器輸出計(jì)數(shù)A信號(hào),如圖4所示,計(jì)數(shù)A濾除了A相中的誤碼,將其作為計(jì)數(shù)脈沖。反之,以B相為參考可得同樣結(jié)果。

4.2 編碼器鑒相和濾除誤碼設(shè)計(jì)
    根據(jù)以上分析,采用圖形與語(yǔ)言結(jié)合的方法進(jìn)行設(shè)計(jì),內(nèi)部的邏輯子模塊采用VHDL語(yǔ)言實(shí)現(xiàn)。頂層模塊結(jié)構(gòu)如圖5所示,信號(hào)A+、A-和B+、B-經(jīng)DIFF4_2模塊轉(zhuǎn)換為A、B集電極信號(hào),B信號(hào)經(jīng)2個(gè)D觸發(fā)器在A信號(hào)上升沿和下降沿處相“異或”,“異或”結(jié)果作為Counter的使能端并配合兩個(gè)“與門”完成A、B相位的判斷;A、B信號(hào)直接“異或”產(chǎn)生倍頻時(shí)鐘信號(hào),濾除誤碼恢復(fù)正常的A相脈沖,提供可靠計(jì)數(shù)脈沖。Counter模塊用于控制脈沖輸入方向,其輸出為編碼器旋轉(zhuǎn)方向信號(hào)和計(jì)數(shù)脈沖信號(hào)。

    A與B分別是 A1、A2和B1、B2差分轉(zhuǎn)換后的集電極信號(hào),DIR和PULSE_OUT為編碼器旋轉(zhuǎn)方向和計(jì)數(shù)脈沖輸出。根據(jù)DIR可判斷編碼器正反轉(zhuǎn),當(dāng)A超前B時(shí),DIR為低電平;當(dāng)B超前A時(shí),DIR始終為高電平。PULSE_OUT輸出為濾除誤碼后的A相波形,作為計(jì)數(shù)脈沖。主要VHDL程序如下:
    comb1<=A1&A2;
    comb2<=B1&B2;
    comb<=EN&CLR;
    begin
        case comb1 is
            when "10" => A<=′1′;
            when "01" => A<=′0′;        
            when others=> A<=′Z′;
        end case;        
        case comb2 is
        when "10" => B<=′1′;
            when "01" => B<=′0′;        
            when others=> B<=′Z′;
        end case;  
    case comb is
    when"11"=> DIR<=′0′;PULSE_OUT<=′0′;
    when "10" =>
        IF rising_edge(CLK) AND AB<=′1′
               THEN DIR<=′0′; PULSE_OUT <= CLK;
             END IF;
            IF rising_edge(CLK) AND BA<=′1′ 
            THEN DIR<=′0′; PULSE_OUT <= CLK;
       END IF;
    when others => DIR<=′Z′; PULSE_OUT <=′Z′;
    end case;
4.3實(shí)驗(yàn)結(jié)果
    本文CPLD芯片選用與編碼器輸出電平兼容的Altera公司MAX3000A系列EPM7128A,編譯環(huán)境采用QuartusⅡ。其仿真分析結(jié)果如圖6所示,差分信號(hào)A1、A2和B1、B2轉(zhuǎn)換為了A、B相集電極信號(hào);在A、B相信號(hào)出現(xiàn)干擾的情況下,輸出信號(hào)PULSE_OUT很好地恢復(fù)了正常A相脈沖信號(hào),為后續(xù)處理器檢查提供了可靠脈沖源。

 

    本文分析了編碼器誤碼產(chǎn)生原因,比較了編碼器信號(hào)處理方法,應(yīng)用CPLD設(shè)計(jì)了一種具有編碼器差分信號(hào)轉(zhuǎn)換、誤碼濾除和鑒相功能的可靠電路,并在交流伺服系統(tǒng)中得到了很好的驗(yàn)證。在系統(tǒng)出現(xiàn)較大抖動(dòng)和干擾時(shí),仍能獲得可靠的計(jì)數(shù)脈沖,提高了位置檢測(cè)精度和速度可靠性。
參考文獻(xiàn)
[1] 姬巖鵬,劉衛(wèi)東,徐建寧,等.交流伺服控制系統(tǒng)中脈沖抗干擾算法研究[J]. 微電機(jī),2007,40(2):62-65.
[2] 崔曉紅,陳宏利.光電編碼器抗干擾防振動(dòng)電路的設(shè)計(jì)[J].交通與計(jì)算機(jī),2005,23(1):110-112.
[3] 株式會(huì)社. AC伺服驅(qū)動(dòng)器∑-Ⅴ系列用戶手冊(cè)[S].安川電機(jī),SIPC S800000 45C, 2009.
[4] 趙哲身. 光電旋轉(zhuǎn)編碼器的軟件鑒相及其使用技巧[J].自動(dòng)化儀表,1998,19(2):17-18.
[5] 王子博. 編碼器四倍頻電路的單片機(jī)高速算法設(shè)計(jì)[J].控制與檢測(cè),2007(11):73-74.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美三级日本三级少妇99| 欧美日韩国产精品专区| 亚洲国产免费看| 99re在线精品| 在线精品观看| 国产麻豆日韩| 欧美日韩人人澡狠狠躁视频| 欧美一级黄色录像| 亚洲天堂成人在线观看| 亚洲精品一二| 亚洲丰满在线| 欧美一区二区三区在线看 | 欧美日韩成人综合| 久久久亚洲精品一区二区三区| 国产精品免费一区二区三区在线观看| 久久精品免费电影| 亚洲一区二区三区在线看| 最新日韩在线| 在线观看欧美| 黄色成人av| 国产精品欧美风情| 欧美日本一道本| 亚洲一区精品在线| 亚洲欧洲精品一区二区精品久久久 | 午夜久久电影网| 在线视频欧美日韩精品| 亚洲黄色免费| 久久国产精品72免费观看| 亚洲欧美激情一区二区| 一区二区三区鲁丝不卡| 日韩午夜黄色| 亚洲精品视频免费| 亚洲欧洲在线一区| 亚洲国产一区二区三区青草影视| 国色天香一区二区| 黄色精品一区| 黄色精品一区| 一区三区视频| 亚洲成在线观看| 亚洲成在人线av| 亚洲缚视频在线观看| 亚洲国产精品传媒在线观看| 极品日韩久久| 亚洲高清三级视频| 亚洲国产精品久久精品怡红院| 一区二区在线视频| 在线观看视频欧美| 亚洲国产欧美一区二区三区同亚洲| 亚洲丶国产丶欧美一区二区三区 | 99热这里只有成人精品国产| 亚洲美女色禁图| 一本色道久久综合亚洲精品小说| 亚洲欧洲精品一区二区| 日韩天堂av| 一区二区三区精品国产| 亚洲专区免费| 一区二区三区四区在线| 亚洲欧美不卡| 久久成人人人人精品欧| 亚洲电影免费观看高清完整版在线观看| 亚洲一区二区少妇| 性欧美超级视频| 久久疯狂做爰流白浆xx| 亚洲激情综合| 亚洲人成小说网站色在线| 日韩亚洲欧美精品| 亚洲综合电影| 久久精品官网| 欧美jizz19性欧美| 欧美日韩一级视频| 国产日韩免费| 亚洲国产片色| 伊人久久亚洲美女图片| 亚洲精品一区二区三区不| 亚洲性线免费观看视频成熟| 欧美一区二区三区啪啪| 亚洲日本欧美| 亚洲综合日韩| 久热国产精品视频| 亚洲视频网站在线观看| 国产日韩精品在线| 鲁大师影院一区二区三区| 亚洲狠狠婷婷| 亚洲美女黄网| 精品动漫3d一区二区三区| 欧美性色综合| 亚洲伦理自拍| 一区二区视频欧美| 亚洲调教视频在线观看| 亚洲国产精品999| 欧美一区二区在线观看| 欧美久久久久中文字幕| 国产一区二区三区四区在线观看| 日韩亚洲一区在线播放| 亚洲高清资源| 久久riav二区三区| 欧美日韩一区自拍| 亚洲国产精品久久91精品| 久久福利视频导航| 欧美一区二区三区四区高清| 欧美日韩在线免费观看| 亚洲大片免费看| 欧美中文在线免费| 性18欧美另类| 欧美午夜理伦三级在线观看| 亚洲电影免费在线| 亚洲国产电影| 久久久久久久综合色一本| 国产女人水真多18毛片18精品视频| 亚洲裸体在线观看| 亚洲国产一区二区精品专区| 欧美韩日高清| 亚洲一区欧美激情| 91久久一区二区| 久久精品视频亚洲| 欧美影院精品一区| 国产精品www网站| 在线亚洲伦理| 中日韩高清电影网| 欧美国产先锋| 亚洲激情电影中文字幕| 亚洲国产婷婷香蕉久久久久久99| 久久国产高清| 国产精品揄拍500视频| 在线亚洲伦理| 亚洲欧美在线一区二区| 国产精品久久久久9999吃药| 一区二区国产在线观看| 亚洲一区二区免费视频| 欧美视频日韩视频在线观看| 一本色道88久久加勒比精品| 亚洲视频www| 欧美色网一区二区| 国内精品久久久久久久果冻传媒| 免费成年人欧美视频| 好吊色欧美一区二区三区四区 | 亚洲国产精品久久久久秋霞蜜臀| 久久免费国产| 黄色成人av在线| 亚洲国产天堂网精品网站| 农夫在线精品视频免费观看| 欧美亚男人的天堂| 亚洲一区二区三区激情| 亚洲在线免费| 国产精品中文在线| 欧美在线三级| 毛片av中文字幕一区二区| 最新中文字幕亚洲| 亚洲午夜精品久久| 国产欧美一区视频| 亚洲黄色一区二区三区| 日韩视频―中文字幕| 一区二区三区黄色| 欧美日韩一区二区三区高清| 一区二区三区视频在线观看 | 一本到高清视频免费精品| 欧美日韩国产区| 亚洲欧美国产日韩中文字幕| 久久精品国产久精国产思思| 精品电影一区| 一区二区三区久久网| 国产精品国产a级| 久久av老司机精品网站导航| 蜜桃av噜噜一区| 亚洲美女毛片| 久久久人人人| 亚洲六月丁香色婷婷综合久久| 欧美一级视频精品观看| 一区二区亚洲欧洲国产日韩| 久久精品日产第一区二区| 欧美精品aa| 亚洲欧美一区二区三区久久| 玖玖玖国产精品| 99这里有精品| 久久久久久久综合| 亚洲乱码国产乱码精品精天堂 | 欧美阿v一级看视频| 国产精品99久久久久久有的能看| 久久精品国产综合精品| 亚洲片在线观看| 久久国产精品电影| 亚洲欧洲日韩综合二区| 香蕉视频成人在线观看| 亚洲黄色成人久久久| 亚洲欧美激情视频在线观看一区二区三区| 国产一区二区在线观看免费播放| 亚洲日本中文字幕免费在线不卡| 国产精品久久久久久久浪潮网站 | 亚洲国产视频直播| 国产精品久久久一区麻豆最新章节 | 国产欧美日韩不卡免费| 亚洲美女电影在线| 国产嫩草一区二区三区在线观看 | 欧美亚洲在线| 欧美网站在线| 亚洲精品精选| 国产偷久久久精品专区| 亚洲伊人一本大道中文字幕| 国语自产精品视频在线看一大j8 | 亚洲一区影音先锋|