新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 机器人遥操作网络通信平台的设计

机器人遥操作网络通信平台的设计

作者:时间:2009-04-07来源:网络收藏

 目前,系统已成为研究的一个热点。在的过程中,本地服务器与远程客户机之间的问题是遥的关键环节。针对机器人遥操作的通信问题,本文了一种在Windows XP环境下,运用实现的基于协议的

本文引用地址:http://www.eepw.com.cn/article/158120.htm

  1 编程原理

  1.1 简介

  Socket(套接字)最初是加州大学伯克利分校为UNIX操作系统开发的接口。后来Intel, Microsoft, Sun等网络厂商将其移植到Windows中,形成了Windows Sockets规范,它定义了一套Windows环境下网络编程的接口。利用Windows Socket开发的网络通信程序的层次结构如图1示。
Sockets编程的结构

图1 Sockets编程的结构

  根据传输数据类型的不同,Sockets可分为流式套接字(SOCK_STREAM)和数据报式套接字(SOCK_DGRAM)两类。流式套接字提供面向连接、可靠的数据传输服务,数据无差错、无重复的发送,且按发送顺序接受。流式套接字实际上是基于TCP协议实现的。数据报式套接字提供无连接服务。数据报以独立包形式发送,不提供无错保证,数据可能丢失或重复,并且接受顺序混乱。数据报套接字实际上是基于UDP协议实现的。

  按照套接字在客户机/服务器(Client/ Server)模式中的功能可将其分为两类:

  监听套接字:该套接字位于服务器端,它的主要功能就是对特定的端口进行不断的监听,当检测到有连接请求时,接受申请,并构造一个新的客户端套接字,与连接申请方的客户端套接字建立连接,从而为双方的通信做好准备。

  客户端套接字:该套接字是用来进行网络通信的实体。它位于客户机和服务器上,服务器必须维持它为之服务的客户一样数量的这种套接字,形成一个以服务器为中心的星型结构。

  1.2 TCP网络通信步骤

  基于Internet的机器人遥操作技术是现代网络技术和机器人控制技术的结合,Internet使用网际分组交换协议作为通信规范,它包括 TCP, UDP和ICMP等协议。其中TCP协议是面向连接的协议,要求在数据交换以前必须与通信方建立一条连接、它具有分段和重组功能,能够确保数据可靠、有序地传输。

  TCP通信整个过程可以分成三个阶段:连接建立、数据传输和拆除连接。

  (1)连接建立阶段:首先服务器中的监听套接字对断口进行侦听,客户端的套接字向服务器端的特定断口提出连接申请。

  (2)通信阶段:这是整个过程的核心部分,任务就是负责数据的收发。

  (3)拆除连接阶段:在传完数据之后,关闭套接字,释放所分配的资源。

  使用Soeket编写TCP通信程序的主要步骤如下:

  1) 构造 Soeket对象 ;

  2) 使用该对象构造基本的Socket句柄。由于遥操作的数据通信要求可靠,准确,故采用TCP协议,套接字使用流式套接字;

  3) 建立客户机CSocket,调用Connect()建立与服务器套接字的连接.服务器调用Listen()监听请求连接情况,并在收到客户端请求后调用Accept()接收客户端连接.

  4) 构造CSocketFile对象,并使用CSocket对象与之关联.

  5) 构造CArchive对象 ,用于接受和发送数据。使用CArchive对象来进行客户端与服务器端之间的Socket通信

  6) 通信结束,关闭套接字,退出程序。

  2 TCP网络通信程序的实现

  本程序是为机器人遥操作的通信所搭建的一个网络通信平台,该平台实现了本地服务器与远程客户机之间的数据网络通信,系统结构图如图2所示。

遥操作系统结构图

图2 遥操作系统结构图

tcp/ip相关文章:tcp/ip是什么



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭