引言
在許多物理實驗(核聚變實驗裝置托卡馬克的放電實驗)的數(shù)據(jù)采集過程中,由于待測信號微弱且測試環(huán)境電磁輻射嚴重等因素,在數(shù)據(jù)采集前端往往需要對信號進行濾波和放大等信號調理操作,以濾除信號噪聲并將待測信號調整到后端數(shù)據(jù)采集卡的最佳量程范圍,最終提高整個數(shù)據(jù)采集系統(tǒng)的分辨率。
一般認為在A/D轉換器前加一個增益為2的前置放大電路可使測量分辨率增加1位,增益為4則分辨率將增加2位,以此類推。因此,在數(shù)據(jù)采集系統(tǒng)前端增加信號調理電路以擴展其動態(tài)范圍是必要的。信號調理系統(tǒng)的以太網(wǎng)遠程控制可以實現(xiàn)信號調理系統(tǒng)的統(tǒng)一管理,有效提高實驗效率,并且減少實驗人員進入實驗現(xiàn)場調節(jié)調理電路的次數(shù)。
1 程控信號調理系統(tǒng)方案設計
設計需求:
①輸入信號電壓幅值(峰-峰值)為100 mV~10 V;
?、?個增益檔位分別為0.1、0.5、1、2、5、10、20、50;
?、蹫V波器類型可選,中心頻率和品質因數(shù)可遠程控制;
④放大器增益選擇及程控濾波器各項參數(shù)均實現(xiàn)以太網(wǎng)遠程控制;
?、莼赟ocket設計上位機控制程序;
?、尴挛粰CIP地址、放大器增益、濾波器各項參數(shù)通過可視化界面管理。
基于以上設計需求,本系統(tǒng)主要包括以下部分:控制器模塊、程控濾波器模塊、程控放大器模塊和上位機數(shù)據(jù)采集控制程序。系統(tǒng)以AVR單片機為控制器,實現(xiàn)嵌入式以太網(wǎng)通信、濾波器參數(shù)和放大器參數(shù)的遠程控制,并將以上各數(shù)據(jù)存儲在非易失性存儲器中,在系統(tǒng)開機或復位后能恢復關機前設置的參數(shù)值。
2 系統(tǒng)硬件設計
如圖1所示,系統(tǒng)硬件電路由控制器電路、程控放大器電路和程控濾波器電路組成??刂破麟娐穼崿F(xiàn)嵌入式以太網(wǎng)通信、程控濾波器電路和程控放大器電路的參數(shù)設置。程控濾波器電路實現(xiàn)濾波器類型的選擇,以及中心頻率和品質因數(shù)的設置。程控放大器基本電路實現(xiàn)對輸入信號的增益控制。
2.1 控制器電路
基于AVR單片機的嵌入式控制器電路是整個程控信號調理系統(tǒng)的控制核心,用于接收上位機數(shù)據(jù)采集控制程序發(fā)出的指令,實現(xiàn)對程控放大器放大倍數(shù)的設置等操作。該控制器電路在Ethernut 1.3g開源軟硬件嵌入式系統(tǒng)設計方案的基礎上進行了重構,結構如圖2所示。
該電路采用核心芯片AVR單片機ATmega128。ATmega128工作于16 MHz時性能高達16MIPS;內置128 KB系統(tǒng)內可編程Flash和4 KB EEPROM,外擴一片32 KB的SRAM KM62256;與IEEE802.3兼容的10 Mbps以太網(wǎng)控制器RTL8019AS可實現(xiàn)全雙工以太網(wǎng)通信。4 KB的EEPROM可用于保存32路程控放大器的參數(shù),在系統(tǒng)上電或重啟后用于自動恢復掉電前的放大器狀態(tài)。LM1086為系統(tǒng)提供1.5 A、+5 V穩(wěn)壓電源。當手動復位按鈕動作或系統(tǒng)電源電壓低于4.63 V時,MAX825L將向ATmega128發(fā)送復位信號,引發(fā)系統(tǒng)重新啟動。
控制器通過ATmega128上的I/O端口控制放大電路與濾波電路的參數(shù)設置。整個系統(tǒng)的數(shù)字地與模擬地采用單點接地設計,以減少控制器電路數(shù)字信號的噪聲干擾信號調理電路中的模擬信號。
2.2 程控濾波器電路
常用濾波器是由RC元件和集成運放所組成的有源濾波電路。其濾波特性與電阻R和電容C的精度密切相關,由它們組成的參數(shù)可調濾波器不僅對器件的精度要求較高,而且電路結構復雜,不易于實現(xiàn)程序控制。MAX261是一款雙二階開關電容有源濾波器。濾波器參數(shù)f0(中心或拐點頻率)、Q值、MODE(模式)均可由微處理器分別編程寫入,無需外接元件即可構成帶通(BP)、低通(LP)、高通(HP)、陷波(N)及全通(AP)有源濾波器。
圖3為MAX261構成的程控濾波器電路。MAX261的4位地址線(A0~A3)、2條數(shù)據(jù)線(D0~D1)和1條寫使能允許信號(/WR),分別與ATmega128的I/O端口連接,使控制器可以通過I/O端口對MAX261的各參數(shù)進行程序控制。如圖3右側所示,通過短路冒可以選擇3種不同的濾波器類型(低通、帶通和高通)。
2.3 程控放大器電路
多路開關和運算放大器相結合是實現(xiàn)程控放大器的簡易、有效的方法。利用多路開關來改變反相運算放大器的反饋電阻或者輸入電阻,可以達到改變增益大小的目的。對于精度要求高的場合,可以選用高精度的運放和電阻,并配合相應的增益標定以滿足系統(tǒng)要求。
如圖4所示,程控放大器電路主要由低噪聲精密運放OP27和8選1模擬開關MAX308組成。OP27是低噪聲、精密運算放大器,失調電壓為25μV且最大漂移為0.6μV/℃,非常適合于精密儀表應用。在10 Hz下,低噪聲、低噪聲轉折頻率以及高增益這些特性,使其能對低電平的信號進行精密的高增益放大。8 MHz的增益帶寬積和2.8 V/μs的轉換速率,使該放大器在高速數(shù)據(jù)采集系統(tǒng)中保持極好的動態(tài)精度。程控放大器單位增益時,帶寬要求為100 kHz,OP27是能夠滿足的。MAX308的輸入輸出范圍達-10~+10 V,導通電阻小于100 Ω,導通電阻一致性小于3Ω,可以滿足系統(tǒng)需求。為節(jié)省I/O口,控制信號由MC74HC595進行串行/并行轉換后再實現(xiàn)MAX308的開關切換,進而完成信號增益的調節(jié)。電阻選用RJJ型精密小型金屬膜電阻,精度為±0.5%,溫漂系數(shù)為±50×10-6/℃。
在圖4的電路中,通過軟件控制開關的閉合或斷開,用于選擇不同反饋電阻來改變電路的增益。但該方法的缺點也是顯而易見的:由于切換開關與反饋電阻串聯(lián),開關的導通電阻將影響放大器的增益??紤]到速度和精度的要求,取輸入電阻Rin=10kΩ,對應于8個檔位0.1、0,5、1、2、5、10、20、50的反饋電阻Rf分別為1 kΩ、5 kΩ、10 kΩ、20 kΩ、50 kΩ、100 kΩ、200 kΩ、500 kΩ。
3 系統(tǒng)軟件設計
根據(jù)設計需求,軟件部分要求:
?、倏刂破麟娐分С諸CP/IP協(xié)議的以太網(wǎng)通信;
②通過網(wǎng)頁瀏覽器或上位機數(shù)據(jù)控制軟件登錄程控信號調理系統(tǒng),并對濾波器參數(shù)和放大器增益進行查看、修改和保存。
運行于ATmega128之上的嵌入式軟件是基于RTOSNut/OS的嵌入式以太網(wǎng)應用設計,應用程序的核心任務是實現(xiàn)以太網(wǎng)通信并解析指令實現(xiàn)對后續(xù)硬件電路的控制。應用程序包含了兩個線程:一個是主線程(即TCP服務器端線程),另一個是放大器參數(shù)群設置線程。在Nut/OS中這兩個線程被設置成相同的優(yōu)先級。
主線程程序流程如圖5所示。主線程首先進行CPUI/O端口配置、定時器T2模式設置,以及IP、MAC、Mask和Gateway配置,恢復CPU掉電前程控放大器的放大倍數(shù)和程控濾波器的濾波參數(shù),在創(chuàng)建放大器參數(shù)設置線程后將進入TCP,Socket服務器端程序,并開始偵聽TCPSocket客戶端引入的連接,在接收到客戶端發(fā)出的指令后將執(zhí)行相應的動作。WrAmp字符串為放大器的放大倍數(shù)指令,可用于設置放大器的放大倍數(shù);RAAmp指令用于從EEPROM中獲取放大器參數(shù)并發(fā)往客戶端;SetMX用于從指令中獲取濾波參數(shù)值;q[uit]用于斷開連接。
放大器參數(shù)群設置線程程序流程如圖6所示。采用這種雙線程參數(shù)設置結構,可以在確保指令被后續(xù)硬件電路正確執(zhí)行的前提下,縮短TCP Socket的連接時間,加快上位機數(shù)據(jù)控制軟件對多個程控信號調理系統(tǒng)批量控制的速度。
為了便于單機調試,嵌入式程序設計中還增加了http服務線程,系統(tǒng)管理員使用Web瀏覽器即可訪問ATmega128上的靜態(tài)網(wǎng)頁,對濾波器參數(shù)和放大器增益進行查看、修改和保存。
在上位機開發(fā)可視化的數(shù)據(jù)控制軟件,通過Socket套接字實現(xiàn)數(shù)據(jù)控制軟件與ATmega128間的通信。ATmega128程序作為服務器端,而上位機數(shù)據(jù)控制軟件作為客戶端,客戶端設置好服務器端的IP與端口號,即可通過Socket套接字進入連接狀態(tài),雙方便可進行信息交換。上位機數(shù)據(jù)控制軟件由此控制程控信號調理系統(tǒng)的濾波器參數(shù)和放大器增益,進行查看、修改和保存。此種控制方式可以滿足上位機數(shù)據(jù)控制平臺對眾多程控信號調理系統(tǒng)的統(tǒng)一控制。
4 系統(tǒng)性能測試
濾波器MAX261的設置可通過控制器ATmega128對其編程控制來構成低通、帶通濾波器。該濾波器設置了8級的截止頻率、中心頻率和Q值,理想的頻率設置范圍為18~32 kHz(步進2 kHz可調),Q值設置范圍為0.5~4.0(步進0.5可調),濾波器的測試采用示波器雙通道跟蹤。
如表1所列,CH1為輸入信號,CH2為四階低通濾波后的輸出信號。輸入信號CH1峰-峰值為1.00V左右,頻率從100 Hz逐漸上升到40 kHz時,截止頻率設置為25 kHz。其值可通過程序進行修改,通帶內比較平坦,滾降特性一般。
表2給出了相同輸入信號不同Q值下的測試結果,可知隨著Q值的增大,輸出信號的幅度衰減系數(shù)也跟著變大。低通濾波其他點的頻率、Q值以及帶通濾波器的測試結果在此不一一列舉,具體特性可通過示波器進行觀察。
結語
基于嵌入式以太網(wǎng)技術實現(xiàn)的程控信號調理系統(tǒng),利用嵌入式實時操作系統(tǒng)與TCP/IP協(xié)議實現(xiàn)了程控信號調理,網(wǎng)內用戶可以實現(xiàn)對輸入信號濾波參數(shù)和放大器增益的遠程控制。該系統(tǒng)操作安全可靠,設置方便簡單,適用于需要進行信號調理的大型物理實驗等場合。