《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 一種基于CORDIC算法的自整角機信號解碼研究
一種基于CORDIC算法的自整角機信號解碼研究
2016年微型機與應用第18期
桑坤,朱向冰,金慧敏
安徽師范大學 物理與電子信息學院,安徽 蕪湖 241000
摘要: 自整角機是一種用于角度測量的微型電機,其輸出包含角度的模擬信號經過簡單處理和A/D變換后再通過CORDI算法解碼。CODIC算法具有精度靈活可調、運算速度快、硬件實現簡單等優點;通過對CORDC算法角度及對自整角機輸出信號的象限修正,設計了一種基于CORDIC算法流水線技術的自整角機解碼算法,并以FPGA為平臺進行模擬和仿真,驗證其準確性及可行性。
Abstract:
Key words :

  桑坤,朱向冰,金慧敏

  (安徽師范大學 物理與電子信息學院,安徽 蕪湖 241000)

       摘要:自整角機是一種用于角度測量的微型電機,其輸出包含角度的模擬信號經過簡單處理和A/D變換后再通過CORDI算法解碼。CODIC算法具有精度靈活可調、運算速度快、硬件實現簡單等優點;通過對CORDC算法角度及對自整角機輸出信號的象限修正,設計了一種基于CORDIC算法流水線技術的自整角機解碼算法,并以FPGA為平臺進行模擬和仿真,驗證其準確性及可行性。

  關鍵詞:CORDIC算法;自整角機;解碼;FPGA

0引言

  自整角機是一種高精度的角度位置傳感器[1],廣泛應用于航海、航天、方位同步指示系統火炮等伺服系統中。自整角機輸出信號主要以模擬信號進行傳送,減少角度信號在較長距離傳輸時其他信號干擾,同時方便人們控制目標元件。傳統的軸角測量通常采用峰值采樣、相干解調或專用的軸角數字轉換芯片實現[2],但是這幾種算法也存在精度不高、運算速度較慢及價格昂貴等缺點。本文使用的坐標旋轉數字計算(Coordinate Rotation Digital Computer,CORDIC)算法采用迭代的思想,不進行乘法運算,提高了運算速度。由于該算法是一種數字數字的算法,有線性的收斂域和序列及迭代次數可有效提高精度[3]。

  本文利用CORDIC算法[4]計算反正切函數并結合自整角機輸入輸出信號的特點,實現一種運算速度高、可靠性好、精度高、硬件設計簡單的角度解碼,并用FPGA豐富硬件資源簡化程序,提高電路的運算速度和可靠性。

1自整角機基本原理

  自整角機是利用自整步特性將轉角變為交流電壓或由交流電壓變為轉角的感應式微型電機,當激勵繞組以一定的頻率交流電壓勵磁時,輸出繞組的電壓幅值與轉子轉角成正余弦函數關系[5]。在結構上,自整角機主要由轉子和定子組成,轉子軸上的單相繞組通過電刷和滑環與外界連接,引出端用Z1和Z2表示;定子的三相對稱繞組以Y型連接,空間位置上依次落后120°,如圖1所示。

圖像 001.png

  設轉子轉動θ,自整角機三路輸出模擬信號,但是需要電壓激勵。激勵電壓為:

  QQ圖片20161024194309.png

  S1、S2、S3三路定子的感應電動勢分別為:

  QQ圖片20161024194312.png

  QQ圖片20161024194316.png

  QQ圖片20161024194320.png

  上式中sinωt為交流信號,θ是自整角機偏轉的角度。

2CORDIC算法原理

  CORDIC算法基本思想是迭代,通過多個固定的及與運算有關的角度逐次遞減,從而逐漸逼近需要的角度。

圖像 002.png

  CORDIC算法的基本公式在一些文獻中有詳細推導,這里僅作簡要的說明。

  如圖2所示,假設向量(xi,yi)按照一定角度旋轉到(xj,yj)則有:

  QQ圖片20161024194323.png

  起始位置到終點位置可以通過多步迭代旋轉過程實現,每一步旋轉一定的相位,則:

  QQ圖片20161024194327.png

  提取cosθn,則有:

  QQ圖片20161024194331.png

  定義每一步的旋轉角度為θn=arctan(12n),總的旋轉相位為θ=∑Snθn,其中Sn=±1,則:

  QQ圖片20161024194335.png

  其中K為增益因子,其值的變化取決于迭代次數,當迭代次數N很大時:

    QQ圖片20161024194339.png

  CORDIC算法有旋轉模式(rotation)和矢量模式(vectoring)兩種旋轉模式[6],該解碼算法采用矢量模式。迭代方程如下:

  QQ圖片20161024194343.png

  其中zj是角度累加器,di=-sgn(yi)=1,y<0(順時針旋轉)

  -1,y>0(逆時針旋轉)。

  假設初始條件為x0=x,y0=y,z0=0,經過n次迭代后,矢量模式的表達式為:

  QQ圖片20161024194350.png

3自整角機解碼算法設計

  3.1自整角機輸出信號的象限修正

  利用CORDIC算法計算反正切值[7],由于arctan2-i(0≤i≤n)所能計算的值區域為-π2,π2,要計算全角度時必須對角度進行預處理。將公式(2)-(4)整理得:

  QQ圖片20161024194354.png

  對自整角機三路輸出的模擬信號進行簡單運算,得到只含角度θ的正余弦值和正切值;然后對得到的正余弦函數進行修正,得到角度θ所在的范圍。

  將得到的正弦和余弦函數進行區間范圍的判斷,sinθ和cosθ所在的區間范圍如下:當|cosθ|-|sinθ|≥0,θ在QQ圖片20161024194759.png

  QQ圖片20161024194814.png

定義一個中間變量α,則有:

  QQ圖片20161024194357.png

  sinθ、cosθ在不同區域的值如表1所示。

圖像 006.png

上述輸出角度θ的劃分修正,將角量全部轉換到0,π4,可有效避免討論sinθ或cosθ等于0的情況,在計算過程中,也避免了反正切函數在±π2和±π附近角度不收斂無法計算的情況,因此不占用和浪費大量資源,提高了運算速度。

  3.2CORDIC求全角量反正切

  對于自整角機輸出信號,在旋轉的角度一定時,可將輸出的信號理解為勵磁信號Eref=ERLO-RHIsinωt對sinθ和cosθ進行的幅度調制[6],而勵磁信號的變化只是幅值發生變化,對自整角機輸出信號的正確解碼不產生影響,只要能正確地解碼出角度值,則幅值的變化可以忽略不計,本文選擇CORDIC算法的矢量模式,令Uxin=cosθ,Uyin=sinθ,z0=0,經過n次迭代后得到式(11)。

  3.3CORDIC算法的角度輸出

  自整角機解碼算法采用20位二進制數表示輸出信號,輸入信號為16位二進制數。1°=216360≈18210=101101102;arctan(2-n)可表示為2202π·arctan(2-n),當迭代次數n不少于16時,就能夠達到一定的精度。

4CORDIC自整角機解碼算法的實現及仿真

  4.1CORDIC自整角機解碼算法的實現

  基于CORDIC算法實現的設計有迭代結構和流水線結構[7],流水線結構運算速度比迭代結構快,采用流水線結構可有效提高算法速度。在流水線結構中,旋轉角度集的各個值均是直接聯到累加器的[6] 。流水線結構如圖3所示。

圖像 003.png

  4.2FPGA實驗仿真

  采用VHDL語言描述并在FPGA上實現流水線結構的CORDIC解碼算法,利用QuartuesII進行仿真,驗證其可行性與正確性。

  設定系統時鐘為98 MHz,輸入一位時鐘信號clk,1位使能信號ena,16位輸入信號Xin、Yin,及20位角度解碼信號輸出Aout,仿真選取50°和260°進行模擬,驗證該解碼算法的正確性。

  當自整角機的角度為50°時,QuartuesII仿真圖及仿真數據如圖4和表2所示。

圖像 004.png

圖像 007.png

  當自整角機的角度為260°時,仿真圖及仿真數據如圖5和表3所示。

圖像 005.png

  由上述數據可知,在角度一定、Eref變化的情況下,該算法可以正確地解碼θ,并且達到一定的精度;仿真中的冒險競爭不是發生在時鐘上升沿,不影響角度的正確解碼。從仿真圖上可以看出有一定的延時,這是由迭代運算造成的效果,可以通過改變時鐘頻率進行改善。

圖像 008.png

5結論

  本文采用CORDIC算法在FPGA上實現自整角機輸出角度的解碼,并對自整角機的輸出信號進行簡單的運算和角度的象限修正預處理,在可計算的范圍內,通過QuartuesII驗證其可行性與正確性,提升了運行速度和精度,從而驗證了該設計的正確可行。

  參考文獻

  [1] 楊桂華. 高精度自整角機精度的分析[J]. 微電機,1990(1):11-15.

  [2] 李全.正交三角函數的CORDIC實現[J].微計算機信息,2008,24(12-3):268-269.

  [3] 陳石平,廖丁毅,張權.CORDIC算法在正角調制技術的應用[J].廣西通信技術,2015(2):49-52.

  [4]王華華,陳雷成,陳發堂,等.基于FPGA的STACORDIC算法在SCME中的應用[J].電子技術應用,2014,40(8):109-111,115.

  [5] ANDRAKA R. A survey of CORDIC algorithms for FPGA based computers[M]. New York: ACM Press, 1998.

  [6] VOLDER E. The CORDIC trigonometric computing technique[J].IRE Transactions on Electronic Computers,1959, 8:379-385.

  [7] 李滔,韓月秋.基于流水線CORDIC 算法的三角函數發生器[J].電子技術應用, 2000, 25(4):85-87.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲人成电影网站| 国产一级一片免费播放视频| 一级特黄aaa大片在线观看视频| 欧美一级高清免费播放| 午夜时刻免费实验区观看| 久久福利资源网站免费看| 天天拍拍夜夜出水| 久久久久亚洲av综合波多野结衣| 欧美成人精品第一区首页| 免费高清欧美一区二区视频| 麻豆国产一区二区在线观看| 国产草草影院ccyycom| 一道本不卡免费视频| 日韩欧美国产另类| 亚洲图片欧美文学小说激情| 男女一边摸一边做爽爽| 国产乱偷国产偷高清| 777奇米影视四色永久| 在线观着免费观看国产黄| 两个人看的视频www在线高清| 日韩精品一区二区亚洲av观看| 亚洲欧美电影一区二区| 精品人妻大屁股白浆无码| 最近中文字幕在线mv视频7| 午夜dj在线观看神马电影中文| 高清不卡毛片免费观看| 国产精品无码素人福利| japanese六十路| 扒开女人内裤边吃奶边摸| 久久综合久久综合九色| 欧美性xxxxx极品娇小| 国产亚洲欧美精品久久久| 伊人免费视频二| 色老头永久免费网站| 国产曰批免费视频播放免费s| 97热久久免费频精品99| 嫩草影院在线视频| 中文字幕欧美成人免费| 日韩在线视频一区二区三区| 亚洲人成影院在线无码按摩店| 污污网站在线播放|