1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 高精度正弦全自動激勵信號源的設計與實現

        時間:2024-11-02 09:25:08 工程力學畢業論文 我要投稿
        • 相關推薦

        高精度正弦全自動激勵信號源的設計與實現

        1.引言

          在許多工程測量中,都需要某種固定頻率的正弦信號作為激勵源,如利用模擬傳感器的輸出情況對所研制的監測系統、檢測單元進行功能的驗證:或者進行采集量程的標定工作等。在這些情況下,直接采用一個性能優越的信號發生器固然可以滿足工作要求,但是這又帶來了新的問題,一方面信號發生器是外配儀器,增加了系統的成本,另一方面也不便于自動化測量。利用D/A轉換器加高階濾波器的方式也可實現以上功能要求,但是在windows操作平臺下,對軟件技術提出了更高的要求。本文在科研項目的研究工作中恰好遇到了這樣一個問題,在信號的檢測與標定工作中需要一個120Hz、峰值從0.01V到10V可調的、失真小于1%的高精度正弦激勵信號。本文采用常規的電路實現了這個功能。

        2.原理與實現過程簡述

         

         

          本科研項目是基于PC-104總線的某型飛機發動機參數的檢測系統,該系統需要一個用于飛機振動校準的激勵信號給定單元。經仔細分析技術指標的要求,該單元需要一個幅值從0.01伏到10伏可調,且給定幅值穩定、波形失真小、頻率為120Hz的交流信號源,幅值給定以0.01伏為一個間隔。如果我們利用磚碼稱重的原理,能很快地完成這一功能。顯然,信號激勵中只需要小數點后兩位,即正弦信號峰值變化范圍從10mV到10V,它有一位整數位、兩位小數位。如果我們集中實現一個120Hz的高精度正弦波振蕩器,然后從中取5伏、4伏、2伏、和l伏的“磚碼”信號,可以通過電子開關組合,再用加法器形成l伏到10伏之間的任意一個峰值,類似地用0.5伏、0.4伏、0.2伏和0.1伏的“磚碼”信號可以形成0.1伏到0.9伏的正弦信號,用0.05伏、0.04伏、0.02伏和0.01伏的“砝碼”信號可以形成0.01伏到0.09伏的正弦信號,這三組“砝碼”信號組合在一起則可以給出峰值從0.01伏到10伏、幅值變化臺階為0.01伏的任一峰值的正弦激勵信號,完全可以滿足工程的需要。
          根據上述分析,我們設計出如圖1所示的硬件框圖。在圖1中,正弦波信號源選用MAX038芯片,其輸出正弦波頻率可以在較寬的范圍內調節,該芯片內部的結構設計可以保證向外提供失真度小于1%的正弦信號;為了提高信號的比例精度,所有的分壓電阻全部定制,阻值精度可達千分之一;運放選用低漂移運放LM124;電子開關選用高性能的MAX4536的4路單刀單擲開關;另外,考慮到電子開關導通后有幾十歐姆的壓降,為了減小其影響,在加法器中反饋電阻與累加電阻均選擇為幾十千歐左右,進一步削弱電子開關導通電阻在比例加法器中的影響。由于以上措施的作用,可以大幅度提高電路在實際使用中的性能。
          在圖1所示電路中,電子開關為譯碼后控制,一位控制碼控制一路開關,因此電子開關的控制共需要12個數字量輸出接口,這在筆者所采用的嵌入式系統中是不允許的,因為沒有這么多的資源,為了進一步滿足系統的要求,采用單并轉換技術,用三片4位移位寄存器CT1194串聯組成一個12位的移位寄存器,框圖如圖2所示。
          圖1中,12個電子開關共有4096種組合,其每種組合對應著一個特定大小的正弦交流信號,這些電子開關的控制,雖然需要12個I/O口,但只要借助于圖2的串入并出移位寄存器,我們通過數據口DATA1和時鐘口CLK兩個輸出口可以把4096種組合的任意一種送到Q1到Q12上,從而用兩個I/O口實現了12路電子開關的控制。而在筆者所用的PC-104的I/O卡中,其外擴I/O口是用8255實現的,由于8255的C口具有位控功能〈位置位或位清零〉,則從C口中任取兩位作為移位寄存器的數據端口和時鐘端口,在12個脈沖上升沿作用下,可以將任意一個12位二進制數送到Q1到Q12口,從而完成對電子開關的期望控制,在圖l中Vout處得到所希望幅值大小的定頻正弦波。

         


        3.實現過程

          為了獲得激勵信號所需要的幅值,本單元使用PC.104的I/O模塊的C口的位控功能對電子開關進行控制。首先在控制面板上給出激勵信號所需的幅值,然后將此值利用5421碼序列進行編碼,所謂5421碼是指碼制相應位的權值分別為5、4、2、1,即相應位為1時所代表的十進制值分別是5、4、2、1。具體的編碼規則如表1所示。對激勵所需幅值編碼后,將所得二進制編碼按由低到高的順序輸入移位寄存器,該編碼由寄存器并行輸出給電子開關的控制端,控制開關的開閉,從而控制加法器的輸出結果,獲得所需幅值的正弦激勵信號。控制過程的流程圖如圖3所示,為了更詳細地介紹此流程的實現過程,下面舉例進行說明。
         

        4.例子

          例如需要一個f(t)=3.95sin240πtV的正弦激勵信號,按照軟件框圖獲得此激勵信號的方法如下。在開始編程之前,首先進行端口分配,I/O模塊C口的地址為Address,設C2為RD的控制口,C3為DATA的控制口,C4為CLK的控制口。程序首先要將移位寄存器復位,即對C口的C2位進行操作,如下所述:
        Ootp(Address,0x04); //使C2口輸出0
        Delay(0.01);
        Outp(Address,0x05); //使C2口輸出1
        Delay(0.01);
        輸入幅值為:3.956,即a=3.956:則b=100*3.956=395.6,四舍五入得396;
        396除以10取余得6,所以C1=6:
        396整除lO得到39,39除以10取余得到9,所以C2=9;
        396整除100得到3,所以C3=3。
        將C1、C2、C3按照5421碼序列進行編碼,編碼規則見表1,根據表1的規則轉換后,得:
        C1’=0000 0110=0x06
        C2’=0000 1100=0x0C
        C3’=0000 0011=0x03
        將C1’的數值賦予d1(即1=0000 0110);將C2’左移4位后,變成0000 1100 0000,賦予d2(即d2=0000 1100 0000);將C3’左移8位后,變成0011 0000 0000,賦予d3(即將上面得到的12位二進制數的每一位依次賦與數組。然后分12次將數組中的數據作為控制信號輸入到寄存器中,得到相應的控制權值,用來控制輸出正弦激勵信號幅值的大小。C3為DATA的控制口,C4為CLK的控制口,具體實現過程如下:
        當輸出數據bit[I]=1時:
        outp(Address,0x08); //脈沖信號為低電平。
        Delay(0.01);
        Outp(Address,0x07); //位操作置1。
        Delay(0.01);
        Outp(Address,0x09); //脈沖信號為高電平。
        當輸出數據bit[I]=0時:
        oout(Address,0x08); //脈沖信號為低電平。
        Delay(0.01);
        Outp(Address,0x06); //位操作置0.
        Delay(0.01);
        Outp(Address,0x09); //脈沖信號為高電平。
         

         


        5.結束語

          本單元利用常規電路實現了固定頻率的正弦信號的給定功能。它能得到從10mV到10V之間任意幅值的正弦信號,對所需激勵信號的頻率及幅值的要求,精度能達到1%,且正弦信號的失真度也不超過1%。本檢測單元己在基于PC.104總線的某型飛機發動機參數的檢測系統中為飛機振動校準提供了激勵信號,經調試完全能滿足本文所述的各種參數要求。

        論文出處(作者):

        【高精度正弦全自動激勵信號源的設計與實現】相關文章:

        基于FPGA的正弦信號源設計10-15

        基于DDS技術的正弦衰減信號源10-02

        信號源設計開題報告范文05-20

        單相正弦脈寬調制逆變器的設計09-29

        基于數字移相的高精度脈寬測量系統及其FPGA實現09-03

        汽車全自動空調設計的節能技術研究08-18

        網絡書店設計與實現08-30

        一種用作超聲波信號源的AWG的設計08-10

        實用數字信號源07-02

        PCI總線仲裁器的設計與實現07-02

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>