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