基于VRML 的仿人机器人运动仿真的研究
- 格式:pdf
- 大小:342.96 KB
- 文档页数:3
新
headRotationIn.setValue (rotationValue); //设置 rotation 域的
转动值
………………………………
EventOutSFRotation headRotationOut =(EventOutSFVec3f)
headNode.getEventOut_
("rotation_changed ");//得到事件输出实例句柄
导入 head 运动单元 ……………………………… DEF leftLeg1 Transform {…… children [Inline {url "c:\leftLeg1.wrl"} ……………………………… DEF leftLeg5 Transform {…… children [Inline {url "c:\leftLeg5.wrl"} ]} # 通过 Inline 内联接点,导入 leftLeg5 运动单元 ……………………………… ]} # 通过 Inline 内联接点,导入 leftLeg1 运动单元
2 基 于 VRML 的 仿 人 机 器 人 的 三 维 虚拟建模
通常使用 VRML 建立虚拟世界的方法有两种。 一种是通过 编 写 源 代 码,生 成 文 本 文 件,再 转 化 成 为 VRML 格 式 文 件(拓 展 名 为 *.wrl,*.vrml)。 但 是 虚 拟世 界 场 景 十 分 复 杂,全 部 采 用 代 码 编写的方式来建模,相对来说不易掌握,较难运用。 第二种方法 是通过辅助的建模软件,先建立三维物体,再在虚拟世界中进行 整合。 常用的辅助建模软件很多,如 3ds Max,MAYA 等。 3ds Max 提 供 了 VRML Exporter Plug - in 用 于 将 MAX 格 式 转 换 成 VRML 格式, 这 样 在 VRML 中 就 可 以 直 接 对 MAX 生 成 的 实 体 进行交互操作。 本文,对于 17DOF 仿人机器人的各个运动单元 的具体形体材质的生成,使用的是 3ds Max 建模。 所使用的实际 机 器 人 “迷 你 士 机 器 人 ”,其 具 体 结 构 为:每 条 手 臂 3 个 DOF,每
术 创
1 引言
VR,即虚拟 现实 技 术,是指 利 用 计算 机 系 统 、虚 拟 现 实硬 件
条腿 5 个 DOF,头部 1 个 DOF,共 17 个 DOF(也即 17 个舵机)。其 结构简图如图 1。
新 和软件构成逼真的视、听、触觉等一体化的虚拟现实环境,用户 通过多种虚拟现实交互设备以自然的方式投身于该虚拟现实
张永德: 教授
Arm1,rightArm1),腿 部 根 运 动 单 元 (leftLeg1,rightL邮局订阅号:82-946
《现场总线技术应用 200 例》
您的论文得到两院院士关注
套包含,作为其下子节点。 这些子节点,由上到下,依次再嵌套 leftArm2,rightArm2,leftLeg2,rightLeg2 运 动 单 元 , 以 此 类 推 , 逐 层 嵌套,共 17 个运动单元节点。 其总体架构如图 2 所示。
环境中,并在该环境中直接与虚拟现实场景中的事物进行交互,
相互影响,从而产生身临其境的感觉和体验。虚拟现实技术的应
用软件系统中, 包括虚拟现实技术的建模工具软件以及开发工
具软件。其中,VRML(Virtual Reality Modeling Language,即虚拟现
实建模语言)是较为通 用 的 建模 工 具 软件,它 的 设计 源 于 VR 技
术 用 句 柄 headNode=(Node)(mybrowser.getNode (“head”)); //获 取 DEF
创 命 名 的 节 点 引 用 句 柄 headRotationIn =(EventInSFRotation)headNode.getEventIn ( “ro-
tation”);//得 到 事件输入实例句柄
操作。 通过引入 EAI 接口的类包,实现对虚拟场景的交互操作。
虚拟场景中机器人实现某一运动单元的转动运动, 其关键部分
实现代码如下:
技 ……………………………… //引入所需 Java 类包
mybrowser=Browser.getBrowser(this); //获 取 浏 览 器 实 例 的 引
图 5 Applet 部分操作界面
4 结束语
本文 论 述 了 VRML 在 仿 人 机 器 人 运 动 仿 真 方 面 的 应 用,并
基于 VRML,3ds Max,Java 等开发工具, 给出了 17DOF 虚拟仿人
机器人各个运动单元运动仿真实现的具体实例。 虽然初步的实
现 了 机 器 人 的 虚 拟 仿 真 以 及 交 互,但 仍 然 存 在 许 多 不 足 之 处 。 如
博士论坛
EAI 是 VRML 与外部环境进行通信 、交 互的 关 键 技术,这 种 方法是目前采用最多的、比较灵活的一种 VRML 和 Java 的交互 方法。 EAI 使得一个外部程序可以访问和控制 VRML 场景中的 节 点, 这 里 的 外 部 程 序 主 要 是 指 Java Applet 程 序 。 可 以 通 过 Java Applet 程 序 为 VRML 开 发 多 样 、 直 观 的 用 户 界 面 , 扩 充 VRML 的功 能, 弥 补 VRML 交 互 性 不强 的 弱 点。 EAI 主 要 包 含 vrml.external、vrml.external.field、vrml.external.exception 三 个 包 。 EAI 方式的工作机制如图 4。
rotationValue=headRotationOut.getValue ( ); //得到 当 前 head
的旋转值
………………………………
图 3 17DOF 仿人机器人 3D 效果图 此外,可以对虚拟环境进行光照、纹理、材质方面的效果,以 求达到令人满意的 3D 仿真效果。
3 虚拟环境中仿人机器人的交互运 动仿真实现
图 1 17DOF 机器人结构简图 2.1 仿人机器人每个运动单元的三维建模 以机器人的每个运动单元为独立的对象, 通过建模工具 3ds Max,建立各个运动单元的 3D 模型。 由于各个运动单元都要 绕一定的旋转轴旋转,而旋转点是确定的,因此,在彼此临近的运 动单元之间, 将与上一级运动单元连接处的中心作为下一级运 动单元的坐标原始点,以该运动单元的旋转轴做为 Z 轴。 在 3ds Max 里有一个实用的工具可以完成这一过程。 对于 形 成的.max 文 件, 通过 VRML Exporter Plug–in 转 换 成 为 VRML 环 境可 以 识 别的.wrl 文 件, 并 使 用 VrmlPad 进 行 代 码的优化,减少 3D 模型不必要的点、线。 2.2 仿人机器人整体三维模型的建立 各个运动单元建立后,对于虚拟机器人在 VRML 环 境 中 3D 模型的搭建, 可采用类多叉树结构和坐标系嵌套式结构连接虚 拟机器人各个运动单元。 VRML 程序设计设置大体如下: 每个运动单元建立一个 transform 节点。 以 body 单 元 作 为 根 节 点,头 部(head),臂 部 根 运 动 单 元 (left-
实 现 虚 拟 机 器 人 的 一 些 复 杂 运 动 ,特 别 是 行 走 ,即 body 单 元 位
置的不断变化情况, 以及判断此虚拟环境中不同物体是否占有
相 同 区 域 的 问 题,即 碰 撞 检 测 问 题 等 。 这 些 正 是 本 研 究 课 题 的 下
一步工作。
(下转第 26 页)
《P LC 技术应用 200 例》
术,但不完全等同于 VR,是一种基于文本的、描述和渲染三维环
境的虚拟场景描述语言,是对 HTML 的三维模拟。
本 文 以 minis 公 司 的 小 型 仿 人 机 器 人 “迷 你 士 机 器 人 ”为 例,通过 VRML 并结合 3ds Max 建模技术,形成虚 拟 三 维场 景,并 介绍 了 与 外部 环 境 进 行 交 互 的 接 口 EAI,最 终 通 过 这 种 方 式,实 现了与虚拟场景中仿人机器人的仿真交互。
Abstract: VRML is vritual reality modeling language based on the WWW on the Internet with Interaction and it is a decsription
Standard of the virtual scene.In this paper,based on VRML and combined with 3ds Max modeling tools, Tri-Dimensional modeling is
(哈尔滨理工大学智能机械研究所) 张 永 德 马 宁
ZHANG Yong-de MA Ning
摘要: VRML 是 Internet 上 基 于 WWW 的 具 有 交 互 性 的 虚 拟 现 实 建 模 语 言 , 是 描 述 虚 拟 场 景 的 标 准 。 本 文 以 VRML 为 基 础 , 结 合 3ds Max 建 模 工 具 , 对 17DOF 仿 人 机 器 人 进 行 了 三 维 建 模 , 并 通 过 与 高 级 语 言 JAVA 的 编 程 接 口 EAI, 初 步 实 现 了 仿 人 机 器 人各个关节的运动仿真。 关键词: 仿真; VRML; 17DOF; 仿人机器人 中图分类号: TP391.9; TP242 文献标识码: A
carried out based on 17DOF humanoid robot.Through EAI, the interface between VRML and high -level language -JAVA,we have re-
技 alized the Motion Simulation of every unit on Humanoid Robot Preliminarily. Key words: simulation; VRML; 17DOF; Humanoid Robot