c172p-team / c172p

A high detailed version of the Cessna 172P aircraft for FlightGear
GNU General Public License v2.0
80 stars 43 forks source link

carb heat does not drop RPM as expected #41

Closed gilbertohasnofb closed 8 years ago

gilbertohasnofb commented 9 years ago

PRC01 - carb heat does not drop RPM as expected

gilbertohasnofb commented 8 years ago

I am reopening this as it's better so separate it from #360.

As for the RPM drop once the carb heat toggle is pulled, how much percent are we talking about? I read that the RPM drop is around 80 RPM at cruise RPM, which is around 3,5%. Can anyone confirm these numbers to me? @Juanvvc, @tigert?

gilbertohasnofb commented 8 years ago

Other people mention much smaller drops, such as 25 RPM, 35 RPM, 50 RPM.

gilbertohasnofb commented 8 years ago

A technical question, maybe @onox can help me with this one: if I create a <filter> which lowers the value of the property /engines/active-engine/rpm, I do see a RPM drop in the gauge, but that's not a real drop in power: the engine still effectively runs at the non-filtered RPM. Any recommendations on how can I force a loss of power as well as indicated RPM?

dany93 commented 8 years ago

Engine RPM cannot be imposed, it is the (calculated) result of throttle position, propeller torque (air resistance), all of this giving a power depending on the max power of the engine. I don't know if that is the best solution but I'd try with /fdm/jsbsim/propulsion/engine[<N>]/air-intake-impedance factor. By default = 0.15185. This is a bit cheating. If someone with a better knowledge has a better idea? (@andgi?)

Juanvvc commented 8 years ago

The "carburetor heat" does not modify directly the RPM, but takes the air from a different place and heats the airflow by wiring the air circuit close to the hottest parts of the engine. This way, the air feeding the engine is hotter, less dense and as a result the mixture is richer than with the normal air intake.

I guess a first approximation to the issue is just multiplying the throttle by a factor (0.8?) if the carburetor heat is on. Anyway, even if dany93 believes it is cheating :) and according to the documentation ( http://wiki.flightgear.org/JSBSim_Engines ), /fdm/jsbsim/propulsion/engine[]/air-intake-impedance seems exactly the property to control not only to simulate the use of alternate air intakes like the carburetor heat, but also simulating intake icing. I guess icing is going to be the next thing to simulate after the carburetor heat.

gilbertohasnofb commented 8 years ago

Thanks for the ideas, guys, I will try using air-intake-impedance property and see what I can manage.

gilbertohasnofb commented 8 years ago

Hmm, using the air-intake-impedance doesn't change a thing to me, but on the other hand the volumetric-efficiency property works wonderfully well: the default value is 0.85. Lowering it to 0.81 creates a ~60 RPM drop @2300RPM, which seems reasonable to me for the carb heat. I will also use this property to make the plane engine weaker when the fuel is contaminated with just a bit of water (lots of water forces the engine to be killed). Thanks guys!

dany93 commented 8 years ago

using the air-intake-impedance doesn't change a thing to me

Weird... Did you try by setting it directly in the sim, Internal properties ("Set")? 160 hp 0.15 --> 2323 RPM 0.5 --> 2196 RPM

gilbertohasnofb commented 8 years ago

I tried setting it directly in the sim. But right now the volumetric-efficiency solution is working well, would that be all right with you?

dany93 commented 8 years ago

air-intake-impedance factor is clearly the closest to reality for carburetor heating. The other one is a circumventing way, although not so far. I don't understand why it doesn't work for you, but if you cannot have it otherwise.... In your test, did you change it for the right (active) engine?

gilbertohasnofb commented 8 years ago

Fair enough, Dany, I will give it another try. So what do you say if I use air-intake-impedance factor for the carb heat and use the volumetric-efficiency to lower the engine efficiency if there is water contamination? That sounds quite reasonable to me.

dany93 commented 8 years ago

use the volumetric-efficiency to lower the engine efficiency if there is water contamination?

It is a circumventing, far enough from the real cause, but I do not see which other property to use.

Still, I have a very limited knowledge of these parameters for real engines. I say what I can...

gilbertohasnofb commented 8 years ago

It is a circumventing, far enough from the real cause, but I do not see which other property to use.

That's really the point, unfortunately. But if we want to implement certain specific things we need to circumnavigate a little bit, and I think the result will be worth it. Thanks for all your tips.

Juanvvc commented 8 years ago

I agree with dany93, the aircraft must use the most adequate parameter to simulate the carburettor heat (air-intake-impedance, in my opinion) and not some other parameters (volumetric-efficiency) even if they seem to do the same. They might have other side effects or change in the future!

Regarding water contamination, what you think about using the bsfc parameter? Anyway, if fuel is contaminated, the main problem is that water substitutes fuel and, probably, the engine stops or, at least, coughs heavily. Water and fuel do not mix. I think water contamination needs a more accurate research to be simulated correctly.

gilbertohasnofb commented 8 years ago

what you think about using the bsfc parameter?

I don't know this parameter, can you explain it to me?

As for the fuel contamination, currently we have in our plane that a very small amount of water makes the engine cough (but not lose power), and that if the water is higher than that threshold the engine simply doesn't turn on. I would imagine that for a small amount of contamination coughing + a little loss of power would look realistic, but as you say we probably need to research more about it.

So in that case I will simply implement the carb heater for now.

gilbertohasnofb commented 8 years ago

@Juanvvc just to say I found information about the bsfc parameter.

Indicated Specific Fuel Consumption. The power produced per unit of fuel. Higher numbers give worse fuel economy. This number may need to be lowered slightly from actual BSFC numbers because some internal engine losses are modeled separately.

gilbertohasnofb commented 8 years ago

@dany93 I got the air-intake-impedance-factor to work, for some reason it didn't the first time I tried, don't know why. Anyway, the carb heat toggle now diminishes the RPM which is great, thanks for the help :smile:

gilbertohasnofb commented 8 years ago

Closed via https://github.com/Juanvvc/c172p-detailed/pull/540.