999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于LwIP的海洋數(shù)據(jù)采集與傳輸系統(tǒng)*

2012-03-15 07:50:08周巧娣章雪挺盛慶華
電子技術(shù)應(yīng)用 2012年8期
關(guān)鍵詞:系統(tǒng)

王 暉,周巧娣,章雪挺,盛慶華

(杭州電子科技大學(xué) 電子信息學(xué)院,浙江 杭州310018)

以海底觀測(cè)節(jié)點(diǎn)為載體的海洋數(shù)據(jù)采集與傳輸系統(tǒng),可以實(shí)現(xiàn)海平面以下水環(huán)境監(jiān)測(cè)數(shù)據(jù)的實(shí)時(shí)、自動(dòng)獲取,它由各個(gè)傳感器、CPU控制器、數(shù)據(jù)傳輸接口以及水上遠(yuǎn)程監(jiān)測(cè)平臺(tái)組成,可為海洋的探索和監(jiān)測(cè)提供豐富的信息和資料。從我國開始研制海洋數(shù)據(jù)采集與監(jiān)測(cè)系統(tǒng)至今,先后采用了多種數(shù)據(jù)傳輸方式[1],包括RS232、RS485、CAN總線等,各個(gè)傳輸方式各有利弊。RS232支持全雙工通信,雖然是眾多設(shè)備的直接連接渠道,但傳輸速率慢、抗干擾能力差、傳輸距離短;RS485只支持半雙工通信,抗噪聲干擾性好,傳輸距離較RS232遠(yuǎn),但傳輸速率慢;CAN總線只支持半雙工通信,通信距離遠(yuǎn),抗干擾能力強(qiáng),但傳輸速率仍有限制[2]。根據(jù)數(shù)據(jù)采集及傳輸系統(tǒng)對(duì)數(shù)據(jù)傳輸速率的要求,本文利用LwIP作為以太網(wǎng)協(xié)議棧,完成LwIP TCP/IP協(xié)議棧在STM32F207VGT6的移植;考慮到以太網(wǎng)支持全雙工通信,同時(shí)利用以太網(wǎng)中的UDP傳輸方式實(shí)現(xiàn)各類傳感器開啟、采集間隔的控制以及對(duì)采集數(shù)據(jù)的實(shí)時(shí)監(jiān)測(cè),大幅度提高了系統(tǒng)遠(yuǎn)程的可控性及實(shí)時(shí)性。

1 系統(tǒng)工作原理

海洋數(shù)據(jù)采集與傳輸系統(tǒng)的整體結(jié)構(gòu)如圖1所示。其中數(shù)據(jù)采集板是本系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)的主要組成部分,本文主要闡述由傳感器、數(shù)據(jù)采集板和用戶遠(yuǎn)程檢測(cè)終端組成的海洋數(shù)據(jù)采集與傳輸系統(tǒng)。它主要完成對(duì)傳感器采集到的數(shù)據(jù)進(jìn)行存儲(chǔ)和傳輸以及對(duì)傳感器進(jìn)行實(shí)時(shí)監(jiān)測(cè),其目的是提高傳感器水下工作時(shí)長、提供外部電源供電引腳、方便進(jìn)行長期觀測(cè)。

海洋數(shù)據(jù)采集與傳輸系統(tǒng)工作原理為:當(dāng)水下傳感器采集到數(shù)據(jù)時(shí),即刻通過串口傳遞至數(shù)據(jù)采集板,采集板收到數(shù)據(jù)請(qǐng)求信號(hào),立即執(zhí)行SD卡數(shù)據(jù)存儲(chǔ)操作,并通過以太網(wǎng)對(duì)數(shù)據(jù)進(jìn)行接收,在UDP傳輸方式下通過網(wǎng)線將數(shù)據(jù)傳遞至用戶遠(yuǎn)程計(jì)算機(jī)終端。數(shù)據(jù)接收完畢后,水下傳感器繼續(xù)執(zhí)行數(shù)據(jù)的采集。與此同時(shí),遠(yuǎn)程計(jì)算機(jī)終端通過網(wǎng)絡(luò)發(fā)送控制命令,信號(hào)經(jīng)網(wǎng)絡(luò)傳輸至采集板CPU,CPU進(jìn)行命令解析,針對(duì)不同的解析結(jié)果對(duì)傳感器發(fā)送相應(yīng)控制命令,實(shí)現(xiàn)對(duì)傳感器開啟、采集間隔設(shè)置的實(shí)時(shí)控制。

CTD傳感器1~傳感器5是一般的 RS232接口傳感器,而耦合傳感器1、2、3屬于感應(yīng)耦合自容式傳感器,若要連入電路,需要加入調(diào)制解調(diào)模塊。兩種傳感器除了都能以RS232形式輸出數(shù)據(jù)外,也可進(jìn)行自容式存儲(chǔ)。

2 系統(tǒng)硬件

目前,實(shí)現(xiàn)傳感器串行數(shù)據(jù)與以太網(wǎng)數(shù)據(jù)交換的方式主要有3種:(1)使用專用的網(wǎng)絡(luò)處理芯片;(2)使用高檔嵌入式系統(tǒng)處理;(3)使用單片機(jī)和網(wǎng)絡(luò)控制芯片。通過比較可以發(fā)現(xiàn):第(1)種成本較高,且用戶需要重新設(shè)計(jì)接口;第(2)種成本也較高,且如果僅用于通信接口,芯片資源則不能充分利用;相比較而言,通過從成本和使用場合考慮,第(3)種方法成本低,實(shí)現(xiàn)比較容易,并且可以根據(jù)實(shí)際需要進(jìn)行功能擴(kuò)展,只是軟件編程工作量比較大。因此本文采用第三種方法來實(shí)現(xiàn)。

本系統(tǒng)中主控板微處理器選用ST公司基于Cortex-M3內(nèi)核的 32 bit微處理器 STM32F207,其主頻達(dá) 120 MHz,專用于網(wǎng)絡(luò)型嵌入式設(shè)備中。STM32F207具有豐富的串口資源、4路USART通道、2路UART通道。其中USART1和USART6最高波特率支持7.5 Mb/s,其他接口最高支持3.75 Mb/s,不僅支持調(diào)制解調(diào)模塊、傳感器的物理連接,而且對(duì)于數(shù)據(jù)的傳輸也提供了較高的傳輸速率,可以有效縮短傳感器通過串口下載歷史數(shù)據(jù)的時(shí)間。

以太網(wǎng)收發(fā)芯片選用美國National公司的10/100 M以太網(wǎng)物理層收發(fā)芯片DP83848C,該芯片遵循Ethernet II和 IEEE802.3u標(biāo)準(zhǔn), 同時(shí)支持 MII、RMII、SNI三種數(shù)據(jù)連接方式,內(nèi)部還集成了數(shù)據(jù)收發(fā)及濾波功能。在全雙工模式下,可以同時(shí)實(shí)現(xiàn)發(fā)送和接收,理論上最高速度能達(dá)到100 Mb/s,本文對(duì)其配置為 100 Mb/s。采集板簡要框圖如圖2所示。

如圖2所示,微控制器與以太網(wǎng)收發(fā)芯片間采用了RMII模式[3]。這種方式在保持物理層器件現(xiàn)有特性的前提下減少了PHY的連接引腳,在保持IEEE802.3規(guī)范中所有特性的同時(shí),降低了系統(tǒng)設(shè)計(jì)的成本。

3 系統(tǒng)軟件設(shè)計(jì)

本系統(tǒng)軟件設(shè)計(jì)包括兩部分:水下采集板傳感器數(shù)據(jù)采集、傳輸程序和遠(yuǎn)程用戶界面實(shí)時(shí)監(jiān)測(cè)程序。其中,采集板程序均在KEIL Uvision4下編譯、測(cè)試,遠(yuǎn)程監(jiān)測(cè)程序在Visual Studio 2008下編譯、測(cè)試。

3.1 TCP/IP協(xié)議?!狶wIP移植

LwIP是瑞士計(jì)算機(jī)科學(xué)院的Adam Dunkles等人開發(fā)的用于嵌入式系統(tǒng)的開放源碼TCP/IP協(xié)議棧,其在保持TCP主要功能的基礎(chǔ)上減少對(duì)RAM的占用,一般只需要幾十字節(jié)的RAM和40 KB左右的ROM就可運(yùn)行,使LwIP適合在中低端的嵌入式系統(tǒng)中應(yīng)用。

嵌入式TCP/IP協(xié)議棧有兩種普遍的實(shí)現(xiàn)方式:一種是將協(xié)議簇中的每個(gè)協(xié)議作為一個(gè)單獨(dú)的進(jìn)程,并指定進(jìn)程之間的通信點(diǎn)。其優(yōu)點(diǎn)在于結(jié)構(gòu)清晰,代碼易懂,占用系統(tǒng)資源較少,且方便調(diào)試;另一種方式是將協(xié)議棧駐留在操作系統(tǒng)內(nèi)核中,應(yīng)用程序通過系統(tǒng)調(diào)用與協(xié)議棧通信。該方式對(duì)系統(tǒng)RAM、ROM資源占用較高,且不能很好地支持MDK[4]環(huán)境下的斷點(diǎn)調(diào)試。故本文選擇第一種方式。

3.2 STM32F207采集板程序設(shè)計(jì)

主程序設(shè)計(jì)可以分為以下4個(gè)步驟:

(1)系統(tǒng)初始化

上電后,對(duì)系統(tǒng)時(shí)鐘、LwIP協(xié)議棧、RTC實(shí)時(shí)時(shí)鐘、通用I/O口初始化配置。

(2)串口配置和通信

在STM32中,struct USART_InitTypeDef中包括了串口的波特率、字符位數(shù)和奇偶校驗(yàn)等重要屬性,在設(shè)置好該結(jié)構(gòu)體后,調(diào)用串口USART_Init使串口屬性生效。配置好串口后,用USART_DMACmd函數(shù)配置串口以DMA直接內(nèi)存訪問,當(dāng)有傳感器數(shù)據(jù)到達(dá)串口的緩沖區(qū)時(shí),直接存儲(chǔ)至DMA指定緩沖區(qū)中,同時(shí),當(dāng)數(shù)據(jù)到達(dá)最大長度時(shí),執(zhí)行數(shù)據(jù)傳出、SD卡存儲(chǔ)并清空緩沖區(qū)。

(3)遠(yuǎn)程端命令偵聽

在LwIP中,struct udp_pcb包括了以太網(wǎng)數(shù)據(jù)最小傳輸單元的類型、IP地址、子網(wǎng)掩碼、網(wǎng)關(guān)、當(dāng)前端口號(hào)、目的端口號(hào)等重要屬性,在創(chuàng)建好udp_pcb之后,調(diào)用udp API操作函數(shù)udp_bind使指定的udp數(shù)據(jù)單元屬性生效。對(duì)于以太網(wǎng)數(shù)據(jù)的讀寫,設(shè)置以太網(wǎng)讀寫超時(shí)是非常重要的,LwIP_Periodic_Handle函數(shù)提供了這樣的功能。配置好udp后,用udp_recv函數(shù)打開數(shù)據(jù)接收回調(diào)函數(shù),通過回調(diào)函數(shù)體中第二個(gè)參數(shù)創(chuàng)建監(jiān)聽線程。在監(jiān)聽中無線程阻塞,當(dāng)接收到遠(yuǎn)程數(shù)據(jù)報(bào)時(shí),用udp_send寫數(shù)據(jù)。遠(yuǎn)程控制端對(duì)水下采集板的監(jiān)測(cè)是在監(jiān)聽線程udp_echoserver_receive_callback中完成的,接著,將接收到的命令反饋至CPU,CPU根據(jù)不同的命令,決定是否開啟傳感器。

(4)數(shù)據(jù)幀整合

根據(jù)傳感器的不同,將采集到的數(shù)據(jù)幀進(jìn)行排序、整合,按照固定順序整合成特定幀格式,最后通過以太網(wǎng)發(fā)送至遠(yuǎn)程監(jiān)測(cè)端。采集板程序流程如圖3所示。

3.3 遠(yuǎn)程用戶監(jiān)測(cè)程序設(shè)計(jì)

遠(yuǎn)程用戶控制端主要實(shí)現(xiàn)對(duì)水下采集板采集到的數(shù)據(jù)和傳感器工作狀態(tài)的實(shí)時(shí)監(jiān)測(cè)??刂贫送ㄟ^查找IP地址的形式對(duì)連接在用戶局域網(wǎng)內(nèi)的設(shè)備進(jìn)行搜索,經(jīng)過濾,找出設(shè)備,與水下采集板建立虛擬鏈接。然后以UDP面向無連接的通信方式[5]通過以太網(wǎng)接口向采集板發(fā)送傳感器開啟命令。待發(fā)送完畢后,每隔1 s時(shí)間,控制端間歇性地通過以太網(wǎng)向水下系統(tǒng)發(fā)送獲取數(shù)據(jù)命令,用于得到最新的采集數(shù)據(jù)。若采集板中已收到傳感器當(dāng)前采集的數(shù)據(jù),隨即將水下系統(tǒng)中已整合的幀數(shù)據(jù)再次通過以太網(wǎng)傳遞至遠(yuǎn)程控制端。當(dāng)接收到完整幀數(shù)據(jù)后,控制端通過分析之前的數(shù)據(jù)通信協(xié)議,對(duì)數(shù)據(jù)包進(jìn)行解析,將各類傳感器分別采集到的數(shù)據(jù)進(jìn)行分離,顯示在用戶界面中。程序流程如圖4所示。

4 系統(tǒng)調(diào)試

在實(shí)驗(yàn)室環(huán)境下,將采集板的4個(gè)串口分別與調(diào)制解調(diào)器、CTD傳感器1、2、3相連,網(wǎng)口通過網(wǎng)線與電腦的網(wǎng)口相連。采集板程序中設(shè)置 UDP偵聽端口號(hào)為5 000、子網(wǎng)掩碼為 255.255.255.1,網(wǎng)關(guān)為 192.168.1.1,設(shè)置本地IP為192.168.1.103,采集板IP地址為192.168.1.220,這兩個(gè)地址不能與局域網(wǎng)其他地址沖突。系統(tǒng)上電后,在局域網(wǎng)的 PC機(jī)中,通過ping命令,發(fā)送 ICMP請(qǐng)求,客戶端可得到ICMP回應(yīng)。接著打開PC機(jī)上用戶遠(yuǎn)程監(jiān)測(cè)軟件,通過搜索指定目標(biāo)IP,搜索到采集板設(shè)備,此時(shí)采集板與PC機(jī)控制端握手成功后進(jìn)行數(shù)據(jù)通信,按照配置的采集時(shí)間間隔,采集板將數(shù)據(jù)保存在SD中。其中,傳感器每秒采集數(shù)據(jù)長度約500 B。經(jīng)10 min運(yùn)行,通過將監(jiān)測(cè)軟件顯示的以太網(wǎng)幀數(shù)據(jù)與SD卡中的數(shù)據(jù)進(jìn)行比較可知,系統(tǒng)運(yùn)行穩(wěn)定;通過PC機(jī)對(duì)傳感器配置不同采集間隔時(shí),兩種方式下數(shù)據(jù)仍保持一致。

接著同樣以每秒500 B的數(shù)據(jù)量近似作為傳感器采集數(shù)據(jù)長度,系統(tǒng)均運(yùn)行10 min,分別對(duì)采用串口RS232、RS485、CAN總線傳輸方式下傳輸完成時(shí)間、誤碼數(shù)進(jìn)行測(cè)試,得出的結(jié)果如表1所示。

表1 各類傳輸方式下參數(shù)對(duì)比圖

由表1中測(cè)試結(jié)果可知,在相同傳輸條件下,以太網(wǎng)傳輸速度是RS232的14.03倍,是RS485的3.97倍,是CAN總線的6.02倍,說明以太網(wǎng)在傳輸數(shù)據(jù)量較大的情況下,不管在傳輸時(shí)間方面還是在誤碼數(shù)方面都占有優(yōu)勢(shì)。

在實(shí)驗(yàn)室模擬調(diào)試的基礎(chǔ)上,在戶外也進(jìn)行了進(jìn)一步的測(cè)試,選擇水深、湖區(qū)面積適中的杭州千島湖中心湖區(qū)作為野外主要實(shí)測(cè)地點(diǎn)。測(cè)試前主要將浮球、水下數(shù)據(jù)采集系統(tǒng)放入水中,接著進(jìn)行為期一周的實(shí)地觀測(cè)。結(jié)果表明,系統(tǒng)工作正常,達(dá)到了預(yù)期的測(cè)試效果。這里選擇其中某個(gè)時(shí)間點(diǎn)對(duì)監(jiān)測(cè)軟件的顯示界面進(jìn)行截圖,如圖5所示。

本文利用基于LwIP協(xié)議棧的以太網(wǎng)設(shè)計(jì)和實(shí)現(xiàn)了一種海洋數(shù)據(jù)采集與傳輸系統(tǒng)。該采集系統(tǒng)豐富的串口資源使其至多可接入6種不同的傳感器設(shè)備。設(shè)計(jì)時(shí),在保證數(shù)據(jù)傳輸穩(wěn)定的前提下,用以太網(wǎng)傳輸代替?zhèn)鹘y(tǒng)的數(shù)據(jù)傳輸模式,不僅提高了系統(tǒng)實(shí)時(shí)性,而且使采集板和用戶監(jiān)測(cè)端數(shù)據(jù)交互更為快捷。同時(shí),在水下通過加入互聯(lián)設(shè)備,易于水下設(shè)備的擴(kuò)展或組網(wǎng)。系統(tǒng)很好地滿足了海洋數(shù)據(jù)實(shí)時(shí)傳輸?shù)男枨?,達(dá)到了傳輸速率在相同條件下優(yōu)于RS232、RS485、CAN總線傳輸速度的設(shè)計(jì)目標(biāo)。

[1]莊彥霞,孫運(yùn)強(qiáng),姚愛琴.基于CAN總線的實(shí)時(shí)數(shù)據(jù)傳輸系統(tǒng)[J].數(shù)據(jù)采集與處理,2006,12(21):222-225.

[2]陳敬謙,何志偉,劉文澤.RS2232與CAN總線協(xié)議轉(zhuǎn)換單元設(shè)計(jì)[J].電子工程師,2004,30(4):63-66.

[3]宋鑫,郭勇,謝興紅.RMII模式以太網(wǎng)PHY芯片DP83848C的應(yīng)用[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2010(8):50-53.

[4]王永虹,徐煒,郝立平.STM32系列ARM Cortex-M3微控制器原理與實(shí)踐[M].北京:北京航空航天大學(xué)出版社,2008:366-368.

[5]THOMAS G.用于控制TCP/UDP[J].國內(nèi)外機(jī)電一體化技術(shù),2001,6(4):9-11.

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動(dòng)化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 日本人妻丰满熟妇区| 无码电影在线观看| 人妻精品全国免费视频| AV无码无在线观看免费| 亚洲精品无码日韩国产不卡| 国产精品久线在线观看| 91精品国产自产在线观看| AV色爱天堂网| AV无码无在线观看免费| 999精品色在线观看| 男女性午夜福利网站| 久久永久精品免费视频| 亚洲中文字幕无码mv| 72种姿势欧美久久久大黄蕉| 国产三级韩国三级理| 国产成人高清在线精品| 欧美黄色网站在线看| 精品亚洲欧美中文字幕在线看| a级高清毛片| 国产无吗一区二区三区在线欢| 色偷偷av男人的天堂不卡| 午夜a级毛片| 色视频久久| 亚洲男人的天堂视频| 精品伊人久久久香线蕉| 一区二区理伦视频| 国产黄色免费看| 国产精品成人久久| 在线视频精品一区| 欧美成a人片在线观看| 一区二区欧美日韩高清免费| 亚洲va视频| 黄色a一级视频| 人妻一本久道久久综合久久鬼色| 无码日韩精品91超碰| 毛片免费网址| 中文字幕人妻无码系列第三区| 美女潮喷出白浆在线观看视频| 亚洲国产精品无码AV| 久久精品无码一区二区日韩免费| 草草影院国产第一页| 91在线播放免费不卡无毒| 久久不卡国产精品无码| 国产中文一区二区苍井空| 国产原创演绎剧情有字幕的| 久久国产乱子伦视频无卡顿| 日韩第一页在线| 国产美女在线免费观看| 中文字幕丝袜一区二区| 99无码中文字幕视频| 亚洲欧美日韩动漫| yjizz视频最新网站在线| 中国特黄美女一级视频| 激情無極限的亚洲一区免费| 午夜日韩久久影院| 国产一级毛片yw| 色偷偷一区二区三区| 亚洲性色永久网址| 日韩区欧美区| 日韩在线永久免费播放| 日韩黄色在线| 国产精品免费福利久久播放| 伊人激情综合网| 亚洲色图欧美一区| 欧美一级在线| 日韩无码真实干出血视频| 欧美在线黄| 婷婷亚洲最大| 少妇被粗大的猛烈进出免费视频| 国产福利微拍精品一区二区| 国产白浆视频| 欧美一级在线播放| 91九色最新地址| 精品亚洲国产成人AV| 国产乱肥老妇精品视频| 99热这里只有免费国产精品 | 九色在线视频导航91| 亚洲天堂网2014| 一级成人a毛片免费播放| 亚洲国产午夜精华无码福利| 手机成人午夜在线视频| 亚洲有无码中文网|