新版纵向动力学作业-新版-精选.pdf

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三次

采用Adams/View模块进行仿真。

模型建立

建立模型的步骤大致如下:

1.建立模型几何特征和部件;

2.设置部件的属性参数,如质量、转动惯量、质心位置等;

3.因为要用到轮胎/路面模型,所以还要在建立轮胎/路面前设置好轮胎和路面文件里的相应参

数,如轮胎的自由半径;

4.建立与部件之间约束相关的点或marker;

5.建立约束;

6.输入部件的初始运动状态,如初始速度;

7.添加载荷。此处要特别注意的是,施加的制动力矩会在悬架的纵臂上产生方向相反大小相等

的力矩。这个力矩也要手动添加。添加的四个力矩中,前轮制动力矩使用题目要求的函数,

其它三个都利用与第一个力矩的函数关系建立,如下图:

前轮制动力矩

后轮制动力矩

建模后效果:

*注意要在此建立2个力矩

建立measure

为了获得需要的参数,需要建立measure

仿真

如下设置仿真条件:

运行后观看仿真动画:

在Adams/PostProcessor中可以看到最近一次仿真的数据,点选Source下拉菜单的Measures选项即可看到刚才建立的各个Measures,选取并点击Add Curves即可看到运行结果。

一旦完成所需数据的作图,即可将结果输出。输出方法、格式多种多样。我采取的是输出Numeric Data,然后利用Matlab进行处理。

附录

Matlab出图程序:

clear

load('DATA.mat')

DATA(1:1000,:,:)=[];

% A time

% B pitch

% C z_cm

% D Torque_brake_f

% E Torque_brake_r

% F rolling_radius_f

% G rolling_radius_r

% H load_f

% I load_r

% DATA( :,:,1) = [ A B C D E F G H I ];

time = DATA( :, 1, 1)-1;

%% 俯仰角图1

pitch = [ DATA( :, 2, 1) DATA( :, 2, 2) ];

pitch = pitch / 180*pi;

figure(1);

plot( time,pitch(:,1),time,pitch(:,2),'--' ,'linewidth',2);

title( '俯仰角 \phi', 'fontsize',12, 'fontweight','bold')

xlabel( 't / s', 'fontsize',12)

ylabel( '\phi / rad', 'fontsize',12)

legend('a = 10','a = 20')

%% 车身重心垂向运动图2

z_cm = [ DATA( :, 3, 1) DATA( :, 3, 2) ];

figure(2);

plot( time,z_cm(:,1),time,z_cm(:,2),'--' ,'linewidth',2);

title( '车身重心垂向运动 z_c _m', 'fontsize',12, 'fontweight','bold') xlabel( 't / s', 'fontsize',12)

ylabel( 'z_c _m / m', 'fontsize',12)

legend('a = 10','a = 20')

%% 轮缘切向力(前/后轮)图3,4

I = 0.5; % 车轮转动惯量

Torque_brake_f = [ DATA( :, 4, 1) DATA( :, 4, 2) ]; % 制动力矩

Torque_brake_r = [ DATA( :, 5, 1) DATA( :, 5, 2) ]; %

rolling_radius_f = [ DATA( :, 6, 1) DATA( :, 6, 2) ]; % 滚动半径

rolling_radius_r = [ DATA( :, 7, 1) DATA( :, 7, 2) ];

alpha_f(1:1000,:)=[];

alpha_r(1:1000,:)=[];

alpha_f1 = alpha_f/180*pi; % 转单位°/s^2 为 rad/s^2

alpha_r1 = alpha_r/180*pi;

Ft_f = ( Torque_brake_f - (alpha_f1) * I ) ./ rolling_radius_f; % 前轮 *注意alpha, Torque的符号

Ft_r = ( Torque_brake_r - (alpha_r1) * I ) ./ rolling_radius_r; % 后轮

figure(3)

subplot(1,2,1)

plot( time, Ft_f(:,1), time, Ft_f(:,2),'--','linewidth',2);

title( '前轮缘切向力 F_t _f', 'fontsize',12, 'fontweight','bold')

xlabel( 't / s', 'fontsize',12)

ylabel( 'F_t _f / N', 'fontsize',12)

legend('a = 10','a = 20')

subplot(1,2,2)

plot( time, Ft_r(:,1), time, Ft_r(:,2),'--','linewidth',2);

title( '后轮缘切向力 F_t _r', 'fontsize',12, 'fontweight','bold')

xlabel( 't / s', 'fontsize',12)

ylabel( 'F_t _r / N', 'fontsize',12)

legend('a = 10','a = 20')

%% 动态载荷(前/后轮)图5,6

load_f = [ DATA( :, 8, 1) DATA( :, 8, 2) ]; % 载荷

load_r = [ DATA( :, 9, 1) DATA( :, 9, 2) ];

dynamic_load_f = load_f - (235/2+18.8)*9.807; % 动态载荷

dynamic_load_r = load_r - (235/2+18.8)*9.807;

figure(5)

subplot(1,2,1)

plot( time, dynamic_load_f(:,1), ...

time, dynamic_load_f(:,2),'--','linewidth',2);

相关文档
最新文档