張景卓 肖大為
(海軍工程大學理學院物理系,武漢430033)
對于需要長期工作在深海中的測量系統,只能采用電池供電,而測量系統體積是固定的,其內部只能裝入一定數量的電池,所以其硬件電路的設計必須遵從低功耗的原則,采用功耗低的值班電路控制系統工作。
以往的水下測量系統一般采用模擬器件設計組成值班電路,以節省系統功耗。但是,這種模擬電路無法檢測編碼信號,靈活性不強。鑒于系統對電路的功耗和靈活性的要求,本設計采用美國TI公司的MSP430F1611單片機作為水下測量系統值班電路的核心處理器。
TI公司的MSP430系列單片機是一種超低功耗的混合信號控制器,其中包括一系列片內外設,它們針對不同的應用而由不同的模塊組成。這些微控制器以電池作動力,可以長時間使用。
其具有16位RISC結構,CPU中的16個寄存器和常數發生器使 MSP430微控制器能達到最高的代碼效率;靈活的時鐘源可以使器件達到最低的功率消耗;數字控制振蕩器(DCO)可使器件從低功耗模式迅速喚醒,在少于 6 μs的時間內激活到活躍的工作方式。MSP430F1611具有豐富的外部資源,值班電路的大部分功能就是由單片機內部集成的外圍模塊完成的。
值班電路各功能模塊結構如圖1所示。接收預處理板實現對傳感器輸出信號的放大、濾波,提高接收信號的信噪比。單片機的片內AD轉換模塊對接收預處理板輸出的模擬信號進行采樣,檢測喚醒信號;單片機的片內DMA控制器直接將FLASH存儲器中的數據傳送給其DA轉換模塊,為發射機提供驅動信號;兩種時鐘的使用,有利于值班電路降低功耗,高速時鐘用于算法計算,低速時鐘用于系統計時;單片機可以通過串行接口接收主機或其它設備的數據,完成軟件的基本配置。
圖1 值班電路各功能模塊框圖
接收預處理電路接收來自傳感器的信號,完成信號的預處理,提高信噪比,其電路由前級放大、模擬開關、帶通濾波器和后級放大等幾部分組成。圖2為接收預處理板組成框圖。
接收預處理板對接收頻帶內的信號進行預處理,提高信號信噪比。其前級和后級放大電路均采用反相比例放大電路,中間加入了一級增益控制電路,由單片機產生控制信號,實現增益控制,以滿足系統在不同海域的測試。
圖2 接收預處理板組成框圖
綜合考慮功耗和噪聲的要求,濾波器電路設計采用的運算放大器為TI公司的OPA2348,其靜態電流在+5V供電時為45 μA,可在單2.1 V至5.5 V供電條件下工作。
圖3 帶通濾波器二階節電路圖
圖3為用GIC(通用導抗變換器)實現的二階節濾波電路,其對拐點頻率和Q值有非常強的控制能力。本設計采用此種電路作為構成帶通濾波器的基本二階節,將四個二階節濾波電路級聯起來,構成接收預處理板帶所需的8階帶通濾波器。
基礎時鐘模塊對于達到低廉的系統成本和微弱的系統功耗的設計目標是非常重要的,利用其3個內部時鐘信號,可以在系統的低功耗和高性能之間得到最佳平衡。
如圖4所示,MSP430單片機基礎時鐘模塊有3個時鐘輸入源,可以提供3種時鐘信號。
圖4 MSP430單片機基礎時鐘模塊
值班電路設計中采用兩個標準晶體作為單片機的外接時鐘輸入源,32.767 kHz晶振接LFXT1CLK,此時鐘經1分頻得到ACLK,供定時器作為輸入時鐘;8 MHz晶振接XT2CLK,MCLK選擇XT2CLK作為時鐘輸入源,并作為系統工作的主時鐘;SMCLK也選擇 XT2CLK作為時鐘輸入源,作為子系統時鐘。在調試基礎時鐘模塊時,必須要等待晶振完全起振后再對時鐘控制寄存器設置,否則時鐘設置將不會成功。
MSP430F1611有三種定時器:看門狗定時器(WDT)、定時器A、定時器B。
看門狗定時器實質上是一個定時器,其主要功能是:當程序發生故障時能夠使受控系統重新啟動。如果 WDT超過所定時的時間,即發生系統復位。如果系統不需要看門狗功能,也可將它當作定時器使用,當到達 WDT所定時的時間時能產生中斷。本設計沒有使用看門狗定時器,在調試時用軟件指令將其關閉。定時器 A是MSP430所有系列器件都有的模塊,是一個用途非常廣泛的通用16位定時器/計數器。定時器A主要特點有:16位計數器,4種工作模式;多種可選的計數器時鐘源;具有多個可配置輸入端的捕獲/比較寄存器;有8種輸出模式的多個可配置的輸出單元。
定時器A可支持同時進行多種時序控制、多個捕獲/比較功能及多種輸出波形(PWM),也可以是幾種功能的組合。每個捕獲/比較寄存器可以以硬件的方式支持實現串行通信。定時器A還具有中斷能力。中斷可由計數器溢出引起,也可來自具有捕獲或比較功能的捕獲/比較寄存器。每個寄存器可獨立編程,由捕獲或比較外部信號以產生中斷,外部信號可以是上升沿,也可是下降沿,也可二者都有。
值班電路需要對接收預處理板輸出的模擬信號采樣分析,如果采用外加AD采集器,必然會增加系統的功耗,而單片機內部集成有多通道12位的A/D轉換模塊(以下稱ADC12),它的最高采樣頻率為 200kHz,12位的數據精度滿足應答器系統的指標要求,所以采用單片機的片內外設ADC12作為值班電路的AD采集器,這也是系統選擇 MSP430F1611作為值班電路處理器的主要原因之一。
ADC12使用起來相當靈活方便,使用相關的控制寄存器即可。該模塊的寄存器很多,大致可分為4類:轉換控制類、中斷控制類、存儲控制類及存儲器類。其中最主要的是轉換控制類寄存器 ADC12CTL0和 ADC12CTL1,它們一起控制了ADC12的大部分操作。
值班電路的信號檢測程序通過自適應濾波器檢測水面母船發送的喚醒信號。自適應濾波就是利用前一時刻所獲得的濾波器參數等結果,自動調整現在時刻的濾波器參數,以達到最佳濾波。自適應濾波技術是統計信號處理的重要組成部分,對于任何未知統計特性的環境信號,它所帶來的新的信號處理能力是其它固定濾波器無法比擬的。
自適應Notch濾波器是針對信號已有先驗知識情況下的,只有兩個正交權的窄帶濾波器。其頻率特性的陷波中心頻率除等于外加的正弦或余弦頻率外,還隨著它的改變而自動的修改濾波參數來對準,即自適應的跟蹤。這種濾波器的優點是很容易控制帶寬,消噪聲的能力沒有限制,能夠準確跟蹤干擾頻率。
圖5 自適應Notch濾波器原理圖
本文充分利用了MSP430單片機的片內外設資源,設計了一種結構簡單、功耗低、可檢測編碼信號的水下值班檢測系統,對長期工作于水下的測量系統設計有一定參考價值。
[1]魏小龍. MSP430系列單片機接口技術及系統設計實例. 北京: 北京航空航天大學出版社, 2002.
[2]丁士圻. 模擬濾波器. 哈爾濱: 哈爾濱工程大學出版社, 2004.
[3]李遠文, 胡筠. 有源濾波器的設計. 北京: 人民郵電出版社. 1986.
[4]胡大可. MSP430系列FLASH型超低功耗16位單片機. 北京: 北京航空航天大學出版社, 2001.
[5]維德羅 B, 史蒂恩斯 SD. 自適應信號處理. 王永德, 龍憲惠譯校. 四川: 四川大學出版社, 1989.