• 企业400电话
  • 网络优化推广
  • AI电话机器人
  • 呼叫中心
  • 全 部 栏 目

    网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    机器人遥操作网络通信平台的设计
    POST TIME:2021-10-24 12:18
    目前,机器人遥操作系统已成为机器人研究的一个热点。在机器人遥操作的过程中,本地服务器与远程客户机之间的网络通信问题是遥操作的关键环节。针对机器人遥操作的通信问题,本文设计了一种在Windows XP环境下,运用Socket实现的基于TCP/IP协议的网络通信平台。   1 Socket编程原理   1.1 Socket简介   Socket(套接字)最初是加州大学伯克利分校为UNIX操作系统开发的网络通信接口。后来Intel, Microsoft, Sun等网络厂商将其移植到Windows中,形成了Windows Sockets规范,它定义了一套Windows环境下网络编程的接口。利用Windows Socket开发的网络通信程序的层次结构如图1示。      图1 Sockets编程的结构   根据传输数据类型的不同,Sockets可分为流式套接字(SOCK_STREAM)和数据报式套接字(SOCK_DGRAM)两类。流式套接字提供面向连接、可靠的数据传输服务,数据无差错、无重复的发送,且按发送顺序接受。流式套接字实际上是基于TCP协议实现的。数据报式套接字提供无连接服务。数据报以独立包形式发送,不提供无错保证,数据可能丢失或重复,并且接受顺序混乱。数据报套接字实际上是基于UDP协议实现的。   按照套接字在客户机/服务器(Client/ Server)模式中的功能可将其分为两类:   监听套接字:该套接字位于服务器端,它的主要功能就是对特定的端口进行不断的监听,当检测到有连接请求时,接受申请,并构造一个新的客户端套接字,与连接申请方的客户端套接字建立连接,从而为双方的通信做好准备。   客户端套接字:该套接字是用来进行网络通信的实体。它位于客户机和服务器上,服务器必须维持它为之服务的客户一样数量的这种套接字,形成一个以服务器为中心的星型结构。   1.2 TCP网络通信平台设计步骤   基于Internet的机器人遥操作技术是现代网络技术和机器人控制技术的结合,Internet使用网际分组交换协议TCP/IP作为通信规范,它包括 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协议的,使用客户机/服务器模式。本程序设计调试的网络环境为采用Windows XP中的 TCP/IP协议配置的局域网,服务器的的IP地址是192.168.0.104,通信端口可任意设置,本文设为4231。
    上一篇:最适合初学者学习的机器人有哪些
    下一篇:2019年中国工业机器人市场销量状况分析
  • 相关文章
  • 

    关于我们 | 付款方式 | 荣誉资质 | 业务提交 | 代理合作


    © 2016-2020 巨人网络通讯

    时间:9:00-21:00 (节假日不休)

    地址:江苏信息产业基地11号楼四层

    《增值电信业务经营许可证》 苏B2-20120278

    X

    截屏,微信识别二维码

    微信号:veteran88

    (点击微信号复制,添加好友)

     打开微信