运动学计算机辅助分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
式中 x A = a Ax , xB = aBx , y A = a Ay , yB = aBy 。式(2-2)可以写成:
(2-2)
1
π ⎧ 2 cos(θ + π ) r cos(θ + )θ x A − xB = − rθ + ⎪ ⎪ 2 ⎨ + 2 sin(θ + π ) ⎪ r sin(θ + π )θ y A − yB = − rθ ⎪ 2 ⎩
根据上述分析,应用 MATLAB/Simulink 构建的平面运动刚体加速度分析通用子模型 acc_plane 如图 2-2 所示,其输入 r、theta、dtheta、ddtheta 、ddxA、ddyA、ddxB、ddyB 分
、θ 、 A 、 A 、 B 、 B 。双击 MATLAB function 模块 accplane,将其中 别代表 r、θ 、θ x y x y
t n a B = a A + aBA + a BA
(2-1)
将上式向 x 轴和 y 轴上投影,得
⎧ cos(θ + π ) + rθ 2 cos(θ + π ) xB = x A + rθ ⎪ ⎪ 2 ⎨ sin(θ + π ) + rθ 2 sin(θ + π ) ⎪ yB = y A + rθ ⎪ ⎩ 2
(2-9)
将上式向 x 轴和 y 轴上投影,得
⎧ cos(θ + π ) + rθ 2 cos(θ + π ) xA + riθ i i i i cos(θi + π ) + r i cosθi + 2θi r i i ⎪ 2 2 ⎪ π ⎪ cos(θ + π ) + r θ 2 r = xB + rjθ ) θ j j j j cos(θ j + π ) + rj cosθ j + 2 j j cos(θ j + ⎪ 2 2 ⎨ sin(θ + π ) + rθ 2 sin(θ + π ) ⎪ yA + riθ i i i i sin(θi + π ) + r i sin θi + 2θi r i i ⎪ 2 2 ⎪ π sin(θ + π ) + r θ 2 ⎪ ) = yB + rjθ j j j j sin(θ j + π ) + rj sin θ j + 2θ j rj sin(θ j + ⎩ 2 2
= 0.5 rad/s , 例如,对于 图 2-1 作平面运动的刚 体,假设 r = 3m , θ = 30 , θ
D
xA = 2m/s 2 , y A = 8m/s 2 , xB = 5m/s 2 ,应用平面运动刚体加速度分析通用子模型在
MATLAB/Simulink 中建立的分析模型如图 2-3 所示, 仿真计算后数值显示模块 ddtheta&dyB
§2-1 单个刚体的加速度分析通用子模型
2-1-1 平面运动刚体的加速度分析通用子模型
y
A O
r θ
B
x
图 2-1 刚体的平面运动 图 2-2 平面运动刚体加速度分析通用子模型 acc_plane
图 2-1 所示刚体在平面 Oxy 内作平面运动,其上任一点 B 关于基点 A 的矢径为 r,r 与 x 轴正向的夹角为 θ ,根据刚体平面运动加速度分析的基点法,有
π ⎡ ⎤⎡θ ⎤ 2 cos(θ + π )⎤ ⎢r cos(θ + 2 ) −1 0 ⎥ ⎢ ⎥ ⎡−rθ x = ⎢ ⎥ ⎢ B ⎥ ⎢ 2 ⎥ −rθ sin(θ + π ) ⎦ ⎢r sin(θ + π ) 0 −1⎥ ⎢ ⎣ ⎥ y ⎢ ⎥ 2 ⎣ ⎦⎣ B⎦
上式同样可以写成式(2-5)的矩阵形式,其中 X = ⎡ ⎣θ xB
(2-8)
, a = r θ 其中 aD′′B = rjθ j D ′′B j j , arj = rj , aCj = 2θ j r j 。
t n 2
于是由式(2-7)和式(2-8)得
t n t n a A + aD ′A + a D ′A + a ri + aCi = a B + a D ′′B + a D ′′B + a rj + aCj
的参数 MATLAB function 设置为 accplane,Output dimensions 设置为 2,其它参数不变。根 据式(2-4)或(2-5)编写的平面运动刚体加速度分析通用子模型中的 MATLAB 函数 accplane.m 如下: function acc=accplane(u) % % Function to analyze the acceleration of a rigid body in plane motion % r=u(1); theta=u(2); dtheta=u(3); num=8; n_vari=5; n_unknow=2; % a=zeros(n_unknow,n_vari); a(1,1)=r*cos(theta+pi/2); a(1,2)=1; a(1,4)=-1; a(2,1)=r*sin(theta+pi/2); a(2,3)=1; a(2,5)=-1; b=zeros(n_unknow,1); b(1,1)=-r*dtheta^2*cos(theta+pi); b(2,1)=-r*dtheta^2*sin(theta+pi); acc=solution(num,n_vari,n_unknow,u,a,b); 其中 num 为模块 accplane 的输入的数目,n_vari 为列阵 X 中变量的数目,n_unknow 为可以 求解的未知量的数目, 在本章介绍的加速度分析通用子模型中, n_unknow=2, 函数 solution.m 是本章和第 20 章所有通用子模型用到的一个通用核心函数,用于求解式(2-5)中的未知量。 为了区分列阵 X 中哪些变量是未知的,也就是说,为了区分模块输入中哪些是未知输入, 本章和第 20 章中将未知输入均设置为 Inf(Inf 在 MATLAB 中表示无穷大) ,这些未知输入
, a = rθ 其中 aD′A = riθ i D′A i i , ari = ri , aCi = 2θ i ri 。
t n 2
另一方面,假设此时刚体 j 上与 D 点重合的点为 D′′ ,与式(2-7)同样的道理,可得
t n aD = aB + aD ′′B + a D ′′B + a rj + aCj
进一步将式(2-3)写成以下的矩阵形式:
(2-3)
⎤ ⎡θ ⎢ ⎥ π ⎡ ⎤ xA ⎥ r cos( ) 1 0 1 0 + − θ ⎢ 2 cos(θ + π )⎤ ⎢ ⎥ ⎡−rθ 2 ⎢ ⎥ = y ⎢ ⎥ A ⎢ 2 ⎥ sin(θ + π ) ⎦ ⎢r sin(θ + π ) 0 1 0 −1⎥ ⎢ ⎥ ⎣ −rθ x ⎢ ⎥ 2 ⎣ ⎦⎢ B ⎥ ⎢ ⎥ ⎣ yB ⎦
= −2.433rad/s , 显示 θ yB = 1.304m/s ,其中负号表示角加速度的转向为顺时针。
2
2
图 2-3 一个简单的 Simulink 分析模型
2-1-2 定轴转动刚体的加速度分析通用子模型
在图 2-1 中,若刚体绕点 A 作定轴转动,则有 xA = y A ≡ 0 ,于是式(2-4)成为
图 2-4 定轴转动刚体加速度分析通用子模型 acc_axis
§2-2 两个相互约束刚体的加速度分析通用子模型
在工程中,刚体与刚体之间往往通过约束(也叫做运动副)相互联系,组成机构。如 图 2-5 所示,假设两个作平面运动的刚体 i 和刚体 j 通过 D 点相互联系,D 点既可以相对刚 体 i 沿其上的直线 AE 运动,又可以相对刚体 j 沿其上的直线 BG 运动。现讨论刚体 i 和刚 体 j 的有关加速度之间的关系。
第2章 基于 MATLAB/Simulink 的 运动学计算机辅助分析
在理论力学中, 我们主要研究了运动学瞬时分析, 即主要研究机构在某个特定时刻或特 定位置的运动学问题, 这对我们理解许多运动学的通用概念是很有帮助的。 但在工程实际中, 常常需要进行运动学过程分析, 也就是说需要研究系统在运动过程中有关运动量随着时间连 续变化的情况,这时借助于计算机来分析就显得非常方便。事实上,近年来随着计算机的普 及和计算技术的发展, 计算机辅助工程分析已经越来越广泛地应用于各个工程领域。 本章根 据理论力学中讨论的刚体平面运动的理论,以 MATLAB/Simulink 为分析平台,充分利用 MATLAB/Simulink 提供的有关模块和功能,构建单个刚体和两个相互约束刚体的加速度分 析通用子模型。利用这些通用子模型,就可以非常方便地构造有关系统运动学过程分析的 Simulink 模型,进行运动学过程的计算机辅助分析。本章所介绍的子模型具有实现简单、修 改方便、扩展容易、通用性强、可重复使用等特点,是进行工程问题运动学计算机辅助分析 的一种有效手段。

(2-4)
AX = B
其中 X = ⎡ ⎣θ xA yA xB
T
(2-5)
yB ⎤ ⎦ 。为区别起见,本书用带下划线的字母代表矩阵。进行
是已知的,因此在式(2-4)或(2-5)中,若 加速度分析时,位置和速度是已知的,即 r、 θ 和 θ 、 A 、 A 、 B 、 B 五个(角)加速度中的任意三个,即可求出其它的两个。 已知 θ x y x y
y
刚体 i
E G ri A D
刚 j 体
θi
rj
B
θj
x
O
图 2-5 两个相互约束的刚体
4
假设图示瞬时刚体 i 上与 D 点重合的点为 D′ ,应用点的加速度合成定理和刚体平面运 动加速度分析的基点法,可得
t n aD = a A + aD ′A + a D′A + a ri + aCi
(2-7)
2
同时也就是该模块的输出,参见图 2-3。通用求解函数 solution.m 如下: function x=solution(num,n_vari,n_unknow,u,a,b) % % Function to solve unknowns % n_temp=num-n_vari+1; k=1; a1=zeros(n_unknow,n_unknow); for i=1:n_vari if u(n_temp)==Inf a1(:,k)=a(:,i); k=k+1; else b=b-a(:,i)*u(n_temp); end n_temp=n_temp+1; end x=inv(a1)*b;
T
(2-ห้องสมุดไป่ตู้)
yB ⎤ ⎦ 。进行加速度分析时,位
是已知的,因此在式(2-6)中,若已知 θ 、 B 三个(角) B 、 置和速度是已知的,即 r、θ 和 θ x y
3
加速度中的任意一个,即可求出其它的 两个。 根据上述分析,对图 2-2 的平面运 动刚体加速度分析通用子模型进行修 改 , 并 双 击 MATLAB function 模 块 accaxis , 将 其 中 的 参 数 MATLAB function 设置为 accaxis,其它参数不变, 即可得到如图 2-4 所示的定轴转动刚体 加速度分析通用子模型 acc_axis。根据式(2-6)编写的定轴转动刚体加速度分析通用子模型中 的 MATLAB 函数 accaxis.m 如下: function acc=accaxis(u) % % Function to analyze the acceleration of a rigid body rotated about a % fixed axis % r=u(1); theta=u(2); dtheta=u(3); num=6; n_vari=3; n_unknow=2; % a=zeros(n_unknow,n_vari); a(1,1)=r*cos(theta+pi/2); a(1,2)=-1; a(2,1)=r*sin(theta+pi/2); a(2,3)=-1; b=zeros(n_unknow,1); b(1,1)=-r*dtheta^2*cos(theta+pi); b(2,1)=-r*dtheta^2*sin(theta+pi); acc=solution(num,n_vari,n_unknow,u,a,b); 当然, 也可以将刚体的定轴转动视为刚体平面运动的特例, 直接应用刚体平面运动的加 速度分析通用子模型进行刚体定轴转动的加速度分析。
相关文档
最新文档