《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA臨空數據采集系統的設計
基于FPGA臨空數據采集系統的設計
2018年電子技術應用第12期
趙樹磊,劉敬猛,張 慧,呂志宇
北京航空航天大學 自動化與電氣工程學院,北京100083
摘要: 設計了一個基于FPGA的數據采集系統,該系統運行在臨近空間下,為了使系統在復雜環境下穩定運行,從硬件和軟件兩方面進行設計。在硬件方面,由于FPGA抗干擾性強,將其作為采集系統的控制器,對傳感器數據采集模塊和執行機構都進行冗余處理,將其分為主板和從板,以此保證系統的有效性。在軟件方面,基于信號分類的結果進行模塊化處理,分析代碼可能存在的問題,對復雜任務的模塊采用狀態機設計。經過測試,數據采集系統能夠長時間穩定運行,能夠實時下發采樣數據,也能響應地面指揮站的命令。
中圖分類號: TP273
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.181229
中文引用格式: 趙樹磊,劉敬猛,張慧,等. 基于FPGA臨空數據采集系統的設計[J].電子技術應用,2018,44(12):123-126.
英文引用格式: Zhao Shulei,Liu Jingmeng,Zhang Hui,et al. Design of FPGA-based data acquisition system running near space[J]. Application of Electronic Technique,2018,44(12):123-126.
Design of FPGA-based data acquisition system running near space
Zhao Shulei,Liu Jingmeng,Zhang Hui,Lv Zhiyu
School of Automation Science and Electrical Engineering,Beihang University,Beijing 100083,China
Abstract: A FPGA-based data acquisition system is designed,which is operated near space. In order to make the system run stably, this paper designs the system from both hardware and software. On the hardware side, FPGA is used as the controller of the acquisition system due to its strong anti-interference ability. Both the modules of sensor data acquisition and the implementing agency are redundantly processed and divided into main board and slave board to ensure the effectiveness of the system. In terms of software, based on the results of signal classification, it performs modular processing, analyzes the possible problems in the code and designs the state machine to deal with complex tasks. After testing, the data acquisition system can operate stably for a long time, can send sample data in real time, and can also respond to commands from the ground command station.
Key words : FPGA;data acquisition system;redundant design;state machine

0 引言

    目前已經有多種成熟的數據采集系統,主要用于工業生產、環境監測、航空航天和科學研究領域中。大部分實時數據采集系統選用DSP(Digital Signal Processing)控制器和微控制器作為控制核心,比較容易實現復雜的算法[1],但是它們受到信息吞吐量和帶寬的限制,不能實現并行化處理,在高速大批量數據采集時有些乏力。而有極強并行處理數據能力的現場可編程門陣列器件(Field Programmable Gate Array,FPGA)備受青睞,以FPGA為控制核心的數據采集系統也日漸興盛。FPGA具有靈活性高、可擴展性強和資源豐富的特點[2-3],而且能夠應對各種形式的接口協議,使其在數據采集系統中得到廣泛應用。有些FPGA是反熔絲的,可靠性能和穩定性能非常高,這類FPGA在特定宇航應用中是必選項。

    地球臨近空間低溫、低壓、高輻射,環境極端惡劣,數據采集系統的傳感器和控制部件很容易受到影響而工作異常,甚至出現系統崩潰的現象。此環境下設計數據采集系統需要考慮穩定性。FPGA能夠實現復雜電路,能減小電路板上因布線產生的電磁干擾。與DSP控制器和其他CPU微控制器相比,FPGA生成硬件電路的特性更具有抗干擾性。前人進行可靠性處理的方法有冗余結構設計和配置存儲器的回讀校驗與重配置[4]。同時數據采集系統可靠性也有合理的評估指標,例如運行環境、系統集成、人機耦合、方案成熟性及安全性[5]。

    需設計一個數據采集系統,使其運行在臨空的特定環境下,不僅實現數據采集任務,還需要實時將數據傳回地面,并能完成部分控制功能。從運行成本和環境考慮,需提高系統的可靠性和穩定性。從硬件和軟件兩方面入手進行設計,在硬件方面,FPGA抗干擾性能強,所以選取FPGA作為本系統的主控制器。采用冗余策略,設計兩路連接主控制器的傳感器電路,使得數據采集系統可靠性提高。對軟件部分,進行模塊化編程,利用有限狀態機和看門狗策略來提高系統穩健性。

1 系統硬件設計

    臨空數據采集系統主要包括了以FPGA為控制器的最小系統模塊、傳感器模塊、UART串口通信模塊和控制模塊。如圖1所示,最小系統是維持FPGA控制器正常運行的外圍電路;傳感器模塊涉及溫度、角度、電流電壓等信號的采集與調理,因為硬件的冗余,信號被分為主板信號和從板信號;UART串口通信模塊包括2個RS232串口(與北斗模塊相連)、2個RS422串口(與臨空機載計算機連接);控制模塊主要包括閥門控制模塊和溫度控制模塊,溫度控制模塊用于控制加熱電阻,來維持電路板上的元器件正常運行。

jsj5-t1.gif

1.1 最小系統模塊

    本設計選用Altera公司的Cyclone IV E系列的EP4CE22F1717作為采集系統的控制器。它有22 320個邏輯單元、154個用戶輸出輸出口、132個乘法器、4個PLL(“Phase Locked Loop”鎖相環)。芯片的外部提供晶振頻率為50 MHz。

1.2 溫度采集模塊

    數據系統采用PT100溫度傳感器來測量10路溫度。PT100溫度傳感器將溫度變量轉換成可以傳送的標準化電信號。此傳感器精度高,穩定性好,測溫范圍在-200 ℃~650 ℃之間,符合臨空測溫范圍要求。如圖2所示,將PT100傳感器連接到差動電路中,測量差分電壓,將此電壓信號進行整形調理,經過模數轉換芯片得到數字值暫存到FPGA中的內存中。濾波電路采用阻容濾波。儀表放大器采用TI公司的儀表放大器INA333,該放大器具有低功耗、高精度的特性。AD轉換芯片應用5 V供電電壓的TLC2543IN,允許11路外部模擬信號并行輸入,串口輸出轉換數據,具有12位的分辨率。

jsj5-t2.gif

1.3 氣壓采集模塊

    本設計選用SMI公司的SM5852系列氣壓傳感器來采集氣壓信號。SM5852傳感器的工作溫度為-40 ℃~125 ℃,能夠滿足臨空的惡劣環境,芯片內部有溫度補償算法,實現氣壓的精準測量。本文選用SM5852-003傳感器,其可測壓力范圍是0~0.3 PSI(Pounds per Square Inch)。氣壓傳感器既可以輸出數字信號,又可以輸出模擬信號。為了使系統設計簡單而且信號獲取精確高,這里直接采集傳感器的數字信號。數字信號是通過IIC協議傳輸的,并利用74LVC4245電平轉換芯片將電壓的控制器與傳感器連接在一起,將5 V的數字信號轉換為3.3 V數字信號,同時對控制模塊起到保護作用。

1.4 通信模塊

    這一模塊在本系統中非常關鍵,它是連接采集器與地面監控系統的紐帶。它負責將臨空采集平臺上獲取的信息實時地傳送給機載計算機或者北斗模塊,同時實時接收來自兩個模塊的指令。采集平臺上的重要數據信息通過事先擬定的協議被組合成不同長度的幀發送給地面指揮站。為了保證數據的安全性和準確性,增加數據幀校驗環節,將求異或和作為幀校驗的方法。

    本系統的FPGA控制板放置在數據采集系統的平臺上,與地面指揮站通信交互信息主要有兩類:一類是下發采集器收集到的數據信息,另一類接收地面指揮系統的指令信息。為了保證數據安全和采集系統的可靠性,對通信模塊冗余設計。通過兩個RS422接口與機載計算機相連,機載計算機再通過無線通信與地面指揮站交互信息。另外,還通過兩個RS232接口與機載北斗相連,通過北斗衛星服務與地面指揮站聯系。同時,采集器的定位信息一同下發到地面。RS422接口芯片選用ADI公司ADM2587E,RS232接口芯片采用ADI公司的ADM3251E。兩個RS422接口分為主板串口、從板串口,主板串口處理的是與主板相關的數據信息,從板串口處理與從板相關的數據信息。

2 系統軟件設計

    軟件代碼開發基于Altera公司的Quartus II 13.0平臺,利用Verilog HDL語言實現代碼塊的設計與仿真。臨空數據采集系統中,FPGA控制器內信號的性質和來源各式各樣,有直接來自傳感器的數字信號,有模擬信號轉換后的數字信號,有程序內部的標志信號,有來自機載計算機的控制信號,有來自北斗模塊發來的控制信號和定位信號,有FPGA控制器發出的數據信號、電機控制信號、電路板控溫信號等。為了提高有效數據穩定地接收、存儲和發送,需要對全體信號細致分類,這對程序代碼模塊劃分有指導作用。系統軟件設計要求代碼可讀性高、可靠性高、易維護、有可擴展的余地。系統設計的思路是先做總體架構,再逐個完成子模塊的編寫,最后在頂層模塊完成信號連接。模塊化的設計思路使得系統仿真測試更容易,代碼維護性更強。

2.1 程序頂層架構

    程序頂層模塊的設計影響全局,關系到系統的穩定性和可靠性。系統結構的設計是根據模塊的功能劃分,每一個模塊實現一個具體的功能,數據信息的交互通過各模塊的輸入輸出接口連接。

    數據采集系統信號比較多,而且FPGA與機載計算機、北斗模塊的通信按照既定協議交互數據,即定時發送采集系統的數據,不定時接收外部指令和狀態信息,為了便于管理數據,在FPGA內開辟一塊隨機存儲器(Random Access Memory,RAM),專門針對各種信號存儲和讀取,這種數據結構使FPGA內部數據共享更容易,也不易產生讀寫數據紊亂現象[6-7]。引用Altera公司提供的IP核配置RAM,經過事先估計并留有足夠的余地,將RAM大小設置為512 B,讀寫地址線各9根,并設置讀寫使能控制端口。圖3為系統的頂層模塊架構,核心模塊是RAM區的讀寫模塊,溫度、壓力、電壓、電流信號,以及來自機載計算機或北斗的指令、位置和狀態等信號流入RAM區,而存儲的數據需要從RAM區被讀取,通過UART串口模塊發送給機載計算機和北斗模塊。

jsj5-t3.gif

2.2 通信模塊程序設計

    通信模塊借助UART串口實現雙向通信。FPGA控制器向機載計算機和北斗模塊發送數據幀,同時實時接收它們的指令與狀態數據。控制器向兩個RS422串口發送定位、主從板信息、狀態等數據幀,定位數據幀包含來自北斗模塊的定位信息,主從板數據幀囊括采集系統采集到的各類信息,狀態數據幀含有北斗模塊的狀態信息。此外,控制器向兩個RS232串口發送遙測數據幀和自檢數據幀,遙測數據幀由遙測幀頭、定位信息、主板或從板信息和遙測數據幀尾組成,自檢數據幀包括自檢信息的請求。同時,有3個UART串口實時接收來自機載計算機和北斗模塊的指令和狀態信息。程序運行時需要對各種數據幀頻繁讀寫操作,如果程序設計不合理,很容易造成程序死鎖或崩潰。鑒于串口數據的接收和發送沒有緊密地耦合,程序內部將數據接收和發送分成兩個子模塊來設計,然后在頂層模塊通過wire型變量連接。為了有效解決數據讀寫不紊亂的問題,設計狀態機來合理使用RAM區資源,增強程序的穩定性。狀態機的空閑任務會出現連接兩個always塊的使能信號,設計watchdog程序增強程序的魯棒性。

2.2.1 RAM數據段劃分

    本文設計了雙端口RAM數據結構,承載采集控制系統的重要數據。依據通信協議,針對512 B的RAM區,細致地進行了數據段的劃分,如圖4所示。按照發送頻次以及組幀要求,合理分配數據幀的存儲順序。這樣設計會使控制器讀寫更可靠安全,也使代碼編寫調試更簡捷。

jsj5-t4.gif

2.2.2 數據發送狀態機設計

    信息傳送模塊是連接地面指揮系統和數據采集系統的紐帶。在臨空惡劣環境下,為了將采集到的數據和系統狀況相關信息實時準確地傳送到地面指揮站,在軟件上進行了可靠性研究和處理。

    首先對傳送的數據做了校驗處理,可通過上位機軟件測試傳輸數據幀是否正確,如果校驗失敗,可丟棄此幀。本系統的發送模塊既要發送主板信息又要發送從板信息,既要傳送給機載計算機又要傳送給北斗衛星,發送幀的類型也有差異,因此,設計三段式狀態機穩定地傳送數據,以免數據發送紊亂。在狀態機的空閑任務中,FPGA等待各種數據類型幀的觸發信號,一旦接收到啟動發送信號,進入到相應的發送狀態中,將對應的數據幀發送到UART串口上,串口的觸發信號也因數據信息的差異而不同。在空閑任務中,接收到觸發信號后,需要實時對RAM區執行寫操作,寫操作完成后再進入發送狀態,不免會引起程序死鎖。為了解決這個問題,提高程序的魯棒性,在等待寫操作的部分加入看門狗程序,一旦死鎖,可以強行將程序拉回到原始等待狀態。圖5為UART串口發送模塊的狀態機示意圖。

jsj5-t5.gif

3 系統仿真與調試

    數據系統的測試主要通過兩種手段:軟件仿真和借助上位機聯調。本系統用到的仿真工具有Quartus II開發環境提供的在線邏輯分析儀、信號探針、邏輯分析儀接口等,還有外部安裝性能強大的Modelsim仿真工具。例如,在調試具有讀寫應答的IIC通信的傳感器和基于SPI通信的傳感器時,使用在線邏輯分析儀直接觀察數據波形特征,能夠快速診斷并排查錯誤。利用Modelsim仿真工具時,需要先編寫對應模塊的testbench代碼,并添加到仿真工具中,運行仿真軟件。圖6為調試UART通信模塊波形圖,可觀察RAM的讀寫地址值與數據值的對應關系,驗證代碼的邏輯。尤其在調試狀態機的運行情況時,能夠很直觀地查看狀態時序邏輯的正確性。

jsj5-t6.gif

    當集中測試所有的模塊時,為了提高調試效率,利用了基于UART通信的上位機軟件。該軟件運行在Windows 10 系統上,它通過USB接口接收FPGA發送的數據信息,并把信息可視化在面板上,直觀明了地看到FPGA采集到的數據。

4 結論

    臨空環境有低溫、低壓、高輻射的特點,因此對運行在環境下數據采集系統的設計要求極為嚴格。本文從軟硬件兩方面著手進行可靠性研究,設計了應對這種復雜環境的數據采集系統,取得了良好的效果。該系統能夠可靠穩定地采集到傳感器數據,并能長時間穩定地與北斗模塊和機載計算機通信,能夠通過地面控制系統發送指令控制數據采集系統。

參考文獻

[1] MONMASSON E,IDKHAJINE L,CIRSTEA M N,et al.FPGAs in industrial control applications[J].IEEE Transactions on Industrial Informatics,2011,7(2):224-243.

[2] KANDADAI V,SRIDHARAN M,PARVATHY S M,et al.A comprehensive embedded solution for data acquisition and communication using FPGA[J].Journal of Applied Research & Technology,2017,15(1):45-53.

[3] 周珊,楊雅雯,王金波.航天高可靠FPGA測試技術研究[J].計算機技術與發展,2017,27(3):1-5.

[4] 宋克非.FPGA在航天遙感器中的應用[J].光機電信息,2010,27(12):49-55.

[5] 陳柯勛,王曉毅,薛輝.基于FPGA的數據采集器設計及可靠性分析[J].科技資訊,2017,15(24):7-8.

[6] 王敬美,楊春玲.基于FPGA和UART的數據采集器設計[J].電子器件,2009,32(2):386-389.

[7] NING Y,GUO Z,SHEN S,et al.Design of data acquisition and storage system based on the FPGA[J].Procedia Engineering,2012,29:2927-2931.



作者信息:

趙樹磊,劉敬猛,張  慧,呂志宇

(北京航空航天大學 自動化與電氣工程學院,北京100083)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲国产一区二区三区青草影视| 羞羞视频在线观看欧美| 亚洲尤物视频网| 亚洲日韩视频| 亚洲丰满在线| 亚洲国产99| 亚洲国产精品第一区二区| 在线观看亚洲专区| 亚洲春色另类小说| 亚洲欧洲精品一区二区三区波多野1战4 | 99天天综合性| 国产精品成人播放| 国产精品成人免费视频| 欧美三级日本三级少妇99| 欧美日本韩国一区二区三区| 欧美精品在线一区二区| 欧美日韩精品免费观看视一区二区| 欧美看片网站| 欧美午夜视频| 国产日韩在线播放| 亚洲成色777777在线观看影院| 精品福利av| 亚洲韩日在线| 夜色激情一区二区| 亚洲性线免费观看视频成熟| 亚洲欧美乱综合| 亚洲欧美日本另类| 亚洲国产成人av好男人在线观看| 亚洲黄色在线观看| 日韩一级精品| 亚洲欧美成人精品| 久久视频一区二区| 欧美黄在线观看| 欧美性理论片在线观看片免费| 国产精品日韩在线一区| 国产日韩精品一区观看| 加勒比av一区二区| 亚洲国产精品久久久久秋霞不卡| 日韩视频在线一区| 亚洲欧美一区二区激情| 久久精品视频在线观看| av成人天堂| 性欧美videos另类喷潮| 久久在线视频| 欧美日本韩国| 国产日韩亚洲| 亚洲激情影院| 亚洲欧美成aⅴ人在线观看| 亚洲国产视频一区| 亚洲一级一区| 久久色在线播放| 欧美日韩国产欧美日美国产精品| 国产欧美一区二区精品秋霞影院| 一区二区三区在线免费视频| 亚洲精品在线看| 新狼窝色av性久久久久久| 亚洲伦伦在线| 欧美在线二区| 欧美精品激情在线观看| 国产一区二区中文| 99国产精品视频免费观看一公开| 欧美一区二区| 一区二区三区国产| 久久综合九色综合欧美就去吻| 国产精品h在线观看| 精品999在线观看| 亚洲一区欧美二区| 99视频超级精品| 久久久精品国产免费观看同学| 欧美日韩国产综合视频在线观看中文| 国产日韩欧美自拍| 在线亚洲欧美视频| 亚洲精品网址在线观看| 欧美在线|欧美| 欧美日韩免费网站| 亚洲电影免费在线观看| 性做久久久久久免费观看欧美| 亚洲视频在线观看网站| 欧美69wwwcom| 国产一区二区三区av电影| 一区二区欧美日韩| 亚洲每日更新| 美女主播一区| 国产一区二区三区四区三区四| 亚洲午夜久久久久久尤物| 亚洲九九精品| 久久综合伊人| 国产午夜精品理论片a级大结局| 一区二区日韩伦理片| 亚洲日本久久| 久久夜色精品| 国产亚洲人成网站在线观看| 亚洲一区二区成人| 亚洲无玛一区| 欧美日产在线观看| 亚洲欧洲一区二区在线播放 | 久久岛国电影| 久久激情网站| 国产麻豆成人精品| 亚洲无吗在线| 亚洲综合国产精品| 欧美午夜片欧美片在线观看| 亚洲精选一区| 一本高清dvd不卡在线观看| 欧美777四色影视在线| 黄色成人在线免费| 亚洲大胆在线| 久热精品视频在线观看一区| 国产一区二区三区免费在线观看| 小嫩嫩精品导航| 久久精品一区中文字幕| 国产婷婷成人久久av免费高清| 亚洲综合精品| 欧美中文字幕视频| 国产私拍一区| 久久国产精品网站| 久久综合久久久久88| 在线成人亚洲| 亚洲精品视频在线| 欧美人与性动交α欧美精品济南到 | 亚洲人久久久| 日韩小视频在线观看| 欧美激情第10页| 亚洲精品免费网站| 一区二区三区精品国产| 欧美视频在线不卡| 亚洲一级片在线观看| 欧美一区视频在线| 韩日欧美一区二区| 亚洲国产女人aaa毛片在线| 欧美 日韩 国产一区二区在线视频| 亚洲第一在线综合在线| 99re热这里只有精品免费视频| 欧美美女bb生活片| 日韩亚洲视频在线| 亚洲欧美在线免费观看| 国产日韩欧美在线一区| 亚洲二区三区四区| 欧美成人精品在线播放| 亚洲免费av片| 性视频1819p久久| 国产综合欧美| 亚洲精品视频一区二区三区| 欧美日韩一二三区| 亚洲欧美日本精品| 美女脱光内衣内裤视频久久影院 | 亚洲影视综合| 久久久久久久久久久久久女国产乱| 激情一区二区三区| 99国产麻豆精品| 国产精品久久7| 久久成人久久爱| 欧美日韩国产综合新一区| 亚洲欧美日韩高清| 免费久久精品视频| 一区二区三区欧美日韩| 久久精品二区亚洲w码| 亚洲大胆在线| 亚洲欧美在线磁力| 尤物精品国产第一福利三区| 亚洲视屏一区| 国产日韩综合一区二区性色av| 亚洲国产一区二区精品专区| 欧美日韩国产欧| 欧美在线free| 欧美日本高清| 欧美一区二区三区在线观看视频| 欧美国产日韩精品免费观看| 在线午夜精品| 另类酷文…触手系列精品集v1小说| 日韩午夜高潮| 久久久久一本一区二区青青蜜月| 亚洲毛片在线免费观看| 久久国产欧美精品| 亚洲伦理在线| 久久中文字幕导航| 亚洲影院污污.| 欧美精品三级日韩久久| 亚洲欧美在线另类| 欧美日韩另类视频| 亚洲高清中文字幕| 国产精品夜色7777狼人 | 亚洲女ⅴideoshd黑人| 在线观看国产成人av片| 亚洲欧美日韩一区二区在线| 亚洲国产经典视频| 欧美在线亚洲| 这里只有精品在线播放| 欧美国产一区二区在线观看| 欧美在线观看天堂一区二区三区| 欧美日韩中文字幕综合视频| 亚洲国产日韩欧美在线动漫| 国产精品一区二区三区成人| av成人激情| 1000部精品久久久久久久久| 欧美中文在线免费| 亚洲色在线视频| 欧美日本乱大交xxxxx| 亚洲黄色免费| 国产在线拍偷自揄拍精品|