999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于單片機的旋轉編碼器鑒相方法研究

2010-08-08 00:52:26胡榮貴
網絡安全與數據管理 2010年13期
關鍵詞:單片機檢測方法

徐 海,胡榮貴,張 東

(1.電子工程學院 研究生一隊,安徽 合肥 230037;2.電子工程學院 602室,安徽 合肥 230037)

旋轉編碼器作為速度和位移的反饋傳感器廣泛應用于家電、無線電設備控制中,同時在電動機、電梯等需要對運動速度和位移信息反饋的自動化控制場合也起著重要作用。編碼器通常有A相、B相兩路輸出信號,信號包含了被測對象的旋轉方向以及旋轉角度等信息,通常需要由硬件電路或單片機程序進行鑒相處理。本文根據旋轉編碼器以及單片機的特點,研究并總結了利用單片機進行鑒相的方法,同時給出了相應的鑒相算法。

1 旋轉編碼器簡介

1.1 旋轉編碼器的分類

根據結構和工作原理不同,編碼器可以分為光電式編碼器、電磁式編碼器和機械接觸式編碼器。其中,光電式編碼器由于具有較高的精度、抗干擾能力強、接口簡單、使用方便等特點得到了廣泛應用。

根據測量的參數不同,編碼器又可分為旋轉式和直線式編碼器。旋轉式編碼器用于測量轉角轉速,直線式編碼器用于直線位移、運動速度的精密測量。

旋轉編碼器又可分為增量式編碼器和絕對式編碼器。增量式編碼器每轉過1個單位,編碼器就輸出1個脈沖,故稱為增量式。絕對式編碼器是直接輸出數字量的傳感器,它的特點是不需要計數,在轉軸的任何一個位置都可讀出一個與位置對應的數字碼。

1.2 編碼器工作原理

大多數直線式和旋轉式編碼器都是光透過光電碼盤和光欄板夾縫形成忽明忽暗的光信號,硅光敏器件把光信號轉換成兩組近似于正弦的電信號輸送出去,然后根據需要把這些信號進行差值或數字化處理,兩組正弦信號 A、B在相位上相差 90°。經放大整形后變成 A、B兩組相位相差90°的方波。根據A、B之間的相位關系即通過鑒相可確定旋鈕的正反轉。當A超前于B時為正轉,而當B超前于A時為反轉,如圖1所示。旋轉編碼器的輸出脈沖寬度隨著旋轉速度而變化,即轉速越高其脈沖寬度越窄。通常每圈的計數脈沖有360個、500個、1 000個等,用戶可根據精度的需要進行選擇。

2 鑒相方法及相應算法

在1個脈沖周期時間T內,單片機應該能準確判斷出A點相對于B點的相位情況。根據開始采樣檢測的時刻不同,在T內可以將采樣的波形分為如圖2所示的4種不同的組合情況。若兩點產生波形的組合不在下列4種情況中,則表明由于外部干擾或抖動產生了異常的波形,通常把這種波形稱為“毛刺”。

圖1 編碼器輸出脈沖示意圖

圖2 編碼器周期內輸出波形的4種組合

依據單片機工作方式通常有以下兩種鑒相方法:

(1)查詢法

單片機的I/O引腳直接連接A、B點,通過循環采樣讀取A、B點電平,來判斷當前旋鈕是否旋轉以及旋轉的方向。A點電平與B點電平有4種不同的組合:00、01、10、11,可以根據 4種組合狀態之間的變化進行鑒相。若正旋轉,則可得到對應的序列{00,10,11,01,00},反旋轉則有對應的序列{00,01,11,10,00}。 如表 1 所示的判斷表中,行表示當前A、B點電平值組合,列表示上一次變化前A、B點電平值組合,檢測到發生1次電平變化即可進行鑒相。需要指出的是,若A、B兩點電平相比上次均發生了變化,則無法進行判斷,這說明檢測時遺漏了脈沖或產生了“毛刺”。

表1 A、B相位判斷表

為了保證采樣A、B電平時沒有脈沖遺漏,對采樣頻率要求比較高。通常需要保證在編碼器以最快速度旋轉時,在A、B任一點2次電平變化之間有2次以上的采樣,以便可以比較最近2次的電平,去除因為其他外界條件變化產生的抖動。試驗表明,對于常用的編碼器,采樣的時間間隔約為1 ms,即可以基本上避免抖動。

在1個時間周期 T內,A、B點電平會變化 4次,即單片機可以根據1個脈沖信號做出4次判斷,具有倍頻的效果。但是由于毛刺的存在,在不要求倍頻的場合,通常采用多次檢測判斷來識別毛刺,以增強判斷的可靠性。通過設立兩個緩沖區用來分別存儲A、B點的電平,當檢測到A、B兩點中任何一點電平發生變化時,把A、B兩點的電平值分別存入各自緩沖區中。當檢測到電平變化發生N次時,通過分別比對正、反旋轉序列來進行判斷。假設 N=4(即每1個周期 T進行 1次判斷),檢測到 4次變化后,A緩沖區內的值為 0、1、1、0,B緩沖區內的值為 0、0、1、1,則比對序列{00,10,11,01}可得為正旋轉。假設N=3,檢測 3次變化后,A緩沖區內的值為 0、0、0,B 緩沖區內的值為 0、1、0, 無法匹配序列{00、01、00},則判斷為產生毛刺。如果只檢測1次,會做出00->01反轉、01->00正轉的判斷,導致誤判。

該鑒相方法具體程序流程如圖3所示。按此算法設計的程序,由于判斷比較指令較多,運行時間較長,總體響應速度比較低。為了克服這一缺點,可以采用將電平狀態組成地址的方法,去掉繁瑣的判斷與比較,使得運行時間大大縮短,從而提高響應速度。組成地址的方法是:設N次變化進行1次鑒相,第 n次變化前,A、B電平值分別記為 An、Bn(其中 0<n<N+1)。則可以組成地址A1B1A2B2……ANBN。每個地址在Flash程序存儲區中都對應一個值用來鑒相,或者可以直接存放程序地址,用程序計數器直接加載跳轉到鑒相完成后的處理程序。例如,設N=3,-1對應反向旋轉,1對應正向旋轉,0表示異常不處理或狀態無變化。根據正、反旋轉序列可以得到如表2所示的組合地址存放數據表。設1個字節長度的全局變量buf作為緩沖區用來存儲電平狀態值,同時作為Flash存儲區的低字節地址。記錄A、B點電平值時采用的是先將buf左移兩位,然后同000000AnBn相“與”的方式。存儲 3次后,得到buf為 00 A1B1A2B2 A3B3,將該值作為Flash尋址地址的低6位,取出數據即可得到鑒相結果。這種方法實際上是采取了用程序存儲空間來換取時間的思路。

圖3 鑒相算法流程

在單片機上實現循環檢測一般有3種方法:

①直接在后臺循環程序中添加任務。

表2 組合地址存放數據表

②采用定時中斷,在中斷處理程序中檢測A、B點電平并進行處理。

③兩種方式相結合。由于中斷處理程序處理時間過長會增加中斷沖突的概率,所以在定時中斷處理程序中僅檢測電平值,進入緩沖區后中斷立即返回。緩沖區判斷處理部分交由后臺程序完成。

(2)外部中斷法

編碼器在連接單片機I/O引腳的同時也連接到外部中斷引腳INTA、INTB上,如圖4所示。

INTA、INTB為單片機外部中斷接口。采用這種處理方式,要求單片機的外部中斷能夠支持中斷嵌套和邊沿觸發。由圖1可知,A點相位落后于B點,在A點方波下降沿B點均為低電平。B點的相位超前A點,在B點方波下降沿A點均為高電平。所以,下降沿觸發外部中斷時,根據采樣另一個引腳的電平,可以判斷出相位差別。同理,上升沿觸發的情況與下降沿觸發相類似。邊沿觸發方式相位判斷如表3所示。

圖4 編碼器外部中斷方式連接方法

表3 邊沿觸發方式相位判斷表

也可以將外部中斷觸發條件設為雙邊沿觸發,根據圖1可以發現其規律為:在邊沿觸發時,若兩個點電平相等,則邊沿觸發的點相位超前;若兩點電平不等,則邊沿觸發的點相位落后。例如在T1時刻,A點上升沿觸發,A點電位低,B點電位高,所以A的相位落后 B。在T2時刻,B點下降沿觸發,A和B均為高電平,所以B點相位領先于A。

采用上升沿或下降沿觸發,產生的是2倍頻,而雙邊沿觸發條件則是4倍頻。對不特別要求倍頻的場合可以采用只連接1個外部中斷的方法,判斷方法同連接2個外部中斷的方法相同。采用1個引腳外部中斷,采用上升沿或下降沿觸發為單倍頻,雙邊沿觸發為2倍頻。

在不特別要求倍頻的場合,中斷方式可以采用類似查詢方法的序列比對來增強判斷的可靠性:每次中斷將A、B點電平放入緩沖區,設立一個全局變量記錄中斷次數,每中斷 N次(N>1),將緩沖區值比對 1次,正反轉序列進行1次判斷,也可以采用組合地址的方法來縮短中斷響應時間。

3 糾錯方法

由于編碼器工作的環境可能比較惡劣,輸出脈沖較易受干擾,產生毛刺;在編碼器快速旋轉時,尤其是在倍頻工作時,由于采樣速率不夠,可能導致采樣的脈沖有遺漏。這些都會導致鑒相得出錯誤的結果,需要在單片機程序實現中對這些情況進行糾正。如前所述,可以在單片機處理程序中用比對序列的方法來避免誤判。此外還有以下3種方法:

(1)輔助硬件

一般是將編碼器的A、B相連接到施密特觸發器或濾波電容,然后再同單片機相連,通過觸發器來對輸出脈沖進行整形,從而達到去除毛刺的效果。

(2)統計糾錯

旋鈕的勻速轉動一般不會產生毛刺,快速轉動情況下產生毛刺的情況比較突出。對于1次操作,旋轉的方向應該是相同的。根據這個原理,將1次操作中每次旋轉的方向記錄下來,理論上每次判斷的結果應該相同方向,實際上有個別反方向的判斷,則可以視為毛刺。

(3)實驗糾錯

不同的編碼器性能不同,產生的毛刺也不同。實驗表明,相同的程序并不是都能適應所有的編碼器。可以利用示波器觀察旋轉時A、B脈沖波形及將采樣值通過單片機串口發送到PC機的方式,對編碼器產生的脈沖波形進行統計分析,包括對勻速旋轉、快速旋轉、加速旋轉、減速旋轉等所有可能情況產生的值進行統計分析。

4 實驗及結果

采用ATMEL公司的AVR1280單片機和E6C-CW25CF型旋轉編碼器分別對查詢法和外部中斷方法進行編程實驗,將AVR1280單片機串口通過電平轉換電路,同PC機串口連接。在單片機程序中,將每次采樣的值轉發到串口,則采樣數據通過串口傳送到PC機顯示。

4.1 不同采樣時間下脈沖遺漏情況

單片機程序采用定時中斷的方式讀取I/O引腳電平,程序采用查詢法,分別設定時器中斷為16 ms、2.5 ms、1 ms對采樣的輸出結果進行觀察:16 ms時,勻速旋轉旋鈕也會產生脈沖的遺漏;2.5 ms勻速旋轉時,脈沖遺漏的情況得到改善,但是加速旋轉仍會有脈沖遺漏情況;1 ms時,脈沖無遺漏現象發生。

4.2 糾錯能力實驗

采用圖4的方法連接編碼器,將引腳分別連接到外部中斷INT0、INT1上。同樣在中斷發生時,在中斷處理程序中可以采樣A、B電平通過串口發送到PC機顯示觀察。將外部中斷都設置成雙邊沿觸發,對旋鈕進行旋轉實驗,發現編碼器快速旋轉時,程序容易產生反方向的誤判。采用序列比對的方法,每中斷4次進行1次鑒相,可以很好地糾正該問題。結果表明,若使用中斷方式4倍頻工作,很難依靠單片機軟件得到可靠的鑒相結果,需要加強硬件電路。

本文提出的單片機鑒相方法,可以避免一些復雜多余的硬件設計,節約了成本。對采用編碼器的嵌入式系統的軟硬件開發有一定的參考價值。

[1]姜艷平.編碼器發展與應用[J].新自動化,2006(10):61-63.

[2]李德兵.旋鈕式鍵盤及其與AT89C52接口技術[J].單片機與嵌入式系統應用,2003(6):73-74.

[3]崔麗.2009年國內旋轉編碼器市場分析 [J].電氣時代,2009(5):28-30.

[4]王子博.編碼器四倍頻的單片機高速算法設計[J].控制與檢測,2007(11):73-74.

[5]余昌盛.旋轉編碼器抗抖動接口電路設計[J].計算機應用,2004(8):33-35.

[6]ATmel.ATmega1280/V user’s manual[R].2549K-01/07.2007.

猜你喜歡
單片機檢測方法
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
小波變換在PCB缺陷檢測中的應用
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
主站蜘蛛池模板: 亚洲娇小与黑人巨大交| 国产精品视频999| 日韩AV无码免费一二三区| 国产精品永久在线| 亚洲系列无码专区偷窥无码| 毛片免费网址| 色精品视频| 国产精品伦视频观看免费| 一本视频精品中文字幕| 国产精品国产主播在线观看| 国内精自视频品线一二区| 欧美高清国产| 中文字幕日韩视频欧美一区| 亚洲第一色视频| a国产精品| 久操线在视频在线观看| a级毛片免费看| 精品无码一区二区三区电影| 高清久久精品亚洲日韩Av| 91久草视频| 欧美一区中文字幕| 国产精品综合色区在线观看| 亚洲欧洲国产成人综合不卡| 91精品国产情侣高潮露脸| 高清无码一本到东京热| 亚洲精品自产拍在线观看APP| 国产91麻豆免费观看| 40岁成熟女人牲交片免费| 国禁国产you女视频网站| 成人在线观看不卡| 国产成人免费手机在线观看视频| 午夜精品久久久久久久无码软件 | 99在线视频网站| 精品久久国产综合精麻豆| 亚洲最黄视频| 欧美不卡二区| 综合色在线| 欧洲精品视频在线观看| 日韩精品一区二区三区中文无码| 国产亚洲一区二区三区在线| 国产在线观看91精品亚瑟| 精品福利视频网| 国产精品一线天| 欧美午夜理伦三级在线观看| 久久久久久久久久国产精品| 久久婷婷人人澡人人爱91| 国产精品三级专区| 亚洲福利网址| 999国产精品永久免费视频精品久久| 精品91在线| 久久九九热视频| 视频在线观看一区二区| 亚洲成在线观看| 国产精品成人AⅤ在线一二三四| 国产欧美日韩在线一区| 欧美色香蕉| 国产精品视频3p| 亚洲日本精品一区二区| 国产成人精品视频一区视频二区| 欧美有码在线观看| 亚洲综合第一区| 欧美一区二区三区国产精品| 国产色伊人| 992Tv视频国产精品| 青青操国产视频| 伊人久久精品无码麻豆精品| 久久精品国产91久久综合麻豆自制| 草逼视频国产| 国产人免费人成免费视频| 国产伦精品一区二区三区视频优播| 色综合天天娱乐综合网| 沈阳少妇高潮在线| 国产午夜无码专区喷水| 成人看片欧美一区二区| av色爱 天堂网| 中文一区二区视频| 中文字幕久久精品波多野结| 毛片国产精品完整版| 日本人妻一区二区三区不卡影院| 99青青青精品视频在线| 97在线观看视频免费| 国产在线视频欧美亚综合|