主頁(yè) > 知識(shí)庫(kù) > 機(jī)器人遙操作網(wǎng)絡(luò)通信平臺(tái)的設(shè)計(jì)

機(jī)器人遙操作網(wǎng)絡(luò)通信平臺(tái)的設(shè)計(jì)

熱門(mén)標(biāo)簽:烏市地圖標(biāo)注app 地圖標(biāo)注學(xué)習(xí) 征服眼圖書(shū)館地圖標(biāo)注點(diǎn) 拉薩人工電銷機(jī)器人公司 江蘇蘇州智能電話機(jī)器人 福建回?fù)芡夂粝到y(tǒng) 河北電銷卡外呼系統(tǒng)哪家好 聯(lián)通副卡電銷機(jī)器人 貴州電話機(jī)器人價(jià)格多少
目前,機(jī)器人遙操作系統(tǒng)已成為機(jī)器人研究的一個(gè)熱點(diǎn)。在機(jī)器人遙操作的過(guò)程中,本地服務(wù)器與遠(yuǎn)程客戶機(jī)之間的網(wǎng)絡(luò)通信問(wèn)題是遙操作的關(guān)鍵環(huán)節(jié)。針對(duì)機(jī)器人遙操作的通信問(wèn)題,本文設(shè)計(jì)了一種在Windows XP環(huán)境下,運(yùn)用Socket實(shí)現(xiàn)的基于TCP/IP協(xié)議的網(wǎng)絡(luò)通信平臺(tái)。   1 Socket編程原理   1.1 Socket簡(jiǎn)介   Socket(套接字)最初是加州大學(xué)伯克利分校為UNIX操作系統(tǒng)開(kāi)發(fā)的網(wǎng)絡(luò)通信接口。后來(lái)Intel, Microsoft, Sun等網(wǎng)絡(luò)廠商將其移植到Windows中,形成了Windows Sockets規(guī)范,它定義了一套Windows環(huán)境下網(wǎng)絡(luò)編程的接口。利用Windows Socket開(kāi)發(fā)的網(wǎng)絡(luò)通信程序的層次結(jié)構(gòu)如圖1示。      圖1 Sockets編程的結(jié)構(gòu)   根據(jù)傳輸數(shù)據(jù)類型的不同,Sockets可分為流式套接字(SOCK_STREAM)和數(shù)據(jù)報(bào)式套接字(SOCK_DGRAM)兩類。流式套接字提供面向連接、可靠的數(shù)據(jù)傳輸服務(wù),數(shù)據(jù)無(wú)差錯(cuò)、無(wú)重復(fù)的發(fā)送,且按發(fā)送順序接受。流式套接字實(shí)際上是基于TCP協(xié)議實(shí)現(xiàn)的。數(shù)據(jù)報(bào)式套接字提供無(wú)連接服務(wù)。數(shù)據(jù)報(bào)以獨(dú)立包形式發(fā)送,不提供無(wú)錯(cuò)保證,數(shù)據(jù)可能丟失或重復(fù),并且接受順序混亂。數(shù)據(jù)報(bào)套接字實(shí)際上是基于UDP協(xié)議實(shí)現(xiàn)的。   按照套接字在客戶機(jī)/服務(wù)器(Client/ Server)模式中的功能可將其分為兩類:   監(jiān)聽(tīng)套接字:該套接字位于服務(wù)器端,它的主要功能就是對(duì)特定的端口進(jìn)行不斷的監(jiān)聽(tīng),當(dāng)檢測(cè)到有連接請(qǐng)求時(shí),接受申請(qǐng),并構(gòu)造一個(gè)新的客戶端套接字,與連接申請(qǐng)方的客戶端套接字建立連接,從而為雙方的通信做好準(zhǔn)備。   客戶端套接字:該套接字是用來(lái)進(jìn)行網(wǎng)絡(luò)通信的實(shí)體。它位于客戶機(jī)和服務(wù)器上,服務(wù)器必須維持它為之服務(wù)的客戶一樣數(shù)量的這種套接字,形成一個(gè)以服務(wù)器為中心的星型結(jié)構(gòu)。   1.2 TCP網(wǎng)絡(luò)通信平臺(tái)設(shè)計(jì)步驟   基于Internet的機(jī)器人遙操作技術(shù)是現(xiàn)代網(wǎng)絡(luò)技術(shù)和機(jī)器人控制技術(shù)的結(jié)合,Internet使用網(wǎng)際分組交換協(xié)議TCP/IP作為通信規(guī)范,它包括 TCP, UDP和ICMP等協(xié)議。其中TCP協(xié)議是面向連接的協(xié)議,要求在數(shù)據(jù)交換以前必須與通信方建立一條連接、它具有分段和重組功能,能夠確保數(shù)據(jù)可靠、有序地傳輸。   TCP通信整個(gè)過(guò)程可以分成三個(gè)階段:連接建立、數(shù)據(jù)傳輸和拆除連接。   (1)連接建立階段:首先服務(wù)器中的監(jiān)聽(tīng)套接字對(duì)斷口進(jìn)行偵聽(tīng),客戶端的套接字向服務(wù)器端的特定斷口提出連接申請(qǐng)。   (2)通信階段:這是整個(gè)過(guò)程的核心部分,任務(wù)就是負(fù)責(zé)數(shù)據(jù)的收發(fā)。   (3)拆除連接階段:在傳完數(shù)據(jù)之后,關(guān)閉套接字,釋放所分配的資源。   使用Soeket編寫(xiě)TCP通信程序的主要步驟如下:   1) 構(gòu)造 Soeket對(duì)象 ;   2) 使用該對(duì)象構(gòu)造基本的Socket句柄。由于遙操作的數(shù)據(jù)通信要求可靠,準(zhǔn)確,故采用TCP協(xié)議,套接字使用流式套接字;   3) 建立客戶機(jī)CSocket,調(diào)用Connect()建立與服務(wù)器套接字的連接.服務(wù)器調(diào)用Listen()監(jiān)聽(tīng)請(qǐng)求連接情況,并在收到客戶端請(qǐng)求后調(diào)用Accept()接收客戶端連接.   4) 構(gòu)造CSocketFile對(duì)象,并使用CSocket對(duì)象與之關(guān)聯(lián).   5) 構(gòu)造CArchive對(duì)象 ,用于接受和發(fā)送數(shù)據(jù)。使用CArchive對(duì)象來(lái)進(jìn)行客戶端與服務(wù)器端之間的Socket通信   6) 通信結(jié)束,關(guān)閉套接字,退出程序。   2 TCP網(wǎng)絡(luò)通信平臺(tái)程序的實(shí)現(xiàn)   本程序是為機(jī)器人遙操作的通信所搭建的一個(gè)網(wǎng)絡(luò)通信平臺(tái),該平臺(tái)實(shí)現(xiàn)了本地服務(wù)器與遠(yuǎn)程客戶機(jī)之間的數(shù)據(jù)網(wǎng)絡(luò)通信,系統(tǒng)結(jié)構(gòu)圖如圖2所示。      圖2 遙操作系統(tǒng)結(jié)構(gòu)圖   本文的程序設(shè)計(jì)是基于TCP/IP協(xié)議的,使用客戶機(jī)/服務(wù)器模式。本程序設(shè)計(jì)調(diào)試的網(wǎng)絡(luò)環(huán)境為采用Windows XP中的 TCP/IP協(xié)議配置的局域網(wǎng),服務(wù)器的的IP地址是192.168.0.104,通信端口可任意設(shè)置,本文設(shè)為4231。

標(biāo)簽:寧波 嘉興 臨汾 菏澤 天津 鄂爾多斯 萊蕪 西藏

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《機(jī)器人遙操作網(wǎng)絡(luò)通信平臺(tái)的設(shè)計(jì)》,本文關(guān)鍵詞  機(jī)器人,遙,操作,網(wǎng)絡(luò)通信,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《機(jī)器人遙操作網(wǎng)絡(luò)通信平臺(tái)的設(shè)計(jì)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于機(jī)器人遙操作網(wǎng)絡(luò)通信平臺(tái)的設(shè)計(jì)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章