必威体育Betway必威体育官网
当前位置:首页 > IT技术

无碳小车

时间:2019-08-31 17:40:00来源:IT技术作者:seo实验室小编阅读:64次「手机版」
 

无碳小车

大学生工程训练综合能力竞赛‘S’型无碳小车的实现方案

大赛要求:设计一种小车,驱动其行走及转向的能量是根据能量转换原理,由给定重力势能转换而得到的。该给定重力势能由竞赛时统一使用质量为1Kg的标准砝码(φ50×65 mm,碳钢制作)来获得,要求砝码的可下降高度为400±2mm。标准砝码始终由小车承载,不允许从小车上掉落。

要求小车在行走过程中完成所有动作所需的能量均由此给定重力势能转换而得,不可以使用任何其他来源的能量。

要求小车具有转向控制机构,且此转向控制机构具有可调节功能,以适应放有不同间距障碍物的竞赛场地。

要求小车为三轮结构。

竞赛小车在前行时能够自动绕过赛道上设置的障碍物。障碍物为直径20mm、高200mm的圆棒,沿赛道中线等距离摆放。以小车前行的距离和成功绕障数量来评定成绩。参加“S”型赛道竞赛的参赛队,用在现场调整装配后的小车,加载统一的标准砝码,在指定的赛道上进行比赛。赛道宽度为2米,出发端线距第一个障碍及障碍与障碍之间的间距均相同,具体数值由竞赛项目开始时现场公开抽签,在700~1300mm范围内产生一个“S”型赛道障碍物间距值。小车出发位置自定,但不得超过出发端线和赛道边界线。(小车有效的绕障方法为:小车从赛道一侧越过一个障碍后,整体越过赛道中线且障碍物不被撞倒或推出障碍物定位圆;连续运行,直至小车停止。小车有效的运行距离为:停止时小车最远端与出发线之间的垂直距离。)

控制方案分析:摆放的桩间距固定,要使小车实现绕桩的运动方式,核心点即为控制小车的前进与转向的关系。这里为了简化模型,将小车运动轨迹看作一条cos函数曲线y=Acos(2*π/T*x),有赛题归纳相关参数如下:A:振幅(<=1000)、T:周期(1400~2600)。小车运动的根本动力来源于1Kg中午下落时重力势能转化成小车的动能。其中一部分供给小车作为前进的动力,一部分供给小车作为转向时所需要的耗能。

若要按照简化的数学模型即运动轨迹看作一条曲线的话,问题得以简化,只需确定三角曲线的振幅和周期即可。当然,从能量守恒的角度出发,走的曲线振幅越小总长度越短,则与地面以及自身传动机构的摩擦耗能越小。但是,振幅A并非越小越好,从参赛规则的解析来看,小车的振幅越小的话绕桩的风险就越大,也就是离桩的距离越近则撞到桩的可能性就越大,容错率越小,甚至可能彻底改变小车接下来的运动路径,得不偿失。所以振幅A的确定还需考虑到小车的车宽以及小车的结构设计,中心高度、转向时的速率等问题。除此之外,T周期的确定也需要考虑。实际上T是由现场抽签得到的桩距来确定的,并非提前可以预知的。考虑到这一点的情况下,小车结构的设计就与要有一定的调整空间,需要考虑到加入可调机构,满足调节的便利性与精确度。

对于小车机构的设计可以拆分几个方面来考虑。其一,对于将重物下落的重力势能转化为小车的动能的能量转化装置。可以参考的有线轮直接带动轴的转动将下落的直线运动转化为轴的旋转运动、也可以参考使用扭簧来存储能量再进行转化;其二,对于转化完的能量进行调节的装置,可以看作是变速箱,调节速度与力矩的关系。可以参考的有齿轮组,液压调速(当然在此并不适用),曲柄连杆等;其三,周期性转向装置,需要控制小车前轮周期性平滑转向。可以参考的机构有曲柄连杆,凸轮,间歇齿轮等。

本文提出的方案采用线轮来转化能量,齿轮组来调速,凸轮与扭簧的配合来实现双向转向。基本思路说明:小车的凸轮旋转一圈即小车的前轮摆动一个周期,通过参数设计使小车凸轮的曲线满足前轮与中轴线的夹角即为小车该时刻的摆角按照cos曲线的变化而变化。再通过控制小车的传动齿轮的齿数来调节小车的传动比,控制小车在凸轮旋转一圈内走过的路程为曲线一个周期的长度。可以看出,凸轮的参数设计与小车的传动比没有直接的关系。首先设计出凸轮的曲线,即为小车一个周期的前轮摆动变化。再考虑在一个周期内小车的前进距离,即进行传动齿轮的参数设计。

转向摆动机构:

简化的数学模型:

小车运行过程的数学模型简化:

满足的限制条件:

参数说明:P1:小车的前轮与地面的接触点为、P2:小车两后轮与地面接触点的中心为、L:小车前后中心的长度、r:凸轮和从动杆的中心距、r0:凸轮的基圆半径、d:凸轮与中轴间距、θ:车轮的摆角

基本思路:当小车需要在既定的轨迹线上行走时,即小车的点P1与P2都在曲线上,满足曲线公式。与此同时可以通过两点距离公式求解小车的轴长,当然这一参数是根据小车的齿轮组以及转向机构的设计大小由三维模型测量出的一个已知的数据,这一值将作为限制条件进行求解。小车的摆角就可以通过小车中轴的直线与轨迹线在P1点的切线来求得。最后,结合设计的机械结构的三角函数关系求取凸轮每一半径r与小车当前位置x的关系,进过周期的换算就可得小车在2π弧度变化下时曲线的变化。最后同样重要的是在设计凸轮的过程中一定要考虑进压力角的概念,对设计出的曲线进行压力角的检验,参考45#钢摩擦力判断是否会出现自锁的现象。

小车不同周期的调节装置:

实际为参考了车床的燕尾槽机构,参考加工与配合调节的需要,改为矩形的滑槽来对小车后轮支撑座与底板的配合。在最后一级的传动齿轮设计不同的齿数的三个齿轮,分别满足周期范围700~900、900~1100、1100~1300的调整。

至此,小车的基本设计都已完成。还需要进一步加以说明的是关于凸轮的计算过程。要计算凸轮曲线,则未知数A与T需先确定,这一过程相对繁琐。基本的做法是三维建模确定小车的轴长后,在三个不同周期范围内的曲线里改变不同的振幅A画图测量看小车的最大摆角,保证摆角在一个合理的数值范围内,以避免小车因过弯角度太大而倾倒,以此来确定出小车行进曲线的振幅A。接下来便可以求解小车的凸轮曲线。但会发现求解过程并不容易,最理想的情况即为尝试使用Matlab和Mathematica求解解析解,这样可以直接调整y=f(x)函数的参数来求得函数值。但发现方程不存在解析解,或者说无法求解出。接下来尝试的做法有二:一是,使用Matlab求解离散点的数值,再通过高阶函数拟合出凸轮曲线的方程,通过方程可以对该曲线的特性进行进一步的分析。二是,设置求解点的步长足够短(这里我的做法是小于中走丝切割的最大精度即可),然后直接将点集复制粘贴进CAD中,软件自动连接前后两点,构成一条曲线。由画出的曲线则可以做进一步的建模与加工测试。

Matlab:

function R = Cam(x,A,D,L,r0,d)
	y1=A*cos(2*pi/D*x1);
	y2=A*cos(2*pi/D*x2);
	L=sqrt((x2-x1)^2+(y2-y1)^2);
	x1>x2;
	tan(beta)=(y2-y1)/(x2-x1);
	tan(afa)=-2*pi/D*A*sin(2*pi/D*x1);
	fai=afa-beta;
	R=r0+d*tan(fai);
end

R:

#构建函数
test=function(x)
{
  115*cos(2*pi/2600*x)
}
fun=function(x1,x2)
{
  (x1-x2)^2+(test(x1)-test(x2))^2-8100
}

##对于每个给定的x_t,计算对应的角度
angle=c()
x_t=seq(1,2601,by=1)
#x_t=seq(1,2091,by=0.001)
for(x1 in x_t)
{
  x2=uniroot(function(x) fun(x1,x),c(x1,x1+500))$root
  angle=c(angle,atan(-115*2*pi/2600*sin(2*pi/2600*x1))-atan(-115*2*pi/2600*sin(2*pi/2600*x2)))
}
r=20+30*tan(angle)


##角度和x_t的拟合
lma=lm(formula = r ~ poly(x_t, 20))
mean(abs(lma$residuals))
#write.table(lma$coefficient,"tt.txt",sep=",")
paste(lma$coefficient,"*t","^",0:20,collapse="+",sep="")

##r和x_t的图
plot(x_t,lma$fitted.values,col = "red")
lines(x_t,r)

##圆的图
x=r*cos(2*pi/2600*x_t)
y=r*sin(2*pi/2600*x_t)
plot(x,y,col="red")
fit_r=lma$fitted.values
fit_x=fit_r*cos(2*pi/2600*x_t)
fit_y=fit_r*sin(2*pi/2600*x_t)
lines(fit_x,fit_y)

y[which.max(x^2+y^2)]
y[which.min(x^2+y^2)]
sqrt(min(x^2+y^2))+sqrt(max(x^2+y^2))



x1=20*cos(2*pi/2000*x_t)
y1=20*sin(2*pi/2000*x_t)
points(x1,y1)

plot(x_t,angle)
which.max(r)
fit=function(x) -1.5*cos(x*2*pi/2000)+20
lines(1:3000,fit(1:3000))

[拟合公式:

cos(t*pi/1000)*cos(t*pi/1000)*(19.9046303314318-24.6321100285512*t^1-68.7037357822936*t^2+21.8639053268538*t^3+22.031209948246*t^4-3.06013795943857*t^5-2.41171281400382*t^6+2.62620450414914*t^7+0.454055925598907*t^8-2.09737235314707*t^9-0.227459711265195*t^10+0.776057422197782*t^11)

实际上高阶拟合容易产生过拟合的问题,这里的数据最终没被采用,只是尝试的过程说明。]

相关阅读

基于51单片机智能小车的设计与实现

0引言学习智能小车系统,有助于提高搭建系统的能力和对自动控制技术的理解。智能小车是一个较为完整的智能化系统,而智能化的研究已

为什么总有人说,很多有钱人都开着几万块的小车

日常逛逛贴吧,一个哥们开了群嘲话题帖,挺有意思。下面各种吧友也是给面子,下面小编给大家直播一下也乐呵乐呵。楼主:厉害了,你那地方都

分享到:

栏目导航

推荐阅读

热门阅读