金路 言思敏 曾憲鈺 陳功 / 上海市質量監(jiān)督檢驗技術研究院
基于FPGA的旋轉機械振動數據采集系統
金路 言思敏 曾憲鈺 陳功 / 上海市質量監(jiān)督檢驗技術研究院
提出一種基于FPGA(現場可編程門陣列)的旋轉機械振動數據采集系統。該系統主要由A/D、鍵相信號、FPGA控制、電源、SDRAM、EPCS和以太網通信等模塊組成。根據系統方案的要求完成了硬件和NIOSII嵌入式系統開發(fā)兩部分內容。實驗結果表明,基于FPGA的數據采集系統運行穩(wěn)定可靠,具備多通道同步采樣功能,最高可對轉速為50 000 r/min旋轉機械的振動數據進行計量檢測。
FPGA;THS1207;自定義指令;信號處理
旋轉機械通常指的是壓縮機、汽輪機、燃氣輪機、儲能飛輪等機械設備,在航空航天、電力、機械、石油化工等領域應用十分廣泛。對于旋轉機械振動參數的計量檢測可以了解到旋轉設備在運行過程中的狀態(tài)參數,從而判斷其是否運行穩(wěn)定和正常,還能及時發(fā)現問題,找出相關原因,甚至可以預測出故障的發(fā)展趨勢[1]。
嵌入式系統是半導體技術、電子技術和計算機技術相結合的產物,它的發(fā)展和應用對于實現“智能工業(yè)”[2]的目標具有深遠長久的意義。目前在工業(yè)中使用較為廣泛的嵌入式系統主要有FPGA(Field - Programmable Gate Array)和DSP(Digital Signal Processing)兩大類。FPGA即現場可編程門陣列,具備NIOS II嵌入式軟核處理器,以并行計算為主,能對多路信號進行并行處理。同時它為用戶提供了自定義模塊和自定義指令,用戶可以根據實際設計需要進行自定義設計,有效提高了設計的靈活性和效率[3]。DSP芯片的內部具有專門的硬件乘法器,提供特殊的DSP 指令,十分有利于實現各種數字信號處理算法。但是由于DSP自身存在的程序指令需按順序執(zhí)行的特點以及受限于自身的性能能力,難以實現大規(guī)模、高速運算[4]。
鑒于FPGA與DSP的比較和本系統方案的需求,決定基于FPGA來完成在線實時高速數據采集系統的設計。整個設計主要包括硬件電路設計和嵌入式系統開發(fā)兩部分。
基于FPGA的系統方案設計需要具備以下幾個功能:
1)采集速度達到高速水平;
2)可以實現多通道數據的實時采集以及實時傳輸;
3)可以在上位機上進行在線監(jiān)測,同時可以進行相應的數據處理。
整個數據采集系統采用的是自頂向下的設計方法,主要分為A/D模塊、鍵相信號模塊、FPGA控制模塊、以太網通信模塊、電源模塊、SDRAM模塊、EPCS模塊等。如圖1所示,采集系統實現的主要流程:鍵相信號模塊接受來自外部的鍵相信號以觸發(fā)采樣程序,振動信號經過信號調理電路后進入A/D芯片對其進行模數轉換,之后把數字信號傳遞給FPGA主芯片,通過對FPGA嵌入式NIOS II軟核的開發(fā)對數據進行相應的并行運算和處理,然后將處理過的數字信號通過以太網模塊完成與上位機的數據通信、在線實時監(jiān)測以及信號處理。
硬件電路的設計是整個數據采集系統能否實現的基石。硬件電路的設計首先要明確各個模塊的自身功能以及模塊間的相互關系,在此基礎上對各個模塊涉及的電子元器件進行選擇,同時進行電路原理圖的繪制,PCB全局的布局布線,PCB板的制作焊接和調試等工作。
圖1 系統方案
2.1 主要功能模塊
2.1.1 FPGA模塊
本系統的FPGA芯片采用的是Altera公司生產的Cyclone系列第三代芯片EP3C25Q240。該芯片擁有24 624個邏輯單元,66個M9K Block,總共608 256 bits的片上儲存空間;同時集成有4個數字鎖相環(huán),具有215個可開發(fā)利用的I/O數,包含了20個時鐘網絡,支持多種電氣標準,最主要的是可以支持嵌入式軟核NIOS II的開發(fā)。FPGA模塊的功能是負責數據的并行運算和整個系統的邏輯控制和時序控制。
2.1.2 A/D模塊
對于系統方案提出的高速多路實時采集的高要求,本系統的A/D芯片選用了德州儀器公司生產的12位高性能芯片THS1207。THS1207采用CMOS工藝制造,是一款低功耗、最高轉換速度為6 MSPS的模擬與數字轉換器,非常適合應用在雷達成像、高速采集和通信等多個領域[5]。THS1207可以對四個模擬輸入同步采樣,這些輸入可以進行單獨選擇,配置為單端或差分輸入。該芯片為ADC提供了1.5~3.5 V的內部參考電壓,也可以選擇外部輸入電壓,如圖2所示。
圖2 A/D內部構造
2.1.3 鍵相信號處理模塊
在旋轉機械振動監(jiān)測中,采樣速度需要配合旋轉機械的轉速,旋轉機械的旋轉速度變快了,采樣速度相應也要變快;旋轉機械的旋轉速度變慢了,采樣速度相應也要變慢,以此實現同步采樣。
鍵相信號的作用主要是通過兩個鍵相信號的時間間隔計算出旋轉機械的轉速,同時觸發(fā)系統進行數據采集。
2.1.4 以太網模塊
本系統方案中的FPGA控制模塊和上位機的數據通信是由以太網模塊來完成的。以太網芯片選擇的是臺灣DAVICOM公司生產的一款高度集成、性價比高、引腳少且功能強大的單片快速以太網控制芯片,非常適用于嵌入式系統設計[6]。以太網模塊承載著硬件和上位機的數據傳輸功能,是在線實時監(jiān)測的重要一環(huán)。圖3所示為以太網模塊接口示意圖。
本方案采用FPGA芯片的開發(fā)平臺為NIOS II嵌入式系統,它是目前最為流行的軟核處理器。NIOS II嵌入式系統的開發(fā)分為硬件開發(fā)和軟件開發(fā)兩部分。其中,硬件開發(fā)由用戶來選擇或者自定義系統硬件的構成,然后通過計算機實現硬件系統的生成,包含建立quartus工程,構建NIOS II軟核,構建鎖相環(huán),引腳分配,編譯下載等步驟;軟件開發(fā)則是在硬件系統生成的前提下完成軟件的設計,包含建立軟件工程,編譯運行等步驟[7-10]。圖4為NIOS II系統整體開發(fā)流程圖。整個系統設計主要是結合硬件描述語言Verilog語言和C語言進行編程,并且通過實驗來驗證設計的可行性。
圖3 以太網模塊接口
圖4 NIOS II 系統整體開發(fā)流程
3.1 采集系統程序
數據采集系統的程序部分主要由采樣程序設計和以太網通信程序設計兩部分組成。系統采用的是中斷處理方式,即系統進入主程序后一直執(zhí)行While()語句循環(huán),當檢測到有任務需求時,隨即響應中斷進入到中斷服務程序當中,完成后再進入到主程序的循環(huán)中,如圖5所示。
3.1.1 采樣程序
THS1207的單通道最大采樣速度為6 MSPS,而四通道同步采樣的速度可以達到1.5 MSPS。本系統采用了四通道同步采樣模式,四通道時序圖如圖6所示。在THS1207進行采樣前,需要通過寫命令的方式將芯片啟動,啟動完成后可以進行數據采樣。在轉換過程中,A/D有一個自由運行的外部輸入時鐘CONV_CLK。伴隨著每一個CONV_CLK信號的下降沿,四個通道模擬信號轉換后的值提供給相應讀出信號中的數據總線。信號SYNC是低電平時,第一個通道的數據到數據總線,之后SYNC信號變?yōu)楦唠娖剑诙?、三、四通道的數據按順序依次讀取。READ+為、、 CS1三者信號的邏輯集成,READ+為低電平時表示讀取有效。本系統在PCB上布置了四個A/D芯片,從而可以實現十六個通道的同步采樣。
圖5 數據采集系統程序設計流程
圖6 THS1207時序
完成了THS1207芯片的啟動以及控制之后,在上位機根據系統的實際需要設置采樣間隔時間,A/D芯片按時進行采樣和模數轉換,各通道的數據轉換完成以后發(fā)出中斷信號,NIOS II軟核隨即響應中斷,進入到中斷服務程序當中,在中斷服務程序里對采樣得到的數據進行讀取或進行相應的信號處理。
3.1.2 以太網程序
以太網通信傳輸首先需要符合TCP/IP傳輸協議規(guī)定。在此基礎上,對上位機接收端和本地發(fā)送端的以太網端口、IP地址和MAC地址等進行設置,之后以太網通信程序就可以向上位機發(fā)送UDP數據包。
3.2 數據處理
根據系統方案的要求得到采樣數據后,需要具備相應的數據處理能力,比如傅里葉變換、濾波等。FPGA的嵌入式軟核NIOS II可以進行自定義指令設計并具有并行運算的優(yōu)勢,借助matlab軟件可以很好地完成數據處理工作。
NIOS II可以支持四類自定義指令:組合邏輯指令,多周期用戶自定義指令,擴展用戶自定義指令,內部寄存器自定義指令[11]。本設計中主要采用了多周期用戶自定義指令來進行傅里葉變換和FIR濾波[12-13]等數據處理工作。
本實驗利用信號發(fā)生器發(fā)出模擬信號。實驗中發(fā)出一組幅值為2 V的正弦交流信號,接通電源開啟硬件。在上位機設置好采樣時間間隔后觸發(fā)THS1207進行采樣,同時將實時數據通過以太網傳送到上位機。在上位機可以得到如圖7所示的波形。通過發(fā)出不同頻率、不同形狀的波形進行實驗。實驗結果表明,基于FPGA的數據采集系統能很好完成數據采集任務。
圖7 采樣得到的波形
為了實現對于高速旋轉機械振動參數的計量檢測,本項目設計了基于FPGA的數據采集系統。實驗證明,整個系統具備多通道同步采樣功能,最高可對轉速為50 000 r/min的旋轉機械振動數據進行同步實時計量監(jiān)測,系統運行穩(wěn)定可靠。
[1]徐敏等主編.設備故障診斷手冊[M].西安:西安交通大學出版社,1998.
[2]工信部編制《中國制造2025》:劍指工業(yè)強國[J].機械工業(yè)標準化與質量,2014,(8):4-5.
[3]楊海鋼,孫嘉斌,王慰.FPGA器件設計技術發(fā)展綜述[J].電子和信息學報,2010,3(3):714-723.
[4]劉靜,田劍鋒.DSP的硬件技術與應用原理[J].火控雷達技術,2004,33(3):31-33+41.
[5]Texas Instruments.THS1207 Data Sheet[R].Texas:2010.
[6]施勇,溫陽東.基于DM9000A的嵌入式以太網接口設計與實現[J].合肥工業(yè)大學學報(自然科學版),2011,34(4):519-524.
[7]趙佩麗,李小珉,卞小林,等.NIOSⅡ處理器在數字信號處理中的應用[J].電氣電子教學學報,2007,29(6):47-48+53.
[8]孟芳,于立佳,張文志,等.基于NiosⅡ的SOPC系統設計分析[J].無線電通信技術,2012,38(1):73-76.
[9]Liu H J,Li K J,Lee W J,Gao H.Development of Frequency Variable Inverter Based on SOPC and Nios II[J].IEEE Transactions on Industry Applications,2013,49(5).
[10]楊秀增.一種基于NIOS II軟核的自適應濾波器實現[J].電子測試,2013(3):38-40.
[11]王玉峰,郭春鳳.SOPC中自定義外設和自定義指令性能分析[J].單片機和嵌入式系統應用,2007(11):22-25.
[12]Xi Zhang.Design of FIR Halfband Filters for Orthonormal Wavelets Using Remez Exchange Algorithm[J].IEEE signal processing letters,2009,16(9):814-817.
[13]Bruno Fernandes,Helena Sarmento.FPGA implementation and testing of a 128 FFT for a MB-OFDM receiver[J].Analog Integrated Circuits and Signal Processing,2012,70(2):241-248.
Data acquisition system of rotating machinery vibration based on FPGA
Jin Lu,Yan Simin,Zeng Xianyu ,Chen Gong
(Shanghai Institute of Quality Inspection and Technical Research)
A data acquisition system of rotating machinery vibration based on FPGA (Field Programmable Gate Array) is presented, which can be mainly divided into seven modules, including A/D, key-phase signal, FPGA control, power, SDRAM, EPCS and Ethernet communication.According to requirements of the system, the hardware and NIOS II embedded system are developed.Experimental results show that the system is stable and reliable, possesses the performance of multi-channel synchronously sampling, and is able to test the vibration data of the rotating machinery whose speed is up to 50 000 r/min.
FPGA; THS1207; custom instruction; signal processing