基于vc++的智能机器人指令交互系统设计 优秀毕业论文

上传人:suns****4568 文档编号:82968005 上传时间:2019-02-25 格式:DOC 页数:23 大小:7.34MB
返回 下载 相关 举报
基于vc++的智能机器人指令交互系统设计  优秀毕业论文_第1页
第1页 / 共23页
基于vc++的智能机器人指令交互系统设计  优秀毕业论文_第2页
第2页 / 共23页
基于vc++的智能机器人指令交互系统设计  优秀毕业论文_第3页
第3页 / 共23页
基于vc++的智能机器人指令交互系统设计  优秀毕业论文_第4页
第4页 / 共23页
基于vc++的智能机器人指令交互系统设计  优秀毕业论文_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《基于vc++的智能机器人指令交互系统设计 优秀毕业论文》由会员分享,可在线阅读,更多相关《基于vc++的智能机器人指令交互系统设计 优秀毕业论文(23页珍藏版)》请在金锄头文库上搜索。

1、基于VC+的智能机器人指令交互系统设计摘 要:本文以简化操纵控制方法,便于用户应用为目的,设计了一套基于VC+的智能机器人指令交互系统,重点是对基于上位机视觉图像的处理和决策系统的设计。系统采用通过与RS-232C串口连接的无线收发模块,对轮式的移动外设进行指令发送,可实现自主移动和手动两种控制模式。在系统搭建完毕后,本文设计了两个探索性实验,分别调试视觉子系统辨识的稳定性,对机器人行进路径控制参数进行整定,并优化控制方案。本系统可应用于家庭服务型机器人,还可以在消防、救援、野外巡逻等领域发挥其应有的作用。关键词:计算机视觉,多模式控制,上位机控制系统Design of Intelligent

2、 Robot Interactive Instruction System Based on VC+Abstract: The paper is on the purpose of user-friendly application through simplifying the manipulation. And the significant design is the PC-based visual processing and the decision making system. T o send peripherals to the wheel instruction, the s

3、ystem adopt the wireless transceiver module that is connected with RS-232C serial port. The control method mainly relates to the conversion from the actual scene pixel coordinate system to the visual image pixel coordinate system and the switch between autonomous mobile mode and manual mode. After t

4、he completion of structure, the article designs two exploratory experiments that are used to debug visual identification of the stability of the subsystems respectively, meanwhile, the robot path of the control parameter is adjusted and the control method is optimized. The system can be applied to f

5、amily service robots, but also in the fire, rescue, patrol and other outdoor play its due role in the field.Key Words: Computer Vision, Multi0mode control, PC control system1 绪论当今机器人市场前景广阔,尤其是应用在普通家庭的服务性机器人。传统的工业机器人虽然具有功能完善,智能化高的特点,但是由于研制周期长、操作方法复杂、成本高等缺陷,因此不便于机器人的市场化和大众化。要想使机器人走入普通家庭,本文认为应该做到以下几点:1

6、)降低机器人成本。2)缩短研发周期。3)简化机器人操作方法,使机器人和操作者可以更好的进行指令交流。基于以上目的,本文设计了一套基于视觉系统的智能机器人指令交互界面。使操作者利用普通的PC机和CCD摄像头就可以实现对机器人的控制,系统简单实用,易于构建;操作方便简捷,把用户从繁琐的操作中解放出来,多种操作模式可以适合不同用户不同场景的应用。2 系统构成上位机作为整套系统的控制计算中枢,通过视频采集卡连接前置CCD摄像头,将采集到的图像数据存入为图像处理专门开辟的一段计算机内存中,通过对内存中图像数据的计算完成目标特征的提取(本课题采用色块作为特征物),并且根据提取的特征值对图像进行处理,确定相

7、应的图像坐标。上位机根据图像中目标物的位置信息,将经过运算得出的行动指令传送给移动外设。上位机通过RS-232C串口与RF(射频)通信模块连接,并且将速度值传给移动外设。通过前置CCD摄像头实时采集返回的画面确定目标物的实时位置,进行下一步的计算控制。系统结构如图2.1所示。数字图像 视觉子系统活动场地模式识别外设子系统决策子系统机器人位姿和场地信息通讯子系统无线电信号图像处理图2.1 移动外设控制系统体系结构示意图Fig. 2.1 Architecture diagram of mobile peripheral control system移动外设主要由轮式移动小车和绑定在小车上的CCD摄

8、像头两部分组成。如图2.2所示图2.2 移动外设Fig. 2.2 Mobile PeripheralsCCD摄像头通过同轴电缆与视频采集卡(即摄像头的驱动电路)相连,并把视频数据传入视频采集卡的缓冲区中以待PC机程序的随时提取。视频采集卡通过PC机主板上的PCI插口与上位机相连。如图2.3所示图2.3 视频采集卡与PCI插口的连接Fig. 2.3 the connection of PCI video capture card and socket小车的两个轮子分别由两个步进电机驱动,步进电机通过小车上的天线接收驱动信号以及速度值,完成小车的行进动作。小车上的天线与连接在上位机上的通信发送模块

9、进行信道和频率的匹配,以完成无线通信,无线发送模块如图2.4所示。图2.4 无线发送模块Fig. 2.4 wireless transmission module无线发送模块通过RS-232C与上位机连接。这样就完成了整套系统环路的硬件连接,数据流向如图2.5所示:目标物CCD摄像机视频采集卡PC机程序无线发送模块轮式小车图像识别同轴电缆PCI插口RS-232C无线通信你驱动电机跟踪目标物图2.5 数据流向示意图Fig. 2.5 Data flow diagram3 VC+6.0人机交互界面设计及实现3.1主要功能1)完成对图像采集卡的驱动以及采集卡ROM中被封装的函数的提取。(视频采集、压缩

10、、存取)2)为用户提供图像显示界面并提供视觉刺激信号。3)图像特征(色标)的提取和分析处理。4)完成对RF射频卡的驱动和数据传输。5)对移动外设的指令编辑和发送。3.2人机交互界面介绍我们设计的人机界面如图所示图3.1 人机交互窗口Fig. 3.1 HCI windowDisplay:点击显示图像。Hand、Auto:选择自动模式或者手动模式控制移动外设。Ball:点击单选框并且在图像上点击相应的色标图案完成对目标物的初始化识别。ball_x、ball_y:移动外设的实时坐标显示。R、G、B:被选取的特征色块的对应的R、G、B三个分量的颜色值。RunStart、RunStop:自动模式运行开始

11、和停止(在相应色标初始化全部完成后有效,否则弹出提示)。vl、vr:机器人的左右轮速度值。Forward、Back、Left、Right、RobotStop:手动控制按钮,分别对应机器人的前进、后退、左转、右转、停止。在对目标物的识别初始化完毕,进入自动控制模式下时,确定了目标位置后,机器人根据上位机基于视觉的感知计算进行自主导航移动,达到目标,完成任务(或进行下一步动作)。程序流程图如图所示:图3.3 主要框架流程图Fig. 3.3 The flow chart of the main frame3.3 RS-232C串口通信部分此部分主要负责串口射频卡与上位机的连接,以及上位机通过RS-2

12、32C向机器人发送数据。在程序中主要通过CComm类实现。通信过程流程图如图4.4所示:开始设定串口通信端口SetComPort()保存通信端口信息CreateCommInfo()打开端口OpenComPort()发送数据给端口WriteCommBlock()关闭端口通信CloseConnection()结束图3.4 通信过程流程图Fig. 3.4 The flow chart of the communication process如果需要建立通信过程,首先需要完成对串口通信的建立及初始化。在程序中首先创建CComm类的一个实例m_pComm,初始化代码如下:CComm m_pComm;m_

13、pComm.SetComPort(1, 19200, 8, 0, 0); /端口号为1,比特率为19.2kb/s,字长为8位。m_pComm.CreateCommInfo();m_pComm.OpenComPort();当串口建立完毕后,我们调用函数WriteCommBlock( LPSTR lpByte , DWORD dwBytesToWrite)向打开的串口中写入数据,其中:LPSTR lpByte表示要传送数据的地址;DWORD dwBytesToWrite表示要传送数据的长度。此函数在程序中被速度函数Velocity(int vl , int vr)调用,用来发送小车轮子的速度值。在

14、程序中我们定义一个长度为8的字符型一维数组command,我们将Velocity()计算得出的速度参数存入这个数组中,然后调用WriteCommBlock(),将速度值传送给移动外设。由于射频模块允许把三组左右轮速度分别发送给三辆不同的小车,因此除command0与command7为“0”外,其余六个元素分别代表三组左右轮速度值,其中command1与command2为本文中移动外设(1号车)的左右轮速度vl、vr。代码如下:unsigned char command8;command0=0x00;command1=(unsigned char)vl;command2=(unsigned ch

15、ar)vr;command7=0x00;m_pComm.WriteCommBlock(LPSTR)command,8);3.4视觉部分在本课题中,我们采用MyVision99图像采集卡来实现对摄像头数字图像的采集和提取。MyVision99视频采集卡是基于PCI总线的,PCI总线可以独立的对图像进行采集和存储,因此解放了CPU,可以使更多的CPU资源用于图像处理。“MyVision.h”是视频采集卡为便于VC+编程而提供的头文件,负责提取封装在采集卡ROM中的函数。主要函数如下。char *sysGetDrvVer();此函数返回安装在计算上的采集卡驱动版本的字符串指针。如果驱动没有被成功的安装在计算机中,此函数将返回NULL。“MVDr.vxd”的版本字符串指针为“MVDr Ver 1.0”。HBUF bufAlloc(int SizeX, int SizeY, int DataType);此函数分配一个SizeX*SizeY的内存单元并且返回此内存单元的句柄。DataType的值是和图像数据信息以及内存类型信息相关联。本文

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 毕业论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号