Mogli12 / GearboxAddon

Farming Simulator 2017: Gearbox addon
GNU General Public License v3.0
53 stars 28 forks source link

How can I adjust the cruising RPM of an automatic transmission? #416

Open Dudejo opened 5 years ago

Dudejo commented 5 years ago

The main issue I've been having up until now is that when I create a configuration for a truck, the vehicle always cruises one gear short of the overdrive while maintaining high RPMs at all times.

Even when I force the transmission to upshift, it downshifts immediately.

This happens even when I drive unloaded on flat terrain.

How can I encourage/force the transmission to maintain low RPMs in its highest gear? Ideally, I want it to cruise at ~1500 RPMs while doing 100 km/h.

my gear setup

    <transmission name="Allison 3.73" speedLimiter="false" torqueConverter="true" clutchCloseRpm="1300" torqueConverterMaxFactor="1.58" maxRpmThrottle="0.5" fuelPerDistanceMinSpeed="10">          
        <gears axleSpeed="3.73" tireWidth="245" tireRatio="75" rimDiameter="16" defaultGear="1" automatic="true" shiftEffect="false" manualClutch="false">
            <gear inverseRatio="3.10"  forwardOnly="true" name="1"/>
            <gear inverseRatio="4.49"  reverseOnly="true" name="R"/>            
            <gear inverseRatio="1.81"  forwardOnly="true" name="2"/>
            <gear inverseRatio="1.41"  forwardOnly="true" name="3"/>
            <gear inverseRatio="1.00" forwardOnly="true" name="4"/>
            <gear inverseRatio="0.71" forwardOnly="true" name="5"/>
            <gear inverseRatio="0.61" forwardOnly="true" name="6"/>
        </gears>
    </transmission>

my engine

            <engine displayName="6.6L LMM" idleRpm="680" ratedRpm="3400">
                <!-- 250 hp @ 3200 rpm | 624 nm @ 1600 rpm -->
                <torque rpm="0" motorTorque="0" />
                <torque rpm="500" motorTorque="176" />
                <torque rpm="1000" motorTorque="351" />
                <torque rpm="1600" motorTorque="624" />
                <torque rpm="2300" motorTorque="579" />
                <torque rpm="3200" motorTorque="556" />
                <torque rpm="3400" motorTorque="350" />
                <torque rpm="3450" motorTorque="0" />
            </engine>
Mogli12 commented 5 years ago

Hi,

I propose to add minTargetRpm="1000" to <transmission ....

Regards, Stefan

Dudejo commented 5 years ago

That helped a little bit. The truck finally shifts out out 4th gear.

However, it won't shift out of 5th gear unless I force it to do so. Is there anything else I can try?

EDIT : Since I use MoreRealistic, I have reduced the drag force of my truck until it could cruise at 20% load. However, it still won't upshift into its final gear.

EDIT 2 : I put in a few fuel usage ratio tags inside my engine and now it will upshift into 6th gear. How lazy can I be with the tags? Will it auto-calculate absent tags in-between RPM ranges?

Mogli12 commented 5 years ago

Hi,

I will calculate the points in-between with linear interpolation. The more points you add to your RPM curve the better. I know that my Excel sheet is quite complicated. But did you try to use it? MotorNeu.xlsx

Regards, Stefan

Dudejo commented 5 years ago

I didn't know about the existence of that sheet.

I think I'm slowly getting the hang of it but I would appreciate tips regarding hand-made torque curves instead of the pre-calculated ones

Dudejo commented 5 years ago

So far, I have an issue with operating the calculator

the engine has a RPM range of 3000 RPMs. This causes the excel sheet to make the fuel consumption curve very flat, which causes, once more, the transmission to ignore top gear.

I have no idea which value to change to increase the consumption at higher RPMs.

Mogli12 commented 5 years ago

Hi,

I updated the MotorNeu.xlsx to better support rated RPM 3200. I used these values to have a better fuel curve:

maxPRpm maxPS maxPSEcoInput maxPSEco ratedRpm PS PSEcoInput PSEco maxTRpm1 maxTRpm maxT maxTEcoInput maxTEco idleRpm idleRatio fadeOut linearDown fadeOutExp Efficiency Factor fuelMinRate fuelRatedRate fuelMinRpm fuelIdleRate
3200 250   250 3200 250   250 1600 1600 624   624 850 90% 299 0,5 1,7 0,98 1 207 245 1270 220

Regards, Stefan P.S.: I am having problems pushing the update to github. Please be patient

Mogli12 commented 5 years ago

You can change the values in column A from line 7 on...

Dudejo commented 5 years ago

The updated file will appear in the Documents folder, right?

Mogli12 commented 5 years ago

The update is now available in documents folder.

Dudejo commented 5 years ago

I noticed that in your file, the FuelRatedRate and FuelIdleRate values are pre-calculated. Do I simply overwrite them with a regular number?

Thanks a lot for the time.

Mogli12 commented 5 years ago

The grey numbers are precalculated. But you can overwrite most of the numbers in that row. I would change in your case the fuelRatedRate and fuelIdleRate.

Dudejo commented 5 years ago

Recently, I've also noticed that automatic shifting is further hindered if the vehicle is configured with both automatic gears and an automatic range splitter (specifically a small 2-speed splitter like the Hurlimann H488 with the 40+40 transmission)

In my opinion, it appears the mod only seems to calculate the next shift using the ratios from the gears section and will ignore ratios from any range section unless the engine RPM is too high to keep accelerating.

I did not have this problem if I eliminated the range section and integrated the split gears with the regular gears.

Mogli12 commented 5 years ago

Hi,

This depends on the time to shift gears or ranges. But you can overwrite the priorities the following ways:

...
<gears shiftTimeMs="650" autoShiftPriority="2">
...
</gears>
<ranges shiftTimeMs="750" autoShiftPriority="1">
...
</ranges>
Dudejo commented 5 years ago

In case it matters, I am tying to achieve the highest gear ratio while cruising at partial throttle. I had tried your suggestion before but unfortunately, it doesn't work as advertised.

In fact, I had gotten slightly better results by using the speed matching flag on the Ranges section.

However...NEITHER method was better than simply setting up a Gears section by itself.

Dudejo commented 5 years ago

I have recently found that the consistency of shifting behavior is affected by the "fuelUsageRatio" tag in a specific way.

To explain, it seems like increasing the value too high (seemingly past 400) is causing some sort of overflow. Whatever is happening causes the transmission's "AI" to break and gears will refuse to shift.

When writing the torque curve, keeping the "fuelUsageRatio" values within 0 and 400 seems to prevent any erratic behavior.