基于远程机器人系统的自动控制平台的研究与设计_第1页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于远程机器人系统的自动控制平台的研究与设计在网络和多媒体技术飞快进展的今日,通过网络传输的远程图像对机器人举行控制已经成了一种可行的技术。利用这种技术,可以对远程机器人的活动举行检测,从而获得实时的信息,再据此向远端的机器人发出某种指令。但假如由人挺直在远端举行控制,就需要其长时光地通过传输过来的图像监测机器人的行为,同时还要不断向远端机器人发送相同的指令。明显由电脑举行智能化的自动控制更合适。远程机器人的自动控制平台正是基于这种考虑而研制的。本课题组研制的原有的远程机器人实时图像传输和实时控制系统分为两个部分:一是远程机器人站点,二是控制站点。其中远程机器人站点负责图像信息的采集、压缩、传

2、输,同时接收控制端发送的指令并执行;控制站点对图像举行解压、显示,同时向远程机器人站点发送指令。自动控制平台就是在原有系统的基础上,在控制站点的应用程序中加上了对远端传送过来的图像举行推断、并依据推断自动发送指令的部分。2 相关技术2.1 图像的采集与显示在远程机器人站点,需要对机器人现场举行图像采集;而在控制端,则需要对机器人的图像举行显示。在本系统的应用程序中,采集和显示是通过对vfw的调用来实现的。vfw(video for windows sdk)是microsoft公司于1992年推出的被称为avicap窗口类函数的系统调用接口。通过vfw的调用,可以通过发送信息或是设置属性来采集或

3、播放视频剪辑。如在程序中,调用capcreatecapturewindow就可以创建一个视频采集窗口,调用capsetcallbackonframe就可以设定采集到一帧图像时的回调函数,在回调函数中可以进一步作显示或对图像作其它处理。vfw惟独vc和vb版本,而本系统采纳delphi举行开发,以便获得delphi优良的界面功能和多线程机制。为此需要先用pascal对vfw.h举行改写,得到在delphi中可以挺直调用的vfw.pas文件。尽管在编程时用法的是vfw,但是因为程序运行在windows2000下,事实上驱动程序仍是用法wdm(windows driver model)。wdm也是由

4、microsoft公司推出的,相对于vfw,在视频会议、pc/tv等方面有较大优势。2.2 图像压缩本系统中采纳了多种图像压缩算法,以适应多种网络传输环境和实时性要求,其中包括显示质量好但开销大的mpeg4,以及开销小适用于远程传输但网络传输率低的h.26x。此外还有本课题组自行开发的一个tsinghua h.263压缩算法,在系统用法时可以按照网络的状况来举行挑选。假如网络状况好,则用法显示质量好的mpeg4,假如网络不好,则用法开销小的h.263。2.3 网络传输的自适应除了压缩算法可灵便挑选之外,本课题组还设计了两种自适应的办法来对传输举行调整,以便更好地适应网络条件。一种是帧频的自适应

5、,通过调整机器人端视频发送速率来实现对图像质量的自适应;另一种是通信带宽的自适应,通过调整关键帧和非关键帧的质量来调整单位时光发送的数据量,从而与网络状况相适应。2.4 多进程、多线程的用法本系统可同时控制多个机器人站点。每当衔接一个新的远程机器人站点时,控制站点会自动产生一个新的进程对该机器人站点举行控制。在对一个机器人站点举行控制的进程中,同时会有几个线程来分离实现几方面的功能。chatthread线程负责机器人站点和控制站点之间的文字通信,syncthread线程则负责两站点传送和接收的同步性,最大的也是最主要的drawthread线程负责图像的接收、解压缩以及显示,同时实现自动控制功能

6、。2.5 自动控制如前所述,自动控制包括两方面:一是对传送过来的图像信息举行分析,获得机器人的实时状态。二是依据机器人目前所处的状态发出相应的指令。对图像信息举行分析是通过与标准图像举行比较来实现的,以此来确定机器人是否已经进入了某种状态。假如发觉机器人当前处于某种标准图像对应的状态,则控制站点会发出与该状态相对应的指令。因为目前机器人不行能有很灵便的细腻的动作方式,所以只需要对几个关键部位(例如头部、手臂等)的图像举行比较,即可确定机器人当前的状态。由此,为标准图像的存储和识别提供了有利条件,也为自动控制平台的设计和实现提供了前提。3 自动控制平台的设计与实现3.1 设计思想机器人的某一个运

7、动过程普通可以分解为若干个关键状态。当其处于某一状态时,需要通过向它下达某一种命令才干使之向下一个状态转换。因此,可以在某一个文件中存储完成该运动过程所需要的各个关键状态的图像信息,并存储与该状态相对应的命令。要执行该运动过程时,通过应用程序读入该文件,获得各状态的信息,然后即可开头将实时的图像信息与关键状态的图像信息相比较,假如相符,则发出相应指令。事实上,这个文件就相当于一个运行脚本。可以在手动控制的过程中,制作好这样的运行脚本。下次要执行同样的操作时,只需要把这个脚本读入,就可以实现自动控制功能。3.2 数据结构在程序中,建立了一个名为scformat的数据结构,来描述和存放运行脚本。s

8、cformat的基本结构1所示。一个scformat即对应于一个完整的脚本文件。因为对数据文件采纳链表方式来组织,所以其中可以含有随意多个标准图像及其对应的指令。scformat中包含诸如色深/colordepth(1表示8位色,依此类推)、图像个数/framenum、图像宽度/framewidth、图像高度/frameheight等数据块,datahead、datatail则是数据链表的头尾指针。一个data则对应于一幅图像,除了fwidth、fheight、depth这些基本的信息之外,order是一个字符数组,用来存放对应的指令,segnum表示这幅图像中所截取的几个最重要的反映机器人基

9、本运动状况的关键部分,pnext则指向数据链表中的下一个data。对于一个data图像中截取的各个部分,同样采纳链表结构来组织,seghead、segtail则分离指向链表的头尾。一个seg对应于从图像中截取的一个关键部分,其中,width、height表示该部分的宽度、高度,topx、topy则是该部分左下角在该图像中的坐标,以适应图像的数据从左下角开头存储的规章。segdata指向该部分详细的图像数据。图2是各个结构在图像上的详细关系。上述数据结构的优点是其具有充分的多方面的灵便性。由于对应于不同的运动过程的脚本文件可能需要不同数目的标准图像,而对应于机器人处于不同状态的图像,为了反映机器

10、人的运动状态,也可能需要截取不同数目的关键部分。因为上述数据结构的灵便性,对于标准图像的数据data和图像中的关键部分seg,都采纳链表结构来组织,所以可以适应各种不怜悯况。同时,对于scformat、data、seg这些数据结构,分离提供了各种函数以及过程,使得在举行图像的截取、脚本文件的存储、脚本文件的读取和显示时都相当便利。3.3 流程要点详细的流程分为以下两个方面:其一是控制脚本的获得,由人工举行手动控制实现。基于上面的这种数据结构,此过程可以精确完成。在此过程中,首先创建一个scformat结构。因为其中的数据是根据链表结构组织,所以可以随时加入标准图像及相应的指令。同时对于某一幅特

11、定图像,可以选取图像中的若干关键部分。此过程结束后,可以调用scformat的writescfile,将得到的脚本文件存放到硬盘文件中。其二是自动控制过程。在举行自动控制时,首先从硬盘上读入文件,调用readscfile将文件中的数据加入到一个scformat结构中。然后根据这个scformat脚本文件中的数据举行自动控制。因为系统中采纳压缩技术,所以在控制站点取得压缩包之后,举行解压,得到实时图像,然后将实时图像与运行脚本中的图像逐个举行比较。假如比较相符,则停止比较,同时将相应的指令传送给远端机器人;假如获得相符的结果,则解释机器人当前不处于任何特定的状态,所以继续循环检测和比较。4 平台

12、运行环境本系统在试验室中举行了充分的测试和修改,硬件和软件的环境如下。硬件环境:intel pentium 4 处理器nvidia tnt2 m64 图像显示卡intel proshare personal conferencing 摄像头,leadtek winfast tv2000视频采集卡10m/100m自适应网卡,100m以太网软件环境:microsoft windows 2000 advanced serverborland delphi 6.0 (with update pack 2)microsoft visual c+ 6.0 (service pack 5)5 实际测试本系统在试验室中举行了充分的测试。在通常的状况下,对于反映某一运动状态的图像,系统默认可以抽取05个关键部分来反映该状态的特征。而对于一个运行脚本而言,假如是有序化的容易脚本(也就是说脚

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论