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

    基于北斗系統(tǒng)的電力巡檢應(yīng)用軟件的設(shè)計(jì)與實(shí)現(xiàn)

    2018-06-05 09:35:56
    電氣開關(guān) 2018年5期
    關(guān)鍵詞:手持機(jī)字節(jié)報(bào)文

    (福州大學(xué) 物理與信息工程學(xué)院,福建 福州 350000)

    1 引言

    國家電網(wǎng)公司要求電力巡檢系統(tǒng)滿足“全面性、準(zhǔn)確性、及時(shí)性、可靠性”等需求。由于在我國偏遠(yuǎn)地區(qū),仍存在大量的牧區(qū)和山區(qū),這些地區(qū)通信手段匱乏。針對這類地區(qū)的電力系統(tǒng)及突發(fā)事故的巡檢,目前還缺乏比較有力的手段?,F(xiàn)階段國內(nèi)外使用的電力巡檢方式有人工巡檢、智能機(jī)器人巡檢、無人機(jī)巡檢和直升機(jī)巡檢等,其中后三種巡檢方式由于其成本較大,并且技術(shù)不夠成熟,目前只適用于實(shí)驗(yàn)室研究以及小范圍內(nèi)使用,而人工巡檢方式因其靈活度高、便利性強(qiáng)、成本低等特點(diǎn),使得在巡檢中得到廣泛使用[1]。但這種方式存在工作量巨大,效率降低、故障報(bào)告不及時(shí)等嚴(yán)重問題。

    近年來,隨著我國北斗衛(wèi)星導(dǎo)航系統(tǒng)(Compass Navigation Satellite System)系統(tǒng)的投入使用,利用北斗衛(wèi)星作為通信媒介成為現(xiàn)實(shí)。北斗衛(wèi)星通信系統(tǒng)具有覆蓋范圍大、沒有通信盲區(qū)、安全、可靠等優(yōu)點(diǎn)被廣泛應(yīng)用于海洋、氣象、水利、農(nóng)業(yè)、森林等偏遠(yuǎn)環(huán)境數(shù)據(jù)傳輸?shù)耐ㄐ臶2]。此外,北斗衛(wèi)星導(dǎo)航系統(tǒng)在電力系統(tǒng)中的應(yīng)用也逐漸增加[2-4]。

    本設(shè)計(jì)基于不改變已投運(yùn)設(shè)備和系統(tǒng)的前提下,采用北斗手持機(jī)來實(shí)現(xiàn)無移動(dòng)信號(hào)覆蓋的偏遠(yuǎn)地區(qū)的位置獲取及通信的方法。并且針對該手持機(jī)提出了其應(yīng)用層軟件的設(shè)計(jì)思路及實(shí)現(xiàn)方法,同時(shí)解決北斗衛(wèi)星通信報(bào)文發(fā)送的容量問題。

    2 系統(tǒng)組成

    本設(shè)計(jì)系統(tǒng)組成如圖1所示,主要包括:電力主站、北斗主站前置器、安卓手機(jī)、北斗手持機(jī)等。

    圖1 北斗電力巡檢設(shè)計(jì)

    2.1 北斗手持機(jī)

    北斗手持機(jī)集北斗收發(fā)鏈路的硬件功能模塊于一體,可以實(shí)現(xiàn)北斗衛(wèi)星上行信號(hào)的調(diào)制功能和北斗衛(wèi)星下行信號(hào)的解調(diào)功能;北斗手持機(jī)集成了電池及充放電管理模塊,可實(shí)現(xiàn)戶外獨(dú)立工作,續(xù)航能力達(dá)15小時(shí)。北斗手持機(jī)還集成了藍(lán)牙功能模塊,一方面可以將從衛(wèi)星中獲取當(dāng)前位置信息以及衛(wèi)星信號(hào)強(qiáng)度等有用信息通過藍(lán)牙發(fā)送到手機(jī)端,同時(shí)也能將手機(jī)端的指令和調(diào)度信息下發(fā)到北斗手持機(jī),再通過北斗鏈路將信息傳回主站端的北斗用戶終端設(shè)備。

    2.2 安卓應(yīng)用軟件功能

    本文設(shè)計(jì)實(shí)現(xiàn)的主要功能有:

    (1) 基本功能:離線地圖、藍(lán)牙連接、ic檢測。

    (2) 通信功能:長報(bào)文信息發(fā)送。

    (3) 定位功能:北斗RNSS定位、電子圍欄。

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

    本設(shè)計(jì)的界面功能模塊是基于模型-視圖-控制器( Model-View-Controller,MVC) 的架構(gòu)模式進(jìn)行設(shè)計(jì),如圖2所示。

    為了提高現(xiàn)場的指揮調(diào)度能力,可通過文字及時(shí)上傳異常點(diǎn)信息,交予后臺(tái)服務(wù)器分析處理、統(tǒng)籌規(guī)劃,確保遠(yuǎn)端指揮人員實(shí)時(shí)了解現(xiàn)場狀況及電網(wǎng)受災(zāi)情況。本設(shè)計(jì)調(diào)用了高德地圖API,并建立在安卓平臺(tái)的基礎(chǔ)上設(shè)計(jì)了良好的UI地圖界面,使巡檢人員更加直觀的了解自己所處的地理位置;同時(shí)也完善了電子圍欄巡檢提醒等功能,保障巡檢人員到位情況及安全,提高巡檢終端的智能化程度,實(shí)現(xiàn)整個(gè)巡檢過程的無紙化操作。

    圖2 功能模塊關(guān)系

    3.1 藍(lán)牙建立與連接的軟件實(shí)現(xiàn)

    藍(lán)牙建立于連接的過程是北斗手持機(jī)(server端)設(shè)備一直處于等待狀態(tài),當(dāng)接受到安卓手機(jī)(client端)的連接請求的時(shí)候進(jìn)入連接狀態(tài)。首先通過帶Bluetooth API的Android 手機(jī)調(diào)用BluetoothAdapter.LeScanCallback接口搜索藍(lán)牙設(shè)備,利用callback返回藍(lán)搜索結(jié)果,然后通過調(diào)用BluetoothAdapter的startLeScan()掃描藍(lán)牙設(shè)備,當(dāng)搜索到手持機(jī)對應(yīng)的藍(lán)牙硬件物理地址后,APP端立即停止掃描;藍(lán)牙連接流程圖如圖5所示。

    藍(lán)牙通信的應(yīng)用需需要建立GATT連接。首先調(diào)用BluetoothDevice的connectGatt()函數(shù)。此函數(shù)帶三個(gè)參數(shù):Context、autoConnect(boolean)和BluetoothGattCallback。通信鏈路建立成功后,返回GATT profile的封裝BluetoothGatt對象。通過這個(gè)對象,我們就能在Android設(shè)備上對藍(lán)牙進(jìn)行通信相關(guān)的操作。用BluetoothGattCallback傳遞一些連接狀態(tài)及結(jié)果,當(dāng)兩個(gè)設(shè)備都在連接狀態(tài)時(shí)可以正常通信。

    固定的北斗信息封裝有固定的報(bào)文頭格式,如固定的ic檢測S|icjc通過調(diào)用函數(shù),定義操作類型。藍(lán)牙傳遞數(shù)據(jù)后在判斷數(shù)據(jù)是否接收完整。

    3.2 北斗協(xié)議編解碼在安卓端的實(shí)現(xiàn)

    由于手持機(jī)的藍(lán)牙只透傳北斗基帶結(jié)算出來的數(shù)據(jù),并沒有把數(shù)據(jù)做進(jìn)一步的解析,因此手機(jī)APP端需要完成北斗協(xié)議的編解碼。

    北斗協(xié)議的解碼和完成北斗手持機(jī)通過藍(lán)牙下發(fā)到手機(jī)APP端的數(shù)據(jù)。首先監(jiān)控藍(lán)牙收到的數(shù)據(jù),對數(shù)據(jù)按照協(xié)議頭進(jìn)行分類,所有的北斗協(xié)議,均以‘S|’字符開頭,以回車換行字符‘0x0D’、‘0x0A’結(jié)尾,因此,在軟件開始時(shí)需先建立數(shù)組,每個(gè)數(shù)組中包該包頭、包尾和數(shù)據(jù),并定義兩個(gè)數(shù)組,分別存儲(chǔ)北斗RDSS和北斗RNSS的指令。

    圖3 藍(lán)牙4.0的建立與連接流程圖

    如果是報(bào)文信息,則輸根據(jù)協(xié)議頭中的報(bào)文長度標(biāo)識(shí)位判斷該報(bào)文的長度,然后通過頭協(xié)議和報(bào)文的第一個(gè)字節(jié)是否為‘0xA4’來判斷報(bào)文發(fā)送類型是代碼、漢字或者混發(fā),最后利用相對應(yīng)的碼字組合方式將信息讀取出來顯示在手機(jī)短信中,并調(diào)用手機(jī)的震動(dòng)提醒功能;如果是IC信息,則更新手機(jī)界面的IC信息號(hào),并根據(jù)報(bào)文內(nèi)容讀取序列號(hào)、通播地址、服務(wù)等級(jí)、服務(wù)類型和服務(wù)頻度5個(gè)信息顯示在手機(jī)端APP的界面中,如果是功率信息則直接更新APP的信號(hào)強(qiáng)度的圖標(biāo)。由于北斗二代RNSS是單向傳輸?shù)膮f(xié)議,除非更改波特率等配置信息外,無需額外進(jìn)行操作,因此不需要對RNSS進(jìn)行協(xié)議的編碼。北斗RDSS需要根據(jù)《北斗RDSS用戶機(jī)接口協(xié)議4.0版本》進(jìn)行編碼。編碼內(nèi)容包含IC檢測、功率檢測、時(shí)間輸出、自檢信息、通信申請、定位申請、第一類位置報(bào)告和第二類位置報(bào)告。APP端實(shí)時(shí)檢測用戶的操作,判斷用戶的指令需求,并根據(jù)北斗協(xié)議進(jìn)行封裝后,通過藍(lán)牙發(fā)送給手持機(jī)。

    3.3 拆分包機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)

    由于北斗通信收到用戶卡等級(jí)的限制和影響,3級(jí)用戶卡一次只能發(fā)送78.5字節(jié)的報(bào)文,然后實(shí)際電力巡檢應(yīng)用過程中,往往需要發(fā)送更長的短信息,因此需要對短報(bào)文信息進(jìn)行拆分包和組包處理。拆分包和組包處理,首先需要對北斗報(bào)文中的78.5字節(jié)數(shù)據(jù)字段進(jìn)一步進(jìn)行定義,并規(guī)范好相應(yīng)的功能位,如表1所示。

    表1

    其中,拆分標(biāo)志位用來表征本幀數(shù)據(jù)是否是拆分包數(shù)據(jù),當(dāng)該2字節(jié)內(nèi)容為十六進(jìn)制“AAFF”時(shí),則判斷為拆分包數(shù)據(jù),若為其它數(shù)據(jù),則判斷為不是拆分包數(shù)據(jù),將整個(gè)報(bào)文數(shù)據(jù)端作為短信內(nèi)容輸出;編碼字節(jié)共占1.5字節(jié),含12比特?cái)?shù)據(jù),其中的高比特用于指示該幀是否為最后一幀,第二比特?cái)?shù)據(jù)用于表示是否要求應(yīng)答為發(fā)送方定義,根據(jù)數(shù)據(jù)內(nèi)容的重要性,判斷該包數(shù)據(jù)的重要級(jí)別,當(dāng)重要級(jí)別較高的數(shù)據(jù)傳輸時(shí),則該位置為1,否則置0;低10比特用于指示該幀是一組數(shù)據(jù)中的第幾包數(shù)據(jù),取值范圍0~1023,如表2所示。

    表2

    報(bào)文內(nèi)容用于填充所要傳輸?shù)膱?bào)文信息;校驗(yàn)和為CRC校驗(yàn),共2字節(jié),其中第一字節(jié)用于對拆分標(biāo)志位和編碼字節(jié)進(jìn)行糾錯(cuò),第二字節(jié)用于對接收報(bào)文內(nèi)容進(jìn)行檢錯(cuò),當(dāng)收到報(bào)文出現(xiàn)誤碼時(shí),如果誤碼出現(xiàn)在包頭中,則有可能會(huì)引起整個(gè)數(shù)據(jù)包的解析錯(cuò)誤甚至引起系統(tǒng)故障,因此在協(xié)議中加入了一個(gè)字節(jié)的CRC檢驗(yàn)和,用對包頭的糾錯(cuò)。如果誤碼出現(xiàn)在報(bào)文內(nèi)容中,則通過檢驗(yàn)判斷是否有誤碼,而不對具體的誤碼進(jìn)行糾錯(cuò)處理。

    其中,是否結(jié)束標(biāo)志的優(yōu)先級(jí)高于是否應(yīng)答的優(yōu)先級(jí),當(dāng)接收端手機(jī)APP收到最后一條報(bào)文包時(shí),無論是否應(yīng)答標(biāo)志位是否置1,都需要給發(fā)送方發(fā)送應(yīng)答信號(hào)。

    當(dāng)發(fā)送方收到所有需求接收方應(yīng)答的應(yīng)答標(biāo)志后,需要給接收方發(fā)送結(jié)束通知包,該報(bào)數(shù)據(jù)的編碼字節(jié)中,結(jié)束標(biāo)志和應(yīng)答標(biāo)志均置1,包序號(hào)寫1,報(bào)文內(nèi)容為十六進(jìn)制全1的1字節(jié)數(shù)。

    當(dāng)接收方接收到發(fā)送發(fā)送的具有應(yīng)答需求標(biāo)志的報(bào)文包時(shí),需要給發(fā)送發(fā)做出應(yīng)答反應(yīng),應(yīng)答方式為回復(fù)報(bào)文,內(nèi)容定義含5字節(jié),如表3所示。

    表3

    圖4 長報(bào)文發(fā)送流程圖

    3.4 組包和應(yīng)答機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)

    手機(jī)接收到北斗RDSS的短報(bào)文信息時(shí),首先需要通過協(xié)議頭判斷該報(bào)文是否為拆分包報(bào)文,如果不是,則直接輸出到手機(jī)端顯示;當(dāng)收到拆分包報(bào)文時(shí),APP軟件根據(jù)是否應(yīng)答的標(biāo)志位判斷是否給發(fā)送方進(jìn)行應(yīng)答處理,接著等待下一條報(bào)文的接收,并每收到一幀數(shù)據(jù)后都需要判斷是否為結(jié)束幀,當(dāng)收到結(jié)束幀時(shí),則給發(fā)送方發(fā)送應(yīng)答信號(hào),然后將收到的所有該幀數(shù)據(jù)按照包數(shù)號(hào)的順序進(jìn)行組包,丟棄重復(fù)的報(bào)文包后發(fā)送到手機(jī)頁面顯示。

    選擇重傳和時(shí)序沖突的解決方法:為了確保拆分包后,接收端不會(huì)因?yàn)榕既坏南到y(tǒng)丟包,造成對整條信息的誤讀或誤解,需要建立選擇重傳機(jī)制。當(dāng)發(fā)送端發(fā)送一條需求應(yīng)答的報(bào)文包時(shí),連續(xù)3分鐘內(nèi)未收到接收端發(fā)送的應(yīng)答包,則需要將該報(bào)數(shù)據(jù)再次進(jìn)行發(fā)送,直到所有帶有應(yīng)答需求的報(bào)文包都收到應(yīng)答信息為止,則發(fā)送方向接收端設(shè)備發(fā)送結(jié)束通知包,并等待接收機(jī)對該包數(shù)據(jù)的應(yīng)答。

    因?yàn)閳?bào)文協(xié)議中,只對序號(hào)進(jìn)行編碼,當(dāng)有兩組長報(bào)文同時(shí)需要發(fā)送時(shí),需要第一組數(shù)據(jù)發(fā)送后,收到全部的回執(zhí)并且收到尾包數(shù)據(jù)的應(yīng)答后,才能就行下一包數(shù)據(jù)的拆包和發(fā)送。

    4 軟件系統(tǒng)測試

    接收的信息主要有主站發(fā)來的“通信信息”以及巡檢人員自身的位置信息及ic卡的信息。最終得到以下界面圖6所示:經(jīng)過現(xiàn)場測試,電力巡檢軟件的藍(lán)牙功能、長報(bào)文功能都符合設(shè)計(jì)預(yù)期目標(biāo)。終端長報(bào)文通信界面截圖如圖6所示。

    圖5 長報(bào)文接收流程圖

    圖6 長報(bào)文功能

    5 結(jié)論

    本文提出了采用北斗衛(wèi)星導(dǎo)航系統(tǒng)中的短報(bào)文服務(wù)作為定位和通信手段來解決無移動(dòng)網(wǎng)絡(luò)下電力巡檢的方法,并且結(jié)合高德地圖,實(shí)現(xiàn)位置信息在地圖上的顯示。本設(shè)計(jì)針對電力巡檢人員的實(shí)際需求,融合了藍(lán)牙通信、高德地圖、北斗長報(bào)文等功能與一體,基于安卓系統(tǒng)的APP開發(fā),并通過實(shí)際測試實(shí)現(xiàn)預(yù)期的功能,經(jīng)檢驗(yàn)符合電力巡檢人員的功能需求,達(dá)到設(shè)計(jì)的預(yù)期結(jié)果。

    猜你喜歡
    手持機(jī)字節(jié)報(bào)文
    基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
    汽車電器(2022年9期)2022-11-07 02:16:24
    No.8 字節(jié)跳動(dòng)將推出獨(dú)立出口電商APP
    CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
    淺析反駁類報(bào)文要點(diǎn)
    中國外匯(2019年11期)2019-08-27 02:06:30
    No.10 “字節(jié)跳動(dòng)手機(jī)”要來了?
    基于WIA—PA的無線手持機(jī)設(shè)計(jì)
    簡談MC7字節(jié)碼
    從拿手機(jī) 的姿勢看你是怎樣的人
    中學(xué)生(2017年7期)2017-04-12 01:38:31
    北斗高精度手持機(jī)在航測外業(yè)中的應(yīng)用
    ATS與列車通信報(bào)文分析
    策勒县| 张家川| 修水县| 岳阳市| 吉隆县| 玉龙| 阿勒泰市| 饶河县| 普格县| 西安市| 四平市| 禄劝| 纳雍县| 萨嘎县| 衡阳县| 安化县| 武城县| 荔浦县| 万源市| 雅江县| 伊吾县| 高雄市| 高平市| 深泽县| 绍兴县| 沐川县| 孝昌县| 永城市| 曲阜市| 云龙县| 随州市| 遵义市| 海林市| 托克托县| 崇义县| 集安市| 霍林郭勒市| 泸州市| 寿光市| 曲阳县| 南陵县|