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

基于GPRS網(wǎng)絡(luò)的船舶數(shù)據(jù)傳輸裝置設(shè)計(jì)

2015-01-04 06:24:26陳永冰
船電技術(shù) 2015年11期
關(guān)鍵詞:指令船舶設(shè)計(jì)

吳 杰,陳永冰,鐘 斌,周 崗

(海軍工程大學(xué)電氣工程學(xué)院,武漢 430033)

0 引言

隨著我國(guó)經(jīng)濟(jì)建設(shè)的飛速發(fā)展,海上運(yùn)輸業(yè)務(wù)量日益擴(kuò)大,船舶航行安全評(píng)估、航行管理等工作中需要掌握實(shí)船航行數(shù)據(jù)。隨著網(wǎng)絡(luò)和通信技術(shù)快速發(fā)展,遠(yuǎn)距離無線數(shù)據(jù)傳輸經(jīng)過多年的開發(fā)與實(shí)際運(yùn)用,已逐步成熟,為在航船舶數(shù)據(jù)無線傳輸提供了方便。

無線數(shù)據(jù)的傳輸有多種方案,比如藍(lán)牙、WiFi、ZigBee等,可以滿足近距離通訊的需要。在航船舶與陸基數(shù)據(jù)服務(wù)器之間距離較遠(yuǎn),GPRS信號(hào)在遠(yuǎn)離海岸時(shí)無法覆蓋,就需要對(duì)無信號(hào)覆蓋海域航行過程中的數(shù)據(jù)進(jìn)行預(yù)先存儲(chǔ)在 SD卡中,在船舶靠岸連接到GPRS網(wǎng)絡(luò)后再對(duì)SD中的航行數(shù)據(jù)進(jìn)行發(fā)送。本文旨在搭建在航船舶數(shù)據(jù)終端和陸基數(shù)據(jù)服務(wù)器中心的數(shù)據(jù)鏈路。

1 船舶數(shù)據(jù)采集傳輸裝置整體方案設(shè)計(jì)

在船舶數(shù)據(jù)終端,采用 STM32控制器為控制核心,SIM900A作為數(shù)據(jù)收發(fā)模塊。GPRS數(shù)據(jù)傳輸是基于TCP/IP協(xié)議之上的,數(shù)據(jù)包在船舶數(shù)據(jù)終端與GPRS服務(wù)器之間,這就意味著所有的數(shù)據(jù)報(bào)文都要基于TCP/IP包。STM32將已存儲(chǔ)在SD卡上的數(shù)據(jù)按服務(wù)器要求通過串口發(fā)送給SIM900A模塊,SIM900A將自動(dòng)把數(shù)據(jù)打包成TCP/IP包,再經(jīng)由GPRS網(wǎng)絡(luò)和Internet在線的陸基服務(wù)器主機(jī)建立通信鏈路并發(fā)送出數(shù)據(jù)。數(shù)據(jù)傳輸?shù)逆溌啡鐖D1所示。

2 船舶數(shù)據(jù)終端硬件設(shè)計(jì)

在硬件設(shè)計(jì)方面主要包括主控電路部分、通信模塊電路和供電電路部分以及相關(guān)接口的設(shè)計(jì)。圖2是硬件結(jié)構(gòu)框圖。

圖1 數(shù)據(jù)傳輸鏈路原理圖

圖2 船舶數(shù)據(jù)終端硬件總體結(jié)構(gòu)框圖

2.1 STM32F107數(shù)據(jù)處理單元

本系統(tǒng)采用32位微控制器STM32F107作為控制核心。該處理器采用 ARM 公司最新的 V7體系架構(gòu)的內(nèi)核 Cortex-M3,它的速度比 ARM7快三分之一,功耗低四分之三,同時(shí)集成了分支預(yù)測(cè),硬件除法,單周期乘法等功能,極大地提升了處理器的數(shù)據(jù)處理能力,同時(shí)采用最新的Thumb-2指令集,有效地降低了代碼的密度,提升了程序的執(zhí)行效率。STM32F107有豐富的片上資源和I/O接口,不但簡(jiǎn)化了系統(tǒng)硬件,且STM32不同型號(hào)產(chǎn)品在引腳和軟件上具有完美的兼容性。其最高運(yùn)行速度可達(dá)72 MHz,具有256k字節(jié)的Flash、64 k字節(jié)的RAM,大大提高了程序運(yùn)行速度。豐富的I/O接口使其通信能力增加,包括3個(gè)SPI接口、5個(gè)USART串行接口、2個(gè)I2S口、2個(gè)I2C口。另外STM32F107擁有全速USB(OTG)接口、兩路 CAN接口,以及以太網(wǎng)10/100MAC模塊。

在船舶數(shù)據(jù)終端的硬件電路中以STM32F107為核心處理器,在其外圍除了布設(shè)電源、晶振和復(fù)位等基本電路外,根據(jù)船舶的實(shí)際情況,又添加了下列相關(guān)電路。

1)串口電路。傳感器等采集系統(tǒng)收集來的參數(shù)數(shù)據(jù)是經(jīng)過串口總線與微處理器通信的,本系統(tǒng)采用了工業(yè)中廣泛使用的RS485半雙工異步通信總線,在串口電路設(shè)計(jì)中采用了隔離型RS485收發(fā)器,保證串口通訊的穩(wěn)定和數(shù)據(jù)收發(fā)的準(zhǔn)確。

2)加速度計(jì)電路。船舶在海上的航行狀況和航行的海況有很大的關(guān)聯(lián),而船舶的縱橫搖角度是反映船舶航行穩(wěn)定性的重要數(shù)據(jù),而這些數(shù)據(jù)不容易直接獲取,這里設(shè)計(jì)通過一個(gè)加速度計(jì)電路來采集,為了采集加速度參數(shù)數(shù)據(jù),本系統(tǒng)設(shè)計(jì)中使用了 ADXL345芯片。這是一款體積小,功耗低的可以測(cè)量x,y,z三個(gè)方向的加速度計(jì),能夠測(cè)量-16g~+16g范圍的加速度。能夠測(cè)量?jī)A斜中的靜態(tài)重力加速度和運(yùn)動(dòng)中的動(dòng)態(tài)加速度,且測(cè)量精度能達(dá)到分級(jí)別。再根據(jù)傾角和加速度的關(guān)系換算出縱橫搖角度的量。

3)存儲(chǔ)電路。GPRS網(wǎng)絡(luò)無法覆蓋遠(yuǎn)離海岸的區(qū)域,為了解決無網(wǎng)絡(luò)情況下的數(shù)據(jù)處理問題防止數(shù)據(jù)的丟失,這里采用在船舶數(shù)據(jù)終端加上一個(gè)數(shù)據(jù)存儲(chǔ)電路,將航行參數(shù)數(shù)據(jù)保存記錄在存儲(chǔ)設(shè)備中。在船舶返港和靠海岸時(shí),GPRS網(wǎng)絡(luò)可以連通的情況下,再將之前存儲(chǔ)的數(shù)據(jù)通過數(shù)據(jù)鏈路發(fā)送到陸基服務(wù)器中心。

圖3 主控芯片及外圍電路框圖

2.2 通信模塊設(shè)計(jì)

本設(shè)計(jì)采用GPRS作為遠(yuǎn)程數(shù)據(jù)傳輸網(wǎng)絡(luò),實(shí)現(xiàn)在航船舶航行數(shù)據(jù)的發(fā)送。選取SIMCOM公司的緊湊型產(chǎn)品 SIM900模塊作為本課題的GPRS控制模塊。它不僅是一款兩頻段GSM/GPRS無線模塊,而且內(nèi)部具有 TCP/IP協(xié)議,可以將數(shù)據(jù)通過IP協(xié)議的格式發(fā)送到網(wǎng)絡(luò)。不僅縮短了軟件開發(fā)周期,而且減少了軟件設(shè)計(jì)的繁瑣。

SIM900A采用工業(yè)標(biāo)準(zhǔn)接口,工作頻率為GSM/GPRS850/900/1800/1900 MHz,可以低功耗實(shí)現(xiàn)語音、SMS、數(shù)據(jù)和傳真信息的傳輸。SIM900A模塊的原理圖如下:

圖4 SIM900A 模塊電路

SIM900A模塊與STM32是通過USART連接的,實(shí)現(xiàn)數(shù)據(jù)的交換和通信,硬件設(shè)計(jì)也較簡(jiǎn)單。SIM900A模塊與STM32對(duì)應(yīng)的連接端口是RXD與USART2_TXD,TXD與USART2_RXD,用以實(shí)現(xiàn)數(shù)據(jù)傳輸。其中SIM900上的引腳10 RXD口是用于接收STM32傳來的數(shù)據(jù),最終數(shù)據(jù)通過SIM900A外接的天線發(fā)送出去到服務(wù)器,引腳9 TXD口是用于向STM32發(fā)送數(shù)據(jù)。

圖5 SIM900A與STM32控制器連接示意圖

2.3 供電電路設(shè)計(jì)

在主電路中,主控芯片 STM32F107的工作電壓為3.3 V,通信芯片SIM900 A的工作電壓為4 V,為了使模塊各個(gè)部分正常運(yùn)行,必須對(duì)兩者分別進(jìn)行供電,設(shè)計(jì)的電源供電電路如下:

圖6 電源電路

3 船舶數(shù)據(jù)發(fā)送鏈路的搭建

要實(shí)現(xiàn)在航船舶航行數(shù)據(jù)的發(fā)送,就要求在終端和服務(wù)器之間建立一個(gè)穩(wěn)定可靠的數(shù)據(jù)通道。考慮到應(yīng)用規(guī)模適中,而且數(shù)據(jù)的實(shí)時(shí)性要求不高,選擇采用無固定公網(wǎng)IP主機(jī)配合最新版內(nèi)網(wǎng)穿透的花生殼域名解析軟件來搭建數(shù)據(jù)鏈路,將處于網(wǎng)絡(luò)覆蓋中的船舶上的航行數(shù)據(jù)按要求傳輸?shù)疥懟?wù)器上。

經(jīng)過多方案測(cè)試,這種數(shù)據(jù)鏈路的搭建方式還可以用于無線設(shè)備上網(wǎng)的電腦服務(wù)器上,由于移動(dòng)GPRS網(wǎng)絡(luò)可看作成一個(gè)巨大的內(nèi)網(wǎng),而最新的花生殼內(nèi)網(wǎng)版經(jīng)過測(cè)試可以穿透這個(gè)移動(dòng)無線網(wǎng)絡(luò),而后再與 Internet在線的服務(wù)器進(jìn)行通信和數(shù)據(jù)的傳輸。

圖7 花生殼域名服務(wù)軟件

通過域名的方式來連接服務(wù)器,首先需要有一個(gè)固定域名,比較后選用花生殼這款軟件。在花生殼網(wǎng)站上注冊(cè)一個(gè)個(gè)人賬號(hào),會(huì)免費(fèi)獲得一個(gè)域名。在經(jīng)過注冊(cè)登陸后,獲得了一個(gè)免費(fèi)域名為:ctxc0805.xicp.net。圖7是花生殼域名服務(wù)軟件的界面,可以看到陸基數(shù)據(jù)服務(wù)器電腦的內(nèi)網(wǎng)IP和一個(gè)固定的域名以及相應(yīng)的端口號(hào)。下面我們將用這個(gè)域名來進(jìn)行實(shí)驗(yàn)測(cè)試。

3.1 連接的建立與關(guān)閉

微處理器STM32對(duì)通信模塊SIM900A的控制是通過AT指令來實(shí)現(xiàn)的。AT指令是通信模塊識(shí)別控制指令,其基本格式為:AT+命令字符及相關(guān)設(shè)置參數(shù),模塊識(shí)讀后返回相應(yīng)的參數(shù)和信息。在本設(shè)計(jì)中各模塊上電之后,STM32控制器通過USART2串口向SIM900A模塊發(fā)送預(yù)先在程序中編入的AT指令,執(zhí)行模塊的初始化、波特率設(shè)置、數(shù)據(jù)格式設(shè)置和配置連接的相關(guān)參數(shù)。具體相關(guān)AT指令如下:

1)AT+CPIN?,該指令用于查詢SIM卡的狀態(tài),主要是 PIN 碼,如果該指令返回:+CPIN:READY,則表明 SIM卡狀態(tài)正常,返回其他值,則有可能是無SIM卡或者 SIM卡不可用。

2)AT+CIPMUX=0,這條命令是用來設(shè)置SIM900A模塊工作在單鏈接方式的,本文中船舶數(shù)據(jù)終端是和服務(wù)器一對(duì)一連接的,故設(shè)置單鏈接模式。

3)AT+CIPMODE=0,這條命令是用來選擇TCP/IP應(yīng)用模式的,如果參數(shù)為0,那么以非透明的方式來應(yīng)用,如果參數(shù)為 1,那么以透明方式來應(yīng)用。本文這里是以非透明的方式來用。

4)AT+IPR="9600",設(shè)置數(shù)據(jù)通信波特率為9600。

5)AT+CGCLASS="B",設(shè)置移動(dòng)臺(tái)類別為B,即模塊支持包交換和電路交換模式,但不能同時(shí)支持。

6)AT+CGDCONT=1,"IP","CMNET",設(shè)置PDP上下文標(biāo)志為 1,采用互聯(lián)網(wǎng)協(xié)議(IP),接入點(diǎn)為"CMNET"。

7)AT+CLPORT="TCP","1201",即設(shè)置TCP連接的本地端口號(hào)為1201。

8)AT+CIPSTART="TCP","ctxc0805.xicp.net","57425"通過申請(qǐng)的固定域名連接服務(wù)器,連接成功后SIM900A返回"CONNECT OK"。此時(shí)船舶數(shù)據(jù)終端就已經(jīng)成功連接到指定的域名為"ctxc0805.xicp.net"的 TCP服務(wù)器也就是陸基的數(shù)據(jù)服務(wù)器電腦,接入的端口號(hào) 57425。這些相關(guān)的AT指令操作都是軟件運(yùn)行完成的:

sim900a_send_cmd("AT+CIPCLOSE=1","CL OSE OK",100);//關(guān)閉連接。

sim900a_send_cmd("AT+CIPSHUT","SHUT OK",100);//關(guān)閉移動(dòng)場(chǎng)景。

if(sim900a_send_cmd("AT+CGCLASS="B"","OK",1000))return1;//設(shè)置移動(dòng)臺(tái)類別為B。

if(sim900a_send_cmd("AT+CGDCONT=1,"I P","CMNET"","OK",1000))return 2;

if(sim900a_send_cmd("AT+CGATT=1","OK",500))return 3;//附著GPRS服務(wù)。

if(sim900a_send_cmd("AT+CIPCSGP=1,"C MNET"","OK",500))return 4;//設(shè)置GPRS連接模式。

為了更加直觀描述 STM32對(duì)通信模塊SIM900A的控制流程和鏈路的建立過程,這里使用串口助手來模擬數(shù)據(jù)鏈路的連接過程和數(shù)據(jù)的發(fā)送情況。完成上述相關(guān)指令的串口發(fā)送后,向TCP SERVER發(fā)送數(shù)據(jù)“Test DATA”,在串口調(diào)試工具發(fā)送如下指令:AT+CIPSEND返回符號(hào)">"在發(fā)送框內(nèi)輸入“Test DATA”手動(dòng)發(fā)送,在手動(dòng)發(fā)送“TEST DATA”后,以十六進(jìn)制發(fā)送1A結(jié)束,返回SEND OK。此時(shí)已經(jīng)把測(cè)試的數(shù)據(jù)“Test DATA”發(fā)送出去,可以在數(shù)據(jù)服務(wù)器上的網(wǎng)絡(luò)調(diào)試助手上看到從通信模塊 SIM900A發(fā)來的數(shù)據(jù)“Test DATA”。整個(gè)運(yùn)行流程及測(cè)試結(jié)果如下圖所示。

若要關(guān)閉已經(jīng)連接的數(shù)據(jù)通道,發(fā)送指令A(yù)T+CIPCLOSE,用于關(guān)閉TCP/UDP連接。發(fā)送:AT+CIPCLOSE=1,即可快速關(guān)閉當(dāng)前TCP/UDP連接。

3.2 斷線重連的處理

船舶的航行環(huán)境多變無疑會(huì)對(duì)數(shù)據(jù)鏈路的狀態(tài)帶來影響,GPRS網(wǎng)絡(luò)狀態(tài)的差異會(huì)在數(shù)據(jù)鏈路上產(chǎn)生掉線和重連的情形。TCP鏈接的建立涉及到的 AT命令 AT+CIPSTART,該指令有兩個(gè)返回值,分別是模塊的IP地址和端口號(hào)。首先將AT+CIPSTART指令返回的當(dāng)前模塊的IP地址和端口號(hào)存放到一個(gè)Buf中,然后將這個(gè)Buf寫入到串口 2中,如果之后能夠讀取到返回值“CONNECT OK”,就表示TCP鏈接已經(jīng)建立好。

TCP鏈接的關(guān)閉涉及到的 AT命令是AT+CIPCLOSE,該指令沒有返回值,可以直接將該指令寫到串口 2中,如果檢測(cè)到“CLOSE OK”,就表示TCP鏈接已經(jīng)被關(guān)閉。STM32在檢測(cè)Buf的內(nèi)容可以判斷TCP連接是否已經(jīng)建立或者是服務(wù)器控制模塊下線。

若意外掉線的情況下,就需要模塊自動(dòng)重連,重連需要用到DCD引腳,當(dāng)TCP連接建立之后,DCD引腳電平就會(huì)由高電平變?yōu)榈碗娖剑訢CD引腳的電平狀態(tài)可以用于指示 TCP的連接狀況。在程序中,設(shè)置時(shí)鐘在上升沿檢測(cè) DCD引腳的狀態(tài)值,當(dāng)該引腳的電平值由高電平變?yōu)榈碗娖綍r(shí),就表示模塊已經(jīng)掉線,然后模塊就開始重新登陸,重新搭建數(shù)據(jù)鏈路。

圖8 數(shù)據(jù)鏈路發(fā)送數(shù)據(jù)測(cè)試

4 結(jié)束語

本設(shè)計(jì)結(jié)合ARM芯片STM32F107、通信模塊SIM900A以及域名服務(wù)軟件花生殼,設(shè)計(jì)了一個(gè)便于遠(yuǎn)航船舶數(shù)據(jù)采集的通信鏈路。考慮了硬件和相關(guān)網(wǎng)絡(luò)服務(wù)的成本,解決了便攜式電腦的在無線上網(wǎng)環(huán)境下無固定IP作為服務(wù)器的問題。實(shí)驗(yàn)結(jié)果表明,整個(gè)數(shù)據(jù)鏈路通信狀況良好,能滿足測(cè)試數(shù)據(jù)的發(fā)送。鏈路系統(tǒng)穩(wěn)定可靠且功耗較低,運(yùn)行成本低廉,對(duì)方便快捷采集在航船舶相關(guān)數(shù)據(jù)起了促進(jìn)作用。

[1]金子瑜,張聲傳,房茂金,等.智能家居系統(tǒng)研究與實(shí)現(xiàn)[J].自動(dòng)化與儀表,2011,26(9):47-50.

[2]陳學(xué)泉,關(guān)宇東.嵌入式 TCP/IP協(xié)議單片機(jī)技術(shù)在網(wǎng)絡(luò)通信中的應(yīng)用.電子技術(shù)應(yīng)用,2002,(8):48-49.

[3]李濤,馬殷元,楊東,等.基于STM32的GPRS遠(yuǎn)程監(jiān)測(cè)終端設(shè)計(jì)[J].電子世界,2012,6:126-127.

[4]徐志,何明華,林武,等.一類基于軟件載波的學(xué)習(xí)型遙控器的設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009,(2):36-38.

[5]李斌,高恭嫻.學(xué)習(xí)型紅外遙控器的設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2010,(1): 13-15.

[6]尹東至.基于 GSM/GPS的汽車防盜系統(tǒng)設(shè)計(jì)的[D].武漢:武漢理工大學(xué),2007.

[7]劉曉杰.汽車 GPRS防盜報(bào)警系統(tǒng)的研究與設(shè)計(jì)[D].大連:大連理工大學(xué),2010.

[8]王建偉.基于ARM與GPRS的智能控制系統(tǒng)的研究[J].儀表技術(shù),2008,(7):45-47.

猜你喜歡
指令船舶設(shè)計(jì)
聽我指令:大催眠術(shù)
計(jì)算流體力學(xué)在船舶操縱運(yùn)動(dòng)仿真中的應(yīng)用
《船舶》2022 年度征訂啟事
船舶(2021年4期)2021-09-07 17:32:22
船舶!請(qǐng)加速
ARINC661顯控指令快速驗(yàn)證方法
LED照明產(chǎn)品歐盟ErP指令要求解讀
瞞天過海——仿生設(shè)計(jì)萌到家
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
坐標(biāo)系旋轉(zhuǎn)指令數(shù)控編程應(yīng)用
主站蜘蛛池模板: 日韩欧美国产精品| 国产成人高清在线精品| 亚洲视频免费播放| av天堂最新版在线| 亚洲乱强伦| 综合久久五月天| 久久成人免费| 国产国产人在线成免费视频狼人色| 国产女人综合久久精品视| 免费人成在线观看视频色| 免费国产一级 片内射老| 亚洲欧洲日产国产无码AV| 欧美日韩理论| 国产丝袜无码精品| 国产性生大片免费观看性欧美| 热久久综合这里只有精品电影| 国产精品入口麻豆| 一本色道久久88综合日韩精品| 亚洲国产精品无码久久一线| 精品人妻一区二区三区蜜桃AⅤ| 制服丝袜在线视频香蕉| 91视频首页| 中文毛片无遮挡播放免费| 精品一区二区三区自慰喷水| 亚洲一道AV无码午夜福利| 女人18一级毛片免费观看| 亚洲精品桃花岛av在线| 亚洲综合国产一区二区三区| 激情无码字幕综合| 日韩欧美高清视频| 日韩免费毛片视频| 国产人碰人摸人爱免费视频| 欧美一级黄色影院| 欧美精品亚洲日韩a| WWW丫丫国产成人精品| 99久久国产综合精品女同| 国产欧美日韩va另类在线播放| 国产精品丝袜在线| 久久精品亚洲热综合一区二区| 亚洲床戏一区| 亚洲伦理一区二区| 国产成人亚洲精品色欲AV| 性激烈欧美三级在线播放| 久久精品一卡日本电影| 国产成人综合日韩精品无码不卡| 思思99热精品在线| 特级毛片8级毛片免费观看| 丁香六月激情综合| 免费无码AV片在线观看中文| 欧美视频免费一区二区三区| 国产迷奸在线看| 欧美国产日韩在线观看| 亚洲中文字幕97久久精品少妇| 22sihu国产精品视频影视资讯| www精品久久| 国产精品午夜福利麻豆| av在线手机播放| 久久免费成人| 黄色片中文字幕| 在线观看国产网址你懂的| 白浆免费视频国产精品视频 | 在线观看亚洲精品福利片| 国产午夜精品一区二区三| 亚洲精品制服丝袜二区| 久久国产黑丝袜视频| www.91在线播放| 欧美一级黄色影院| 青青草原国产av福利网站| 熟妇丰满人妻| 久青草网站| 国产哺乳奶水91在线播放| 亚洲天堂2014| 欧美劲爆第一页| 亚洲天堂777| 国产在线第二页| 国产久草视频| 国产精品女人呻吟在线观看| 亚洲无线国产观看| 精品无码专区亚洲| 在线亚洲精品福利网址导航| 亚洲第一成年人网站| 成人精品视频一区二区在线|