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

基于WebSocket的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)研究

2025-03-27 00:00:00白濤
中國新通信 2025年2期
關(guān)鍵詞:交互設(shè)計(jì)

摘要:為了解決遠(yuǎn)程操控服務(wù)型機(jī)器人過程中存在的信息交互問題,本文利用Web Socket傳輸協(xié)議,提出了一種新的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)方案。該交互方式在對機(jī)器人實(shí)施遠(yuǎn)程操控時(shí),能夠?qū)C(jī)器人周圍的環(huán)境和自身狀態(tài)進(jìn)行實(shí)時(shí)自動(dòng)檢測和分析,并通過協(xié)議將其上傳到客戶端,為客戶端遠(yuǎn)程操控機(jī)器人提供數(shù)據(jù)支持,同時(shí),對該交互方式的可行性進(jìn)行測試,結(jié)果證明,該設(shè)計(jì)達(dá)到了可視化實(shí)時(shí)遠(yuǎn)程交互的要求。

關(guān)鍵詞:Web Socket協(xié)議;服務(wù)型機(jī)器人;遠(yuǎn)程控制;交互設(shè)計(jì)

一、引言

針對B/S結(jié)構(gòu)中的客戶端與服務(wù)端兩者之間的數(shù)據(jù)交互連接問題,傳統(tǒng)的方法不能實(shí)現(xiàn)永久性的連接。因此,本文對全雙工通信協(xié)議WebSocket在遠(yuǎn)程交互中的應(yīng)用展開研究。在服務(wù)型機(jī)器人系統(tǒng)的瀏覽器和服務(wù)端之間,只需要保證在設(shè)備通信前完成互相識(shí)別操作,就能夠?qū)崿F(xiàn)雙向數(shù)據(jù)傳輸,且還可以形成永久連接,從而為機(jī)器人的遠(yuǎn)程交互提供更加高效、便捷、及時(shí)的數(shù)據(jù)傳輸交互[1]。

二、WebSocket協(xié)議

TCP協(xié)議,全稱傳輸控制協(xié)議(Transmission Control Protocol),是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。它旨在適應(yīng)支持多網(wǎng)絡(luò)應(yīng)用的分層協(xié)議層次結(jié)構(gòu),確保在不同但互連的計(jì)算機(jī)通信網(wǎng)絡(luò)的主計(jì)算機(jī)中的成對進(jìn)程之間提供可靠的通信服務(wù)。WebSocket協(xié)議作為一種基于TCP的持久連接協(xié)議,具有實(shí)時(shí)性強(qiáng)、雙向通信等優(yōu)點(diǎn),為服務(wù)型機(jī)器人的遠(yuǎn)程交互提供了有力的技術(shù)支持,能夠?qū)崿F(xiàn)服務(wù)端和客戶端之間的實(shí)時(shí)數(shù)據(jù)交換,可為服務(wù)型機(jī)器人的遠(yuǎn)程交互設(shè)計(jì)提供解決方案。通過WebSocket協(xié)議,服務(wù)端可以實(shí)時(shí)向客戶端發(fā)送機(jī)器人的狀態(tài)信息,如位置、電量、任務(wù)完成情況等。同時(shí),客戶端也可以向服務(wù)端發(fā)送控制指令,如導(dǎo)航目標(biāo)、語音指令等。這種雙向通信機(jī)制使得服務(wù)型機(jī)器人的遠(yuǎn)程交互更加靈活和高效。

三、基于B/S架構(gòu)的服務(wù)型機(jī)器人控制系統(tǒng)研究

服務(wù)型機(jī)器的遠(yuǎn)程控制離不開客戶端和服務(wù)端的支持。簡單來說,服務(wù)端是系統(tǒng),客戶端則是用戶。因此,想要實(shí)現(xiàn)對服務(wù)型機(jī)器人的遠(yuǎn)程交互控制,就要保障客戶端可以快速、實(shí)時(shí)地接收機(jī)器人系統(tǒng)上傳的周圍環(huán)境情況以及機(jī)器人自身的情況等信息。而WebSocket協(xié)議作為一種基于TCP協(xié)議實(shí)現(xiàn)的全雙工通信協(xié)議,不僅能夠?qū)崿F(xiàn)雙端之間的主動(dòng)信息交互,還能夠?qū)﹄p端之間的數(shù)據(jù)傳輸過程進(jìn)行簡化[2]。

(一)服務(wù)型機(jī)器人客戶端設(shè)計(jì)

針對服務(wù)型機(jī)器人的客戶端設(shè)計(jì),考慮到雙向傳輸?shù)倪B接和主動(dòng)性,選擇采用HTML/S/CSS協(xié)議實(shí)現(xiàn)對客戶端的功能設(shè)計(jì)。這樣一來,在對機(jī)器人進(jìn)行遠(yuǎn)程控制時(shí)客戶端就能夠?qū)崿F(xiàn)向服務(wù)端的主動(dòng)發(fā)生相關(guān)操作指令,完成對服務(wù)端所傳輸數(shù)據(jù)信息的接收,并對接收的信息進(jìn)行分析、整理、處理和執(zhí)行等操作。

(二)服務(wù)型機(jī)器人服務(wù)端設(shè)計(jì)

針對服務(wù)端的設(shè)計(jì),本文采用Python語言進(jìn)行設(shè)計(jì),使得機(jī)器人的服務(wù)端既具備主動(dòng)接收和傳輸數(shù)據(jù)信息的能力,還能夠?qū)崿F(xiàn)對相關(guān)信息的采集、分析和處理、操作等動(dòng)作。

(三)遠(yuǎn)程交互實(shí)現(xiàn)

1.請求分析

在實(shí)際操作過程中,服務(wù)型機(jī)器人的客戶端會(huì)向服務(wù)端發(fā)出操作指令,然后在接收到緩存信息時(shí)對數(shù)據(jù)進(jìn)行讀取并將其存放到Byte數(shù)組當(dāng)中,再將其轉(zhuǎn)化成字符串。最后,通過對字符串?dāng)?shù)據(jù)進(jìn)行分割,從而得到字典(鍵-值)。

2.密鑰生成和操作碼獲取

在交互過程中,客戶端制作一份經(jīng)過密鑰Sec-WebSocket-Key加密處理之后的數(shù)據(jù),并向服務(wù)端發(fā)送連接請求。同時(shí),對接收到的相關(guān)密鑰和固定字符串進(jìn)行處理,并將處理之后的數(shù)據(jù)再次進(jìn)行加密處理,以應(yīng)答的方式傳輸給服務(wù)端。具體操作流程見圖1所示。而服務(wù)端在讀取所接收的數(shù)據(jù)信息時(shí),最先接收到的數(shù)據(jù)為1字節(jié),這時(shí)如果數(shù)據(jù)接收失敗,就會(huì)對存在的問題進(jìn)行處理;反之,如果數(shù)據(jù)信息接收成功,就會(huì)將所接收的數(shù)據(jù)轉(zhuǎn)換成完整的內(nèi)容,并采用二進(jìn)制數(shù)字方式對其進(jìn)行運(yùn)算,從而得到基于WebSocket協(xié)議的操作碼。

3.數(shù)據(jù)長度獲取

當(dāng)服務(wù)端在接收到來自客戶端發(fā)送的數(shù)據(jù)之后,會(huì)對數(shù)據(jù)進(jìn)行整型轉(zhuǎn)換處理,從而得到第一個(gè)掩碼,接著,將得到的數(shù)據(jù)信息和二進(jìn)制數(shù)字進(jìn)行計(jì)算從而得到數(shù)據(jù)。該數(shù)據(jù)的長度即代表數(shù)據(jù)幀的數(shù)據(jù)長度[3]。但如果其長度超過125bit,需要對數(shù)據(jù)進(jìn)行處理和轉(zhuǎn)換,則被處理后的數(shù)據(jù)長度,也是數(shù)據(jù)幀的數(shù)據(jù)長度。

4.數(shù)據(jù)讀取和發(fā)送

針對數(shù)據(jù)的讀取過程,由服務(wù)端先對掩碼的位置進(jìn)行判斷和配置、解密,從而獲得客戶端的數(shù)據(jù)[4]。反之,則可以直接實(shí)現(xiàn)對所獲得數(shù)據(jù)的讀取操作。同時(shí),服務(wù)端會(huì)先將所需要發(fā)送的數(shù)據(jù)進(jìn)行轉(zhuǎn)換和處理,然后對待發(fā)送的數(shù)據(jù)的長度進(jìn)行計(jì)算分析并實(shí)施編碼處理。當(dāng)數(shù)據(jù)長度不超過125bit時(shí),便可以將其轉(zhuǎn)換成整型數(shù)據(jù)。否則,需要將其從第126bit數(shù)據(jù)開始轉(zhuǎn)換處理,將其他需要發(fā)送的數(shù)據(jù)進(jìn)行整型處理,最后將相關(guān)信息發(fā)送到客戶端即可。

四、基于WebSocket的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)研究

基于WebSocket的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)主要涉及幾個(gè)核心組件:WebSocket服務(wù)器、機(jī)器人控制系統(tǒng),以及用戶交互界面。這種設(shè)計(jì)能夠?qū)崿F(xiàn)實(shí)時(shí)、雙向的通信,適用于需要快速響應(yīng)的機(jī)器人操作場景。其中,WebSocket服務(wù)器作為數(shù)據(jù)傳輸?shù)闹袠校?fù)責(zé)處理來自用戶界面的請求并將命令轉(zhuǎn)發(fā)到機(jī)器人控制系統(tǒng)。服務(wù)器還需要處理并發(fā)連接,保證數(shù)據(jù)傳輸?shù)姆€(wěn)定性和安全性。用戶交互界面的設(shè)計(jì)作為一個(gè)直觀的圖形界面,使用戶能夠發(fā)送指令給機(jī)器人并接收機(jī)器人的實(shí)時(shí)數(shù)據(jù)。界面應(yīng)支持多平臺(tái)訪問,如通過網(wǎng)頁或移動(dòng)應(yīng)用訪問。

(一)通信機(jī)制設(shè)計(jì)

WebSocket協(xié)議的核心優(yōu)勢在于其全雙工通信能力,即服務(wù)端和客戶端可以同時(shí)向?qū)Ψ桨l(fā)送數(shù)據(jù)。在服務(wù)型機(jī)器人的遠(yuǎn)程交互中,這種通信機(jī)制能夠大大提高交互的實(shí)時(shí)性和效率。具體而言,服務(wù)端通過WebSocket連接向客戶端實(shí)時(shí)推送機(jī)器人的狀態(tài)信息,如位置、電量、任務(wù)完成情況等。這些信息可以幫助用戶了解機(jī)器人的當(dāng)前狀態(tài),從而做出更準(zhǔn)確的決策。同時(shí),客戶端也可以向服務(wù)端發(fā)送控制指令,如導(dǎo)航目標(biāo)、語音指令等。服務(wù)端接收到指令后,會(huì)進(jìn)行相應(yīng)的處理并發(fā)送給機(jī)器人執(zhí)行。為了實(shí)現(xiàn)這一通信機(jī)制,需要在服務(wù)端和客戶端分別實(shí)現(xiàn)WebSocket的握手協(xié)議、數(shù)據(jù)幀編碼解碼,以及連接管理等功能。此外,還需要考慮網(wǎng)絡(luò)延遲、丟包等問題對通信質(zhì)量的影響,并采取相應(yīng)的措施進(jìn)行優(yōu)化。

(二)握手交互設(shè)計(jì)

服務(wù)型機(jī)器人的遠(yuǎn)程交互設(shè)計(jì),離不開WebSocket傳輸協(xié)議的支持。本文提出的遠(yuǎn)程交互設(shè)計(jì)主要參考了HTTP協(xié)議中的“握手”過程,實(shí)現(xiàn)了服務(wù)端和客戶端之間的連接。握手過程是建立WebSocket連接的第一步。在WebSocket協(xié)議中,客戶端需要向服務(wù)器發(fā)送一個(gè)握手請求,然后服務(wù)器會(huì)回應(yīng)一個(gè)握手響應(yīng)。示例代碼:

let socket = new WebSocket('ws://your-websocket-server.com:port');

socket.onopen = function(event) {

let handshakeRequest = {

\"type\": \"handshake\",

\"protocol\": \"your-protocol\", //

\"headers\": {

\"your-header-key\": \"your-header-value\" //

},

\"body\": \"your-body\" //

};

socket.send(JSON.stringify(handshakeRequest));

};

具體操作步驟:

第一步,基于WebSocket的服務(wù)型機(jī)器人的客戶端會(huì)發(fā)送握手請求信息到服務(wù)端。在請求當(dāng)中利用see-WebSocket-key密鑰對報(bào)文內(nèi)容實(shí)施了加密處理,使得其能夠轉(zhuǎn)換成WebSocket協(xié)議內(nèi)容。

第二步,服務(wù)端接收到機(jī)器人客戶端發(fā)來的握手請求報(bào)文之后,會(huì)在第一時(shí)間對接收到的信息進(jìn)行處理,并對加密密鑰進(jìn)行解密。如果成功開啟發(fā)送的報(bào)文,這就說明服務(wù)型機(jī)器人的服務(wù)器滿足了WebSocket協(xié)議的升級(jí)條件,則進(jìn)行升級(jí),然后再向客戶端(用戶)發(fā)送關(guān)于升級(jí)連接與應(yīng)答密鑰等方面的信息。

第三步,客戶端(用戶)在接收到來自服務(wù)端的信息之后,會(huì)對實(shí)施驗(yàn)證,然后將傳統(tǒng)的http升級(jí)成WebSocket,從而實(shí)現(xiàn)客戶端和服務(wù)端的連接,也就是“完成握手”;如果失敗,則客戶端會(huì)主動(dòng)與服務(wù)端斷開連接。

(三)遠(yuǎn)程傳輸設(shè)計(jì)

根據(jù)圖2所示,當(dāng)服務(wù)型機(jī)器人成功完成握手協(xié)議之后,就可以進(jìn)行遠(yuǎn)程數(shù)據(jù)信息交互,并采用二進(jìn)制的方式向?qū)Ψ桨l(fā)送數(shù)據(jù)傳輸任務(wù)。但是,在基于WebSocket的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)過程中,根據(jù)協(xié)議的相關(guān)規(guī)范,想要實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送,離不開數(shù)據(jù)幀(具體數(shù)據(jù)幀的所用見表1)的支持。而基于B/S架構(gòu)的服務(wù)型機(jī)器人,其客戶端瀏覽器的數(shù)據(jù)幀組成是在掩碼和原始基本幀的組合下形成的,并且服務(wù)端所發(fā)生的相關(guān)數(shù)據(jù)信息并不需要掩碼。不過,在遠(yuǎn)程交互時(shí),若是用戶接收到來自服務(wù)端的掩碼數(shù)據(jù)幀時(shí),這就說明WebSocket連接存在問題,且需要主動(dòng)對雙方連接進(jìn)行關(guān)閉操作[5]。反之,若是兩者成功建立連接,則可以隨時(shí)隨地實(shí)現(xiàn)數(shù)據(jù)發(fā)送。

五、測試與分析

(一)信息交互驗(yàn)證

為了驗(yàn)證基于WebSocket的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)方案的可行性。本文選擇以客戶端(用戶)和服務(wù)端機(jī)器人消息的接收和發(fā)送為例展開測試。首先,當(dāng)機(jī)器人的服務(wù)端以主動(dòng)的方式向用戶發(fā)生信息時(shí),且兩端已經(jīng)成功完成連接,并且顯示成功連接,而服務(wù)端就會(huì)主動(dòng)向用戶發(fā)送“hello”問候的信息;當(dāng)用戶成功接收到相關(guān)信息時(shí),這就說明兩端的連接成功。接著,可以將想要發(fā)送的信息輸入編輯界面,并在確認(rèn)所發(fā)送的內(nèi)容沒有錯(cuò)誤之后,選擇發(fā)送按鍵,服務(wù)端就會(huì)自動(dòng)對信息實(shí)施解析處理,并打包成JSON格式,發(fā)送給客戶端(用戶)。其次,當(dāng)機(jī)器人的客戶端(用戶)在成功接收到服務(wù)端發(fā)送的JSON格式信息之后,會(huì)對其進(jìn)行解析、分析處理,以獲取相關(guān)數(shù)據(jù)信息。當(dāng)成功完成數(shù)據(jù)讀取之后,會(huì)在客戶端的界面進(jìn)行顯示,并提示用戶成功接收到相關(guān)信息[6]。

(二)測試結(jié)果分析

通過對服務(wù)型機(jī)器人的遠(yuǎn)程交互進(jìn)行信息傳輸交互操作,可以證明本文提出的程序設(shè)計(jì)方案能夠?qū)崟r(shí)完成數(shù)據(jù)通信需求,并滿足雙向?qū)崟r(shí)交互的要求,達(dá)到遠(yuǎn)程控制服務(wù)型機(jī)器人的目的。

六、結(jié)束語

綜上所述,基于WebSocket的服務(wù)型機(jī)器人遠(yuǎn)程交互設(shè)計(jì)研究,不僅實(shí)現(xiàn)了端與端的雙向傳輸通信,還有效解決了服務(wù)型機(jī)器人在遠(yuǎn)程操作交互時(shí)存在的問題。并且,用戶在對機(jī)器人進(jìn)行遠(yuǎn)程操控時(shí),機(jī)器人服務(wù)端會(huì)將設(shè)備的所有情況,包括周圍環(huán)境等信息實(shí)時(shí)傳輸給客戶端,為用戶操控機(jī)器人提供數(shù)據(jù)方面的支持。同時(shí),避免了數(shù)據(jù)雙向傳輸時(shí),受同步延遲的影響對服務(wù)型機(jī)器人造成破壞。

作者單位:白濤 國家計(jì)算機(jī)網(wǎng)絡(luò)應(yīng)急技術(shù)處理協(xié)調(diào)中心黑龍江分中心

參考文獻(xiàn)

[1]劉瑩,邵彧.利用姿態(tài)傳感器多點(diǎn)位控制機(jī)器人交互方法[J].機(jī)械設(shè)計(jì)與制造,2023,(02):266-269.

[2]張洋洋,李翔龍,陳兵.5G環(huán)境下的機(jī)器人遠(yuǎn)程控制系統(tǒng)開發(fā)[J].現(xiàn)代機(jī)械,2023,(04):6-12.

[3]鄒志娟,陳思潔.基于5G與AI技術(shù)的家庭服務(wù)機(jī)器人交互設(shè)計(jì)研究[J].包裝工程,2023,44(16):479-485.

[4]舒文武. 基于SCARA機(jī)器人的硬件在環(huán)實(shí)時(shí)仿真研究[D].湖北:華中科技大學(xué),2022.

[5]李淑敬,孫楠,柴文君,等.基于WebSocket服務(wù)型機(jī)器人遠(yuǎn)程交互的開發(fā)[J].西安文理學(xué)院學(xué)報(bào)(自然科學(xué)版),2021,24(01):52-58.

[6]王貴洋.基于VR的遠(yuǎn)程移動(dòng)機(jī)器人交互技術(shù)研究[D].四川:西南科技大學(xué),2022.

猜你喜歡
交互設(shè)計(jì)
淺談交互設(shè)計(jì)流程中的視覺因素
戲劇之家(2016年23期)2016-12-20 22:31:20
超數(shù)字化:網(wǎng)絡(luò)體育新聞傳播的發(fā)展趨勢
交互性視覺設(shè)計(jì)
新時(shí)期繪本動(dòng)畫藝術(shù)在互動(dòng)多媒體領(lǐng)域的探索與研究
非物質(zhì)文化遺產(chǎn)數(shù)字化研究
RRS交互機(jī)制分析及基于該機(jī)制的節(jié)水APP實(shí)現(xiàn)
淺談交互設(shè)計(jì)在工業(yè)設(shè)計(jì)中的運(yùn)用
莆田電子商務(wù)界面設(shè)計(jì)的藝術(shù)研究
智能手機(jī)移動(dòng)應(yīng)用交互框架研究
戲劇之家(2016年11期)2016-06-22 13:24:35
虛擬紡織博物館中交互展示設(shè)計(jì)研究
商(2016年11期)2016-05-04 18:13:52
主站蜘蛛池模板: 欧美午夜小视频| 欧美一级高清视频在线播放| 国产成在线观看免费视频| 亚洲精品欧美重口| 黄色污网站在线观看| 亚洲码一区二区三区| 97精品伊人久久大香线蕉| 国产第一页免费浮力影院| 2022国产无码在线| 无码av免费不卡在线观看| 小说区 亚洲 自拍 另类| 91久久青青草原精品国产| 欧美精品xx| 国产一级小视频| 91无码人妻精品一区二区蜜桃| 国产免费网址| 99国产精品国产| 欧美三级日韩三级| 国产精品xxx| 日本妇乱子伦视频| 五月天久久婷婷| 亚洲三级影院| 欧美劲爆第一页| 色综合久久88| 67194亚洲无码| 亚卅精品无码久久毛片乌克兰| 欧美yw精品日本国产精品| 国产精品九九视频| 国产一区二区免费播放| 综合社区亚洲熟妇p| 欧美精品综合视频一区二区| 欧美不卡二区| 国产一级毛片网站| 波多野结衣在线se| 真实国产乱子伦高清| 国产精品免费露脸视频| 亚洲国产看片基地久久1024 | 国产精品久久久久久久久kt| 中文字幕自拍偷拍| 亚洲第一黄色网址| 亚洲无码一区在线观看| 香蕉视频在线观看www| 免费国产高清视频| 最新国产午夜精品视频成人| 国产高清在线丝袜精品一区| 亚洲天堂视频在线观看免费| 国产网站免费观看| 国产精品亚洲αv天堂无码| 午夜天堂视频| 1024国产在线| 精品久久久久久久久久久| 高潮爽到爆的喷水女主播视频| 亚洲一区二区三区在线视频| 国产欧美性爱网| 伊人久久精品无码麻豆精品| 色哟哟国产成人精品| 欧洲一区二区三区无码| 精品一区二区三区水蜜桃| 色噜噜狠狠色综合网图区| 国内精品视频区在线2021| 国产高清在线精品一区二区三区| 亚洲高清无在码在线无弹窗| 国产亚洲美日韩AV中文字幕无码成人| 国内熟女少妇一线天| 精品国产免费人成在线观看| 亚洲精品视频网| 青青热久免费精品视频6| 99久久精品美女高潮喷水| AV无码无在线观看免费| 国产欧美综合在线观看第七页| 四虎成人在线视频| 97在线国产视频| 99热这里只有精品5| 国产欧美精品一区aⅴ影院| 亚洲第一区在线| 在线免费观看a视频| 四虎影视库国产精品一区| 免费激情网站| 国产成熟女人性满足视频| 一级毛片网| 天堂va亚洲va欧美va国产| 美女国产在线|