c172p-team / c172p

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

160 HP engine is under-powered for pontoons and amphibious #273

Closed dany93 closed 9 years ago

dany93 commented 9 years ago

As several people noticed, the 160 hp-powered c172p is under-powered, which makes it "lazy" at full load. Floats and amphibious worsen everything (added drag). I tried to fiddle the propeller pitch angle, at no avail. The original one is not far from the best.

I have a test version with a 180 hp engine. On my c172-180hp branch https://github.com/dany93/c172p-detailed/tree/c172-180hp

Easy for the engine.

The propeller is much more questionable. It is the result of compromise between climbing rate, short field takeoff, and cruise or max velocity. For the propeller, I use the NACA 640 data http://naca.central.cranfield.ac.uk/reports/1938/naca-report-640.pdf. They worked rather well for DR400, DC3, Cap10B. But everything is never certain... And I refuse to cheat the values. I check their consistency, I (re-)calculate the efficiency when I extract them from the curves.

Positive:

No so positive:

My reasoning is that, even if this propeller is still questionable, the result is better than with the 160 hp engine. More pleasant.

dany93 commented 9 years ago

Another question: If I set /controls/engines/engine[1]/magnetos to 1, 2, 3, does that mean I must set /controls/engines/engine[0]/magnetos to 0?

I think it is not compulsory, if the starter is selective for engine[0] or [1]. It is just more clean. To check, see the properties as written here https://github.com/Juanvvc/c172p-detailed/issues/273#issuecomment-113734466

dany93 commented 9 years ago

I don't quite yet understand which code is reading /controls/engines/engine[1]/magnetos.

At first view, I would say: the FDM.

onox commented 9 years ago

I can't find the word "magnetos" in c172p.xml, other than in a comment.

dany93 commented 9 years ago

Yes, but it has to check them to choose starting or not, or stop if we cut them. It contains a link to the Engines folder. Under <propulsion>

onox commented 9 years ago

In src/FDM/JSBSim/JSBSim.cxx I see this:

 631         FGPiston* eng = (FGPiston*)Propulsion->GetEngine(i);
 632         eng->SetMagnetos( globals->get_controls()->get_magnetos(i) );

It looks like JSBSim doesn't publish the magnetos values in its own properties subtree (/fdm/jsbsim). So we just have to read /controls/engines/ then.

dany93 commented 9 years ago

Sorry, I have to quit. I think I can go on in one or two hours.

dany93 commented 9 years ago

It looks like JSBSim doesn't publish the magnetos values in its own properties subtree (/fdm/jsbsim). So we just have to read /controls/engines/ then.

Confirmed from the Property tree under fdm/jsbsim/ But I see no drawback.

onox commented 9 years ago

I've got the magneto's and starter working here locally.

dany93 commented 9 years ago

I saw this as the harder to do.

onox commented 9 years ago

I have already fixed the RPM and exhaust effect. Pushed.

onox commented 9 years ago

@dany93 I must say with the 180 HP it is much better to takeoff from the water :smile: With the 160 HP engine it was too difficult to gain altitude.

dany93 commented 9 years ago

Notice that, As every engine is selected by default at start:

However, the bindings from the dashboard: contact key (for magnetos and starter), throttle, mixture lever are to be switched to the active engine. The animations: tachometer, propeller too.

What I would have seen at first thought (which does not mean that I know how to do it, easier to say than to do): Menu, Options to select one engine : flag 160 or 180 if the flag is 180:

But the more it is clean in the engine selection, the more it is long for the Repair list

gilbertohasnofb commented 9 years ago

Isn't that what I'm saying?

I don't know, is that a fact, is that the only reason they upgrade to a 180 HP engine?

If you give people the ability to fly default tires with 180 HP engine, then everybody will use the 180 HP engine :laughing:

I found some information about converted 172 that are not floats, see for instance: http://www.controller.com/list/list.aspx?manu=CESSNA&mdltxt=172%2F180+CONVERSION

That said, I am with onox on this one. I think we shouldn't give people too many options for every single thing possible. I guess 99.999% of all 172 model P have a 160 HP engine, and I guess that 99% of people will only fly the 180 HP version in the sim "because it's better". I would simply associate the 180 HP with the two float options and the 160 HP with the wheel options.

That's my 2 cents, but you guys are doing all the hard work here and I shouldn't be putting my finger here in the first place :wink: It's all up to you then!

onox commented 9 years ago

@dany93 I'm not using the /sim/input/selected/ right now. That is a generic way to select an engine and is to be used when your aircraft has actually multiple engines. You can set the current engine with the !, @, #, $ keys in that case.

I have fixed the magnetos, starter, RPM, exhaust. The throttle and mixture currently control both engines.

onox commented 9 years ago

Now going to fix float chamber and sound...

dany93 commented 9 years ago

You do the code more quickly than I write...

onox commented 9 years ago

About the float chamber:

  1. If using the 160 HP engine: fdm/jsbsim/propulsion/tank[2]/priority = 1 and fdm/jsbsim/propulsion/tank[3]/priority = 0?
  2. If using the 180 HP engine: fdm/jsbsim/propulsion/tank[2]/priority = 0 and fdm/jsbsim/propulsion/tank[3]/priority = 1?

Is that correct?

dany93 commented 9 years ago

About the float chamber:

  1. If using the 160 HP engine: fdm/jsbsim/propulsion/tank[2]/priority = 1 and fdm/jsbsim/propulsion/tank[3]/priority = 0?
  2. If using the 180 HP engine: fdm/jsbsim/propulsion/tank[2]/priority = 0 and fdm/jsbsim/propulsion/tank[3]/priority = 1? Is that correct?

Yes! And sufficient to prevent any unwanted start, or the other engine from running..

onox commented 9 years ago

Thanks! :+1:

onox commented 9 years ago

@dany93 I've a bit of trouble with the fuel system, I'm trying to do in Systems/fuel.xml:

 19     <channel name="Float Chamber Selection">
 20         <!-- Give tank[2] priority if 160 HP engine is used -->
 21         <switch name="propulsion/tank[2]/priority">
 22             <default value="0"/>
 23             <test logic="AND" value="1">
 24                 /controls/engines/active-engine EQ 0
 25             </test>
 26         </switch>
 27 
 28         <!-- Give tank[3] priority if 180 HP engine is used -->
 29         <switch name="propulsion/tank[3]/priority">
 30             <default value="0"/>
 31             <test logic="AND" value="1">
 32                 /controls/engines/active-engine EQ 1
 33             </test>
 34         </switch>
 35     </channel>

But JSBSim is just not setting values to the priority properties :confused:

wkitty42 commented 9 years ago

FWIW: i've not found anything stating that the 180HP upgrade is limited only to floatcraft... indeed, it seems to be a standard upgrade for those that want a higher performance craft than the factory offers... i've looked at quite a few starting here -> https://www.google.com/search?q=cessna+c127+engine+180hp

onox commented 9 years ago

Fixed it, seems I need to use <output>.

gilbertohasnofb commented 9 years ago

Okay, so let's go for it. But does this mean we will leave the option of 160 HP for the floats? That may confuse some people as for why the plane doesn't climb.

onox commented 9 years ago

I would say automatic selection. Otherwise 99% are gonna cheat and use the 180 HP all the time.

wkitty42 commented 9 years ago

how is it cheating?? IRL there are everyday many cessna c172 craft with the lycoming 180HP engine... c172r, c172d thru h, etc... it appears to be a normal and standard upgrade... just like changing the engine out in your car for a more powerful one... or your motorcycle or boat...

wlbragg commented 9 years ago

It's not cheating, it's a choice. I don't understand why we should care what users will do with their choice, it's not for us to say. If most of them use the bigger engine then that says something in and of itself.

onox commented 9 years ago

Alright, I'll make it a choice then.

wlbragg commented 9 years ago

:clap: :clap: :clap:

wkitty42 commented 9 years ago

:+1: :+1: :+1:

onox commented 9 years ago

lol

gilbertohasnofb commented 9 years ago

:dog: :dog: :dog:

But what about the pontoons and amphibian? Are we allowing the 160 HP for them? And if not, how to elegantly handle the dialog? Can we force the 180 HP engine while on floats make the engine selection option "unclickable"?

wlbragg commented 9 years ago

If they still use the 160 engine on float planes in RL, then I say we leave that option. It is a delightful challenge to use it. If this engine is never used in RL on floats, then maybe not.

gilbertohasnofb commented 9 years ago

:+1:

I found some posts in aviation forums about this subject, and indeed there are people using 160 HP with floats. So I would suggest the following: when someone clicks on "pontoons" or "amphibian", the engine is automatically set to 180 HP in the same menu, but the person is allowed to change it back to 160 HP if he or she wants.

Here is a video of a 172 with 160 HP taking off. Looks as scary as it does in FG :wink: (see at around 0:50): https://www.youtube.com/watch?v=33E9_qQysoo

onox commented 9 years ago

haha, I was watching that video just a minute ago :smile:

onox commented 9 years ago

It's a regular float plane though I think, not amphibian.

onox commented 9 years ago

the engine is automatically set to 180 HP in the same menu, but the person is allowed to change it back to 160 HP if he or she wants.

I agree with that.

wlbragg commented 9 years ago

Great idea, that sound right to me. We should think "safety first" :smile:

gilbertohasnofb commented 9 years ago

Okay, so this is solved :) Should I open an issue for this or can you guys include the code handling these menus in the PR for this issue?

onox commented 9 years ago

No need for a new issue.

onox commented 9 years ago

I'm adding it to bug-273 branch.

onox commented 9 years ago

I have changed the milestone because without the 180 HP it will be very difficult for most people to takeoff from the water.

wkitty42 commented 9 years ago

i found this, too... there are many 160HP c172 floatcraft but i don't know how many of those may be amphibious... how much additional weight is added for the additional amphib gearing?

https://www.google.com/search?q=cessna+c172+160hp+floats+site:www.cessna172club.com&num=100

gilbertohasnofb commented 9 years ago

i found this, too... there are many 160HP c172 floatcraft but i don't know how many of those may be amphibious... how much additional weight is added for the additional amphib gearing?

Let's just keep the solution I proposed above of forcing 180 HP to both pontoons and amphibian models, and let the user change it back if they want.

wkitty42 commented 9 years ago

that's fine... i read these exchanges in my email and then come over here to reread them and respond... i just wanted to toss my two pesos in on the conversation about 160HP floaters :wink:

wkitty42 commented 9 years ago

so how much extra weight is added to the floats by adding amphib landing gear? that is a serious (side) question :smile_cat:

wlbragg commented 9 years ago

Do we also want to force 160 on ! = float and allow user to switch back to180?

wlbragg commented 9 years ago

So in essence, the default behavior is what you originally wanted, but there is a choice to switch back.

onox commented 9 years ago

If !float then engine will be set back to 160 HP. If float then engine will be set back to 180 HP.

User can change engine afterwards.

gilbertohasnofb commented 9 years ago

@wlbragg good question. I guess that could work well.

wlbragg commented 9 years ago

I think that is a good compromise.