基于图形编程的机器人人机交互系统.docx

上传人:PIYPING 文档编号:10953621 上传时间:2021-06-13 格式:DOCX 页数:5 大小:184.40KB
返回 下载 相关 举报
基于图形编程的机器人人机交互系统.docx_第1页
第1页 / 共5页
基于图形编程的机器人人机交互系统.docx_第2页
第2页 / 共5页
基于图形编程的机器人人机交互系统.docx_第3页
第3页 / 共5页
基于图形编程的机器人人机交互系统.docx_第4页
第4页 / 共5页
基于图形编程的机器人人机交互系统.docx_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《基于图形编程的机器人人机交互系统.docx》由会员分享,可在线阅读,更多相关《基于图形编程的机器人人机交互系统.docx(5页珍藏版)》请在三一文库上搜索。

1、*基于图形编程的机器人人机交互系统陈朝大1,2 ,陈吹信1 ,侯庆华1(1 广东技术师范学院天河学院,广州 510540;2 华南理工大学,广州 510641)摘要:针对传统机器人的复杂性与封闭性,对图形编程的机器人人机交互系统进行研究。该系统采用面向对象程序设计方法,分析了图形编程的可行性,强调了人主动参与机器人行为的重要性。鉴于图像传递过程质量下降,提出了维纳 滤波算法对图像进行修复和还原,使用了 ZigBee 无线通信技术,自主研发了人机交互界面,设计了功能全面的手柄遥控 操作终端。实验证明,该系统实时性能良好,实现了通用性强、界面友好的远程机器人控制。 关键词:人机交互;图形编程;图像

2、修复中图分类号:TM38 文献标志码:A 文章编号:16713133(2014)09003405obot human-machine interaction system based on graphic programmingChen Chaoda1,2 ,Chen Chuixin1 ,Hou Qinghua1(1 Tianhe College of Guangdong Polytechnical Normal University,Guangzhou 510540,China; 2 South China University of Technology,Guangzhou 510641,

3、China)Abstract:Aiming at the complexity and closed traditional robot,research robot human-machine interaction system of graphical programming The system uses object-oriented programming method,analyzes the feasibility of graphical programming,and empha- sizes the importance of people to actively par

4、ticipate in the robot behavior In the image transfer process quality decline,the wie- ner filtering algorithm to repair and restore the image,using ZigBee wireless communication technology,independent research and development of the human-machine interface design,the function comprehensive handle re

5、mote control terminal Experiments prove that the system is practical,real-time performance is good,can realize remote robot versatility,interface friendly control Key words:human-machine interaction;graphic programming;image restoration的操作精度。该系统主要应用于虚拟现实、遥控机器人等的触觉交互人机界面技术。0引言机器人人机交互技术是指通过计算机输入、输出 设备

6、,以有效的方式实现人与机器人对话、交换信息 的技术。操作者可以借助键盘、鼠标、操作杆、位置跟 踪器和数据手套等设备,用手、脚、声音、姿态和身体 的动作、视线甚至脑电波等向机器人传递信息;机器 人则按照操作者的指示完成相关指令和动作。目前, 机器人人机交互系统正处于多通道、多媒体的智能人 机交互阶段,已经取得了不少研究成果1。本文研究基于图形编程的机器人人机交互系统, 用户输入代表机器人动作方式的图形,系统输出用户 所希望的机器人的动作。该系统与现行其他控制系 统相比,充分体现了直接操作的特征。利用维纳滤波 算法对图像进行修复和还原,从而进一步提高了系统1人机交互系统的研究现状及设计方案机器人人

7、机交互系统的研究现状机器人人机交互系统是 智能机器人的关键技 术,借助人的大脑协助机器 人解决非定性的不确定 问题,是提高机器人智能程度的有效途径。目前,机 器人的使用者从专家迅速扩大到了广大未受过专门 训练的普通用户,极 大地提高了用户界面在系统设 计和软件开发中的重要性,强烈地刺激了人机交互 界面技术的进步。人-机器人的交互作用是通 过 用 户界面来实现的。人机交互技术是当前信息产业竞争的一个焦点, 世界各国都将人机交互技术作为重点研究的关键技1 1* 广东省教育厅 2014 年质量工程建设项目;广东省高等教育教学研究和改革项目34陈朝大,等:基于图形编程的机器人人机交互系统2014 年第

8、 9 期术。在美国,机器人人机建模研究在信息技术中被列为六项国家关键技术之一,被认为对于工业技术有着 突出的重要性。美国国防关键技术计划不仅把人机 交互界面列为软件技术发展的重要内容之一,而且还 专门增加了与软件技术并列的人-系统界面内容。日 本也提出了 FPIEND21 计划,其目标就是要开发 21 世 纪的人-机器人界面。德国侧重研究机器人在先进自 动化技术中对工业生产的作用,提出了要向高级的、 带感觉的智能型机器人转移的目标。我国在国家自 然科学基金会、国家重点基础研究发展计划(973 ) 和 国家高技术研究发展计划(863 ) 等项目指南中,均将 先进的人机交互、虚拟现实技术列为予以特

9、别关注的 资助项目。人在系统中是主体,任何先进的机器都是由人设 计和操纵的,所以系统工作效率的优劣以及安全性, 很大程度上决定于人的工作状况。在机器人的行为 中融入人的主动参与,能极大地提高精度,这正是研 究人机交互系统的重要性2所在。1 2机器人人机交互系统的设计方案 机器人人机交互系统的设计方案如图 1 所示。摄像头把图像转变为数字信号传输到数字信号处理器 ( DSP) ,再 经过 ZigBee 无线通信系统传输到上位机 PC。操作者借助人机交互界面对机器人的现场环境 进行分析及判断,通过手柄控制器向机器人发送指 令,从而控制机器人的车体及机器臂。图形编程的物理基础摄像头( CAMEA)

10、又称为电脑相机、电脑眼等, 它作为一种视频输入设备,在机器人领域被广泛地运 用于远程操作及实时监控等方面。摄像头分为数字摄像头和模拟摄像头两大类。 数字摄像头可以直接捕捉图像,然后通过串口、并口 或者通用串行总线( USB) 接口传送到计算机里。模 拟摄像头则将视频采集设备产生的模拟视频信号经 过特定的视频捕捉卡转换成数字信号,并加以压缩后 才可以转换到计算机上运用。数字成像比模拟成像更适合于 DSP,USB 接口的 传输速度远高于串口、并口的速度,所以本文图形编 程交互系统选用带有 USB 接口的数字摄像头。摄像头的工作原理为: 景物通过镜头( LENS) 生 成的光学图像投射到图像传感器表

11、面上,然后转化为 电信号,经过模 / 数( A / D) 转换后变为数字图像信号, 再传输到数字信号处理芯片中进行加工处理,最后, 通过 USB 接口传输到计算机中,这样,通过显示器就 可以看到图像。2 12 2利用维纳滤波算法对图像进行修复维纳( Wiener) 滤波也就是最小二乘滤波,它是使原始图像 f( x,y) 及其恢复图像 f( x,y) 之间的均方误差最小的复原方法,x、y 为图像在 X、Y 方向的坐标值。 维纳滤波综合了退化函数和噪声统计特性两个方面 进行复原处理。维纳滤波是寻找一个滤波器,使复原 后图像与原始图像的均方误差最小。运动模糊图像的复原是确定模型化的一个主要 方法,即

12、从其物理特性的基本原理来推导数学模型。 如运动模糊图像的复原,当成像传感器与被摄景物之 间存在足够快的相对运动时,所摄取的图像就会出现 “运动模糊”,即图像获取时被图像与传感器之间的均 匀线性运动模糊了。从噪声中提取信号波形的各种 估计方法中,维纳滤波是一种最基本的方法,适用于 需要从噪声中分离出的有用信号是整个信号( 波形), 而不只是它的几个参量。维纳滤波算法过程框图如 图 2 所示。图 1 机器人人机交互系统的设计方案当人借助于交互工具主动参与和控制机器人行为时,机器人系统比无人时运行更为有效,具有更强 的容错性。对机器人的研究重点应该是人机交互方 式,而不是全自主方式。2图形编程交互系

13、统的关键技术由图 1 所示可知,人能够帮助机器人进行分析及决策,但前提条件主要是摄像头传输回来的图像要准确。摄像头的成像质量及形成的数字信号传输到 DSP 控制器需要做何种算法的修正,直接影响到人机交互 界面所观察到的现场信息环境3。图 2 维纳滤波算法过程框图35现代制造工程( Modern Manufacturing Engineering)2014 年第 9 期图 2 中,图像 f(x,y)被线性点扩展函数 h(x,y)所模糊,并被叠加上噪声 n(x,y),构成了退化图像 g(x,y);经逆滤波器 h 1 (x,y)去卷积,得到复原的图像 f(x,y)。设维纳滤波器的输入为含噪声的随机信

14、号。期 望输出与实际输出之间的差值为误差,对该误差求均 方,即为均方误差,因此均方误差越小,噪声滤除效果 就越好。为使均方误差最小,关键在于求冲激响应。 如果能够满足维纳-霍夫方程( 即式(1 ) 式(3 ) ,就 可使维纳滤波器达到最佳。根据维纳-霍夫方程,最佳 维纳滤波器的冲激响应完全由输入自相关函数以及 输入与期望输出的互相关函数所决定。维纳滤波器复原方法是假定图像信号可被近似 地看成平稳随机过程,只要使原始图像 f( x,y) 和复原图像 f( x,y) 之间的均方误差 e2 达到最小,就认为它们 二者之间的误差可以忽略不计。所以,维 纳滤波原 则是4:图像的形式为数字信号,而且该数字

15、信号即为退化图像 g( x,y) ,以该数字信号作为实际参数,送 DSP 中的维纳滤波算法处理子程序,得到复原图像f( x,y) ,从而 令运动失真的图像得到极大的修复和还原,再通过无 线通信模块发送到上位机。移动机器人遥控操作软件系统采用可视化技术编写的程序界面可读性强,易 于操作。可视化编程语言 VC、VB 的广泛应用推动 了图形编程思想的快速发展,图形编程代表了机器 人人机交互技术的发展方向。人机交互系统的关键 技术是设计良好的人机界面,通过可视化编程技术 设计的界面,用户能够使用 手柄控制器向机器人发 出命令,同时,通 过界面将机器人的环境、状 态信息 向用户反馈可视化编程语言 VC

16、+ + 不仅继承了 C + + 的优 点,而且具备可视化编程和程序生成器的突出特点, 本软件系统设计的人机交互模型就是在 VC + + 集成 开发环境下研制的。35。e2 = minE f( x,y) f( x,y) 2 式中:E 为均方误差取平均值。(1)图像复原过程就是要找到一个合适的点扩展函数 h( x,y) ,使它与生成图像实施去卷积( 逆滤波) ,即实现图像重构,其结果便是复原图像 f( x,y) 。二维 维 纳 去 卷积滤波器的传递函数 Hw ( u,v) 为4:VC + + 上位机类库框架( MFC) 利用串口发送数据由图 1 所示可知,人机交互界面( 上位机) 和 DSP 控制

17、器是通过 ZigBee 无线通信模块进行信息双向交 流的,而 DSP 控制器可以使用标准 SCI 通信协议,所 以在 VC + + 中利用 MSComm 控件进行开发,该控件 支持应 用程序对串口的访 问,在应用程序中插入 MSComm 控件后就可以方便地实现通过计算机串口 收发数据。只要把上位机设置为串口通信模式,通过 ZigBee 模块发送出去,DSP 就可以正确接收并进行相关的数 据处理。MFC 串口发送数据流程图如图 3 所示。3 1H* ( u,v) P ( u,v) f Hw ( u,v) =(2)2 P ( u,v) + P ( u,v)H( u,v)fn*式中:Pf 、Pn 分

18、别为图像信号与噪声的功率谱;H(u,v)为 H(u,v) 的复共扼;H(u,v) 为函数 h(x,y) 的傅里叶变换;u、v 分别为频域在水平与垂直方向上的频率分量。 因为式(2) 中分子含有 H* ( u,v) 项,所以在任何H( u,v) = 0 处,维纳滤波器的增益恒等于零。 二维维纳去卷积滤波器的传递函数 Hw (u,v)称为维纳滤波器的转移函数。由式(2)可以看出,该转移函数对噪声放大有自动抑制作用,当 H(u,v)在某处等于 0 时,由 于存在 Pf (u,v) / Pn (u,v)项,所以分母不会为 0。特别是当 Pn ( u,v) = 0 或 Pn ( u,v)时4,有: 1

19、Pf ( u,v)Hw ( u,v) = H( u,v)(3)这时,维纳滤波变成了逆滤波,维纳滤波提供了一种在有噪声情况下导出去卷积转移函数的最佳方法。 如图 1 所示,摄像头把拍摄到的图像传送给 DSP,36图 3 MFC 串口发送数据流程图陈朝大,等:基于图形编程的机器人人机交互系统2014 年第 9 期发送数据流程代码如下:void CControlDlg:OnOpenPort()if( m_Ctrlcom GetPortOpen() m_Ctrlcom SetPortOpen( FALSE); m_Ctrlcom SetCommPort(1);if(! m_Ctrlcom GetPor

20、tOpen()m_Ctrlcom SetPortOpen( TUE);/ / 添加 MFC 计入文件C: Program Files Microsoft Visual Studio VC98 ATL INCLUDE/ / 添加 ATL 计入文件Tools-Options-Directories-Library files / / 添加库存文件C: Program Files Microsoft Visual Studio VC98 LIB / / 添加 VC98库存文件C: Program Files Microsoft Visual Studio VC98 MFC LIB / / 添加MFC

21、 库存文件添加 Include files 和 Library files 两个库函数,则库 函数包含串口控件驱动程序、手柄控制器驱动程序和数 字摄像头驱动程序等,这样就能够正常驱动硬件设备。 3 3 人机交互界面友好的人机交互界面要求内容丰富、更新及时。 在人机交互界面设计中,首先应进行界面设计分析, 即收集有关用户及其应用环境信息以后,进行用户特 性分析、用户任务分析,记录用户有关系统的概念及 术语,这项工作可与应用系统分析结合进行。分析任 务中对界面设计要有界面规范说明,选择界面设计类 型,并确定设计的主要组成部分。设计人机交互界面,进行人机分工时,要充分发 挥人机的各自特点。可采用最大

22、最小原则,即人承担 的工作量应尽量少或最少,机器人承担的工作量应最 多,在最大限度利用机器人的同时,充分发挥人的积 极因素。人机结合并充分注意人的主导地位,将会有 效地保证系统的可靠性和寿命7。本系统自主研发的机器人人机交互界面如图 4 所 示。该界面主要包括串口状态、手柄状态、机械臂和 车身 4 个子窗口,并以 U 盘代替危险物进行演示8。 本系统介绍的机器人主要结构包括机械臂和车 身两部分。机械臂有 6 个关节,分别为手爪、手腕、小 臂、中臂、大臂及云台,6 个关节上各安装有 1 个伺服 电动机,实现仿生人手的各类运动。车身采用履带形 式走动,利用 DSP 驱动直流电动机实现前后、左右、加

23、速和减速等动作。串口状态子窗口反映了上位机是否能够和下位 机正常通信,如 果子窗口显 示“OK”,则 代表通信成 功,数据可以正常交流。手柄状态子窗口有 13 个按 键,与 BTP-C024 手柄里面的按键一一对应。由于本 系统控制对象比较多,所以需要做按键复用处理,设 置 Select 键为机械臂控制和车身控制切换键。如果按下 Select 键,则为机械臂控制模式,机械臂 有 6 个关节( 伺服电动机) ,在机械臂子窗口分别用 U1 U6 表示。键 Left 和键 ight 控制 U1( 电动机 1), 按键 Left 或按键 ight 能改变输入正脉冲宽度,进而37/ / 关闭串口/ /

24、选择串口 1( com1)/ / 打开串口GetDlgItem( IDC_EDIT1) SetWindowText( ok );/ / 串口打开成功,显示文本 okelseAfxMessageBox( cannot open serial port );串口/ / 没有发现GetDlgItem( IDC_EDIT1) SetWindowText( error );/ / 串口打开失败,显示 errorm_Ctrlcom SetSettings( 9600,n,8,1 ); 无校验,8 个数据位,1 个停止位/ / 波特率 9600,m_Ctrlcom SetInputMode( 1 );取数据

25、m_Ctrlcom SetThreshold( 1 );/ /1:表示以二进制方式检/ / 数字 1 表示每当串口接收缓冲区中有多于或等于一个字符时将引发一个接收数据的 OnComm 事件m_Ctrlcom SetInputLen(0 );为 0m_Ctrlcom GetInput();/ / 设置当前接收区数据长度/ / 先预读缓冲区以清除残留数据UpdateData( false);/ / 关闭数据更新VC + + 中手柄驱动及摄像头驱动的实现手柄是一种电子游戏机的输入设备,通过操纵其 按钮,实现对计算机上模拟角色的控制。手柄控制器 的设计左侧为方向键,右侧有 4 6 个功能键,根据需 要

26、还可能在别的部位加入更多的功能键,实现不同的 功能。USB 手柄的安装简易,占用系统资源低,功能 定义丰富,兼容性强,对于需要持续或者连续控制的 变化量而言,使用手柄比一般键盘在车体控制方面的 优越性更加突出,所以本设计方案采用带有 USB 接口 的 BTP-C024 计算机手柄6。手柄控制器和数字摄像头的硬件已经确定,只要 在 VC + + 中添加驱动函数就可以正常使用。添加手 柄及摄像头消息的程序代码包流程如下:3 2/ / 添加计入文件Tools-Options-Directories-include filesC: Program Files Microsoft Visual Stud

27、io VC98 INCLUDEVC98 计入文件/ / 添加C: Program Files Microsoft Visual Studio VC98 MFC INCLUDE现代制造工程( Modern Manufacturing Engineering)2014 年第 9 期控制伺服电动机输出位置。 键和 键控 制2 和键 4 控制 U5,键 1 和键 3 控制 U6,从而实现机器人的姿势调整。UpDownU2,键 L1 和键 L2 控制 U3,键 1 和键 2 控制 U4,键图 4 机器人人机交互界面如果不按下 Select 键,则为车身控制模式,车身子窗口中 M1 代表 1 #电动机,M

28、2 代表 2 #电动机,Speed 为脉冲宽度调制后的高电平值,代表当前车体的运动 速度。键 L1 和键 L2 控制 1 #电动机的加速、减速,键 1 和键 2 控制 2 #电动机的加速、减速,通过状态组 合就能实现车体的前进、后退、转左、转右、加速、减速 和停止等动作,实现机器人的位置调整。的设计与实现J 计算机科学,2009,36(2) :245 247张弘 数字图像处理与分析M 北京: 机械工业出版 社,2007郭本振,李声晋,卢刚 仿袋鼠跳跃机器人用关节运动控 制器设计J 测控技术,2011,30(2) :38 41 王晓丽,侯媛彬,王涛 基于 VC + + 的工业机器人轨迹规 划研究

29、J 工矿自动化,2009(5) :34 37 朴春日,颜国正,王志武,等 一种履带式机器人设计及 其越障分析J 现代制造工程,2013(3) :24 27 陈朝大 基于串行通信技术的机械臂运动控制J 制造 业自动化,2013,35(10) :91 9445674结语人机系统采用人机结合的设计思想,充分考虑人8的因素,发挥人的智能决策性,对于提高系统效能、增加可靠性和安全性都有十分重要的意义。在整个人 机交互系统之中,用户所期望的输出是机器人动作的 某种组合,所以应用核心的任务是实现“图形编程”思 想中的“编程”功能。实验表明,利用手柄控制器,通 过对人机交互系统界面的操作,能够控制机器人的各 种动作,是一个新式的实验系统。参 考 文 献:1李宗玮,孙雷 基于智能手机的网络机器人人机交互系 统J 计算机工程与应用,2011,47(15) :64 68 杨冬,李铁军,刘今越 人机系统在机器人应用中的研究 综述J 制造业自动化,2013,35(5) :89 93 白冰,吴潇文,刘华平,等 室外移动机器人遥操作系统 作者简介:陈朝大,硕士,讲师,华南理工大学访问学者,研究方向为模式识别与智能系统、计算机应用技术。E-mail:gugu0769 126 com收稿日期:2013-11-112338

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1