Elvas Tower: Diesel engine fuel consumption - Elvas Tower

Jump to content

  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

Diesel engine fuel consumption Rate Topic: -----

#11 User is offline   Matej Pacha 

  • Engineer
  • Group: Status: Contributing Member
  • Posts: 571
  • Joined: 08-December 10
  • Gender:Male
  • Location:Slovakia
  • Country:

Posted 23 February 2014 - 12:32 PM

OK, now I see, where is the problem. The fuel consumption is derived from the load of the engine. But since there are no power losses and/or auxiliaries, the fuel consumption is zero (if the engine produces no power for traction - neutral direction or zero speed).
I have some solution now, but it will be ready to commit by tomorrow. If max throttle at neutral is set, it leads to 10% of rated fuel flow. No big math, just an assumption. If somebody has some real world data, it would be very helpful and appreciated.

Matej

#12 User is offline   copperpen 

  • Executive Vice President
  • Group: Status: Elite Member
  • Posts: 3,144
  • Joined: 08-August 05
  • Gender:Male
  • Simulator:MSTS & OR
  • Country:

Posted 23 February 2014 - 02:20 PM

Not found anything solid yet, but I have found a site that suggests a usage of one gallon per hour per 20hp at max rpm. I guess the lower settings could be extrapolated from that. I do have a BR test report on one of the Southern Railway early diesel electric engines, but fuel consumption is given in pounds.

#13 User is offline   rdamurphy 

  • Open Rails Developer
  • Group: Private - Open Rails Developer
  • Posts: 1,199
  • Joined: 04-May 06
  • Gender:Male
  • Location:Thornton, CO
  • Simulator:MSTS - OR
  • Country:

Posted 23 February 2014 - 08:56 PM

I know it's probably a future feature, but at some point we should deal with passenger locomotives equipped with HEP that operate in Run8 regardless of speed or throttle position.

Robert

#14 User is offline   copperpen 

  • Executive Vice President
  • Group: Status: Elite Member
  • Posts: 3,144
  • Joined: 08-August 05
  • Gender:Male
  • Simulator:MSTS & OR
  • Country:

Posted 25 February 2014 - 08:07 AM

Trying to understand how fuel consumption is being calculated I come across DieselConsumptionTab in DieselEngine.cs. Thinking I might actually find a table, I searched but only found these 7 lines in the file and no reference in any other file in the Rolling Stock folder. I did however find unit conversions in the STFReader.cs that confirms OR is using US gallons for fuel level calculations. What is not clear to me from these lines is how the fuel used is being calculated.

Line 355: DieselConsumptionTab = new Interpolator(copy.DieselConsumptionTab);
Line 417: public Interpolator DieselConsumptionTab;
Line 465: case "engine(orts(diesel(dieselconsumptiontab": DieselConsumptionTab = new Interpolator(stf); initLevel++; break;
Line 507: case "dieselconsumptiontab": DieselConsumptionTab = new Interpolator(stf);initLevel++; break;
Line 624: if (DieselConsumptionTab != null)
Line 629: DieselFlowLps = DieselConsumptionTab[RealRPM] * MaxOutputPowerW / 3600.0f / 800.0f / 1000.0f;
Line 767: DieselConsumptionTab = new Interpolator(new float[] { loco.IdleRPM, loco.MaxRPM }, new float[] { loco.DieselUsedPerHourAtIdleL, loco.DieselUsedPerHourAtMaxPowerL });

I also come across several references to [RealRPM], again, with no clear definition of how this, whatever it is supposed to be, actually is, or how it is being calculated. Anybody care to enlighten me?.

#15 User is offline   Matej Pacha 

  • Engineer
  • Group: Status: Contributing Member
  • Posts: 571
  • Joined: 08-December 10
  • Gender:Male
  • Location:Slovakia
  • Country:

Posted 25 February 2014 - 11:10 PM

Well,
first of all, I'd like to say that ORTS team is full of volunteers working in their free time (what is really not appreciated by familly members). Many bigger things by me have been developed in few days with no time to make a documentation. And here I am - creating the documentation all the time here:
Following lines can be simply described as variables needed for the functionality:
Line 355: DieselConsumptionTab = new Interpolator(copy.DieselConsumptionTab);
Line 417: public Interpolator DieselConsumptionTab;
Line 465: case "engine(orts(diesel(dieselconsumptiontab": DieselConsumptionTab = new Interpolator(stf); initLevel++; break;
Line 507: case "dieselconsumptiontab": DieselConsumptionTab = new Interpolator(stf);initLevel++; break;

The DieselConsumptionTab is supposed to be a lookup table, where RPM is the input and current diesel flow per hour is the output. This behavior follows the MSTS behavior - the fuel consumption is proportional to diesel engine RPM. Now I can see my mistake here, because the MaxOutputPowerW with the conversion has been used for another table (based on real world data of specific consumption), which I disabled, but didn't switch back to the MSTS-like calculation.
Line 624: if (DieselConsumptionTab != null)
Line 629: DieselFlowLps = DieselConsumptionTab[RealRPM] * MaxOutputPowerW / 3600.0f / 800.0f / 1000.0f;

It should be:
DieselFlowLps = DieselConsumptionTab[RealRPM] / 3600.0f;

Finally, here is the list of RPMs used within diesel engine class:
  • RealRPM - current RPM of the engine
  • dRPM - a derivation of current RPM
  • DemandedRPM - demand based on a lookup table and the throttle setting
  • MaxRPM - maximal RPM given by ENG params
  • IdleRPM - idle RPM given by ENG params
  • StartingRPM - RPM, from which the engine starts to inject some fuel (applicable only if starting the engine). The value is set to 2/3 of IdleRPM
  • StartingConfirmationRPM - RPM, from which the engine is considered as started. The value is set to 110% of IdleRPM. After the starting confirmation, the engine is able to give some power. If the throttle is zero, the RPM falls to IdleRPM.

Well, I'll figure something out, mainly with the consumption calculation. I'm travelling to Lithuania on Sunday for some measurements, so I'll try to get some real world data for this purpose.

Cheers,
Matej

#16 User is offline   RTP 

  • Conductor
  • Group: Status: Active Member
  • Posts: 254
  • Joined: 14-June 09
  • Gender:Male
  • Location:Barcelona
  • Simulator:Open Rails
  • Country:

Posted 26 February 2014 - 05:18 AM

In a Diesel-Electric system, the fuel consumption is not related with the RPM wich are fairly constant, mantained by the governor, but to the delivered power.

Imagine a big engine, running at full RPM with no alternator connected. The power delivered is very small.

Cheers.
RTP

#17 User is offline   longiron 

  • Open Rails Developer
  • Group: Status: Elite Member
  • Posts: 3,179
  • Joined: 25-July 08
  • Gender:Male
  • Location:Manasquan, NJ
  • Simulator:Open Rails, MSTS editors
  • Country:

Posted 26 February 2014 - 06:15 AM

Great article with real #s for at least North American locomotives: http://cs.trains.com...ort=ASC&pi332=1




another great site: http://www.alkrug.vc...cts/fueluse.htm

#18 User is offline   Matej Pacha 

  • Engineer
  • Group: Status: Contributing Member
  • Posts: 571
  • Joined: 08-December 10
  • Gender:Male
  • Location:Slovakia
  • Country:

Posted 26 February 2014 - 09:15 AM

View Postlongiron, on 26 February 2014 - 06:15 AM, said:

Great article with real #s for at least North American locomotives: http://cs.trains.com...ort=ASC&pi332=1

This is the ghost speaking! Glad to see you here, Chris ;) I will definitely have a look at it.

#19 User is offline   Matej Pacha 

  • Engineer
  • Group: Status: Contributing Member
  • Posts: 571
  • Joined: 08-December 10
  • Gender:Male
  • Location:Slovakia
  • Country:

Posted 26 February 2014 - 09:24 AM

View PostRTP, on 26 February 2014 - 05:18 AM, said:

In a Diesel-Electric system, the fuel consumption is not related with the RPM wich are fairly constant, mantained by the governor, but to the delivered power.

Imagine a big engine, running at full RPM with no alternator connected. The power delivered is very small.

Cheers.
RTP

Consider some power losses, what is for sure RPM dependent. But just if the alternator is not connected.
If there is some power on wheels, the locomotive control system is responsible for loading the engine by controlling the generator excitation. Hence the diesel engine load is very close to 90 - 95%. If the specific fuel consumption would be constant, let's say about 200 gramms per kilowatt, the fuel consumption of 90% loaded engine would be proportional to the output power. Since the output power is a function of RPM, the absolut fuel consumption is also proportional to RPM. I know, we are simplifiing things, but the fuel consumption depends on many more things, like ambient air conditions, pressure, temperature, engine condition, control system, ....)

BR,
Matej

#20 User is offline   RTP 

  • Conductor
  • Group: Status: Active Member
  • Posts: 254
  • Joined: 14-June 09
  • Gender:Male
  • Location:Barcelona
  • Simulator:Open Rails
  • Country:

Posted 26 February 2014 - 09:45 AM

The outout power is a function of RPM and delivered torque.
The governor controls generator excitacion and fuel flow in order to maintain the engine RPM at the best. Say, 60-80% of the max.

Only at full power the engine runs at max RPM and torque.

But most of the times the engine does not run at full power.

Then, the fuel consumption is function of the delivered power, plus losses. ( Internal friction of the engine, cooling power, and so.)


Cheers.

RTP

  • 3 Pages +
  • 1
  • 2
  • 3
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users