• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種基于移動網(wǎng)絡(luò)多功能航標(biāo)采集系統(tǒng)遠(yuǎn)程更新的實現(xiàn)

    2021-05-06 01:08:30張義欣吳昊黃加順天津海事局
    珠江水運 2021年7期
    關(guān)鍵詞:航標(biāo)數(shù)據(jù)包代碼

    ◎ 張義欣 吳昊 黃加順 天津海事局

    李棟 天津天元??萍奸_發(fā)有限公司

    1.引言

    港域環(huán)境監(jiān)測系統(tǒng)是一個建于港口,用于監(jiān)測港域海洋環(huán)境素(如水溫、潮流、流向、水位、風(fēng)力、風(fēng)向等),并為船舶進(jìn)出港、離靠泊提供安全保障的監(jiān)測服務(wù)網(wǎng)絡(luò)。其核心是及時將海洋環(huán)境要素觀測值予以傳輸和顯示。系統(tǒng)的使用更好地輔助海事管理人員進(jìn)行通航環(huán)境的監(jiān)測、日常船舶通行的管理以及水上交通安全事故的應(yīng)急處置工作,進(jìn)一步提升天津海事局船舶交通管理能力,并進(jìn)一步促進(jìn)提升天津海事局其海事業(yè)務(wù)信息化水平。

    多功能航標(biāo)作為觀測設(shè)備載體,航標(biāo)數(shù)據(jù)采集系統(tǒng)更是多功能航標(biāo)的核心。其通信手段可以采用移動網(wǎng)絡(luò)(移動、電信、聯(lián)通三大運營商)、北斗衛(wèi)星導(dǎo)航系統(tǒng)(短報文功能)、海事衛(wèi)星、甚高頻VHF(Very high frequency)等。本文介紹一種基于移動網(wǎng)絡(luò)通信的多功能航標(biāo)采集系統(tǒng)遠(yuǎn)程更新的實現(xiàn)。

    圖1 STM32 flash分配布局圖

    近年來隨著移動網(wǎng)絡(luò)的大力建設(shè),擴大了近海移動網(wǎng)絡(luò)覆蓋區(qū)域,也為多功能航標(biāo)的大規(guī)模布放提供了通信支撐,加速推進(jìn)了多功能航標(biāo)的發(fā)展。移動網(wǎng)絡(luò)作為多功能航標(biāo)數(shù)據(jù)交換的媒介已廣泛使用。依托移動網(wǎng)絡(luò)對多功能航標(biāo)采集系統(tǒng)功能更新升級也成為一種手段,使用無線方式升級可以節(jié)省大量的人力、物力和財力。

    由于移動網(wǎng)絡(luò)信號作用距離有限,并且受天氣、風(fēng)向等環(huán)境因素影響嚴(yán)重,大多數(shù)海上多功能航標(biāo)信號不夠穩(wěn)定,通信丟包情況嚴(yán)重,所以需要借助應(yīng)用內(nèi)編程、分包傳輸與中斷續(xù)傳等方式保證多功能航標(biāo)采集系統(tǒng)遠(yuǎn)程更新的可靠性和成功率。

    2.關(guān)鍵技術(shù)

    2.1 應(yīng)用內(nèi)編程(IAP)

    應(yīng)用內(nèi)編程(IAP In Application Programming)即應(yīng)用內(nèi)編程,是用戶自己的程序在運行過程中對User Flash的部分區(qū)域進(jìn)行燒寫,目的是為了在產(chǎn)品發(fā)布后可以方便地通過預(yù)留的通信口對產(chǎn)品中的固件程序進(jìn)行更新升級。通常在實現(xiàn)IAP功能時,即用戶程序在運行過程中進(jìn)行自身程序的更新操作,需要在設(shè)計程序時編寫兩個部分的代碼,第一個部分的程序不執(zhí)行正常的功能操作,只是通過某種通信管道(如USB、USART)接收程序或數(shù)據(jù),用來執(zhí)行對第二部分代碼的更新操作,第二個部分的代碼才是真正的功能代碼。這兩部分代碼都同時燒錄在User Flash中,當(dāng)芯片上電后,第一部分代碼開始運行,檢查是否需要對第二部分代碼進(jìn)行更新,如果需要更新就直接運行第二部分代碼,如果需要更新,先執(zhí)行更新操作,等更新完成后執(zhí)行第二部分代碼。

    圖2 更新流程圖

    本文的IAP功能的實現(xiàn),使用基于Arm Coretex-M3架構(gòu)的STM32F10x系列芯片。STM32復(fù)位后,從0x08000004地址取出復(fù)位中斷向量的地址,并跳轉(zhuǎn)到復(fù)位中斷服務(wù)程序,在運行完復(fù)位中斷服務(wù)程序之后跳轉(zhuǎn)到IAP的main函數(shù)。在執(zhí)行完IAP以后跳轉(zhuǎn)至新寫入程序的復(fù)位向量表,取出新程序的復(fù)位中斷向量的地址,并跳轉(zhuǎn)執(zhí)行新程序的復(fù)位中斷服務(wù)程序,隨后跳轉(zhuǎn)至新程序的main函數(shù)。

    2.2 分包傳輸與中斷續(xù)傳

    盡管在陸地上移動網(wǎng)絡(luò)覆蓋范圍很廣,但在近海很多區(qū)域移動網(wǎng)絡(luò)信號強度有限,尤其是部分區(qū)域信號非常弱并且不穩(wěn)定,網(wǎng)絡(luò)連接時斷時續(xù),這對遠(yuǎn)程更新的實現(xiàn)提出了不小的挑戰(zhàn)。本文提出分包傳輸和記錄中斷續(xù)傳的方式,用來提高傳輸?shù)姆€(wěn)定性和可靠性。

    表1 數(shù)據(jù)幀格式

    表2 請求更新的消息結(jié)構(gòu)

    表3 更新時的消息結(jié)構(gòu)

    表4 消息頭格式

    3.實現(xiàn)方式

    3.1 更新流程

    整個數(shù)據(jù)傳輸過程為應(yīng)答-響應(yīng)模式,啟動更新升級模式后,根據(jù)本地保存的已更新的數(shù)據(jù)包,請求遠(yuǎn)程服務(wù)器未更新的數(shù)據(jù)包,然后進(jìn)行校驗,如果校驗成功就保存數(shù)據(jù)包,直到所有數(shù)據(jù)包更新完畢。其中,每次應(yīng)答都需要有超時控制,流程見下圖。

    3.2 數(shù)據(jù)幀格式定義

    所有傳輸?shù)挠行?shù)據(jù)均是數(shù)據(jù)幀中的載荷數(shù)據(jù),數(shù)據(jù)幀包括數(shù)據(jù)長度、CRC16校驗碼、payload數(shù)據(jù)和幀分隔符四部分,具體內(nèi)容和所占字節(jié)見表1。

    請求更新的消息結(jié)構(gòu)和更新時的數(shù)據(jù)消息結(jié)構(gòu)兩類不同的數(shù)據(jù)類型根據(jù)消息類型來區(qū)分。見表2 和表3。

    更新的數(shù)據(jù)包采用CRC64校驗,保證數(shù)據(jù)的可靠性。請求更新的消息結(jié)構(gòu)和更新時的數(shù)據(jù)消息結(jié)構(gòu)的消息頭格式見表4。

    4.結(jié)語

    本文的提出的一種基于移動網(wǎng)絡(luò)多功能航標(biāo)采集系統(tǒng)遠(yuǎn)程更新的實現(xiàn)方案,在實際使用中的一次更新成功率很高,還未出現(xiàn)過多次更新不成功的情況。但有一種情形需考慮,因更新時,每成功接收一包數(shù)據(jù),更新一次flash中的數(shù)據(jù),這個過程必須持續(xù)結(jié)束才可以。如果網(wǎng)絡(luò)信號長時間不穩(wěn)定,就會導(dǎo)致正常業(yè)務(wù)功能長時間無法工作。為解決此問題,可以考慮將flash中的用戶數(shù)據(jù)區(qū)域分為兩部分,一部分為更新下載的數(shù)據(jù)區(qū)域,另一部分為原來的用戶數(shù)據(jù)在區(qū)域,只有在全部下載完畢后,才跳轉(zhuǎn)到更新后的區(qū)域,保證如果網(wǎng)絡(luò)長時間不穩(wěn)定,可以切換回原先的業(yè)務(wù)流程,擇機再繼續(xù)更新,這樣不會長時間中斷正常的業(yè)務(wù)功能。雖然實際使用中還未遇見過此類極端的情況,但可以作為今后優(yōu)化完善的方向。

    猜你喜歡
    航標(biāo)數(shù)據(jù)包代碼
    航標(biāo)工
    工友(2023年4期)2023-04-21 08:02:52
    IALA航標(biāo)工作船員培訓(xùn)示范課程研究
    珠江水運(2021年20期)2021-12-09 07:17:54
    SmartSniff
    創(chuàng)世代碼
    動漫星空(2018年11期)2018-10-26 02:24:02
    創(chuàng)世代碼
    動漫星空(2018年2期)2018-10-26 02:11:00
    創(chuàng)世代碼
    動漫星空(2018年9期)2018-10-26 01:16:48
    創(chuàng)世代碼
    動漫星空(2018年5期)2018-10-26 01:15:02
    基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實現(xiàn)
    虛擬航標(biāo)的作用與應(yīng)用前景
    世界海運(2014年5期)2014-03-06 08:27:50
    視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
    沙坪坝区| 麦盖提县| 洛隆县| 克东县| 清丰县| 甘南县| 体育| 讷河市| 通江县| 聊城市| 夏津县| 大关县| 衡南县| 东阿县| 澄迈县| 吉林市| 潼关县| 华安县| 南投县| 昌邑市| 灵山县| 霍山县| 丰顺县| 池州市| 马鞍山市| 工布江达县| 双峰县| 公主岭市| 武邑县| 宣威市| 浮山县| 青田县| 游戏| 鲁甸县| 囊谦县| 商都县| 信宜市| 光泽县| 司法| 水城县| 中江县|