热搜关键词: 电路基础ADC数字信号处理封装库PLC

pdf

机器人视觉伺服仿真系统研究BAD(OPEN GL软件和图像技术

  • 1星
  • 2021-05-04
  • 284.08KB
  • 需要1积分
  • 2次下载
标签: 机器人

机器人

机器人视觉伺服仿真系统研究BAD(OPEN  GL软件和图像技术

2002
9
深圳大学学报
(
理工版
)
)
JOURNAL OF SHENZHEN UNIVERSITY ( SCIENCE & ENGINEERING
19
,
3
收稿日期
: 2002
2
06
2
03
基金项目
:
½家自然科学基金资助项目
( 60175026 ) ;
深圳大学基金资助项目
( 200102)
½者简介
:
郭小勤
( 1960
2
) ,
(
汉族
) ,
陕西省西安市人
,
深圳大学副教授
. E
2
mail : guoxq @szu
1
edu
1
cn
文章编号
: 1000
2
2618 (2002) 03
2
0037
2
06
研究报告・
机器人视觉伺服仿真系统研究
郭小勤
,
费跃农
,
徐  
,
陈  
(
深圳大学工程技术学院
,
深圳
518060)
摘  
:
以六自由度
SG MOTORMAN
机器人为研究对象
,
建立了视觉伺服仿真系统
.
2
系统运行在
Windows
环境下的
Matlab
平台上
,
可便捷地½用
Matlab
工具箱进行图像处理和视
觉伺服控制算法的研究
.
采用
Visual C ++
编程语言调用
OpenG
库实现机器人三维实时动画
L
仿真
.
为视觉机器人的设计提供了一个安全可靠 、灵活方便的研究平台
.
关键词
:
机器人仿真
;
视觉伺服
;
图½仿真
; OpenG
L
中图分类号
: TP 391
1
41
    
文献标识码
: A
引 
由于工业的飞速发展
,
人们对机器人的要求越来越高
,
要求机器人完成的任务也越来越
复杂
.
传统的控制方案不½很½地控制机器人完成这些复杂的任务
.
如果给机器人安装上像
人类一样的眼睛
,
½机器人具有视觉
,
则可完成许多复杂的任务
.
代替人眼的视觉传感器可
将目标和周围环境的视觉信息反馈给机器人大脑
,
经计算机进行加工处理后再控制机械手的
动½来完成某项任务
.
机器人视觉是智½机器人的重要组成部分
,
也是½前学科研究的热
[1 ,2 ]
.
机器人视觉伺服计算机仿真系统½为视觉机器人设计和研究的平台
,
具有安全可靠 、
灵活方便的优点
,
在整个视觉伺服系统结构设计和控制算法研究中发挥着重要的½用
.
同时
机器人视觉伺服系统中的三维图像仿真
,
可以将仿真的结果以图像的方式动态地显示出来
,
直观地显示机器人的运动情况
,
更方便地用于分析与检验½迹规划和½业规划的正确性和合
理性
,
用于实时检测机器人与工½环境之间的碰撞与干涉
,
以保证整个生产单元的安全
.
基于图像的机器人视觉伺服控制系统的结构如图
1
所示
.
其工½原理就是利用期望图像
1
 
机器人视觉伺服控制系统结构
Fig
1
1
 
Structural chart of visual servo system of the robot
Vol
1
19 ,No
1
3
Sep
1
2002
 
38
深圳大学学报
(
理工版
)
19
与机器人½前图像的视觉反馈误差
,
经过图像特征提取和视觉控制器来规划和控制机器人运
,
实现视觉闭环控制
,
从而完成视觉伺服 、跟踪任务
.
根据视觉伺服控制系统的工½原
,
其仿真系统由两部分组成
:
其一为模拟控制计算机部分
,
用来完成图像处理 、特征提
取 、视觉控制算法的计算
,
将图像信息½换为机器人的关节角指令信息
.
这一部分与实际机
器人视觉伺服控制系统相同
.
另一部分为机器人系统的图½仿真和摄像机系统的模拟
,
用来
完成机器人的动态特性模拟和机器人三维空间运动的虚拟现实
,
同时模拟
CCD
摄像机的功
½将计算机显示屏幕上机器人的运动图像½换为图像数据文件
,
从而实现将机器人的关节信
息½化为图像信息
.
两部分的组合构成了视觉反馈闭环控制仿真系统
.
本文以六自由度工业
机器人为对象
,
讨论视觉伺服计算机仿真系统的实现问题
.
1
 
基于
OpenG
机器人运动仿真
L
要开发一个成功的机器人仿真系统
,
需要强有力的开发工具
.
在½前众多的开发工具
[3 ]
, OpenG
是非常实用 、方便的一种开发工具
.
L
OpenG (Open Graphics Library)
是美½高级图½和高性½计算机系统公司
( SGI)
所开发
L
的三维图½库
,
它广泛适用于计算机系统环境下的三维图½应用程序设计接口
,
目前已成为
开放式的½际三维图½程序标准
.
本文也采用
OpenG
开发机器人图½仿真程序
.
L
1
1
1
 
机器人本½及环境的三维建模
进行机器人图½建模主要有两种途径
:
一种是直接用计算机编程语言建模
.
这样开发难
度比较大
,
需要掌握大量的计算机图½学知识
,
编程过程繁琐
,
开发周期较长
.
½其系统运
行速度通常较快
.
另一种是利用商品化图½½件½为图½支撑来实现
.
其优点是程序的内核
较小
,
可靠性高
,
程序的可移植性和系统的可扩充性½
;
缺点是程序执行速度较第一种方法
,
需要额外的接口
,
增加了编程的困难
.
为了保证程序具有良½的可移植性和可靠性
,
文采用了在
OpenG
中½用
SolidWorks
实½建模的数据文件方法
.
L
SolidWorks
环境下根据各个实½的尺寸按照一定的比例缩小后得到的尺寸和½状分别
绘制各个实½的实½图
,
各自保存为
ST
数据格式的实½数据文件
,
然后加入到仿真系统工
L
程文件中
.
在仿真系统中
,
系统通过接口½数获取实½模型的数据
.
由于实½在其
ST
数据
L
文件是按基本的几½图元进行描述的
,
因而这种绘制实½方法非常方便
,
免去了人为分割实
½存在的困难和复杂性
.
同时½用这种方法也可以很方便地在机器人工½环境中添加零部
.
一般工业机器人是由
6
个连杆通过关节连接组成的
,
可将它分解成
6
个独立的子模型
,
以获取各子模型的½状 、三维尺寸比例以及关节的运动½式和范围
.
对这几个子模型按照所
获得的模型参数
,
通过对原型图½基元的变½ 、曲线或曲面的延伸以及原型图½基元间的布
尔运算构造各几½子模型
,
并½成各自的
ST
数据文件
.
把这些子模型按照它们本身的初始
L
空间½姿关系组装起来
,
½成机器人的三维模型
.
机器人的工½环境是由背景和除机器人以外的其他环境物½组成
,
例如工½½台 、需要
加工的工件 、处于工½环境中的摄像机等
.
采用和机器人三维建模相类似的方法
,
将环境分
解成一系列的子模型
,
分别进行三维建模并½成各自的
ST
数据文件
,
最后½成机器人的仿
L
真环境模型
.
3
郭小勤
,
费跃农
,
:
机器人视觉伺服仿真系统研究
 
39
本文以六自由度
SG MOTORMAN
机器人为对象建立了视觉伺服仿真系统
.
Windows
2
境下采用
Visual C + +
编程语言调用
OpenG
库实现机器人三维实时动画仿真
.
为了更方便地
L
进行图像处理 、实现控制算法及求解机器人的动力学 、运动学
,
整个仿真系统建立在
MAT
2
LAB
平台上
,
这样可便捷½用
MAT
LAB
的图像处理工具箱 、控制系统工具箱及系统仿真工具
Simulink.
同时
MAT
LAB
提供了调用
Visual C + +
的方法
,
½整个系统的组合比较方便
.
仿真系统采用模块化的设计思想和面向对象的程序设计方法
,
共分
5
大模块
:
人机界面
模块 、机器人运动学模块 、图像处理模块 、视觉控制模块和图½仿真模块
.
其中
,
人机界面
对于机器人视觉伺服控制系统来讲
,
由于操½任务的不同
,
摄像机可½½于机器人工½
空间的任½一点
,
可½固定
,
也可½½于机器人手爪上方随机器人运动
,
其方½也可½在工
½过程中发生变化
.
在仿真系统的实现中均需要考虑这些因素
.
从投½方式来讲
, OpenG
提供了投½方式的设½½数
,
½用户½够选择平行投½或透
L
视投½
,
并设½投½角度
;
从观测者的观测½½来讲
, OpenG
还提供了½任意一个实½½
L
够绕空间任意一条直线旋½及空间任½一条直线平移的½数
,
所以½够方便地从不同的角
度 、不同的视距对机器人状态进行摄像和观测
.
OpenG
所绘制的图像由
User Interface
的½数库提供的控件共用½数
OG GetScaledC
2
L
L
trlBitmap
获取显示图像的½图
,
反馈给视觉伺服控制系统
,
½成视觉反馈闭环控制
.
2
 
视觉伺服仿真系统实现
2
1
1
 
仿真系统结构设计
1
1
2
 
机器人三维运动建模和动画显示
六自由度机器人的运动仿真是以机械手的运动为原½进行模拟的
,
因而首要的工½是把
机器人各子模型数据文件的模型进行装配
,
即把这些模型按照它们本身的空间½姿关系组装
起来
.
机器人的坐标变换一般是采用½次坐标变换的方法
.
首先确定机器人的基坐标系
,
后根据机器人手臂各连杆之间的运动关系和给定½姿
,
从下到上依次计算各连杆相对上一连
杆的坐标变换矩阵
.
由该坐标变换矩阵对各连杆的所有原始坐标点进行坐标变换
,
即可计算
出½前时刻机器人各子模型的状态
.
本文½用矩阵堆栈方法实现这种运动继承关系
.
矩阵堆
(Matrix Stack)
是内存中用来存放矩阵元素的一块区域
.
其操½原则与普通的堆栈操½原
则一样遵循 “先进后出
,
后进先出” 矩阵堆栈为编程提供了一个非常便利的工具
,
利用它
.
,
可以建立十分复杂的模型
,
并½清晰地表达模型的运动
.
对矩阵的管理是通过如下语句
来完成的
: glPushMatrix () ; glPopMatrix () .
在建立了六自由度机器人三维运动的图像模型之后
,
应½机器人运动图像实时 、快速 、
平滑地显示在屏幕上
. OpenG
提供颜色缓存 、深度缓存 、模板缓存 、积累缓存等基于双缓
L
存技术的动画操½½数
,
½仿真应用程序设计的算法更简单
,
极大地提高了动态仿真的真显
示速度
,
½实时三维仿真得以实现
. OpenG
还提供了大量的着色 、光照 、景深 、阴½ 、混
L
合 、消隐 、明暗处理 、材质处理 、纹理½射 、深度检测等功½½数
,
保证了三维仿真图½显
示具有高度的真实感
.
联合½用
OpenG
SolidWorks
对机器人进行三维仿真可以非常逼真
L
地描绘出机器人的各种状态
.
1
1
3
 
CCD
摄像机的功½模拟
 
40
深圳大学学报
(
理工版
)
19
仿真系统建立在
MAT
LAB
平台上
,
图½仿真模块采用
Visual C + +
编程实现其功½
,
他模块功½基本上采用
MAT
LAB
语言编程实现
.
½用自己开发的基于可控½廓模型的视觉控
制算法实现机器人视觉伺服控制
.
关于算法推导和视觉系统性½由于篇幅限制将在后续的系
列文章中讨论
.
½用
ACTIVEX
技术实现
C + +
编程和
MAT
LAB
的联结
.
主界面由
Simulink
型描述
,
各模块的数据通信由
Simulink
模型和全局变量完成
.
下面讨论仿真系统实现的几个
问题
.
2
1
2
1
1
 
系统实现的实时性
视觉伺服系统是一个实时控制系统
,
对于机器人视觉伺服和视觉导引来说
,
图像处理和
视觉控制算法的快速性非常重要
. MAT
LAB
是解释性语言
,
它对½令是边解释边执行的
,
此其执行起来的速度比较慢
,
特别是进行循环计算时
.
如果有多层嵌套
,
则其执行的速度会
更慢
,
从而½整个程序运行效率非常的½
,
与此同时
, C
C + +
等是编译性语言
,
它们一
经编译通过后
,
以二进制代码的方式执行
,
因而执行速度非常快
,
在进行多层嵌套循环运算
,
就更½½现它们的优势
.
因此在系统实现中
,
½可½½用
MAT
LAB
工具箱所提供的½
,
对于½响执行速度的部分
(
如多层嵌套循环运算
)
采用
MEX
文件编写
. MEX
文件是可
以被
MAT
LAB
解释器自动装½½ 、执行的 “动态链接子程序”
.
2
1
2
1
2
 
仿真系统的直观性
本文以眼在手上的机器人视觉结构
(
基于图像的视觉伺服系统均采用此结构
)
为例来设
计伺服算法
.
所以
,
在仿真中只需对机器人手臂末端摄像机的仿真图像进行图像处理与分
.
½是在系统运行中
,
用户只½看到机械臂末端摄像机的仿真图像
,
而不½直观地看到机
器人½时的运动状态
.
为了½仿真过程更直观 、生动
,
需要增加一个机器人仿真图像窗口
,
实时观察机器人的运动
.
½
MAT
LAB
Simulink
环境下并不支持多线程运算
,
如果在
MAT
2
LAB
环境下同时仿真两幅图像
,
其运算速度会严重降½
.
为此
,
在系统中增添一个由
VC + +
编写机器人图½仿真程序
,
只需在视觉仿真程序运
行时同时运行此程序
,
即可增添一个新的视窗
,
视窗内用户可以观察到机器人的仿真图像
.
由于
Windows
支持多线程运算
,
Windows
下同时运行
MAT
LAB
程序与机器人图½仿真程
,
其运行速度与在
MAT
LAB
环境下同时仿真两幅图像相比速度降½很小
.
关于机器人图½仿真与伺服系统仿真同步问题
,
本文采用的方法是½用一个
TXT
文件
½为
MAT
LAB
VC
程序的接口平台
.
½
MAT
LAB
仿真程序控制机器人角度的同时
,
按照一
定的格式将机器人角度输出到接口文件
,
VC
程序则不断的访问这个接口文件并分析接口
模块主要完成对菜单和对话框事件的响应
,
实现各种人机交互过程
.
例如
,
选择机器人操½
工件和操½任务 、任意设½机器人与工件的初始½姿 、选择输出½式等
;
机器人运动学模块
主要完成机器人正 、逆运动学方程的求解和机器人逆雅可比矩阵的求解
,
将工½空间的控制
量½换为机器人关节空间的控制指令
;
图½仿真模块完成½于工½环境中的机器人三维运动
仿真造型和动画显示
,
动态实时采集机器人末端摄像机的仿真图像
;
图像处理模块的任务是
对机器人动态图像
,
进行必要的图像处理
,
并将包含目标½姿的图像信息从图像中提取出
,
½换为易于规划和控制的图像特征量
;
视觉控制模块的主要任务是根据图像特征按照一
定的控制方法规划和控制机器人的运动
,
对于不同的操½任务和控制策略其视觉控制算法也
将不同
,
这样将导致不同的视觉控制性½
,
所以该模块是视觉伺服控制研究的核心
.
2
1
2
 
仿真系统实现
3
郭小勤
,
费跃农
,
:
机器人视觉伺服仿真系统研究
 
41
文件数据
,
依此控制机器人模型
.
由于访问的频率设½为
15 ms ,
可以认为同步仿真
.
3
 
视觉伺服仿真结果
这里是 我 们 开 发 的 以
SG MOTORMAN
机 器 人 为 原 ½ 的 视 觉 伺 服 仿 真 系 统
, SG MO
2
2
2
T MAN
机器人是由
6
个½动关节组成的工业机器
OR
2
 
机器人图像
3
 
机器人视觉伺服仿真系统主菜单
of visual servo of the robot
Fig
1
3
 
Main menu for simulation system
,
其原½图像如图
2
所示
.
假设机器人的操½任
务是抓取½于工½台上的工件
.
系统在启动后进
入仿真系统的主菜单
,
如图
3
所示
.
初始化后
,
双击人机界面模块选择操½工件和操½任务
,
过主菜单的下拉菜单
simulation
选择仿真时间 、仿
真步长
,
最后启动视觉伺服仿真系统
.
这时可在
屏幕上实时地观察到机器人的运行状态
,
如图
4
所示
.
在图
4
的左侧为用户在工½空间一定½姿
所观察到的机器人运动状态图像
,
可通过键盘上
4
个方向键控制观察图像的方向和距离
,
右侧
为摄像机½于机械手末端所得到的机器人运动状
态图像
.
对于眼在手上的视觉伺服控制就是利用
4
右侧图像所提供的信息实现视觉闭环控制的
.
结 
本文讨论了
Windows
环境下½用
OpenG
实现三维实时动画仿真和建立机器人视觉伺服
L
仿真系统的一些可行方法
.
以六自由度
SG MOTORMAN
机器人为原½建立了一套视觉伺服仿
2
真系统
.
它可灵活方便地进行视觉机器人控制算法研究
,
实时 、直观地观测机器人的运动状
,
是视觉机器人研究的½平台
.
4
 
SG MOTORMAN
机器人伺服运动图像
2
Fig
1
4
 
Image of SG MOTORMAN robot
2
in running state
Fig
1
2
 
Real image of the robot
展开预览

猜您喜欢

评论

登录/注册

意见反馈

求资源

回顶部

推荐内容

热门活动

热门器件

随便看看

  • 传感器推荐
    [align=left]问题描述:[/align][align=left]地球仪可以360度旋转,在地球仪上安装一个或者多个传感器,可以满足如下条件:[/align][align=left]不管地球仪怎么旋转(包括2种情况:底座固定,地球仪旋转;地球仪协同底座一起动),通过传感器的值可以计算出水平面南北直线(穿过地球仪球心)交地球仪面的两点AB的经纬度[/align][align=left]问题可
  • 山东省电子设计大赛 TI 学习交流群 262344127
    山东省电子设计大赛TI学习交流群 262344127
  • 关于MEINVF32指令精度的讨论
    MEINVF32指令,是C2000系列中使用的CLA模块的指令,它独立于C28 CPU。CLA计算浮点数时,它的运算指令是单周期的,并且在乘、加等指令上设有并行指令。相当于一个时钟周期执行两条指令。MEINVF32指令完成32位的浮点数的倒数运算。然而,手册中提出它是一种近似运算,精度只能保证8位。并提示可以由牛顿-拉弗森算法(Newton-Raphson algorithm)来求得更精确的值。Y
  • 求助有关复位电路得异常
    我用本网站提供的标准复位电路,容阻100k和100n复位电路,电阻上反并一个4148。现在做的几块板子有的下载不进程序,而jtag连线,电源,地都是通的。rst上的电压稳定是应该接近电源吧?而我的都是在1.8v左右(电源3.6v)。下载不进去的都有这个毛病。当我把rst和复位电路之间连线割断,孤立复位电路时,电压可以接近3.6(说明复位电路本身应该没问题吧),但是这样又不可能下载程序了。问题就是这
  • 永磁无刷伺服电机无传感器位置估计方法综述
    摘 要:  永磁无刷伺服电机的换相和控制都需要准确的转子位置信息, 然而位置传感器有其难以克服的缺点。文章综述了各种电机的一些位置估计方法, 分析了其优缺点, 这些方法在很大程度上可取代位置传感器。最后对将来的位置估计方法发展方向作了展望。
  • 关于HALCoGen
  • 求教 读卡的问题
  • 嵌入式C语言的指针使用总结
  • 一种基于 USB接口的比色计仪器
  • 求解移码计算中的一些问题???

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
×