吳坤洋 吳廣棟 高鑒
摘 要:
以高級語言描述、系統(tǒng)級仿真和綜合技術為特征的第三代 EDA 工具為依托,以實現(xiàn)復雜電路內部故障原因的診斷為目的,提出了基于STM32單片機的簡易電路測試儀。測試儀通過AD采集獲得計算所需的電壓數(shù)值,轉換為電路參量后判斷故障原因。主控板采用 STM32F103ZET6,實現(xiàn)整個電路的控制。該測試儀可以對故障電路進行單一故障的診斷。應用了電壓跟隨器,使電路性能保持穩(wěn)定。與人工檢測相比,該設計具有靈活可控、可靠性高、智能診斷等優(yōu)點。
關鍵詞:
測試計量技術及儀器; 智能儀器儀表; STM32; 故障檢測
中圖分類號: TM 392
文獻標志碼: A
Design of Simple Circuit Tester Based on STM32
WU Kunyang, WU Guangdong, GAO Jian
(College of Instrumentation & Electrical Engineering, Jilin University, Changchun, Jilin? 130012, China)
Abstract:
Based on the third generation electronic design automation ( EDA ) tools that are characterized by a high -level language description, system level simulation and synthesis technology, in order to realize the diagnosis of internal faults of complex circuits, a simple circuit tester based on STM32 is proposed. The tester acquires the voltage value required for calculation through AD acquisition, converts the voltage value into circuit parameters, and judges the cause of the fault. STM32F103ZET6 is adopted as the master panel to control the whole circuit. The tester can diagnose a single fault of the faulty circuit and uses a voltage follower to keep the circuit performance stable. Compared with the manual detection, the design is of flexible control, high reliability and intelligent diagnosis etc.
Key words:
testing and measuring techniques and instruments; intelligent instrumentation; STM32; fault detection
0 引言
隨著大型儀器的普及,許多儀器的內部電路越發(fā)復雜。電路故障的診斷難度也隨著電路復雜度的提高而增加[1]。為了簡化復雜電路的判斷過程,筆者設計了一款簡易電路測試儀。先通過理論分析,判斷出各個故障帶來的電路參量的變化情況,并以此為依據(jù)對電路故障原因進行診斷。
1 方案設計與論證
1.1 信號源的論證與選擇
方案一:模擬正弦波LC振蕩電路。借助文氏橋電路組成正弦波振蕩電路,使用分立元件搭建雖然制作簡單,但不便于調試,頻率穩(wěn)定度較差,失真度較高,難以達到高精度調節(jié),也不能滿足掃頻所需要的快速頻率調節(jié)要求。
方案二:AD9910集成芯片。AD9910作為DDS芯片,內置14位DAC,具有1GSPS的高采樣率,頻率分辨率低于0.23 Hz,頻率變化速度極快,且能夠實現(xiàn)程控電壓幅度輸出。
在實際測試中,方案一由于反饋電壓取自電容的兩端,它對高次諧波的阻抗大,反饋也強,因此在輸出波形中含有較多的高次諧波成份,電路頻率的平均穩(wěn)定度[2]約為66 Hz/h,輸出波形不理想。方案二則能實現(xiàn)高速的大范圍掃頻,且頻率平均穩(wěn)定度為8 Hz/h,故選方案二。
1.2 雙端電壓調理模塊的論證與選擇
方案一:CMOS模擬開關和TPS54062DGKR有源降壓芯片。CMOS模擬開關作為一種可控開關,有開關速度快、功耗低、壽命長等特點,但是不能工作在電壓或者信號幅值較大的場合,容易損壞,且需額外增加程序模塊進行控制。TPS芯片有著極大的電壓轉化范圍,體積小、功耗低、集成度很高,但是內部轉化的函數(shù)關系不明確,會給后期的數(shù)據(jù)處理帶來困難。
方案二:電磁繼電器和無源降壓模塊。電磁繼電器作為十分常用的開關控制組件,能夠適應大電壓、大電流的工作場合,控制方便,易于操作,但開關速度較慢、壽命相對較短。無源降壓模塊在本次方案設計中主要由電阻構成,利用電阻的分壓原理將高電壓降低到主控制器能夠采集的范圍,其轉化關系十分明確,但轉化范圍相對有限。
綜合比較,考慮到實際設計中對于開關轉換速度和元件壽命的要求并不高,電磁繼電器30 ms的轉換速度以及10萬次的觸點壽命滿足設計要求。且被測電路輸出信號幅值接近15 V,遠低于電磁繼電器耐受電壓,再考慮數(shù)據(jù)的后期處理以及成本等因素,選擇方案二。
1.3 電壓采集與處理裝置的論證與選擇
方案一:FPGA采集和STM32處理與顯示。FPGA工作頻率極高,作為前端電路進行信號采集時具有高速度的特點,但是受內部邏輯門陣列的數(shù)量限制,其數(shù)字處理的能力有限,而STM32F103ZET6作為功能強勁的MCU,具有很強的數(shù)據(jù)處理能力和良好的人機交互功能,故FPGA結合STM32進行數(shù)字處理與顯示可以同時兼顧二者的優(yōu)點。
方案二:利用STM32進行信號采集、數(shù)據(jù)處理與顯示。STM32F103ZET6自身擁有3個ADC通道,這些ADC可以獨立使用,也可以使用雙重/三重ADC采樣模式自行采集模擬信號并實現(xiàn)模數(shù)轉換,但是速度較慢,采樣頻率較低。
雖然方案一在工作頻率方面更有優(yōu)勢,但由于設計指標中對于信號采集速度的要求在2秒以內,STM32的ADC模塊完全可以達到要求,且免除了FPGA結合STM32時需要用到的SPI通信模塊,在系統(tǒng)設計上相對簡單,更容易實現(xiàn)。本著系統(tǒng)設計精簡有效以及成本盡可能降低的原則,選擇方案二。
2 系統(tǒng)理論分析與計算
2.1 信號發(fā)生器部分理論分析
信號源發(fā)生的正弦波由DDS生成。DDS相位累加器的輸出為線性增加的階梯信號,經波形查詢表后將相位信息轉化成相應的正弦波幅度信息,經數(shù)模轉換器后輸出近似正弦波的波形,最后經過低通濾波器濾除量化噪聲,得到平滑正弦波[3]。正弦波頻率為
fout=k·fc/2N
(1)
其中fout為DDS輸出頻率,k為二進制控制頻率字,fc為內部參考時鐘頻率,N為相位累加器長度[4]。
2.2 雙端電壓調理部分理論分析
如果信號源的輸出過大,經過放大器放大后會發(fā)生失真現(xiàn)象,經過測試,信號源的輸出為10 mV左右即可,但STM32在采集小信號時存在一定誤差,故將信號源輸出調至500 mV,之后經過一個阻值較大的分壓電路分出10 mV的小信號輸入給被測電路。另外, STM32的所能夠采集的電壓最大不超過3.3 V,故測量輸出部分也需要采用電阻分壓電路,但若直接采用電阻分壓電路,會引入負載效應,導致測量結果不精確,因此需要在電阻分壓電路前加上一個電壓跟隨器,減小負載效應帶來的影響。
2.3 測試電路理論分析
測試電路仿真電路,如圖1所示。運用模電所學小信號模型進行理論推演,并結合Multisim軟件進行仿真我們得到了被測電路的輸入電阻(約為1.2千歐姆)、輸出電阻(約為2千歐姆)及增益(約為30),如式(1)—式(3)。
3 電路與程序設計
3.1 系統(tǒng)總體框圖
系統(tǒng)總體框圖,如圖2所示。
3.2 輸入端信號調理電路的設計
在前期理論分析和后期的綜合調試過程中,我們發(fā)現(xiàn)DDS產生的正弦波信號帶有較高的直流偏置,同時由于正弦波信號幅值較小,周圍環(huán)境的噪聲對其干擾也較嚴重,故此,我們在被測電路輸入端(即測試儀器輸出端)添加了圖3中的信號調理電路,通過前端的RLC帶通濾波電路濾去輸入信號中的高頻干擾和直流分量,同時為了增大信噪比,我們采用了生成較大幅值信號并采樣而后降壓輸入的方式,如圖3所示。
3.3 輸出端信號調理電路的設計
在理論分析過程中,通過對放大電路的仿真測試發(fā)現(xiàn)放大電路輸出信號幅值過大,超過了STM32電壓采集0~3.3 V的范圍,故設置了電阻分壓模塊來進行等比例降壓,同時為了減小該模塊對原放大電路輸出電阻的影響,添加了UA741運算放大器組成的電壓跟隨器。輸出端信號調理電路,如圖4所示。
3.4 程序設計
程序分為電路參數(shù)測試模塊、幅頻特性測試模塊和故障判斷模塊三大模塊。
首先啟動電路測試模塊。該模塊有兩大電路,分別對輸入電阻和輸出電阻進行測量。我們通過單片機輸出高低電平控制繼電器開關以切換兩個測量電路,再根據(jù)分壓原理分別求得輸入電阻和輸出電阻的阻值,并將數(shù)據(jù)顯示在屏幕上。
隨后幅頻特性測試模塊開始工作。首先給予被測電路穩(wěn)定的電壓,再通過DDS模塊輸出1 HZ-1 MHZ的正弦波,主控板通過采集固定頻率點位的輸出電壓并加以處理得到幅頻特性曲線。
將數(shù)據(jù)采集完成后,啟動故障判斷模塊。依次將輸出電壓、輸入電阻和輸出電阻3個數(shù)據(jù)與給定閾值加以比對,并分析幅頻特性曲線采樣點位的數(shù)據(jù)是否與測試電路預期曲線點位一致。綜合以上分析結果,單片機通過給定程序判斷出電路故障原因將結果顯示在屏幕上。
4 測試
4.1 電路搭建
由DDS產生的高速掃頻信號接入輸入端信號調理電路輸入至被測黑箱電路雙端輸入端,黑箱輸出端接入輸出端調理電路進行降壓。單片機對輸入輸出調理電路進行電壓采集,最終將測試結果輸出到TFT屏幕上進行顯示。實際電路與仿真電路相同。
4.2 測試方案
通過TFT屏實時顯示被測放大電路的輸入電阻、輸出電阻、增益、上限頻率等題目要求的電路參數(shù),同步實時顯示被測放大電路的幅頻特性曲線。
4.3 測試儀器
數(shù)字存儲示波器GDS-2202A、信號發(fā)生器AFG-2225、數(shù)字萬用表C9807A+、直流穩(wěn)壓電源GPS3303C。
4.4 測試結果
按計算,理論輸入電阻為0.973 kΩ,理論輸出電阻為2 kΩ,理論增益為38,電路參數(shù)測試結果如表2所示。進行故障判斷檢測,測試六種故障情況,測試結果如表3所示,均判斷成功。幅頻特性曲線,如圖5所示。
結果顯示,輸入電阻和輸出電阻的測量結果都能保持在平均相對誤差為4%的范圍內,幅頻特性曲線顯示良好,與理論幅頻特性曲線保持高度吻合。
4.5 問題及解決措施
問題一:電壓采集過程中STM32測量誤差過大。
解決方案:① 給VREF+接入穩(wěn)定的電壓參考:由圖6
供電圖可知,存在VREF-和VREF+引腳,ADC是由這兩個引腳供電。ADC的電壓采集范圍為:VREF- 1024 ADC 轉換,在標稱 Vcc=5 V 情況下其 ADC 值是 511; 則AD_value = 2495 / (5000 / 1024); 再利用 TL431B 的輸出基準電壓反推實際 VCC 值。[6] 問題二:測試儀器輸出端和輸入端信號調理電路對被測電路的輸入電阻和輸出電阻影響較大。解決方案:場效應晶體管跟隨器的轉移因數(shù)接近于1 ( 0.999或更大),且具有很高的輸入阻杭(幾十到幾百 kM),通過電壓跟隨器減小級間的相互影響,增強電路的穩(wěn)定性。[7]結合數(shù)據(jù)處理成功將相對誤差減小到5%的范圍之內。 5 總結 文中提出了一種基于STM32以及集成運放器件的簡易電路測試儀。電路由DDS信號源、雙端電壓調理模塊和電壓采集與處理裝置等器件組成,價格低廉,簡單可靠,且易于實現(xiàn)。實驗結果與理論分析及仿真結果一致,驗證了所設計儀器的可行性,為電測儀表等領域快速實現(xiàn)故障檢測提供了一種簡易可行的方案。 參考文獻 [1]?楊銀堂. 現(xiàn)代半導體集成電路[M]. 北京:電子工業(yè)出版社,2009. [2] 葉樹亮,李東升.改進型高穩(wěn)定度LC振蕩電路的研究[J].中國計量學院學報,2003(3):12-15. [3] 包玉樹,葉加星,程健林,等.輸變電一次設備試驗器具環(huán)境電磁兼容評價系統(tǒng)研究[J].微型電腦應用,2016,32(5):50-52. [4] 張林行,尚小虎,趙美聰,等.一種基于FPGA的DDS信號源實現(xiàn)[J].微型電腦應用,2015,31(12):16-18. [5] 康華光. 電子技術基礎?模擬部分 [M]. (第六版). 北京:高等教育出版社,2006. [6] 侯志偉,包理群.基于STM32的多重ADC采樣技術研究與應用[J].工業(yè)儀表與自動化裝置,2019(3):28-32. [7] 謝直山,何自成.測量設備中的電壓跟隨器[J].電測與儀表,1981(1):30-34. (收稿日期: 2019.07.28)