<strike id="0k9r3"><p id="0k9r3"></p></strike>
  • <form id="0k9r3"></form>
    <nav id="0k9r3"></nav>
    <em id="0k9r3"><p id="0k9r3"></p></em>
  • <tr id="0k9r3"><source id="0k9r3"></source></tr>
    <form id="0k9r3"></form>
    <sub id="0k9r3"></sub>

      <sub id="0k9r3"><address id="0k9r3"></address></sub>
      1. <form id="0k9r3"></form>

        24小時聯系電話:18217114652、13661815404

        中文

        您當前的位置:
        首頁>
        電子資訊>
        行業資訊>
        數字和模擬濾波器的低...

        行業資訊

        數字和模擬濾波器的低成本驗證


        數字和模擬濾波器的低成本驗證

        在自動化硬件在環測試的低成本解決方案中,我們回顧了使用低成本測試設備來驗證我們的硬件設計的想法。在本文中,我想重點介紹一個在驗證方面具有很高進入門檻的特定應用程序:數字信號處理 (DSP),特別是信號過濾。與其詳述 DSP 主題,不如將其簡單地定義為將進入電路板的信號數字化,然后對其進行處理。要更深入地了解什么是 DSP 以及它是如何工作的,您可以查閱維基百科或各種教程,例如dspGuruDSP Guide. 本文的重點是找到一種簡單但經濟高效的方法來驗證您的數字(或模擬)濾波器。為簡單起見,我使用 Arduino 實現了我的數字濾波器。代碼存儲庫可以在這里找到。

        基線

        很常見的是,越接近電子,測試就越原始。這不是針對模擬設計社區的攻擊。對于非基于生產的硬件,期望很少或沒有測試自動化是合理的。如嵌入式系統的測試驅動開發中所述在 OnTrack 上,電氣工程師在開發階段自動化全套測試以驗證其設計的驅動因素并不多。它所需的成本和時間并不能證明工程師需要轉動幾個旋鈕并稱其為良好的幾次是合理的。輸入模擬和數字濾波。設計工程師可以驗證設計完美的基本濾波器一兩次,并移交給設計流程的下一個階段。當多個變量進入方程式時,例如調諧、范圍驗證和 EMI 測試,自動化將大有幫助。大多數高端示波器都帶有某種頻譜分析儀,可以執行快速傅立葉變換 (FFT) 來確定您的濾波器是否正常工作,但很少有完全自動化的。為了那個原因,

        讓我們看一個簡單的例子:一個低通濾波器試圖用特定的噪聲抑制水平濾除 100 Hz 以上的所有頻率。如果我想手動測試這個,我將在改變我從函數發生器中驅動的輸入頻率和幅度的同時,將我的輸入與輸出進行比較。示例測試設置通常如下所示:

        1:測試硬件配置

        即使我們堅持使用整數測試每個頻率也需要很長時間。使用低端泰克示波器,我只測試了 4 個不同的頻率,但我仍然需要一些時間來配置我的示波器、手動驅動輸入以及捕獲每個波形的圖像。正如您所看到的,圖像捕獲的分辨率也不是很高。

        21 Hz 時的波形捕獲

        310 Hz 時的波形捕獲

        4100 Hz 時的波形捕獲

        51 kHz 時的波形捕獲

        范圍捕獲并明確表明過濾器似乎正在工作。您可以看到濾波后的信號(通道 2)在我們接近 100 Hz 時緩慢衰減,達到我們在達到目標時過濾掉的要求。示波器附帶的內置 FFT 數學函數也是如此。這沒什么好寫的,但它確實為我花費了大約 1,000 美元的示波器完成了工作。

        6:使用示波器的數學函數進行 FFT 捕獲

        當我們經歷這個過程時,特別是在第十輪返工之后,我們不得不問自己,我們愿意像這樣手動驗證我們的設計多少次?

        驗證交易空間

        當涉及到驗證和自動化測試時,尤其是對于包括數字信號處理在內的更復雜的設計,我們需要了解在自動化方面投入時間和金錢的地方。讓我們看一下用于測試濾波器設計的三種不同的可行選項。

        7:測試設置的交易空間

        正如我們之前看到的,第一個選項使用示波器和函數發生器。這些是每個工程師在學校學習如何使用的標準工具。這是手動的,乏味的,而且不是很徹底。第二個選項,捕獲數據并處理它,很好,但前提是您擅長 MATLAB SciPy。最后一個選項也不錯,但還需要了解您正在使用的設備(或與該設備相關的驅動程序)。

        對于這個項目,我采取了混合的方法。我首先使用我的Analog Discovery 2 對所有內容進行了視覺驗證,然后轉向使用 Python Pytest框架進行自動驗證。

        8:使用 Analog Discovery 2 的示波器 + 頻譜分析儀

        一旦我為自己設定了基線,我就轉向了自動驗證。我的 CI/CD 設置包括兩個階段:編譯/加載固件和硬件在循環測試。

        在這兩個腳本之間,總共執行了三個測試并報告回 Gitlab。這些測試是使用我在計算機(或 Raspberry Pi)上配置的 Gitlab Runner 在硬件目標上運行的。

        10Gitlab 中的測試報告

        我的測試目標是確保我的輸入信號在大于 100 Hz 的頻率下被正確衰減,而我的自動測試正是這樣做的。

        11:信號幅度衰減

        我通過切割波形的邊緣并獲取正弦波的前幾個最大值和最小值來實現幅度檢查器的窮人版。請注意,在實際 DSP 中,需要應用窗口函數,然后對濾波后的信號運行 FFT。對于這個測試,我只關心 1V 的輸入幅度對于 100Hz 以上的頻率衰減到 0.2V 或更低。正如您在作業日志中看到的那樣,該測試正是這樣做的。我們現在可以使用這個測試套件并在任何地方運行它,而不必每次都手動設置我們的設備。

        請輸入搜索關鍵字

        確定
        国产在线视频在线