馬海舟
摘要:時代不斷進(jìn)步,網(wǎng)絡(luò)也在更新,目前已經(jīng)推進(jìn)了物聯(lián)網(wǎng)的建設(shè)。5G時代已經(jīng)到來會實現(xiàn)一個萬物互聯(lián)的狀態(tài),每一個物體之間都有著聯(lián)系,物聯(lián)網(wǎng)技術(shù)將所有的設(shè)備之間都建立連接關(guān)系。在實現(xiàn)這一目的之前進(jìn)行跨平臺數(shù)據(jù)通信,實現(xiàn)數(shù)據(jù)的共享。為了解決這一問題設(shè)計相關(guān)方案模擬安防監(jiān)測系統(tǒng)進(jìn)行移動端通信。采用先進(jìn)技術(shù)優(yōu)勢實現(xiàn)平臺之間的數(shù)據(jù)通信,通過UDP協(xié)議規(guī)范雙方行為,檢測火焰、煙霧、紅外對射的信號。同時將其發(fā)送給桌面端及時掌握移動端信號的狀態(tài)。
關(guān)鍵詞: 物聯(lián)網(wǎng) 跨平臺數(shù)據(jù)通信
引言:最近今年物聯(lián)網(wǎng)技術(shù)不斷發(fā)展,很多都實現(xiàn)了智能化,智能醫(yī)療、智能家居、智能交通的出現(xiàn),這些都對于人們生活有了很大的便利。物聯(lián)網(wǎng)與我們的生活息息相關(guān),實現(xiàn)了智能化的目標(biāo),隨著5G網(wǎng)絡(luò)的時代在通信之上也為人民實現(xiàn)交流提供了有效的平臺,實現(xiàn)了萬物互聯(lián)。跨平臺上進(jìn)行資源數(shù)據(jù)的共享實現(xiàn)通信物聯(lián)網(wǎng)。應(yīng)用程序支持多種平臺的使用,能夠在桌面端和移動端之間建立聯(lián)系實現(xiàn)通信。Android是物聯(lián)網(wǎng)移動端主流語言的主體,會采用socket通信技術(shù),這樣保障了平臺之間和不同進(jìn)程之間的通信。從PC端和Android手機(jī)端通過有線或者是無線網(wǎng)絡(luò)的連接下實現(xiàn)通信。
一、實現(xiàn)通信的關(guān)鍵技術(shù)
1.Socket通信原理
Socket含義是插座,主要是負(fù)責(zé)IP地址和端口的描述,可以實現(xiàn)不同系統(tǒng)之間的通信。在網(wǎng)絡(luò)當(dāng)中應(yīng)用程序通過socket發(fā)出請求,或者是答應(yīng)請求。socket采用的是客戶端或者是服務(wù)端的模式,在進(jìn)行連接時總共分為三步,第一步是服務(wù)器監(jiān)聽。負(fù)責(zé)了解網(wǎng)絡(luò)實時運(yùn)行的狀態(tài),等待連接。第二是客戶端請求。由客戶端來向socket提出連接。主要連接的是服務(wù)器端的socket。第三是連接確認(rèn),當(dāng)服務(wù)器端收到連接請求之后,會激活進(jìn)程來處理這一請求,兩端連接之上方可進(jìn)行傳輸數(shù)據(jù)。此時服務(wù)器的socket就負(fù)責(zé)監(jiān)聽,或者是接受其他客戶之間的連接請求,從而實現(xiàn)數(shù)據(jù)的有效傳輸。它有兩種操作模式可以進(jìn)行。面向連接服務(wù)和無連接服務(wù)。在進(jìn)行面向連接時,發(fā)送數(shù)據(jù)之前與對方之間達(dá)成協(xié)議建立連接關(guān)系才可以進(jìn)行數(shù)據(jù)的傳送,傳輸時按照TCP協(xié)議進(jìn)行。連接過程應(yīng)執(zhí)行三次握手的方式,另一種方式是無連接,它要求具備可靠性。但是在操作時所遵守的協(xié)議是UDP協(xié)議,不需要建立連接關(guān)系就可以傳輸數(shù)據(jù)。不管對方何種狀態(tài)可以直接發(fā)送數(shù)據(jù),對于應(yīng)用的要求較低,不需要具備很高的可靠性,但是它的通信效率卻很高。
2.Socket編程
在C語言當(dāng)中具備很大功能,使得套接字編程變得簡單,在命名空間當(dāng)中支持套接字的進(jìn)行應(yīng)用。程序會使用傳輸控制的協(xié)議。在這些協(xié)議上都是建立在socket基礎(chǔ)之上的,主要是負(fù)責(zé)數(shù)據(jù)傳輸當(dāng)中的一些細(xì)節(jié)問題。在網(wǎng)絡(luò)通訊當(dāng)中傳輸數(shù)據(jù)時應(yīng)注重數(shù)據(jù)的形式,主要是通過將數(shù)據(jù)進(jìn)行轉(zhuǎn)化,命名空間也要實現(xiàn)字符串和字節(jié)數(shù)組的轉(zhuǎn)換。
3.Android中的socket編程
Android編程所使用的語言是Java語言,在安卓平臺之上,這一語言都適用,但是安卓平臺也有著獨(dú)特性。在socket編程當(dāng)中會采用客戶端或者是服務(wù)器端的這一模式。要求服務(wù)器具備固定的IP地址,只有這樣才能夠準(zhǔn)確有效的接收客戶的要求。運(yùn)營公司負(fù)責(zé)分配手機(jī)端的IP地址。在安卓端基本上運(yùn)行的都是客戶端的相關(guān)程序。Java包括與網(wǎng)絡(luò)通信之間相關(guān)的類,不同的類有不同的地址。通過該列可以獲取IP地址和主機(jī)地址的信息。ServerSocket是通過指定的端口來監(jiān)聽需求,與套接字之間建立連接去傳輸數(shù)據(jù)。在Socket類所表示的是客戶端的套接字是向服務(wù)器發(fā)送請求建立連接之后來實現(xiàn)數(shù)據(jù)的傳輸。
二、系統(tǒng)設(shè)計
1.總體設(shè)計
在物聯(lián)網(wǎng)技術(shù)當(dāng)中實現(xiàn)跨平臺數(shù)據(jù)通信,在測試時模擬辦公樓安防監(jiān)控系統(tǒng)設(shè)置一個桌面端和安卓移動端的模型。當(dāng)啟動系統(tǒng)之后桌面端會接收到移動終端發(fā)送的信號,同時將這些信號的狀態(tài)在界面上展示出來,主要獲取到的是火焰、煙霧和紅外對射的信號,通過網(wǎng)絡(luò)攝像機(jī)去監(jiān)控和記錄移動端,使用數(shù)字量采集器來采集這些信號,同時也控制了照明燈和報警燈,通過網(wǎng)絡(luò)攝像機(jī)及時獲取相應(yīng)圖像,在網(wǎng)絡(luò)之上呈現(xiàn)出拓?fù)鋱D。在系統(tǒng)之間會采用UDP協(xié)議來實現(xiàn)通信,所謂UDP是用戶數(shù)據(jù)報協(xié)議。在互聯(lián)網(wǎng)模型當(dāng)中位于傳輸層實現(xiàn)無連接,對可靠性要求較低,其效率很高。在TCP協(xié)議下,不需要進(jìn)行三次握手就可以建立連接,也不需要對連接進(jìn)行維護(hù),因此會節(jié)省資源,處理速度也比較快,這是它的優(yōu)點。
2.桌面端設(shè)計
桌面端有特定的開發(fā)環(huán)境,應(yīng)采用規(guī)定的編程語言通過框架來實現(xiàn)開發(fā)。所使用的框架是WPF為其提供了統(tǒng)一的模型語言和框架,能夠?qū)⒃O(shè)計界面和工作開發(fā)分離進(jìn)行桌面端,接收到的移動終端會通過這些信號的狀態(tài)并且在界面之上顯示狀態(tài)。桌面端應(yīng)用程序創(chuàng)建對象,將其固定到端口上,通過建立線程來監(jiān)聽數(shù)據(jù)。在接收這些數(shù)據(jù)時,會獲取返回移動端發(fā)送的數(shù)據(jù)報,更新界面上的元素,及時了解紅外對射、火焰、煙霧的具體狀態(tài),采用桌面端關(guān)鍵代碼。
3.Android移動端設(shè)計
移動端開發(fā)時會采用特殊程序。移動端的應(yīng)用程序采用數(shù)字量采集器獲取信號的狀態(tài),同時在電腦界面上顯示出來。將這些采集到的信息傳輸?shù)浇缑娼K端上。當(dāng)桌面端檢測到火焰、煙霧信號時亮起報警燈,如果還使用了入侵報警的功能,當(dāng)檢測到紅外對射信號時也會亮起報警燈。移動端應(yīng)用程序會建立實例對象,同時也會與其建立相應(yīng)的服務(wù)。指定發(fā)送的遠(yuǎn)端地址和端口號之后,創(chuàng)建實例對象,將這些信號進(jìn)行打包發(fā)送,發(fā)送完成之后關(guān)閉socket服務(wù),這就是一系列的數(shù)據(jù)交互。
結(jié)束語:物聯(lián)網(wǎng)技術(shù)不斷發(fā)展,已經(jīng)在逐步實現(xiàn)跨平臺移動通信,便于數(shù)據(jù)的連接。目前已經(jīng)開始初步的探索,通過使用協(xié)議來實現(xiàn)兩端設(shè)備的連通。接收信號在界面上顯示不同的類型有不同的方式,不斷加大探索盡可能的擴(kuò)大物聯(lián)網(wǎng)的應(yīng)用領(lǐng)域,充分實現(xiàn)跨平臺數(shù)據(jù)通信,發(fā)揮它的作用。
參考文獻(xiàn):
[1]司琴. 面向物聯(lián)網(wǎng)應(yīng)用的大數(shù)據(jù)平臺研究[D].杭州電子科技大學(xué),2019.
[2]黎芳萍. 面向物聯(lián)網(wǎng)的跨平臺移動應(yīng)用設(shè)計與實現(xiàn)[D].海南大學(xué),2017.
[3]聶云. 基于Android的WoT物聯(lián)網(wǎng)商城終端應(yīng)用的設(shè)計與開發(fā)[D].北京郵電大學(xué),2014.