余俊斌 嚴帥 張會新 劉文怡 趙成城
摘 ?要: 針對飛行設備內(nèi)部各種傳感器的數(shù)據(jù)傳輸方式為有線傳輸現(xiàn)狀,無形中加大了布線安排、體積增大、成本增加以及無法實時獲取數(shù)據(jù)和數(shù)據(jù)質(zhì)量低等問題,設計一種基于CC3200的WiFi數(shù)據(jù)傳輸模塊。該模塊以FPGA作為主控核心單元,并輔以濾波電路、模/數(shù)轉(zhuǎn)換電路,最終通過CC3200將處理好的數(shù)字信號數(shù)據(jù)發(fā)送給控制中心。經(jīng)過試驗,測試結果符合具體預定要求并且性能穩(wěn)定、可靠,沒有出現(xiàn)數(shù)據(jù)丟失的情況,現(xiàn)已成功應用于某航天測試系統(tǒng)中。
關鍵詞: WiFi通信; A/D采集; FIR濾波; FPGA; 航天測試系統(tǒng); 數(shù)據(jù)傳輸模塊
中圖分類號: TN915?34; TN925 ? ? ? ? ? ? ? ? 文獻標識碼: A ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2018)10?0063?04
Abstract: In allusion to the problems such as increase of wiring arrangement, volume and cost, inability to obtain data in real time and low data quality with wire transmission as the data transmission mode of various sensors in flight equipment, a new WiFi data transmission module based on CC3200 is designed. The module takes FPGA as the core unit of main control, is supplemented with the filter circuit, analog?digital conversion circuit, and finally sends the processed digital signal data to the control center by means of CC3200. A test was carried out. The test results show that the system can meet the specific predefined requirements, and has stable and reliable performance without data loss. The system has been successfully applied to an aerospace test system.
Keywords: WiFi communication; AD acquisition; FIR filtering; FPGA; aerospace test system; data transmission module
火箭、導彈等飛行設備在其起飛階段以及空中飛行過程中,乃至最終的著落階段的各項參數(shù)都有十分重要的作用[1]。這些參數(shù)囊括了沖擊、過載、加速度等各個方面,能否準確及時地發(fā)送接收這些參數(shù),對飛行設備起決定性的作用[2]。
目前,飛行裝備中安裝繁多的傳感器,它們同主控單元之間的通信均采用有線的連接方式,并且輸出的模擬量信號直接傳輸給下面單元。其中的電磁干擾等因素嚴重影響了數(shù)據(jù)的質(zhì)量。同時,這種連接方式明顯地增加了設備的體積和重量,從而影響到發(fā)動機選型以及燃料消耗,進而影響成本。因此,基于目前飛行裝備的數(shù)據(jù)傳輸方式,設計一種基于CC3200的WiFi通信模塊來解決這一問題。
飛行設備中各種傳感器提供其檢測部位的各個參數(shù)。這些龐大的數(shù)據(jù)由系統(tǒng)控制中心統(tǒng)一接收并匯總分析,然后對設備進行進一步的操作,同時將這些參數(shù)存儲并發(fā)往地面總指揮中心。
設計中將傳感器模塊產(chǎn)生的0~5 V模擬量電壓先通過濾波電路后又進行A/D轉(zhuǎn)換成為數(shù)字量信號,之后傳送給模塊中的數(shù)字處理單元FPGA,待FPGA對此數(shù)字信號進行進一步濾波、編碼之后,通過FIFO發(fā)送給無線傳輸芯片CC3200,CC3200將這些數(shù)據(jù)轉(zhuǎn)換為無線通信格式并通過載波發(fā)送出去,具體框圖如圖1所示。
2.1 ?濾波及模/數(shù)轉(zhuǎn)換電路設計
目前,傳感器模塊與數(shù)據(jù)采集模塊必定存在一定的距離。所以為了避免傳輸過程中的電磁干擾,并且根據(jù)試驗中選用的三向振動傳感器產(chǎn)生的信號干擾頻率大部分都大于2 000 Hz,所以采用在A/D轉(zhuǎn)換前加入有源二階低通濾波電路。
三向振動傳感器有3路模擬量輸出信號,所以傳輸模塊中選用的ADS8365芯片保留了3路模擬量輸入,其余3路輸入上拉10 kΩ電阻。由于ADS8365內(nèi)部數(shù)字部分和模擬部分完全隔離,所以模擬部分采用5 V,數(shù)字部分采用3.3 V,并且兩者的地也互相隔離,以免模擬信號和數(shù)字信號互相干擾。通過適當?shù)臑V波電路,能夠使得采集到的信號的噪聲部分有效的消除,提高了信號的質(zhì)量,具體電路如圖2所示。
2.2 ?WiFi通信模塊設計
SimpleLink CC3200是第一款具有內(nèi)置WiFi功能,并集成了高性能 ARM Cortex?M4 內(nèi)核的無線MCU,使用該芯片便可完成無線通信開發(fā)[3?7]。該芯片由微處理器系統(tǒng)、WiFi網(wǎng)絡處理系統(tǒng)、電源管理系統(tǒng)三部分組成[3?7]。WiFi網(wǎng)絡處理系統(tǒng)中有額外的專用的ARM處理器來負責WiFi功能,能夠減少應用ARM處理器和WiFi互聯(lián)協(xié)議的繁瑣。并且系統(tǒng)內(nèi)部有專門的ROM存儲協(xié)議,從而節(jié)省處理器的負擔提高系統(tǒng)的可靠性。
CC3200與FPGA的通信采用并行傳輸,并對FPGA內(nèi)部的異步FIFO直接控制。
2.3 ?數(shù)字信號處理單元電路設計
本設計中采用Xilinx公司Spartan3系列FPGA作為主控芯片,F(xiàn)PGA芯片的優(yōu)點在于其內(nèi)部體系結構和邏輯單元可編程性高,便于開發(fā)人員的使用與設計[3]。FPGA芯片通過一定的時序控制ADS8365芯片,使其以固定的采樣率對模擬信號進行采樣得到數(shù)字信號,并將數(shù)字信號進行FIR濾波處理,然后對信號進行編碼處理。最終FPGA將編碼后的信號進行轉(zhuǎn)換后傳送給CC3200模塊。
3.1 ?ADS8365的時序設計
ADS8365內(nèi)部包含6個獨立的模/數(shù)轉(zhuǎn)換器,它們被分為三對并與器件內(nèi)部寄存器對應[4]。工作時,外部的三個[HOLDX]信號控制著它們的工作,當[HOLDX]置低時(Δt>40 ns),與之對應的模/數(shù)轉(zhuǎn)換器被初始化,同時復位寄存器并重新對外部模擬量輸入信號進行模/數(shù)轉(zhuǎn)換,最后存儲在對應的寄存器之中。模/數(shù)轉(zhuǎn)換器工作時需要16個時鐘周期,數(shù)據(jù)的讀取需要4個時鐘周期,當這兩個工作完成時,ADS8365會將[EOC]引腳拉低半個時鐘周期,與此同時,F(xiàn)PGA芯片將會把[CS]和[RD]引腳置低,便可以讀取到ADS8365并行輸出總線上的數(shù)據(jù)。
3.2 ?CC3200的軟件編寫
CC3200的函數(shù)功能的實現(xiàn)都是采用任務調(diào)用的方式,從而提高了其對外部中斷及WiFi網(wǎng)絡處理子系統(tǒng)的響應速率,具有很好的實時性[5]。其通信方式選擇使用UART模式來實現(xiàn)。
本設計利用CC3200實現(xiàn)無線通信的軟件部分是在CCS6.1.0中編寫的。其整體設計流程如圖3所示。設計中主要完成了待發(fā)送數(shù)據(jù)的解碼校驗與再編碼、WLAN終端模式創(chuàng)建與數(shù)據(jù)發(fā)送、指示燈任務的三個任務的編寫。
數(shù)據(jù)的解碼校驗與再編碼是為了對FPGA內(nèi)部的異步FIFO進行控制,讀取其中的數(shù)據(jù)并進行幀格式分隔和校驗,然后將正確的數(shù)據(jù)存儲。CC3200通過判斷FIFO的空標志來實現(xiàn)對數(shù)據(jù)的讀取,當FIFO非空時,進行數(shù)據(jù)的讀取工作。其中的764 B為有效數(shù)據(jù)部分,其余為幀格式。具體編碼形式如圖4所示。
WLAN終端模式的開啟與數(shù)據(jù)發(fā)送的任務的軟件代碼編寫包括了WiFi子系統(tǒng)初始化、配置、WLAN連接、套接字連接、數(shù)據(jù)傳輸。WiFi子系統(tǒng)的初始化主要是將系統(tǒng)從休眠模式喚醒,并對使用到的變量進行初始化。初始化完成后,啟動SimpleLink,檢測配置芯片的工作模式,若為STA模式,則跳過配置操作,否則進行STA模式配置。然后對CC3200的連接模式設置為AUTO+SmartConfig模式。接著清除各種文件和數(shù)據(jù)、斷開之前的連接、使能DHCP客戶端、失能掃描、設置CC3200的發(fā)射功率最大、設置WLAN模式為電源管理模式、注銷mDNS服務器,最后關斷SL。指示燈任務的主要作用是用來檢測CC3200是否有數(shù)據(jù)的發(fā)送和接收。實時操作系統(tǒng)中每個任務是一個無限的循環(huán),任務的執(zhí)行通過任務調(diào)度器實現(xiàn),并且任務的執(zhí)行時間分配通過任務延時計時單元實現(xiàn),從而保證任何一個任務都能在一定的周期內(nèi)被執(zhí)行到。
試驗驗證的目的是檢測通信過程中是否出現(xiàn)丟數(shù)的現(xiàn)象,采用無線路由器作AP,CC3200作為終端,在實驗室中利用三向振動傳感器作為模擬信號的輸入。圖5為三向振動傳感器的參數(shù)設置界面,在試驗中將對x,y,z三個方向進行振動測試,設置起始振動頻率為20 Hz,截止頻率為2 kHz,加速度起始為1 g,截止為10 g。
WiFi路由器通過網(wǎng)口調(diào)試助手經(jīng)由網(wǎng)口向計算機發(fā)送數(shù)據(jù)。在實際環(huán)境下,20 MB的數(shù)據(jù)的讀取需要4 min 15 s,數(shù)據(jù)傳輸速率為0.078 MB/s。在理論計算中,傳感器通道的采樣率為10 kbit/s,綜合3路工作的情況,每秒應產(chǎn)生60 kB左右的數(shù)據(jù),由于試驗中的數(shù)據(jù)存在幀計數(shù)和標志位等自定義字節(jié)位,綜合下來該數(shù)據(jù)接收速率也滿足理論值。圖6為HexEdit軟件的接收數(shù)據(jù)的軟件視圖以及分析結果。
目前無線傳輸技術已經(jīng)非常成熟,而且各行各業(yè)目前也在不斷地致力于將現(xiàn)有的有線通信模式逐步改進為無線傳輸模式,以節(jié)約成本,并增加了設備的應用靈活性,飛行器系統(tǒng)的設計也逃脫不了這種趨勢。
本文設計的無線數(shù)據(jù)傳輸模塊能夠直接近距離將傳感器輸出的模擬信號轉(zhuǎn)換成數(shù)字信號,并通過WiFi技術無線發(fā)送到控制單元,極大地節(jié)省了飛行系統(tǒng)的空間。同時通過硬件和軟件的濾波設計以及適當?shù)娜蒎e算法,使得最終獲取的信號的質(zhì)量滿足既定要求,現(xiàn)已成功應用于某航天飛行測試項目之中。
[1] 陳小前.飛行器總體優(yōu)化設計理論與應用研究[D].長沙:國防科學技術大學,2001.
CHEN Xiaoqian. Study and application of theories of optimization in the integrated design of flying vehicles [D]. Changsha: National University of Defense Technology, 2001.
[2] 閆安斌.基于WiFi的無線傳感器采集傳輸模塊設計與實現(xiàn)[D].太原:中北大學,2016.
YAN Anbin. The design and implementation of data collection and transmission module of wireless sensor system based on WiFi [D]. Taiyuan: North University of China, 2016.
[3] 林婷.面向WiFi開發(fā)的微控制器CC3200的應用研究[D].蘇州:蘇州大學,2015.
LIN Ting. The research and application of WiFi developing oriented microcontroller CC3200 [D]. Suzhou: Soochow University, 2015.
[4] 張少杰.基于SAM3U的數(shù)據(jù)采集無線傳輸系統(tǒng)的設計與實現(xiàn)[D].太原:中北大學,2012.
ZHANG Shaojie. The design and implementation of data acquisition and wireless transmission system based on CC3200 [D]. Taiyuan: North University of China, 2012.
[5] 李琦,徐陽,梁麗.基于CC3200的氣象數(shù)據(jù)采集與遠程通信系統(tǒng)[J].計算機工程與應用,2017,53(13):235?239.
LI Qi, XU Yang, LIANG Li. Design of data acquisition and communication system of meteorological station based on CC3200 [J]. Computer engineering and applications, 2017, 53(13): 235?239.
[6] 楊海鋼,孫嘉斌,王慰.FPGA器件設計技術發(fā)展綜述[J].電子與信息學報,2010,32(3):714?727.
YANG Haigang, SUN Jiabin, WANG Wei. An overview to FPGA device design technologies [J]. Journal of electronics & information technology, 2010, 32(3): 714?727.
[7] 田志鵬.基于CC3200的遠程監(jiān)視系統(tǒng)設計[D].北京:北方工業(yè)大學,2016.
TIAN Zhipeng. Design of remote monitoring system based on CC3200 [D]. Beijing: North China University of Technology, 2016.
[8] 孫銘,王锏,張耀軍.CC3200和MPU6050的迷你四軸飛行器控制原理[J].單片機與嵌入式系統(tǒng)應用,2016,16(2):40?43.
SUN Ming, WANG Jian, ZHANG Yaojun. Mini four?axis aircraft based on CC3200 and MPU6050 [J]. Microcontrollers & embedded systems, 2016, 16(2): 40?43.
[9] 康偉,路秀芬,詹哲軍.基于ADS8365的高速同步數(shù)據(jù)采集系[J].電腦開發(fā)與應用,2009,22(4):48?51.
KANG Wei, LU Xiufen, ZHAN Zhejun. High?speed synchronous data acquisition system based on the ADS8365 [J]. Computer development & applications, 2009, 22(4): 48?51.
[10] 高天星,趙旭強,馬忠梅.基于CC3200的WiFi無線組網(wǎng)式跌倒檢測系統(tǒng)[J].單片機與嵌入式系統(tǒng)應用,2016,16(1):41?44.
GAO Tianxing, ZHAO Xuqiang, MA Zhongmei. WiFi wireless fall detection system design based on CC3200 [J]. Microcontrollers & embedded systems, 2016, 16(1): 41?44.