03.05 汽车驱动力及发动机转矩曲线在python中拟合

确定汽车的动力性就必须掌握沿汽车行驶方向的作用于汽车的各种外力,即驱动力和行驶阻力,今天我们一起学习一下汽车的驱动力。

汽车的驱动力是由汽车发动机产生的转矩,经由传动系传至驱动轮上产生的。汽车行驶时,作用于驱动轮上的转矩产生一个对地面的圆周力,地面对驱动轮的反作用力即是驱动汽车的外力,称为汽车的驱动力,如下图所示。

汽车驱动力及发动机转矩曲线在python中拟合


汽车驱动力及发动机转矩曲线在python中拟合


公式中,为作用于驱动轮的转矩,r为车轮半径。

作用于驱动轮上的转矩是由发动机产生的转矩经传动系传至驱动轮的,所以可以得到

汽车驱动力及发动机转矩曲线在python中拟合

公式中表示发动机转矩,表示变速器的传动比,表示主减速器的传动比,表示传动系的机械功率。

在加速过程的不稳定工况下,发动机所能提供的功率比稳定工况时稍有下降,电喷汽油机比化油器汽油机要下降得更多些。在进行动力性评估师,一般沿用稳态工况时发动里台架试验所得到的使用外特性中的功率和转矩曲线。

为了便于计算,常采用多项式来描述由试验台测得的,接近于抛物线的发动机转矩曲线。主要是由最小二乘法来对数据进行拟合,拟合阶数K随特性曲线而异,一般取值在2至5之间。下面举一个例子,使用python进行数据处理。一款车,试验测得的转矩特性如下:

汽车驱动力及发动机转矩曲线在python中拟合


在python中输入以下代码:

import numpy as np

import matplotlib.pyplot as plt

num1= [1000,1500,2000,2500,3000,3500,3800,4000]

x = np.array(num1)

print('x is :\\n',x)

num2 = [135,147,153,157,147,138,134,126]

y = np.array(num2)

print('y is :\\n',y)

f1 = np.polyfit(x, y, 5)

print('f1 is :\\n',f1)

p1=np.poly1d(f1)

print("p1 is :\\n",p1)

xnew=np.arange(1000,4000,1)

ynew=p1(xnew)

plot1=plt.plot(x,y,'r*',label='original values')

plot2=plt.plot(xnew,ynew,'b',label='polyfit values')

plt.xlabel('n')

plt.ylabel('Ttq')

plt.title('engeneer')

plt.legend()

plt.show()

按F5运行后即可得到以下输出:

汽车驱动力及发动机转矩曲线在python中拟合


汽车驱动力及发动机转矩曲线在python中拟合

输出结果就包括了发动机转矩曲线拟合图像及拟合多项式的系数值。


分享到:


相關文章: