マニュアル車の速度におけるエンジンの回転数を調べたくなりました。試しにNDロードスターが時速30キロで走るための各ギアの回転数を計算してみました。
エンジン回転数は1分間にエンジンが回転する回数です。単位はrpm (rotations per minute)
式にするとこうなります。
車速=タイヤの外周長×エンジン回転数÷(ギア比×最終減速比)
エンジンが一分間に回転することでタイヤがどれだけ回転するか分かればタイヤの円周長から一分あたりの走行距離が分かります。
また、この式を変形することでエンジン回転数を求めることができます。
エンジン回転数=車速×(ギア比×最終減速比)÷タイヤの外周長
ギア比×最終減速比の値がタイヤが一回転するためのエンジン回転数になるので
NDロードスターの場合
5.087(一速)×2.886(最終減速比)=14.68
タイヤが1回転するためにエンジンは14.68回転します。
import math # ホイールの直径 (inch) wheelDiameter = 16 # タイヤ幅 (mm) tireWidth = 195 # 扁平率 (%) tireFlatness = 0.5 # タイヤの外周長(m) perimeterLength = ((tireWidth * tireFlatness * 2) + wheelDiameter * 25.4) * math.pi / 1000 # 最終減速比 finalReductionRatio = 2.866 # ギア比 gearRatio = [5.087, 2.991, 2.035, 1.594, 1.286, 1.000] # 速度(km/h) speed = 30 # 回転数を計算する for i in range(0, len(gearRatio)): rpm = (speed * 1000 / 60) * gearRatio[i] * finalReductionRatio / perimeterLength print(str(i+1) + ': ' + str(int(rpm)) + ' rpm')
結果このようにプリントされます。
1: 3858 rpm
2: 2268 rpm
3: 1543 rpm
4: 1208 rpm
5: 975 rpm
6: 758 rpm
減速時に30kmあたりで2速に落とすには2268rpmあたりでつなげばスムーズなギアチェンジができますね。
※この計算はあらゆる抵抗などを無視した概算です
WPFを使った作例です。