机器人虚拟示教的实现
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
张爱红 , 张秋菊
(江南大学 , 江苏无锡 214000)
摘要 : 本文介绍了基于虚拟现实技术的机器人示教方法 : 通过人手引导输入装置产生示教轨迹、键盘输入作业指令实
现对虚拟机器人的示教 ; 介绍了虚拟示教系统的软硬件环境 , 重点介绍了虚拟现实系统中的人机交互装置 , 最后提出了针
对 MOTOMAN机器人虚拟示教的实施
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
。
关键词 : 机器人 ; 虚拟现实 ; 示教
中图分类号 : TP242 文献标识码 : A 文章编号 : 1010 - 3881 (2003) 4 - 149 - 3
Realization Method for Robot Virtual Teaching
ZHANG Ai - hong , ZHANG Qiu - ju
(Jiangnan University , Jiangsu Wuxi 214000 , China)
Abstract : This paper describes the teaching method based on VR technology. It means that a manipulator leads the interface equipment
to create teaching path during teaching and at the same time inputs instructions through keyboard. Subsequently , the software and hardware
settings for virtual teaching are described especially for those which can be used to exchange data messages between human and machine. At
last a concrete project is presented to carry out the virtual teaching for MOTOMAN industrial robot.
Keywords : Robot ; Virtual reality ; Teaching
0 引言
工业机器人示教 ( Teaching) 是指操作者在实际
工作环境中 , 通过下述方法实现 : 人手引导机器人末
端执行器或引导一个机械模拟装置 , 或用示教盒操作
机器人完成作业所需位姿 , 并记录下各个示教点的位
姿数据 , 利用机器人语言进行在线编程 , 程序回放
时 , 机器人便执行程序要求的轨迹运动。目前 , 随着
机器人应用技术的推广以及为了进一步提高生产效
率和操作安全性 , 迫切需要开发新的示教编程技术。
而且随着机器人离线编程技术的出现 , 虚拟现实技术
的飞速发展 , 已经为机器人虚拟示教的实现提供了技
术支持。本文通过对虚拟示教的软硬件环境进行分
析 , 尤其分析了基于虚拟现实系统的人机交互装置 ,
并最终提出了用于MOTOMAN 工业机器人的虚拟示教
方案。
1 虚拟现实技术
虚拟现实技术是一种对事件的现实性从时间和
空间上进行分解后重新组合的技术。这一技术包括三
维计算机图形学技术、多功能传感器的交互接口技术
以及高清晰度的显示技术。虚拟现实技术应用于遥控
机器人和临场感通讯 , 既可以将人们从危险和恶劣的
环境中解脱出来 , 同时还可以解决远程通信时延等问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
。它是一个能使人沉浸其中、超越其上、进出自
如、交互作用的环境 , 与以往的传统的仿真环境相
比 , 在这种多维信息空间中所进行的仿真和建模具有
更高的逼真度。北航等高校研制成功的 CRAS - BHI
型机器人与计算机辅助脑外科手术系统 , 已成功用于
临床[5 ] 。
目前虚拟现实技术在机器人学主要应用于以下
三个方面 : (1) 作为遥操作界面 , 可以应用于半自主
式操作 (2) 作为机器视觉中自动目标识别和三维场
景表示的直观表达 (3) 建立具有真实感的多传感器
融合系统仿真平台。虚拟现实技术在机器人系统编程
与仿真系统中的应用研究 , 主要集中在以下几方面 :
(1) 应用虚拟现实技术提供的新型人机交互设备 , 寻
求更好的机器人编程方式。编程方式主要有两种 : 一
种是在虚拟环境中通过机器人示教生成机器人程序 ;
另一种是采用人的操作示范方式 , 跟踪人的动作序
列 , 自动生成机器人的动作序列。(2) 研究虚拟环境
内目标对象的建模方式 , 更加注重对物体物理特性的
建模 , 以实现更趋真实的拟实操作。(3) 研究虚拟环
境与真实环境的建模与映射问题 , 期望实现虚拟环境
下生成的控制程序可以直接在真实环境中运行[4 ] 。
因而 , 随着虚拟现实技术研究的深入将为机器人操
作、维护、教学和培训等应用提供较好的平台。
2 虚拟示教系统的软硬件环境
机器人虚拟示教系统充分利用了机器人示教编程
的直观性 , 同时又借助于虚拟现实系统 , 而非真实的
机器人完成机器人作业的示教编程。具体地说就是人
首先操纵虚拟示教装置 (人机接口) 输入示教关键点
(生成作业数据文件) 、通过键盘输入示教程序 (生成
作业指令文件) 对计算机屏幕上的虚拟机器人进行示
教 , 而后将经过动画仿真 (或称回放再现) 检验后的
作业 (包括示教点数据、作业指令等) 下载到机器人
控制柜来实现远距离操作机器人 , 使机器人完成给定
的作业。因此一个完整的虚拟示教系统包括 : 人机接
口、个人计算机、虚拟现实系统 (包括 : 机器人模
型、轨迹规划、动画仿真等程序) 以及与机器人控制
器的通讯等模块 , 参见图 1。
(1) 虚拟示教系统的软件环境
①利用 OpenGL 构建三维模型。OpenGL 是美国
SGI 公司推出的一套开放式的三维图形软件接口 , 适
·941·《机床与液压》2003. No. 4
© 1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
图 1 机器人虚拟示教系统组成
用于广泛的计算机环境 , 从个人计算机到图形工作
站 , OpenGL 都能实现高性能的三维图形功能。使用
Visual C + + 完善的基本类库 MFC 和应用程序向导
AppWizard、类向导 ClassWizard 可以方便、快捷地生
成OpenGl 应用程序框架 , 在调用OpenGl 函数库之前 ,
需要完成一些常规操作 , 诸如 : a. 添加 opengl . lib、
glu32. lib、gluaux. lib OpenGl 库到工程中去 ; b. 在
视类的实现文件中添加 < GLΠgl . h > 、 < GLΠglu. h
> 、< GLΠglaux. h > 头文件 ; c. 使用 windows 系统
提供的 API 函数 ChoosePixelFormat () 、SetupPixelFormat
() 重新设置画图窗口的象素格式 ; d. 利用 API 函数
wglCreateContext () 建立着色上下文 (Render Context) ;
e. 设置光源和材质等 , 其中后 4 项完成绘图初始化
工作。在程序中通过直接调用 OpenGL 库函数将大大
降低了编程的难度 , 例如利用函数 gluCylinder ( ) 构
建圆柱 , 函数 gluDisk () 构建圆台等。但是对于构建
比较复杂的三维图形 , 例如虚拟机器人及其环境物模
型 , 一般先采用 AutoDesk 公司的 3DS MAX 或者 AU2
TOCAD 三维软件构造模型 , 再用 VC 编写的接口软件
读取 3ds 或 dxf 数据文件里的模型参数并对模型加以
改造使之适合于系统采用的图形生成算法。
②数据采集和作业生成。当人利用输入装置与虚
拟机器人交互操作时 , 键入字符‘B’ (开始) , 应用
程序响应字符消息而执行函数 SetTimer ( 0 , 55 ,
NULL) 发送定时消息 , 在定时消息响应函数 OnTimer
(UINT nIDEvent) 中包含启动 AΠD 数据采集卡以及循
环采集人机交互装置输入的多路关节角度 (0~5V 模
拟电压量) 的接口程序 , 当需要记录某个位置的关节
参数时 , 键入字符‘W’ (记录) , 应用程序响应字符
消息而执行 KillTimer (0) 关闭定时消息 , 并将采集
到的关节角度存入数据文件。与实际际器人示教类
似 , 利用 Windows 提供的在应用程序中调用外部应用
程序的 API 函数 ShellExecute (0 ,”open”,”c : \ \
WINNT \ \ NOTEPAD. EXE”, NULL , NULL , SW-
SHOWNORMAL) 来打开文本编辑器 , 输入示教指令。
上述操作可以完成示教数据文件和作业指令文件的
生成。
回放再现时 , 在响应函数中打开上述数据文件和
指令文件 , 读取并判断指令 (例如 : MOVL , MOVJ ,
DOUT, TIMER 等) 以执行相应的代码段 , 驱动虚拟
机器人按照指令要求并经过数据文件中记录的示教
点进行动画仿真 , 最后将上述文件进行格式转化 , 直
至生成机器人可执行作业文件 (例如 : MOTOMAN 机
器人的作业文件 : 3 . JBI) 。
(2) 虚拟示教系统的硬件环境
①计算仿真平台。高性能的图形工作站可以用于
虚拟示教系统的计算和图形仿真 , 但是昂贵的设备价
格往往使人望而却步。目前随着个人计算机 ( PC)
运行速度的快速增长 ,
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
配置的计算机已具有较高
的运行仿真速度 , 具有以往工作站的交互性能 , 因此
也为机器人计算机虚拟示教技术的应用与推广奠定了
物质基础。
②虚拟示教系统的人机交互装置。人机交互装置
是虚拟示教系统的重要的外围设备 , 其
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
可借鉴虚
拟现实系统中的人机交互技术。目前应用于虚拟现实
系统的人机交互设备主要有 : 数据手套、力反馈手控
制器以及立体显示头盔、触感接口 ( Haptic Interface) 、
力觉鼠标和力觉笔杆等。
③数据手套。数据手套是一种较好的人机交互手
段 , 它的前身应当是手套式传感器系统。目标是应用
于系统的三维控制场合。高控制精度的数据手套可用
于机器人操作控制。数据手套的设计实现的关键在于
手掌各有效部位的弯曲测量及其整体姿态的反演。完
成反演在理论上主要取决于人体手部姿态的运动模型
的建立。借助于不同的测量形式将导致各异的实现结
构 , 但本质上是解决传感器的参数与手部姿态的定量
关系。数据手套测量数据的生成在模式上与常规数字
化传感器无异。它同样通过 AΠD 转换器将传感器模
拟量转换为数字量并送往计算机的 IΠO 接口 (如 RS -
232C串行接口) 而实现。
为了更真实地体现虚拟环境 , 提高人在虚拟环境
中的沉浸感 , 需要增加力反馈 , 人机交互才能更加真
实。实际上数据手套不仅能够检测手部位姿和弯曲运
动的信息 , 如果加以改造 , 也是一种很有应用前景的
力反馈装置。例如 , 在数据手套中埋设形状记忆合
金 , 当没有物体的反作用时 , 手可以自由的弯曲 , 而
当抓握物体时 , 物体会产生反力 , 形状记忆合金的形
状将处于一定的约束状态 , 据此可以识别受力状况。
另外 , 也可以在手指的内侧装设微型气缸 , 当手指接
触虚拟物体时 , 由微型泵实时地供气 , 对手指施以压
力 , 使之感到好象有实际物体存在一样。例如 G.
Burdea 研制成功的气压式力反馈数据手套[2 ] 。
④双向主动机械手。双向主动机械手在机器人领
域已有所应用 , 比起其他可用的选件如鼠标、键盘或
触摸屏输入是更好的设备 , 因为操作者能够更好地参
与任务 , 当操作者的输入使远程系统运动时 , 系统感
受到的力被反馈给手控制器 , 因此操作者能够感受作
用在系统上的力。力反馈手控制器的机械结构分为串
型和并型两种。应用到遥现系统中时这两种结构都具
有自身的优势。例如 : 串型结构提供比较大的工作空
·051· 《机床与液压》2003. No. 4
© 1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
间 , 而并型结构往往比较紧凑。Teleoperator System
Corp 公司于 1977 年开发了一种双向串联式力反馈伺
服主从操作器[2 ] 。而小型并联主动机械手系统可以
置于桌面 , 因而具有一定的实用和推广价值 , 它主要
有两部分组成 : 视觉信息显示子系统和空间操作子系
统。前者主要包括图像工作站计算机 (目前随着微机
性能的提高 , 可以取代之) , 后者则由六自由度主动
机械手组成。主动机械手“服务平台”的顶部小平台
和基座平台由三套平行四边形连杆机构连接。操作者
操纵服务平台中心的小球时 , 手部运动的位置和方向
信号经过 AΠD 转换后输入给计算机 , 进行必要的坐
标转换和数据处理 , 然后由图像工作站 (或个人计算
机) 显示出虚拟操作。与此同时 , 计算机计算出机械
手的操作反力 (力矩) 数据 , 经过适当的电路后驱动
直流电动机 , 实现对操作者实施力反馈。
⑤立体头盔。图像显示器和头部运动检测机构
都安装在头盔上 , 组成运动 - 图像联动方式。显示器
可以用LCD 或 CRT , 运动检测机构可用连杆式 , 也可
以用磁位置传感器。当具有视差的双通道视频信息分
别绘制到 HMD 的左右眼时 , 形成立体显示[5 ] 。
图 2
⑥力觉笔杆。力觉笔
杆主要应用于开放型虚拟
环境中 , 它与现实作业中
的工具把柄比较相似 , 因
而具有较高的实用性。它
的原理如图 2 所示 , 笔杆
两端分别由三个自由度的
机械手支撑 , 由于总共有
6 个自由度 , 所以可以在
笔杆手柄上产生 3 个力和 3
个力矩。笔杆的位置和姿态由安装在关节上的角度传
感器检测 ; 力反馈控制器也安装在相应的关节上。这
样适当控制控制关节上的力控制器 , 就可以使用户移
动笔杆时感受到力、力矩的反馈效应。
图 3
通过以上对虚拟示教系统的软硬件环境分析 , 我
们提出了一种用于MOTOMAN 机器人虚拟示教的实施
方案 , 下文对此进行介绍。
四 MOTOMAN 机器人虚拟示教
输入装置设计时必须遵循以下原则 : A. 结构简
单 , 装置小 ; B. 轻巧灵活 ; C. 操作空间大 D. 符
合操作者的动力学特性。为此我们以MOTOMAN 机械
手原型为参考 , 整套机构主要由机械电子本体、数据
采集卡和微机接口软件三部分组成。以下假设输入装
置和虚拟机械手之间的变换矩阵为标准齐次变换矩阵
I , 目的是为了简化不同坐标系间的变换。
3 虚拟示教与再现
MOTOMAN 为串联 6 自由度关节式机器人 , 根据
D - H经典法则建立杆件坐标系如图 3。两个相邻坐
标系 i 与 i - 1 间的齐次变换矩阵 ( i = 1 , 2 ⋯, 6)
为[1 ] :
Ai - 1i =
cosθi - sinθi 0 αi - 1
cosαi - 1 sinθi cosαi - 1 cosθi - sinαi - 1 - di sinαi - 1
sinαi - 1 sinθi sinαi - 1 cosθi cosαi - 1 - di sinαi - 1
0 0 0 1
式中 : αi - 1杆件扭角、αi - 1 : 杆长、di : : 杆件偏距、
θi : 关节变量
输入装置的每个关节都装有电位计 , 测得的转角
由微机采样并转换为关节变量 , 示教过程中 , 虚拟机
械手响应采样到的关节变量在虚拟环境中实时地运
动 , 如果与虚拟环境物接触 , 或者转角超出虚拟机械
手设定的角度范围 , 将有输出信号经 DΠA 转换后驱
动力反馈机构 , 使操作者感知该路径不通 , 重新更改
示教轨迹。与在线示教相似 : 示教时 , 输入装置末端
移动到某一位姿停下 , 操作者输入示教指令程序 , 微
机控制软件根据关节变量和相邻坐标系间的齐次坐标
变换矩阵由末端姿态方程 : T = A01 A12 A23 A34 A45 A56 算出
虚拟示教机械手末端的位姿 , 进而得到一系列示教关
键点。回放时 , 示教程序调用虚拟机械手按照示教指
令的要求经过这些关键点实现示教过程的再现 , 也称
为虚拟机械手的运动仿真。
4 示教实现的关键技术
(1) 用 VC + + 编程进行数据采集
在 DOS环境下 , 用 TURBO C + + 等编程可直接
对 IΠO 端口进行读写。PCI 插卡的端口地址由主机动
态分配 , 所以编程的重点是如何获得主机动态分配的
地址。而在 Windows 环境下 , 利用 Visual C + + 编程 ,
用户层应用程序一般不直接对端口进行读写 , 而是借
助于 Windows 驱动程序。但是 , 调用驱动程序的方式
和通常调用方式不同 , 编程人员需要具备相关知识。
如采用 PCI802 过程控制接口卡 , 它在 Windows 驱动程
序之上提供了一组函数如 : PLX9052 - open、PLX9052
(下转第 166 页)
·151·《机床与液压》2003. No. 4
© 1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
p1 , 因此 pL ( = p1 - p2) 小于零。从图 5 可以知道该
比例阀控制双缸同步的系统调整时间短 , 仅为 0. 45 s ,
图 4 同步误差仿真结构图
不存在超调量 , 稳定性高 , 具有较满意的动态性能指
图 5 状态变量示意图
标。并且更为重要的是该系统双缸的同步误差小 , 仅
为 0. 014 , 很好的满足了工程的实际要求。
4 结论
(1) 电液比例阀及其它电液元件分别对两个油缸
形成闭环控制 , 并使一缸也随另一缸的反馈而快速调
整 , 不但双缸同步性能好、控制精度高、易于实现
PLC的自动控制 , 而且控制精度与双缸的行程无关。
更重要的是不会形成与油缸行程有关的累计同步误
差。
(2) 通过对该同步系统的模型推导和 SIMULINK
仿真 , 可以很直观的看出各相关元件各参数变化对整
个同步性能的影响 , 从而对生产实践作出有利的指
导。
参考文献
【1】欧阳黎明. MATLAB 控制系统设计. 北京 : 国防工业出
版社 , 2001. 1
【2】王野牧 , 王 洁 . 液压伺服闭环控制系统的 SIMULINK
仿真实现. 沈阳工业大学学报 , 2000 (5)
收稿时间 : 2002 - 09 - 12
(上接第 151 页)
- ReadWord 、PLX9052 - WriteWord 、PLX9052 - Close
等。我们可以用通常的函数调用方式 , 对这组函数进
行调用 , 以完成对端口的读写。
(2) 力反馈装置
力矩电机可以产生与输出信号成正比的反馈力 ,
可以实现输入装置和虚拟机械手的运动和力觉的交互
控制。文献 [6 ] 中已采用此方法 , 但是此法存在成
本高、装置重等缺点。比较简单的方法是采用电磁感
应原理来实现。例如 : 在本文介绍的装置上臂安装铁
芯 (绕有线圈) , 下臂安装衔铁。移动输入装置的末
端进行示教时 , 输入装置的关节角度发生变化 , 虚拟
机器人响应输入 , 如果与虚拟环境物接触、碰撞 , 或
者转角超出虚拟机械手设定的角度范围 , 将有输出信
号 (8 位或 16 位数字量) 经数据采集卡 DΠA 转换为
输出电压 , 驱动电磁感应线圈 , 通过铁芯磁化吸引衔
铁施加与输出电压成正比的反馈力。
(3) 回放再现
虚拟机器人回放再现时 , 必须通过示教关键点。
示教程序为关键点间的轨迹规划指令、状态描述指令
等 , 软件编程时 , 需要将这些指令翻译成虚拟机器人
仿真动画时的程序。由于目前机器人语言的不统一
(MOTOMAN 机器人语言为 INFORM II ; PUMA 机器人
编程语言为 VAL) , 还不能够编出通用的指令解释程
序 , 这样就在一定程度上制约了虚拟示教编程技术的
推广。
5 结束语
机器人虚拟示教的实现充分利用了机器人在线示
教的简单、直观的优点 , 同时又借助于计算机软硬件
的最新技术 , 尤其将虚拟现实技术用于机器人示教 ,
因而具有安全、高效、成本低等优点。同时随着这方
面研究的进一步深入 , 不但可以实现虚拟机器人的示
教与再现 , 而且通过计算机与机器人控制器的联网通
信 , 可以实现机器人的远程操作与网络控制。
参考文献
【1】马香峰 . 工业机器人的操作机设计.
【2】殷跃红等. 智能机器系统力觉及力控制技术.
【3】李明柱等. Visual C + +最新编程实践与技巧.
【4】赵春霞等. 虚拟现实的发展及其在机器人系统中的应
用与研究.
【5】吕洪波等. 基于虚拟现实技术的机器人外科手术模拟
与培训系统研究 .
【6】陈卫东等. 虚拟现实系统中的手部跟踪和力觉再现技
术研究 .
作者简介 : 张爱红 , 1971 年 11 月生 , 男 , 工程师 , 江
南大学机械工程学院硕士研究生 , 研究方向 : 机器人及机
电一体化技术。电话 : 0510 - 5430249 (H) 。
2002 - 08 - 27
·661· 《机床与液压》2003. No. 4
© 1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net