新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > STM32自動量程電壓表設計方案

        STM32自動量程電壓表設計方案

        作者: 時間:2016-11-18 來源:網絡 收藏
        0 引言


        在智能儀器中,常常用到自動量程轉換技術,這使得儀器在很短的時間內自動選取最合適的量程實現高精度的測量。自動量程的實現一般通過控制輸入信號的衰減放大倍數實現,就電壓表來說其輸入測量電壓會大于其AD 轉換器的輸入范圍,所以它的量程切換基本上是信號衰減倍數切換的過程。

        1.系統整體方案與工作原理

        系統功能框圖如圖1所示。STM32F103ZET6處理器是本系統的核心器件,負責控制整個系統的正常工作,包括讀取AD 轉換后的結果及200mV 與2V 檔位的控制;按鍵輸入動作響應;段式液晶的驅動;量程自動轉換控制等。

        系統功能框圖

        輸入的電壓信號經過量程轉換模塊,變成可供ADC模擬輸入端能正常進行采樣的電壓。交流電壓測量模塊的功能是將被測的交流電壓轉換成相應的RMS 值。按鍵輸入的功能是切換各種不同的測量模式以及計算相對誤差時進行數值輸入。

        2.系統硬件結構

        (1)電源管理硬件電路

        本系統具有低功耗模式,即在一定的時間內沒有操作,系統在單片機的控制下自動切斷一部分電路的工作電源。電源管理電路原理圖如圖2所示。

        電源管理硬件電路

        電池的正極分成兩路,第一路是直接接入到SPX1117的輸入端,SPX1117是三端集成穩壓芯片,其輸出端輸出恒定的3.3V,作單片機系統電源。另一路是經過三極管9012可以開關控制,本設計中在系統處于正常工作狀態時,單片機控制口輸出高電平,9011處于飽和狀態,9012的基極電壓與地電壓相近,9012飽和,即處于導通狀態。9V疊層電池的正極電壓到達78L05 三端集成穩壓芯片的輸入端,其輸出端輸出穩定的+5V電壓。-5V由負壓電荷泵7660S 產生。當系統處于“低功耗”狀態時,單片機控制口輸出為低電平。9011處于截止狀態,9012的基極電壓為9V,也處于截止狀態,模擬部分電源電壓為零。而單片機將一直處于不同模式的工作狀態。

        (2)交流電壓轉換電路

        交流電壓測量真有效值的轉換電路是測量交流電壓的關鍵部分,其設計的好壞直接影響到交流電壓信號的測量精度,在本次設計中我們通過比較選擇采用AD637來實現交流信號到直流量的轉變,電路如圖3所示。

        交流電壓轉換電路

        AC_IN是交流電壓輸入端,DC_OUT端輸出的是直流電壓信號。輸出直流電壓的值是輸入交流電壓的真有效值。此電路完成了交流到直流的轉換,實驗測試時發現對于5000Hz 交流信號轉換效果仍良好。

        (3)量程轉換電路

        本系統量程轉換采用單片機控制模擬開關和繼電器實現,原理框圖如圖4所示。

        本文引用地址:http://www.104case.com/article/201611/315706.htm

        直流/交流(0-20V)電壓輸入后雙擲開關SW_1起到電壓量程轉換選擇作用,固定電阻R1,R3在精密可變電阻R2的配合下組成一個電阻10倍衰減網絡,且其輸入電阻大于10M 歐,滿足題目中輸入電阻的要求。最高輸入電壓可到20V 。再由單片機控制SW-1 來選擇是否衰減。R1和兩個IN4001 構成一嵌位保護電路,使電路在高電壓輸入時處于安全狀態。OP07 構成一個電壓跟隨器,起到隔離前后通道的作用,其較低的輸出電阻還可以提高帶負載能力。Output 端接入ADC.

        (4)量程自動切換的實現

        本系統中的自動量程切換對測直流電壓和交流電壓均有效。量程自動切換關鍵是通過讀ADC 數據判斷當前的量程是過量程還是欠量程,合理的硬件設計是量程自動切換的重要保證。量程自動轉換流程圖如圖5所示。

        量程自動轉換流程圖

        自動量程轉換由初設量程開始,逐級比較,直至選出最合適提量程為止。自動量程轉換的操作流程如上圖所示。繼電器或其它控制開關從閉合轉變為斷開,或從斷開轉變為閉合有一個短暫的過程,所以在每次改變量程之后要延時一定的時間,然后再進行正式的測量和判斷。為了避免在兩種量程的交叉點上可能出現的跳動,還應考慮低量程的超量程比較值和高量程的欠量程比較值之間有一定的重疊范圍。

        3.軟件設計

        數據采集過程中,使用了八階平均值濾波和一階滯后濾波,有效的濾去了采樣數據的脈沖干擾。程序流程圖如圖6所示。

        系統軟件流程

        4.系統測試與誤差分析

        (1)系統測試方法

        直流測試方法:使用直流穩壓電源產生直流電壓信號,通過高精度萬用表觀察實際輸出直流電壓值,將信號通入本系統儀器測量與標準電壓值進行比較。

        交流測試方法:使用交流數字信號發生器產生40~5000HZ,電壓范圍0~20V的正弦交流信號通過示波器觀察實際輸出頻率,通過高精度數字萬用表觀察實際輸出電壓值,將信號通直流測試方法:使用直流穩壓電源產生直流電壓信號,通過高精度萬用表觀察實際輸出直流電壓值,將信號通入本系統儀器測量與標準電壓值進行比較。

        (2)誤差分析

        本系統誤差主要由恒流源、AD真有效值轉換、雙積分ADC 器件等幾個方面所帶來的誤差。AD 真有效值轉換,在誤差允許的范圍內可以將所測交流電壓轉換成對應的真有效值,但不可避免地受到環境溫度的影響,造成轉換時可能引起誤差。量程自動切換時將原來的微型繼電器用耐高壓型的模擬開關替換掉。可以進一步降低系統正常工作時的功耗,還可以提高系統的穩定性和可靠性及響應速度。

        5.結束語

        本設計方案實現了直流電壓、交流電壓的高精度測量,同時具有量程自動轉換功能,采用LCD顯示,可讀性強。STM32F103ZET6在速度、功耗方面性能都非常優越,其豐富的外設也更加方便設計。另外,其價格較低,在成本上也有優勢,適合于控制電子產品的設計。方案中采用STM32F103ZET6內部的12位ADC,既滿足了測量精度,也省去了外擴AD,使硬件電路更加簡單,節省了成本,提高了可靠性。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 开原市| 辽中县| 靖安县| 滨海县| 唐河县| 沾化县| 辽中县| 石河子市| 福州市| 衢州市| 利辛县| 屏南县| 闽清县| 彭山县| 安阳县| 西城区| 朔州市| 安溪县| 五大连池市| 莱芜市| 临清市| 微山县| 监利县| 鄂伦春自治旗| 大庆市| 乐清市| 荔波县| 江西省| 临潭县| 庆云县| 武安市| 昌吉市| 上犹县| 延川县| 大洼县| 湖口县| 阳西县| 墨竹工卡县| 青冈县| 绿春县| 聂拉木县|