汽车转向梯形机构设计.docx

上传人:b****1 文档编号:13539856 上传时间:2023-06-15 格式:DOCX 页数:13 大小:140.25KB
下载 相关 举报
汽车转向梯形机构设计.docx_第1页
第1页 / 共13页
汽车转向梯形机构设计.docx_第2页
第2页 / 共13页
汽车转向梯形机构设计.docx_第3页
第3页 / 共13页
汽车转向梯形机构设计.docx_第4页
第4页 / 共13页
汽车转向梯形机构设计.docx_第5页
第5页 / 共13页
汽车转向梯形机构设计.docx_第6页
第6页 / 共13页
汽车转向梯形机构设计.docx_第7页
第7页 / 共13页
汽车转向梯形机构设计.docx_第8页
第8页 / 共13页
汽车转向梯形机构设计.docx_第9页
第9页 / 共13页
汽车转向梯形机构设计.docx_第10页
第10页 / 共13页
汽车转向梯形机构设计.docx_第11页
第11页 / 共13页
汽车转向梯形机构设计.docx_第12页
第12页 / 共13页
汽车转向梯形机构设计.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

汽车转向梯形机构设计.docx

《汽车转向梯形机构设计.docx》由会员分享,可在线阅读,更多相关《汽车转向梯形机构设计.docx(13页珍藏版)》请在冰点文库上搜索。

汽车转向梯形机构设计.docx

汽车转向梯形机构设计

设计题目:

汽车转向梯形机构的设计

 

班级:

机自xx

姓名:

xxx

指导老师:

xx

2021年10月10日

 

西安交通大学

汽车转向梯形机构设计

 

机自84班李亚敏08011098

设计要求:

(1)设计实现前轮转向梯形机构;

(2)转向梯形机构在运动过程中有良好的传力性能。

原始数据:

车型:

无菱兴旺,转向节跨距M:

1022mm,前轮距D:

1222mm,轴距L:

1780mm,最小转弯半径R:

4500mm。

前言:

汽车转向系统是用来改变或恢复其行驶方向的专设机构,由转向操纵机构、转向器和转向传动机构三局部组成。

转向操纵机构主要由方向盘、转向轴、转向管柱等组成:

转向器将方向盘的转动变为转向摇臂的摆动或齿条轴的往复运动,并对转向操纵力进行放大的机构:

转向传动机构将转向器输出的力和运动传给车轮,并使左右车轮按一定关系进行偏转运动的机构。

设计过程:

一、设计原理简介

1采用转向梯形机构转向的机动车辆,左右转弯时应具有相同的特征,因此左右摇臂是等长的。

2内外侧转向轮偏转角满足无侧滑条件时的关系式为:

(1)

3.转向过程中转向梯形机构应满足的方程为

(2)

(3)

代人整理得:

(4)

式中αβ为无侧滑状态下梯形臂转角的对应位置,可视为。

(1)式算出来,因此,方程中有两个独立的未知量需求解,要梯形臂转角的两个对应位置即两个方程来求解。

4梯形臂转角的两个对应位置确实定

由函数逼近理论确定梯形臂转角的两个对应位置的方程为:

(5)式中,qq为外偏转角的最正确范围值,由计算机逐步搜索获得。

由汽车的最大转弯半径可得最大转角为度。

5非线性方程组的求解

由梯形臂转角的两个对应位置确定的方程为

(i=1,2)

可用最速下降法计算该方程。

用C++程序实现编程,代码如下。

doubleF1(doublea,doublei)//方程1

{

doublem=0.01;

doublen=atan(1/(1/tan(m)-M/L));

doublef;

f=cos(m+i)+cos(n-i)-(a/M)*cos(n-m-2*i)-2*cos(i)+2*a*cos(i)*cos(i)/M-a/M;

returnf;

}

doubleF2(doublea,doublei)//方程2

{

doublem=0.446;

doublen=atan(1/(1/tan(m)-M/L));

doublef;

f=cos(m+i)+cos(n-i)-(a/M)*cos(n-m-2*i)-2*cos(i)+2*a*cos(i)*cos(i)/M-a/M;

returnf;

}

doubleSolveF(doublea,doublei)//最速下降法的目标函数

{

doublef=F1(a,i)*F1(a,i)+F2(a,i)*F2(a,i);

returnf;

}

doubleCaculate(doublet1)//最速下降法求解方程1与方程2的方程组

{

doubleff[2],t2=0.8;

doublef=1;

while(f>e)

{

doubleei,FF;

ff[0]=(SolveF((t1+h*t1),t2)-SolveF(t1,t2))/(t1*h);

ff[1]=(SolveF(t1,(t2+h*t2))-SolveF(t1,t2))/(t2*h);

FF=ff[0]*ff[0]+ff[1]*ff[1];

ei=SolveF(t1,t2)/FF;

t1=t1-ei*ff[0];

t2=t2-ei*ff[1];

f=SolveF(t1,t2);

}

returnt2;

}

二、设计误差分析

根据转向梯形机构主参数的设计值计算出内转向轮的实际偏转角,再通过无侧滑状态下的理想转角的比拟,可进行转向梯形机构的误差分析。

内转向轮的实际偏转角

1.根据已确定的转向梯形机构尺寸,由下式确定转向轮的实际偏转角为

式中

2.内转向轮的理想偏转角β

内侧转向轮无侧滑时的理想偏转角:

3.内转向轮偏转角误差

C++程序代码如下

doublebeta(doublea,doublei,doublem)//计算误差的函数

{

doubleA=sin(m+i);

doubleB=cos(m+i)-M/a;

doubleb=M-2*a*cos(i);

doubleC=(2*a*a-b*b+M*M)/(2*a*a)-M*cos(m+i)/a;

doubleBm=2*atan((A-sqrt(A*A+B*B-C*C))/(B+C))+i-pi;

doublebeta=atan(1/(1/tan(m)-M/L))-Bm;

if(beta<0)

beta=-beta;

returnbeta;

}

doublemin(doublea,doublei)//求最大误差的函数

{

doublemin=0;

for(intj=0;j<120;j++)

{

if(beta(a,i,j*pi/900)>min)

{

min=beta(a,i,j*pi/900);

}

}

returnmin;

}

设计结果:

设计方法有两种:

最速下降法求解和直接搜索法。

直接搜索法利用计算机,选择a和

的值计算误差,比拟从而得出误差最小的a和

最后C++程序如下:

#include

#include

usingnamespacestd;

constdoubleM=1022,L=1780,e=10E-5,h=10E-5,pi=3.141592;

doubleF1(doublea,doublei)//方程1

{

doublem=0.01;

doublen=atan(1/(1/tan(m)-M/L));

doublef;

f=cos(m+i)+cos(n-i)-(a/M)*cos(n-m-2*i)-2*cos(i)+2*a*cos(i)*cos(i)/M-a/M;

returnf;

}

doubleF2(doublea,doublei)//方程2

{

doublem=0.446;

doublen=atan(1/(1/tan(m)-M/L));

doublef;

f=cos(m+i)+cos(n-i)-(a/M)*cos(n-m-2*i)-2*cos(i)+2*a*cos(i)*cos(i)/M-a/M;

returnf;

}

doubleSolveF(doublea,doublei)

{

doublef=F1(a,i)*F1(a,i)+F2(a,i)*F2(a,i);

returnf;

}

doubleCaculate(doublet1)//最速下降法求解方程1与方程2的方程组

{

doubleff[2],t2=0.8;

doublef=1;

while(f>e)

{

doubleei,FF;

ff[0]=(SolveF((t1+h*t1),t2)-SolveF(t1,t2))/(t1*h);

ff[1]=(SolveF(t1,(t2+h*t2))-SolveF(t1,t2))/(t2*h);

FF=ff[0]*ff[0]+ff[1]*ff[1];

ei=SolveF(t1,t2)/FF;

t1=t1-ei*ff[0];

t2=t2-ei*ff[1];

f=SolveF(t1,t2);

}

returnt2;

}

doublebeta(doublea,doublei,doublem)//计算误差的函数

{

doubleA=sin(m+i);

doubleB=cos(m+i)-M/a;

doubleb=M-2*a*cos(i);

doubleC=(2*a*a-b*b+M*M)/(2*a*a)-M*cos(m+i)/a;

doubleBm=2*atan((A-sqrt(A*A+B*B-C*C))/(B+C))+i-pi;

doublebeta=atan(1/(1/tan(m)-M/L))-Bm;

if(beta<0)

beta=-beta;

returnbeta;

}

doublemin(doublea,doublei)//求最大误差的函数

{

doublemin=0;

for(intj=0;j<120;j++)

{

if(beta(a,i,j*pi/900)>min)

{

min=beta(a,i,j*pi/900);

}

}

returnmin;

}

intmain()

{

doublemax=2;

doublea,a0;

//采用最速下降法求解。

max=min(150,Caculate(150));//a的值取150。

a=150;

a0=Caculate(150)*180/pi;

cout<<"采用最速下降法:

"<

cout<<"a="<

cout<<"a0="<

cout<<"最大误差:

"<

cout<<"-------------------------"<

cout<<"-------------------------"<

//采用直接搜索法,寻求最优解。

max=2;

for(inti=100;i<250;i++)

{

for(intj=1;j<101;j++)

{

if(min(i,(65+0.1*j)*pi/180)

{

max=min(i,(68+0.1*j)*pi/180);

a=i;

a0=(68+0.1*j);

}

}

}

cout<<"采用直接搜索法:

"<

cout<<"a="<

cout<<"a0="<

cout<<"最大误差:

"<

intb;

cin>>b;

return0;

}

计算结果如下:

最后选取a=197;

,其最大误差为度。

设计结果理想。

采用excel作误差图如下:

运动连续性及传力性能分析:

连续性:

根据设计结果,可得该机构死点位置时转过的角度为:

代人数值得

该值大于机构的最大转角,故机构运动连续,符合设计要求。

传力性能:

当机构转到最小角度时的传动角为

经计算可得

,符合设计要求。

心得体会:

经过将近一个月的学习思考,我终于完成了转向机构的设计。

设计过程中非线性方程的求解是遇到的最大问题,刚开始打算采用消元把a消去,得到一个关于

的函数,然后用数学软件作图,图像和横轴的交点便是

的解,但在实际操作中发现消元法把a消去之后得到的函数图象在预想范围之内与横轴没有交点,不能求出

,和同学讨论之后,造成这种结果的原因可能是消元之前方程失去原来的意义。

我去图书馆查找了有关最速下降法求解非线性方程的资料,最后决定用C++程序实现最速下降法。

经过屡次调试,最后得到了比拟满意的结果。

其实除了最速下降法,还可以通过误差公式,在程序了嵌套两个循环,在规定的a和

的范围内逐一试算,选出误差最小的一组a和

这次设计虽然是重复前人的工作,但我在不断发现问题并解决问题的过程中学到了许多,在设计过程中经历了好屡次失败,但是我并没有气馁,只要能够坚持不懈,就一定会有突破。

在遇到问题时且不可死钻牛角尖,而应该换个角度去思考,多考虑其他方法,其次要有严谨的态度,要做到一板一眼,踏实认真。

当问题过于大而一时难以下手时,应把一个大的问题划分成众多小问题,然后一一解决,最后整个难题也就解决了。

在以后的学习、设计中,我会总结这次设计中的经验,继续努力。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 临时分类 > 批量上传

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2