<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 模擬技術 > 設計應用 > 基于FPGA的新型數字電壓表設計

          基于FPGA的新型數字電壓表設計

          作者: 時間:2010-04-27 來源:網絡 收藏


          該電壓表電路中,ADC0809的工作時序如圖4所示。主要控制信號:START是轉換啟動信號,高電平有效;ALE是3位通道選擇地址(ADDC,ADDB,ADDA)信號的鎖存信號。當模擬量送至某一輸入端,由3位地址信號進行選擇,而地址信號由ALE鎖存;EOC是檔位轉換的狀態(tài)信號。EOC輸出高電平時,表示轉換結束;在EOC的上升沿后,若使能輸出信號OE為高電平,則三態(tài)緩沖器打開,將轉換完畢的8位數據結果輸至數據總線,至此ADC0809的一次轉換結束。
          3.2 檔位轉換電路
          為了增加數字電壓表的測量范圍,設計了檔位選擇電路。采用精密電阻分壓方法,簡潔實用。ADC0809有8路數據輸入端口,原理上可以分為8個檔位。從實用性出發(fā),只分了兩檔,如圖5所示。圖5中電位器負責電阻校準。盡管采用精密電阻,各電阻值的制造誤差不可避免,用電位器來微調校準以保證測量精度。ADC0809的輸入范圍為0~5 V,檔位的切換是通過程序來控制ADC0809各個通道的選通來自動實現(xiàn)。只要輸入的電壓范圍超過5 V,則檔位自動切換到另一檔,即選通通道INl。


          當輸入電壓范圍為O~5 V時,INO導通。此時U=U26,當輸入電壓范圍為5~50 V時,判斷選擇檔位,INl導通。此時有U=U27即U=(R1+R3)/(R1+R2+R3)=U26/10。
          由于ADC0809數字量輸出為8位,數字量化范圍為0~255,當輸入電壓為滿量程5 V時,轉換電路對輸入電壓的分辨能力為:

          3.3 內部模塊設計
          (1)碼制轉換模塊。在此碼制變換模塊DATA_CONVERSION功能是將AD0809采樣送來的8位二進制數轉換為可被LCD識別的字符型LCD碼。首先,將8位二進制碼變換為BCD碼;然后,再分別進行轉換,得到字符型碼,并送入譯碼顯示模塊。
          (2)譯碼驅動模塊。數字電壓值的顯示由LCD實現(xiàn)。選用了HY系列字符型液晶顯示模塊HD44780。實現(xiàn)了低功耗,而且可帶單位雙排顯示,字體美觀大方。
          整個電路十分簡潔。系統(tǒng)工作過程:芯片EP2C5T144對ADC0809及LCD進行初始化。當有輸入信號Vi時,由FPGA向ADC0809傳送控制信號控制字,使其對輸入的模擬信號進行轉換,變?yōu)?位的數字信號并送到輸出端。由FPGA經過碼制變換等處理后,再通過LCD的接口驅動,向其發(fā)送數據。當ADC0809采樣完成后,F(xiàn)PGA中的碼字轉換模塊將數據轉換為LCD可識別的字符型數據,然后送至驅動模塊,由其驅動LCD,將字符型數據送到LCD的DO~D7端,實現(xiàn)顯示。

          4 關鍵算法實現(xiàn)
          4.1 檔位自動切換算法

          將數字電壓表分為兩個檔位,分別是0~5 V,0~50 V。檔位切換算法如下:
          設定初始量程為0~5 V。采集100個數據點,對輸入信號Vi的采樣值取絕對值的最大值,將其作為Vi的最大值的估計值。如果Vi的最大絕對值估計值小于5 V,則將檔位切換到O~5 V,否則,切換到0~50 V。
          4.2 信號采樣周期自調整算法
          為協(xié)調好數據精度和系統(tǒng)負擔兩者之間的關系,對于疊加周期信號的輸入信號Vi,規(guī)定單個周期的數據采集不少于8個點,因此要對AD0809的采樣周期進行自適應調整。這里使用過零點檢測的方法,如果疊加信號的周期在0~25 Hz范圍內,采樣周期為5 ms。疊加信號周期在25~50 Hz時,采樣周期為2 ms;疊加信號周期在50~100 Hz時,采樣周期為1 ms。
          設采樣周期的初始值為2 ms,采樣數為100點。則有:首先采集100個數據,計算平均值,作為輸入信號Vi的均估值(平均值的估計值);再采集100個數據,與Vi的均估值進行比較,計算過零點的數量并統(tǒng)計;根據此數量,調整采樣周期,當此數量大于20時,令采樣周期為1 ms。當此數量不大于10時,令采樣周期為5 ms。其他令采樣周期為2 ms。
          4.3 檢測疊加信號周期算法
          依舊采用檢測過零點的數目來檢測周期。
          設采集的數據點為1O0個,計算均值,作為輸入信號Vi的均估值;再采集數據,與Vi的均估值進行比較,計算過零點的數量并統(tǒng)計,同時統(tǒng)計每個數據過零點的時刻;檢測到三個過零點時,判斷其是否符合均勻分布,判斷是否檢測到一個周期。若檢測到一個周期,則停止檢測并計算此周期,否則繼續(xù)檢測。若檢測到相當數量的數據點,過零點數量仍小于3個,則認為輸入信號為直流信號。

          5 程序流程
          程序流程如圖6所示。



          6 測試結果分析
          采用高精度數字多用表UT88B輸出值作為標準值。由表1所示。


          由數據對比可以看出,在O~5 V檔位上,該數字電壓表的誤差基本在O.01 V內。在O~50 V檔位上,誤差有所增大,但也控制在O.02 V以內,體現(xiàn)了ADC0809的轉換精度,電路整體設計合理可靠。至于O.02 V以內的偏差,可修改程序,采用軟件的方法進行數據校正,也可以進一步校正A/D的基準電壓。

          7 結語
          利用現(xiàn)場可編程門陣列技術,設計了該式電壓表。用軟件替代諸多硬件,在一塊高性能FPGA芯片上,實現(xiàn)采樣時序的控制、檔位的判斷選擇、碼制的轉換和LCD驅動,極大地提高了系統(tǒng)集成度和可靠性。文中重點介紹了檔位電路和FPGA內部模塊的設計以及關鍵算法的實現(xiàn)步驟。由測試結果,可看出該儀表測量范圍較寬,測量精度較高,能夠滿足物理實驗中電量的測量要求。經實際使用證明,系統(tǒng)運行穩(wěn)定、操作方便。為了方便電壓表系統(tǒng)與計算機直接通信,還可進一步增加RS 232接口,進行電平轉換,可將測得的數據實時導入計算機中使用。


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();