国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

鄉(xiāng)村無(wú)人機(jī)物流監(jiān)控系統(tǒng)設(shè)計(jì)

2019-05-16 09:34:02張玉恒武燕徐延勇河南機(jī)電職業(yè)學(xué)院
無(wú)人機(jī) 2019年2期
關(guān)鍵詞:投遞客戶端架構(gòu)

張玉恒 武燕 徐延勇/河南機(jī)電職業(yè)學(xué)院

無(wú)人機(jī)快遞是提升鄉(xiāng)村物流效率的有效途徑,本文針對(duì)鄉(xiāng)村環(huán)境下的無(wú)人機(jī)物流問(wèn)題,探討了無(wú)人機(jī)物流監(jiān)控系統(tǒng)構(gòu)建問(wèn)題,給出了物流中心服務(wù)器、客戶端及實(shí)時(shí)通信等的設(shè)計(jì)方案,為下一步的系統(tǒng)實(shí)現(xiàn)奠定了基礎(chǔ)。

無(wú)人機(jī)由于其本身速度快、飛行直達(dá)、無(wú)擁堵等特點(diǎn),可以有效提高鄉(xiāng)村物流配送的效率,降低配送成本。因此,推動(dòng)物流無(wú)人機(jī)廣泛應(yīng)用于農(nóng)村電商物流市場(chǎng),對(duì)中國(guó)物流行業(yè)、農(nóng)村電商行業(yè)和民用無(wú)人機(jī)行業(yè)具有重要意義。

無(wú)人機(jī)物流監(jiān)控是無(wú)人機(jī)物流運(yùn)輸中十分重要的環(huán)節(jié),影響著無(wú)人機(jī)飛行的安全和貨物投遞的時(shí)效性。然而,目前無(wú)人機(jī)的監(jiān)控,大多是利用無(wú)線數(shù)傳設(shè)備對(duì)單架無(wú)人機(jī)進(jìn)行點(diǎn)對(duì)點(diǎn)通信,無(wú)法滿足對(duì)多架無(wú)人機(jī)同時(shí)進(jìn)行監(jiān)控。隨著4G網(wǎng)絡(luò)的發(fā)展和普遍應(yīng)用,可以滿足低空(300m以下)無(wú)人機(jī)數(shù)據(jù)傳輸?shù)囊螅軌蜃鳛闊o(wú)人機(jī)物流監(jiān)控的通信手段,實(shí)現(xiàn)無(wú)人機(jī)的組網(wǎng)和遠(yuǎn)距離飛行,這就為鄉(xiāng)村無(wú)人機(jī)物流系統(tǒng)奠定了基礎(chǔ)。鄉(xiāng)村無(wú)人機(jī)物流系統(tǒng)一般由上級(jí)物流中心、無(wú)人機(jī)物流中心、鄉(xiāng)村投遞點(diǎn)、無(wú)人機(jī)、通信基站及導(dǎo)航衛(wèi)星等幾部分組成,各部分通過(guò)無(wú)線或有線的方式接入互聯(lián)網(wǎng)。

監(jiān)控系統(tǒng)架構(gòu)

借助于互聯(lián)網(wǎng),可以實(shí)現(xiàn)無(wú)人機(jī)物流的實(shí)時(shí)有效監(jiān)控?;诨ヂ?lián)網(wǎng)的無(wú)人機(jī)物流監(jiān)控系統(tǒng)架構(gòu)如圖1所示,為三層架構(gòu),分別是表示層、業(yè)務(wù)層和數(shù)據(jù)層。其中表示層包括中心客戶端、投遞點(diǎn)客戶端;業(yè)務(wù)層包含Web服務(wù)器、GIS服務(wù)器,數(shù)據(jù)庫(kù)為postgreSQL云數(shù)據(jù)庫(kù)。

圖1 監(jiān)控系統(tǒng)架構(gòu)圖

監(jiān)控系統(tǒng)設(shè)計(jì)

業(yè)務(wù)層設(shè)計(jì)

業(yè)務(wù)層主要是實(shí)現(xiàn)客戶端請(qǐng)求的服務(wù)接口,由Web服務(wù)器、GIS服務(wù)器組成。

(1)Web服務(wù)器

Web服務(wù)器是指駐留于因特網(wǎng)上某種類型計(jì)算機(jī)的程序,可以向?yàn)g覽器等Web客戶端提供文檔,Web服務(wù)器具有高度通用性、語(yǔ)言獨(dú)立性、平臺(tái)獨(dú)立性和高度可集成性等特點(diǎn)。而Ubuntu是一個(gè)以桌面應(yīng)用為主的開(kāi)源GNU/Linux操作系統(tǒng),它為用戶提供一個(gè)穩(wěn)定、主要由自由軟件構(gòu)建而成的操作系統(tǒng)。在Ubuntu上搭建web的服務(wù)器,可以結(jié)合兩者的優(yōu)點(diǎn),快速開(kāi)發(fā)出一個(gè)穩(wěn)定通用的服務(wù)器。

基于Ubuntu的Web服務(wù)器架構(gòu)如圖3所示,主要所需要的組件包括:nginx、uwsgi、django開(kāi)發(fā)包、python運(yùn)行環(huán)境、postgreSQL數(shù)據(jù)庫(kù)。

web服務(wù)器在Nginx服務(wù)器通過(guò)8000端口進(jìn)行監(jiān)聽(tīng),當(dāng)有數(shù)據(jù)請(qǐng)求到達(dá)端口時(shí),會(huì)解包分析是靜態(tài)請(qǐng)求還是動(dòng)態(tài)請(qǐng)求,如果是請(qǐng)求CSS文件、JS文件等靜態(tài)請(qǐng)求,則直接尋找到時(shí)文件并返回至客戶端;如果是動(dòng)態(tài)請(qǐng)求,則將請(qǐng)求轉(zhuǎn)發(fā)到uwsgi服務(wù)器。Uwsgi服務(wù)器再將請(qǐng)求進(jìn)行解析,并將解析結(jié)果轉(zhuǎn)發(fā)至對(duì)應(yīng)的Django模塊。Django模塊再經(jīng)過(guò)Request中間件處理,之后使用URLConf正則匹配發(fā)送的url,進(jìn)一步解析出是訪問(wèn)哪個(gè)功能模塊,之后在Views這一功能模塊中獲取發(fā)送的業(yè)務(wù)數(shù)據(jù),并通過(guò)ORM組件訪問(wèn)數(shù)據(jù)庫(kù),最后將需要的數(shù)據(jù)封裝成JSON格式,并逐步返回至Response處理器和uwsgi服務(wù)器,然后uwsgi服務(wù)器再將數(shù)據(jù)返回至nginx,niginx服務(wù)器再將數(shù)據(jù)返回至客戶端。

(2)GIS服務(wù)器

GIS服務(wù)器是目前業(yè)內(nèi)功能最強(qiáng)的專業(yè)級(jí)GIS數(shù)據(jù)采集器,可以滿足復(fù)雜環(huán)境及多樣化的使用需求,因此可以利用GIS服務(wù)器對(duì)地圖數(shù)據(jù)進(jìn)行管理,并對(duì)多架無(wú)人機(jī)的飛行航跡數(shù)據(jù)進(jìn)行采集處理。GIS服務(wù)功能架構(gòu)如圖3所示,主要包括了如下組件:postgreSQL+postGIS、osm2pgsql、mapnik以及mod_tile等。

在此系統(tǒng)架構(gòu)中,首先將O S M文件利用osm2pgsql轉(zhuǎn)換工具導(dǎo)入到PostgreSQL中對(duì)并PostGIS進(jìn)行擴(kuò)展,然后使用Mapnik對(duì)地圖元數(shù)據(jù)進(jìn)行渲染,并以瓦片的形式進(jìn)行展示,其地圖的樣式由Mapnike style sheet文件控制;最后將瓦片數(shù)據(jù)通過(guò)Apache服務(wù)器發(fā)送給客戶端。

客戶端將GIS發(fā)送來(lái)的瓦片數(shù)據(jù)進(jìn)行渲染,然后監(jiān)聽(tīng)用戶的響應(yīng),并實(shí)時(shí)處理地圖數(shù)據(jù)。

基于Android 的客戶端開(kāi)發(fā)

目前Android設(shè)備的應(yīng)用越來(lái)越廣泛,得益于Android系統(tǒng)開(kāi)放性、開(kāi)源、免費(fèi)、可定制、束縛少、開(kāi)發(fā)自由度高等優(yōu)點(diǎn),基于Android的客戶端是一種可靠、便捷的開(kāi)發(fā)途徑。Android軟件由前臺(tái)顯示界面與后臺(tái)服務(wù)兩部分組成。前臺(tái)界面主要用于顯示接收到的消息以,并生產(chǎn)向服務(wù)器提交的消息,后臺(tái)服務(wù)主要完成持續(xù)定位、數(shù)據(jù)存儲(chǔ)、異常捕獲以及與服務(wù)器之間通信的功能,另外還將數(shù)據(jù)通過(guò)廣播的方式向前臺(tái)界面發(fā)送。基于Android的客戶端架構(gòu)如圖4所示。

圖2 Web服務(wù)器架構(gòu)

圖3 GIS服務(wù)器架構(gòu)

圖4 Android客戶端框架圖

(1)地圖顯示

地圖顯示是無(wú)人機(jī)飛行監(jiān)控的一個(gè)重要功能,目前與osm相關(guān)的地圖顯示項(xiàng)目比較多,其中OSMdroid是基于OSM地圖服務(wù)器而實(shí)現(xiàn)的功能完善的MapView替代品,它還具備一個(gè)模塊化的瓦片內(nèi)容提供系統(tǒng)以及在線和離線瓦片來(lái)源,另外還包括多圖層支持的繪圖圖標(biāo),也支持用戶自己繪制形狀。選用OSMdroid進(jìn)行地圖開(kāi)發(fā)是一個(gè)很好的選擇。

1)實(shí)時(shí)定位

定位功能允許用戶使用在途追蹤功能時(shí)查看無(wú)人機(jī)的定位信息,客戶端在OSM地圖上顯示出無(wú)人機(jī)所在的實(shí)時(shí)位置,和實(shí)時(shí)定位的時(shí)間,并定時(shí)進(jìn)行位置信息的更新。

2)飛行軌跡

飛行軌跡功能允許用戶使用在途追蹤功能時(shí)查看無(wú)人機(jī)從出發(fā)地至目的地的所有定位信息,在散點(diǎn)軌跡界面還有消息提示欄,顯示無(wú)人機(jī)的序號(hào)和托運(yùn)單的起始地點(diǎn)。

(2)調(diào)度管理模塊

調(diào)度管理模塊實(shí)現(xiàn)對(duì)無(wú)人機(jī)的調(diào)度管理,主要完成以下一些功能:

1)無(wú)人機(jī)調(diào)度登記

無(wú)人機(jī)調(diào)度登記需要填寫(xiě)出發(fā)地、目的地、計(jì)劃出發(fā)時(shí)間以及計(jì)劃送達(dá)時(shí)間等信息基于使用的無(wú)人機(jī)編號(hào)。填好信息后,將信息上傳到服務(wù)器,服務(wù)器再將此登記傳送給鄉(xiāng)村投遞點(diǎn)。

2)調(diào)度查詢

調(diào)度查詢需要針對(duì)兩端進(jìn)行。對(duì)于物流中心端,可以對(duì)每一個(gè)托運(yùn)單的詳細(xì)的調(diào)度信息進(jìn)行查詢,也可以查看每架無(wú)人機(jī)上掛載了多少貨物。對(duì)于投遞端,可以對(duì)投送到這一投遞點(diǎn)的托運(yùn)單詳細(xì)信息進(jìn)行查詢,并對(duì)目的地是此投遞點(diǎn)的無(wú)人機(jī)上掛載的貨物進(jìn)行查看。

3)投遞點(diǎn)貨物接收確認(rèn)

當(dāng)無(wú)人機(jī)將貨物送達(dá)投遞點(diǎn)時(shí),投遞點(diǎn)及時(shí)將貨物信息進(jìn)行確認(rèn),并將信息上傳到服務(wù)器,服務(wù)器再將此登記傳送給無(wú)人機(jī)調(diào)度中心。然后無(wú)人機(jī)進(jìn)行返航、充電或電池更換等操作。

4)無(wú)人機(jī)的輔助控制

無(wú)人機(jī)一般按預(yù)定航路進(jìn)行自主飛行,但針對(duì)貨物配送錯(cuò)誤或無(wú)人機(jī)在飛行過(guò)程出現(xiàn)的非關(guān)鍵部位故障,需要中心適時(shí)發(fā)出控制指令,控制使無(wú)人機(jī)返航或就近降落。

實(shí)時(shí)通信技術(shù)

(1)數(shù)據(jù)交換格式

數(shù)據(jù)交換格式是計(jì)算機(jī)不同程序之間或者不同編程語(yǔ)言之間進(jìn)行數(shù)據(jù)交換所定義的標(biāo)準(zhǔn)化的格式。JSON是一種輕量級(jí)的數(shù)據(jù)交換格式具有簡(jiǎn)單、靈活的特點(diǎn)。JSON由鍵值對(duì)構(gòu)成,可以滿足系統(tǒng)數(shù)據(jù)傳輸實(shí)時(shí)性和可靠性要求,因此選取JSON作為數(shù)據(jù)交互的方式。

(2)HTTP通信協(xié)議與請(qǐng)求框架

HTTP協(xié)議是一種簡(jiǎn)單協(xié)議,它主要是為了包裝數(shù)據(jù)而制定的一個(gè)規(guī)范,具有易于開(kāi)發(fā)、SDK與測(cè)試工具豐富等特點(diǎn),另外HTTP所占用的80端口通常不會(huì)被防火墻阻擋,因此服務(wù)器提供給客戶端的所有接口都是基于該協(xié)議。。在本系統(tǒng)中,數(shù)據(jù)傳輸層使用TCP/IP協(xié)議,,因?yàn)門(mén)CP/IP協(xié)議是面向連接的、可靠的數(shù)據(jù)傳輸協(xié)議,可以保障數(shù)據(jù)的可靠性,它使用一個(gè)網(wǎng)絡(luò)地址和一個(gè)端口號(hào)來(lái)唯一的標(biāo)識(shí)設(shè)備。

在本系統(tǒng)中使用Fast Android Networking LibraryH框架,該框架與JSON集成良好,并且在發(fā)起請(qǐng)求時(shí)一方面可以輕松的取消以降低系統(tǒng)開(kāi)銷,一方面還可以監(jiān)控請(qǐng)求的詳細(xì)數(shù)據(jù)分析,另外該框架還與RxJava集成性良好,適合向響應(yīng)性編程過(guò)度。

(3)實(shí)時(shí)通信功能

WebSocket是一個(gè)持久化的協(xié)議,它基于TCP的協(xié)議,普通的WebSocket連接使用80端口,基于安全傳輸協(xié)議(TLS)的連接使用443端口。相比于使用輪詢實(shí)現(xiàn)的即時(shí)通訊,WebSocket協(xié)議只需要瀏覽器和服務(wù)器之間進(jìn)行一次握手,服務(wù)器與客戶端的連接是全雙工、雙向的,使用單套接字,服務(wù)器可以主動(dòng)發(fā)送數(shù)據(jù)給客戶端,客戶端也可以隨時(shí)向服務(wù)器發(fā)送數(shù)據(jù),此外服務(wù)器與客戶端之間數(shù)據(jù)傳輸?shù)臉?biāo)頭信息很小?;赪ebSocket的優(yōu)點(diǎn),實(shí)時(shí)通信采用WebSocket實(shí)現(xiàn)。WebSocket客戶端與服務(wù)器之間建立連接需要三個(gè)步驟:客戶端發(fā)送握手請(qǐng)求、服務(wù)器響應(yīng)握手請(qǐng)求、客戶端處理服務(wù)器端響應(yīng)。

結(jié)束語(yǔ)

無(wú)人機(jī)將在鄉(xiāng)村物流領(lǐng)域發(fā)揮重要的作用,而無(wú)人機(jī)物流監(jiān)控系統(tǒng)是保障系統(tǒng)安全穩(wěn)定運(yùn)行的基礎(chǔ),無(wú)人機(jī)物流監(jiān)控系統(tǒng)設(shè)計(jì)包含中心服務(wù)器、客戶端的構(gòu)建及實(shí)時(shí)通信功能設(shè)計(jì)等,下一步將依照本文設(shè)計(jì)進(jìn)行系統(tǒng)實(shí)現(xiàn)?!?/p>

(參考文獻(xiàn):略。如有需要,請(qǐng)聯(lián)系編輯部。)

猜你喜歡
投遞客戶端架構(gòu)
智能投遞箱
基于FPGA的RNN硬件加速架構(gòu)
傳統(tǒng)與文化的“投遞”
中外文摘(2022年13期)2022-08-02 13:46:16
功能架構(gòu)在電子電氣架構(gòu)開(kāi)發(fā)中的應(yīng)用和實(shí)踐
汽車工程(2021年12期)2021-03-08 02:34:30
縣級(jí)臺(tái)在突發(fā)事件報(bào)道中如何應(yīng)用手機(jī)客戶端
孵化垂直頻道:新聞客戶端新策略
基于Vanconnect的智能家居瘦客戶端的設(shè)計(jì)與實(shí)現(xiàn)
LSN DCI EVPN VxLAN組網(wǎng)架構(gòu)研究及實(shí)現(xiàn)
大迷宮
一種基于FPGA+ARM架構(gòu)的μPMU實(shí)現(xiàn)
株洲县| 陕西省| 商丘市| 长寿区| 兰西县| 黄平县| 阿拉善盟| 措美县| 铜陵市| 麦盖提县| 金阳县| 兰州市| 永年县| 黄浦区| 米易县| 卢氏县| 临湘市| 龙海市| 安达市| 静乐县| 香河县| 阜新| 大邑县| 平舆县| 郑州市| 青海省| 峨眉山市| 麻城市| 兰西县| 揭西县| 怀柔区| 七台河市| 深圳市| 印江| 铜鼓县| 运城市| 宁海县| 连云港市| 嵊泗县| 平陆县| 隆林|