CRJ700-family-team / CRJ700-family

The Bombardier CRJ700 series for FlightGear Flight Simulator.
Other
0 stars 0 forks source link

Autothrottle #4

Closed D-ECHO closed 4 years ago

D-ECHO commented 4 years ago

At the moment it seems (in Systems/CRJ700-flight-controls.xml) that we have an autothrottle system that operates always when the throttle is in a certain position range. Given that the real CRJ does not have any autothrottle at all, shouldn't this maybe be made more optional and separated, only operating when specificially requested using the cheat autopilot dialog?

tdammers commented 4 years ago

The autothrottle only operates when it is enabled in the cheat menu. The part in flight-controls.xml may still calculate throttle output, but that value is only fed into the engine thrust inputs when the cheat menu option is enabled and autothrottle is turned on via the popup dialog.

However, the real CRJ, I believe, has FADECs that take over completely, much like an autothrottle, in the "MAX", "TO/GA" and "CLB" modes: "MAX" just sets max thrust (unlike the "manual" range, where thrust should be limited to maximum operative thrust as configured in the FMC), "TO/GA" manages takeoff thrust according to configured engine downrating and keeps engines within (short-term) limits, "CLB" attempts to maintain a constant best-rate-of-climb speed while keeping enginges within (long-term) limits. I don't believe we correctly implement all of this, but what we have seems to be an OK approximation. The main thing that's lacking is the ability to configure engine downrating - some code is in place to do that, but there is no UI for it AFAIK.

Either way, in the "manual" range, the FADEC just sets whatever percentage of "max manual" the pilot selected and keeps it there.

D-ECHO commented 4 years ago

Mh okay, then I must have done something wrong on my side, will check again

tdammers commented 4 years ago

I may have f**d up something at some point, but I flew the -900LR on VATSIM yesterday, and everything worked as designed - takeoff and climbout on the TOGA and CLB detents, cruising with A/T, then manual throttle for the approach and landing; so I doubt it.

Closing this, feel free to reopen if I'm wrong.

D-ECHO commented 4 years ago

Hm, I'm kind of confused now. In CRJ700-flight-controls.xml, there is this part: `

Engine 2 TO/GA mode controller
    <debug type="bool">false</debug>
    <enable>
        <condition>
            <equals>
                <property>controls/engines/engine[1]/thrust-mode</property>
                <value>2</value>
            </equals>
        </condition>
    </enable>
    <input>
        <property>autopilot/internal/lookahead-5-sec-airspeed-kt</property>
    </input>
    <reference>
        <value>250</value>
    </reference>
    <output>fcs/throttle-cmd-norm[1]</output>
    <config>
        <Kp>0.05</Kp>
        <beta>1</beta>
        <alpha>0.1</alpha>
        <gamma>0</gamma>
        <Ti>10</Ti>
        <Td>0.00001</Td>
        <u_min>0</u_min>
        <u_max>
            <property>instrumentation/fms/to-ga-maximum-n1</property>
            <scale>0.01</scale>
        </u_max>
    </config>
</pid-controller>`

Being a PID controller dependent on the prediction of airspeed, and always being active when the throttle is in a specific range, it seems for me to be always active when the throttle is in that range and that's also the experience I had in sim with the throttle when set at TOGA fluctuating dependent on the current airspeed/airspeed trend.

D-ECHO commented 4 years ago

fgfs-20200103083356 This screenshot was taken taking off using TOGA power. It shows the engines running at ~70% N1 although TOGA is selected, the throttle has reduced from ~95N1 at the start to ~70% and seems to be dependent on current airspeed (probably the reason it went down to 70 when closing in on 250kts which seems to be the target speed

tdammers commented 4 years ago

Yes, this is by design, and AFAIK it's what the FADECs in the real aircraft do.

MAX just sets maximum thrust, period.

TOGA sets max takeoff thrust to initiate the takeoff roll, and then gradually reduces it as airspeed increases to minimize engine wear while maintaining sufficient thrust. So what you get isn't constant airspeed like with a proper autothrottle, but it's not constant N1 either.

CLB sets whatever thrust is needed to maintain optimal climb speed (250 KIAS off the top of my head), within the limits of what the engines can sustain. In practice, you will typically set a lower airspeed in speed climb mode on the autopilot (I usually use 230-240 KIAS), which means the FADECs will drive the engines to maximum climb thrust. So this is kind of like autothrottle, but not quite.

IDLE just idles the engines, even when A/T is engaged.

Between CLB and IDLE, you have the "fully manual" range, where the FADECs just do what the pilot inputs.

AFAIK this is more or less what the real aircraft does, though some details of it are definitely based on guesswork and could probably use improvement.

On Fri, Jan 3, 2020, 09:35 D-ECHO notifications@github.com wrote:

[image: fgfs-20200103083356] https://user-images.githubusercontent.com/57063787/71713967-37ddf600-2e0c-11ea-93a3-7d6e7d29795f.png This screenshot was taken taking off using TOGA power. It shows the engines running at ~70% N1 although TOGA is selected, the throttle has reduced from ~95N1 at the start to ~70% and seems to be dependent on current airspeed (probably the reason it went down to 70 when closing in on 250kts which seems to be the target speed

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/CRJ700-family-team/CRJ700-family/issues/4?email_source=notifications&email_token=AAK6HR2ZIDEBAE4BI6BCMJLQ332GJA5CNFSM4KCANDS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEIAS63A#issuecomment-570503020, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAK6HR2TMNZKO23A5WBP6S3Q332GJANCNFSM4KCANDSQ .

D-ECHO commented 4 years ago

Oh, okay. Nice to hear, I didn't know this. Thank you very much!