kl800.com省心范文网

钟有博-基于simulink的6-DoF平台的反解仿真-20140403


基于 Simulink/SimMechanics 的 6-DoF 平台的反解建模与仿真
1 引言 运动平台按结构可以分为串联和并联两大类。与串联形式相比,并联形式具 有刚度大、承载能力强、结构简单、运动负荷小、能实现包括横移、纵移、深沉 等多个自由度运动的特点。同时,与串联形式的优点也很明显,其具有运动空间 大,测量精度高,运动、受力分析相对简单,控制、测量的实现相对容易,且每 个自由度都能独立运动等特点。 六自由度运动平台是由六条液压气缸通过万向节 铰连(或球铰链)将上、下两个平台连接而成,下平台固定在基础上,借助六条 液压气缸的伸缩运动,完成上平台在三维空间六个自由度(α ,β ,γ , X,Y, Z)的运动,从而可以模拟出各种空间运动姿态。空间运动的目标是实现平台在 空间运动的三个姿态角度和三个平动位移, 即俯仰、 滚转、 偏航、 上下垂直运动、 前后平移和左右平移,及六个姿态的复合运动姿态。 Matlab 中的 Simulink 是一个用来对动态系统进行建模、 仿真和分析的软件包。 SimMechanics 是 Matlab6.5 新增的机构系统模块集,它可以对各种运动副连接的 刚体进行建模与仿真, 实现对机构系统进行分析与设计的目的。它提供了一个可 以在 Simulink 环境下直接使用的模块集,可以将表示各种机构的模块在普通的 Simulink 窗口中绘制出来,并通 过它自己提供的检测与驱动模块和普通的 Simulink 模块连接起来,获得整个系统的仿真结果。SimMechanics 动态仿真工具 具有系统建模直观方便、仿真功能强大,自动模型分析等强大优势,可以很好地 对机械系统的各种运动进行分析,从而为机械系统提供一个强大而方便的工具。 通过该模型可以有效的对 6-DoF 运动平进行位置反解分析。 本文运用并联机器人 SimMechanics 模型对 6-DoF 运动平台进行位置反解的 方法,并设计 PID 控制器对平台进行仿真。

2 基于 Simulink 的平台的反解建模 2.1 坐标系建立及坐标点的确定 为了清楚地描述平台的运动,选取两个坐标系,即动坐标系 O’X’Y’Z’和静坐 标系 OXYZ。其中静坐标系固定在下平台中,动坐标系固定在上平台中,初始位 置时,上下平台相互平行,且上平台相对下平台偏移/3。静坐标系以下平台六 个铰点所在圆的圆心为原点,以下平台铰点 B1、B2 连线的中垂线所在直线为 X 轴,Z 轴垂直于平台向上,如图所示:

A3 A4

Top platform Z’ A2

O’ x’
A5 A6 Z

Y’ A1

B3 B2 Y B1 B6 Base platform 图 2.1 静坐标系与动坐标系位置示意图

B4 X B5

O

B3 B4 Y’ A4 A5

Y X’

A3 b A2 /3 B2 a X A1 B1

O(O’)
A6

B5 B6

图 2.2 上、下平台各铰支点的位置分布示意图

用矩阵 B 来表示液压气缸下端各铰支点 Bi(i=1,2,3,4,5,6)在静坐标系 中的坐标向量。矩阵 B 的第一列的第一行至第三行元素分别表示 B1 点在动坐标 系中的 X 轴、 Y 轴、 Z 轴的坐标量, 其余列的意义与第一列意义类似。 则可得出:
=
3 6

cos ? cos = ? 0 0

cos

2 ? 3 2 ? 3 0

cos

2 + 3 2 + 3 0

cos

4 ? 3 4 ? 3 0

cos

4 + 3 4 + 3 0 (2-1)

将矩阵 B 写成齐次坐标的形式: =
4 6

=

1

4 6 1 6 4 6

(2-2)

式中:
-- 液压气缸下端各铰点分布圆的半径; -- B1 点相对 OX 轴的偏移角度,即下铰点分布角;

用矩阵 A 来表示液压气缸下端各铰支点 Ai(i=1,2,3,4,5,6)在动坐标系 中的坐标向量。矩阵 A 的第一列的第一行至第三行元素分别表示 A1 点在动坐标 系中的 O’X’轴、O’Y’轴、O’Z’轴的坐标量,其余列的意义与第一列意义类似。则 可得出:
=
3 6

5 + 3 = 5 + 3 0 cos

? 3 ? 3 0 cos

cos

+ 3 + 3 0

cos ? cos + ? 0 + 0

cos

5 ? 3 5 ? 3 0 (2-3)

将矩阵 A 写成齐次坐标的形式: =
4 6

=

1

4 6 1 6 4 6

(2-4)

式中:
-- 液压气缸下端各铰支点分布圆的半径; -- A1 点相对 O’X’轴的偏移角度,即上铰点分布角;

2.2 坐标变换及旋转矩阵 对于在三维空间里的一个参考系,任何坐标系的向,都可以用三个欧拉角来 表现。动坐标系固定在刚体中,随着刚体的旋转而旋转。 动坐标系相对静坐标系的位置可以用广义坐标来表示,Q 的分量为 qi。其中 q1、q2、q3 为动坐标系与静坐标系的三个姿态角,q4、q5、q6 为动坐标系原点 O 在静坐标系 O’X’、O’Y’、O’Z’三轴上的坐标。 动坐标系与静坐标系之间, 存在一个齐次变换矩阵。由静坐标系到动坐标系 的变换顺序为: 第一次沿 O’X’轴方向平移 q4,变换矩阵为:

1 0 T1 = 0 0

0 1 0 0

0 0 1 0

4 0 0 1
(2-5)

第二次沿 O’Y’ 向平移 q5,变换矩阵为: 1 0 0 0 0 1 0 5 T2 = 0 0 1 0 0 0 0 1
(2-6)

第三次沿 O’Z’向平移 q6,变换矩阵为: 1 0 0 0 0 1 0 0 3 = 0 0 1 6 0 0 0 1
(2-7)

三次平移之后,接着进行三次旋转变换。 第一次绕 O’Z’旋转偏航角 q3,变换矩阵为 3 3 4 = 0 0 ? 3 3 0 0 0 0 0 0 1 0 0 1
(2-8)

第二次绕 O’Y’旋转纵摇角 q2,变换矩阵为 5 = 2 0 ?2 0 0 1 0 0 2 0 2 0 0 0 0 1
(2-9)

第三次绕 O’X’旋转横摇角 q1,变换矩阵为 1 0 0 0 1 ? 1 T6 = 0 1 1 0 0 0

4 0 0 1
(2-10)

经过以上各个变换之后, 则可以得到由静坐标系到动坐标系的坐标变换矩阵 T为 2 3 2 3 = ?2 0 = T1 ? 2 ? 3 ? 4 ? 5 ? 6 ? 1 3 + 1 2 3 1 3 + 1 2 3 1 3 + 1 2 3 ? 1 3 + 1 2 3 1 2 1 2 0 0
(2-11)

4 5 6 1

2.3 平台的位置反解 当已知输出件的位置和姿态而求解机构输入件的位置时, 称为机构位置的反 解。 并联机构的运动分析可以确定某些构件运动所需的空间,校检它们的运动是 否干涉。 平台的位置反解, 即当给定上平台在空间中的位置和姿态时求解各个液 压气缸活塞杆的伸缩量(即位移量) 。液压汽缸活塞杆的伸缩量可以由液压气缸 的上、下铰支点之间的距离减去上、下铰支点间的初始距离来确定。上、下铰支 点间的距离公式为
3

l =
=1

?

2

= 1,2,3,4,5,6
(2-12)

式中: 为液压气缸上端铰支点在动坐标系下的坐标变换到静坐标系下所 得各点相对应的坐标,其计算公式为 G =
4 6

= ?
(2-13)

为液压气缸下铰支点在静坐标系中各点相对应的坐标。 液压气缸活塞杆伸缩量为 ?l = ? 0 ( = 1,2,3,4,5,6)
(2-14)

2.4 反解模型的建立 Simulink 是 Matlab 软件的扩展,它是实现动态系统建模和仿真的一个软件 包,它与 Matlab 语言的主要区别在于,其与用户的交互接口是基于 Windows 的 模型化图形输入, 其结果是使得用户可以把更多的精力投入到系统模型构建,而 非语言编程上。为了创建动态系统模型,Simulink 提供了一个建立模型方块图的 图形用户接口(GUI),这个创建过程只需要单击和拖动鼠标操作就能完成,它提 供了一种更快捷、直接明了的方式,而用户可以立即看到系统的仿真效果,以下 是利用 Simulink 建立运动平台反解模型的建模过程。 转换矩阵 T 模型,用 MATLAB Function 模块实现矩阵运算并将结果输出, 在 MATLAB Function 模块中输入 T 矩阵, 输入端是给定的参考姿态 Q=(q1, q2, q3, q4, q5, q6),如图所示

图 2.3 矩阵 T 模型

矩阵 B 模块,使用 MATLAB Function 模块,在模块中输入 B 矩阵公式。输 入端是上平台的铰支点所在圆的半径Rb,和铰支点的分布角b。如图所示

图 2.4 矩阵 B 模型

矩阵 A 模块,使用 MATLAB Function 模块,在模块中输入 A 矩阵公式。输入 端是上平台的铰支点所在圆的半径Rt,和铰支点的分布角a。如图所示

图 2.5 矩阵 A 模型

根据计反解算公式(2-13) 、 (2-14) 、 (2-15)建立反解模型,l0 为上、下平 台各铰支点间的初始长度,输出为各个液压气缸的伸缩量(即移位量)l ,如图 所示:

图 2.6 反解过程模型

其中 Mod 子系统模块用来求上、下平台各铰支点间的距离,输出为各液压 气缸伸缩后的长度,即各个杆的长度,其模型如图所示

图 2.7 Mod 子系统模型

参考运动姿态模块,主要由 Top Plat Reference 子系统和 Mux 模块组成,如 图所示

图 2.8 参考姿态模型 其中 Top Plat Reference 子系统模型, 可以根据平台所要求的运动来规定, 在 4 0 动坐标的初始位置时,动坐标系原点在静坐标系下为 5 = 0 ,所以在 q6 6 0 + 中加上数值为 H 的常数模块, 如图所示

图 2.9 Top Plat Reference 子系统模型

反解过程的总体模型如图 2.10 所示,图 2.10(b)是将反解算法过程封装成子 系统后的总体模型。

图 2.10(a) 反解总体模型

图 2.10(b) 封装后的反解总体模型

3 用 SimMechanics 模块集构建平台 SimMechanics 机构系统模块集可以对各种运动副连接的刚体进行建模与仿 真,能实现对机构系统进行分析与设计的目的。它包括下面几个模块组:刚体模 块组、 约束与驱动模块组、 辅助工具模块组、 运动副模块组、 检测与驱动模块组。 驱动模块用来添加 Simulink 输入量,有 3 种驱动方式,即构件驱动、铰连接副驱 动和驱动执行器驱动。 使用这些模块可以方便的建立复杂的机械系统的图形化模 型, 进行机械系统的单独分析或与任何 Simulink 设计的控制器及其它动态系统相 连接进行综合仿真。 本文首先根据 6-DoF 并联结构平台的连接关系建立仿真模型, 然后进行调试及仿真。 6-DoF 并联机构运动平台的 SimMechanics 的总体模型框图如图 3.1 所示,主 要由上平台、下平台及 6 条驱动腿子系统组成,6 条驱动腿子系统通过胡克铰与 上、下平台相连接。下平台固定不动,用 ground 模块来表示,其参数设置比较 简单,只需填写各铰点在世界坐标系中坐标即可;上平台是一个刚体,用 Body 模块来表示,Body 模块的参数设置主要分两部分:上部分设置刚体的质量与惯 量,下部分设置刚体的坐标系。对上平台来说,由于它与 6 条驱动腿相连接,所 以除了中心点 (质心 CG) , 还需设置 6 条驱动腿与上平台连接的铰点处的坐标系。 上平台安装有传感器用于检测上平台运动。

图 3.1 6-DoF 运动平台的 SimMechanics 的模型

驱动腿子系统结构框图如图 3.2 所示,它由驱动腿的上部分刚体、下部分刚 体以及它们与上下平台相连接的上、下铰点,中间用一移动副连接,该移动副连 接有驱动器和传感器。当上平台运动时,活塞在液压气缸中的移动导致驱动腿长 度的变化,所以把驱动腿的上、下部分分别作为一个刚体用 Body 模块来表示。 对于连接部位,上平台相对于驱动腿,驱动腿的上部分相对于下部分,下部分相 对于下平台都有相对运动, 所以它们之间应该分别用一个接头连接。本模型用两 个 2 自由度的胡克铰与上、 下平台相连接;液压气缸中活塞的驱动导致驱动腿的 伸缩,所以驱动腿上下两部分连接处(即液压气缸处)有一个沿腿方向的平移自 由度,加上胡克铰处移动过来的一个旋转自由度,可用一个 Cylindrical(代表一 个平移自由度和一个旋转自由度) 接头来表示。 这样就实现了六个自由度的运动。 根据建模所规定坐标系及相应需求正确定义两个刚体的质量、 转动惯量矩阵 和几何参数,正确定义三个铰链连接点坐标、铰链转动轴的方向矢量,便可得到 运动平台的六条驱动腿模型。

图 3.2 驱动腿子系统 SimMechanics 模型

通过驱动器(actuator)将运动施加到主动副上,进行运动平台机构的正向 运动分析;将运动施加到上平台,可以进行运动平台机构的反向运动分析。利用 传感器(sensor)可以测量机构正向分析中上平台的位移和机构反向分析中主运 动副的角位移、 角速度和角加速度。 所有的输出都通过工作空间输出为数组存盘, 供后期处理。输出也可以通过 Scope 实时显示。

4 仿真验证系统的总体结构 运动平台的仿真系统结构框图如图 4.1 所示,该模型框图共由 6 部分组成。 反解过程模块根据上平台的轨迹来得到 6 条驱动腿的期望位移(伸缩量) ;微分 模块用来将得到的 6 条驱动腿的期望位移(伸缩量)转化成 6 条驱动腿的动作速 度;PID 控制器模块给 6-Dof 运动平台的 6 条驱动腿提供驱动信号;刚体传感器 检测模块用来检测获得上平台中心的坐标, 并将坐标输出到工作空间以供对平台 轨迹生成; 示波器模块用来观察期望驱动腿移位量与实际移位量的误差,及各条 驱动腿上驱动力和上平台中心的位置。

图 4.1 运动平台的仿真验证系统的总体结构

5 反解仿真结果与分析 模型建立完成后, 下面将对运动平台的一个圆形轨迹进行跟踪控制验证仿真 效果。选用的平台的结构参数如下:

图 5.1 运动平台的动态动画显示

图 5.2 运动平台的运动轨迹

图 5.3 示波器显示结果


赞助商链接