Jump to content
  • 1.9 Advanced Blade Controls


    Maxsimal

    One big change we’ve made this version is the addition of some advanced control code to the blades, to help you build helicopters and quad copters that work like the real thing.

    This blog will help you understand what the new functionality does and how you can use it.

     

    Advanced Blade Controls

    When you enable Pitch/Yaw/Roll control on a rotating blade now, the blades themselves will make a decision on whether the blade needs to be in cyclic or collective mode - on a per axis basis.

    Gw6G8Td.png

    Image 1: Blade COM alignment

    For this craft above, the blades are aligned with the center of mass in the forward direction - so they’ll use cyclic mode for pitch.  They’re far apart horizontally, so they’ll use collective mode for roll.  And because their axis of rotation is flat, they won’t attempt to provide any control input in yaw.

     

    Cyclic mode:  Cyclic mode is what a normal helicopter’s main rotor does to control the pitch and roll of the helicopter.  They will change their pitch - by the limits you set in the authority limiter control of the blade - as they spin around.   This creates more or less lift to one side or the other of the blade’s disc of rotation.

    V1cQR4f.png

    Image 2: Cyclic Mode Pitch

    Collective mode: Collective mode is what a normal helicopter does when it wants to change how much overall lift is created.  But as you can see in the picture below, adjusting the relative lift on the two different sets of rotors will cause the craft to roll.

    4hW5kQj.png

    Image 3: Collective Mode Roll


    Summary and Videos:
    So that’s what our blades now do in a nutshell.  However, understanding these topics can be pretty complicated.  I really recommend checking out some of these excellent Youtube videos for further study.

    Smarter Everyday’s series on Helicopters - Dustin’s videos are fantastic, and these are no different:  

     

     

    Craft Building Tips:
    Here are a few tips to help you build your helicopters/quad-copters/etc.

    1. Make sure to set your authority limiter pretty low.  One of the potential trouble spots you can have is if the blade pitches too much trying to generate control - if it goes OVER the stall limit and starts generating less lift, you’ll get the opposite of what you wanted.  2 or 3 degrees will often be enough.
    2. Helicopters can be finicky to control.  Even if you’ve got everything right, any change in a helicopters forward or vertical motion affects the lift on the blades, which generate input coupling.  If flying a plane is like driving a car, then flying a helicopter is like riding a unicycle - don’t be surprised if you have to constantly adjust inputs.
    3. Chinook-style craft will generate interesting and unpredictable effects due to axis coupling effects.  If you want to build a really stable Chinook style craft, consider looking into how those are actually built - they adjust their whole rotor assembly plane of rotation, rather than just using cyclic/collective.  http://www.chinook-helicopter.com/standards/Army_D_Model_AQC_Classes/Flight_Controls.pdf
    4. The blade controls will work well for using a tail rotor, blades rotating in any axis will respond appropriately.  That said - it’s still easier to manage a helicopter with two counter rotating blades.

    Finally - if you decide none of this is for you and you just want a helicopter without worrying about the physics so much, feel free to just turn off the Pitch/Yaw/Roll blade controls, and use a reaction wheel to generate the torque you want - no one on the dev team will accuse you of cheating, we promise!

     


    User Feedback

    Recommended Comments



    2 hours ago, Boris-Barboris said:

    Is the precession accounted for?

    We actually did investigate having precession something the control system would account for, and messed with some stuff to deal with it- until we realized that PhysX does not actually simulate precession at all. :huh:   So no, the blades don't deal with it because it's not a thing in our physics engine.  

    Edited by Maxsimal
    Link to comment
    Share on other sites

    1 hour ago, Maxsimal said:

    We actually did investigate having precession something the control system would account for, and messed with some stuff to deal with it- until we realized that PhysX does not actually simulate precession at all. :huh:   So no, the blades don't deal with it because it's not a thing in our physics engine.  

    Can’t solve a problem if you can’t even have it!

    Link to comment
    Share on other sites

    14 hours ago, dok_377 said:

    It looks like you guys missed a pretty essential part of helicopters that should be compensated for automatically: the dissymmetry of lift. ehTlN5-TzUo.jpg

    I think you're thinking that we should have linked some not-necessarily symmetrical blades to have them somehow manage themselves, across different parts to balance your lift, through feed-forward control system?  

    That's just not something that works well with the lego-style functionality of kerbal parts - any unaccounted for configuration is going to cause more problems, and require further dev effort, and possibly interfere in something else the player is trying to do.  We avoid that when possible.

    Instead, and much more simply, players can either trim their roll with mod-Q/E, or use SAS to balance the forces through a feedback control mechanism.  Another advantage is neither of those required new work

     

    Link to comment
    Share on other sites

    Any idea why deploy direction on some prop blades have switched directions with the update?  I've had to go in and fix just about all of my multi-rotor and pusher designs.

    Link to comment
    Share on other sites

    10 hours ago, Maxsimal said:

    I think you're thinking that we should have linked some not-necessarily symmetrical blades to have them somehow manage themselves, across different parts to balance your lift, through feed-forward control system?  

    That's just not something that works well with the lego-style functionality of kerbal parts - any unaccounted for configuration is going to cause more problems, and require further dev effort, and possibly interfere in something else the player is trying to do.  We avoid that when possible.

    Instead, and much more simply, players can either trim their roll with mod-Q/E, or use SAS to balance the forces through a feedback control mechanism.  Another advantage is neither of those required new work

     

    Yeah, I used trim and it flies surprisingly well even without SAS, you guys did a really great job in that regard. Trims are just not so convenient to use (because they need constant adjustments), and they are really slow to set up. 

    Link to comment
    Share on other sites

    16 hours ago, dok_377 said:

    Yeah, I used trim and it flies surprisingly well even without SAS, you guys did a really great job in that regard. Trims are just not so convenient to use (because they need constant adjustments), and they are really slow to set up. 

    I understand it changes with changing airspeed - one reason I think most players will prefer to use SAS - but not sure about why you think it takes a while to set up?  You don't have to use trim tabs or something like that, just use the keyboard-based trim adjustment.

    Link to comment
    Share on other sites

    8 hours ago, Maxsimal said:

    I understand it changes with changing airspeed - one reason I think most players will prefer to use SAS - but not sure about why you think it takes a while to set up?  You don't have to use trim tabs or something like that, just use the keyboard-based trim adjustment.

    When you hold mod+wasd, it takes a while to get to the correct trim position. The slider moves slow, that's what I'm referring to. The dissymmetry changes with airspeed as you said and you absolutely can't use SAS with a conventional helicopter. It's not compensating roll with singular main rotor at all, so you need to just disable SAS and use trim, which is not going to hold anything as SAS would. Also, you can't use trim with SAS, it just disables itself. I'm not even going to talk about slowing down and what's happening with trimmed helicopter then. It's just a nightmare if you don't have a joystick. That is why I think this situation should be at least looked at.

    Link to comment
    Share on other sites

    Cool! I was just thinking about this recently! Can’t wait to have a chance to play around with the new features

    Link to comment
    Share on other sites

    On 2/12/2020 at 2:59 PM, Maxsimal said:

    until we realized that PhysX does not actually simulate precession at all. :huh:

    Maybe you can turn that frown upside-down, because my copy of KSP simulates precession just fine. 
    I certainly see the 90° phase lag if I cheat a rotocraft into space, and try to rotate the rotor disk using reaction wheels. In version 1.7.3 I made a helicopter with cyclic control with the full 90° compensation for phase lag, so the force vectors on its counter-rotating props appear to cancel each other, but it pitches and rolls as you would expect assuming a 90° phase lag.

    The gyroscope effect on Breaking Ground helicopters is extremely weak, because the angular momentum of the propeller disks tends to be unrealistically small, because
    1) the rotational motors do not put the angular moment of their drive shafts in the physics simulation; and
    2) someone offset the centers of mass of the helicopter and prop blades, very close to their mounting points.

    Helicopters made with the Breaking Ground blades have more rotational inertia in the craft body than in the spinning rotor, so the phase lag tends to be very much less than 90°. 

    Edit: precession demonstrator in KerbalX (link)

    Edited by OHara
    link to KerbalX
    Link to comment
    Share on other sites

    There are a lot of real-world helicopter physics not simulated in the KSP rotor blade physics.  However, to be fair, there are a lot of real-world aerodynamic and rocket physics not simulated either.

    In regards to stabilizing a KSP helicopter using trim vs SAS, I'll say this: Flying a helicopter requires a lot more control inputs and "cross-control" compensation to keep all the competing physical forces in a constant state of balance, when compared to controlling a fixed wing aircraft.  Any change in cyclic position, collective position, pedal input, airspeed, etc, requires the controls to be adjusted to maintain the balance of forces and the desired attitude and flight path.  The SAS in KSP is very rudimentary and comes nowhere close to the complex flight control systems in modern aircraft.  Depending on the sophistication of the flight controls and avionics, some real-world helicopter SAS systems have very limited authority to maintain the desired attitude, requiring the pilot to constantly adjust the controls to a position that the SAS can operate within it's authority envelope.

    The most common "trimming" mechanism for helicopters is called "force trim", which can be augmented with SAS, or further augmented by active flight control systems where the computer has complete authority to control the helicopter in a similar manner to autopilot in fixed wing aircraft.  To read a brief run down of each, you can go here: https://www.danubewings.com/stability-augmentations-systems/.  However, the level of sophistication required for the KSP SAS to account for any number of rotary-winged craft that may be "lego-ed" together is (in my opinion) unrealistic.

    What I'm getting at is that real-world helo pilots must constantly adjust controls to maintain level flight, so it is reasonable to assume any simulation of such physical mechanics (even a semi-realistic one), would require the same level of constant attention to the controls.  I would recommend using a more complex flight control setup, like a joystick with twist yaw control or rudder pedals, if you plan on doing long-duration helicopter flight.  This would also allow you to more easily "phase in" Alt-WASDQE trim input to decrease your workload.  But if you plan on using just a mouse and keyboard, don't expect rapid changes in flight condition, like airspeed, to come without it's associated workload tapping those keys.

    I was able to make a compound helicopter very similar to the S-97 Raider using a coaxial twin-rotor with a rear-facing propulser using fan-blades.  The craft was very well balanced, but did require a horizontal stabilator to maintain pitch stability throughout all speed regimes, and the only real trim I had to apply was roll to account for the torque generated by the tail propulser blades when in use.  But to easily fly an "asymmetric" helo design like a single main rotor with anti-torque tail rotor throughout all possible flight conditions using just a keyboard is quite a tall order for what could be asked from KSP.

    Edited by Raptor9
    Link to comment
    Share on other sites

    4 hours ago, Raptor9 said:

    I was able to make a compound helicopter very similar to the S-97 Raider using a coaxial twin-rotor with a rear-facing propulser using fan-blades.

    Came to the same conclusion after some testing and came up with this thing. In forward flight it flies like a dream. Transition is a little bit rough and yaw control is not that great, but it can't all be perfect now, can it. In some areas Squad really nailed it with this update, in the others... Not so much. 
     ab-l-MKJyU8.jpg

    Link to comment
    Share on other sites

    11 minutes ago, Raptor9 said:

    Like Kamov and Mil had a baby...wait a sec, why is the Mk3 Cockpit white?

    I made a white variant for it. It always seemed strange to use a space shuttle cockpit that has some thermal protection tiles textured in on planes. 

    Link to comment
    Share on other sites

    I tried using some of my old designs with the new collective/cyclic(C/C) controls. 

    It seems that the new controls always wants to "zero" the orientation of my quad copter to "hover".

    Even with SAS engaged and forcing the nose of the craft to point down.  The C/C would over power SAS and orient into "hover" once the keyboard inputs are released.

    Is there a way to add an option to disable the automatic Cyclic/Collective controls for blades?

    My darn design it too stable I guess.

    Link to comment
    Share on other sites

    2 hours ago, Slysix said:

    It seems that the new controls always wants to "zero" the orientation of my quad copter to "hover".

    Even with SAS engaged and forcing the nose of the craft to point down.  The C/C would over power SAS and orient into "hover" once the keyboard inputs are released.

    What you're experiencing is normal.  In real helicopters this is called dis-symmetry of lift, and requires more forward cyclic to counter the pitch up tendency the faster you go.  As a result, you will need to trim the nose down to maintain attitude, in lieu of physically holding the controls forward.  As an alternative, try adding a horizontal stabilator to the tail, and map the trim to something like the Translate U/D action groups.  As you speed up, you can apply more and more stabilator incidence to keep the pitch stabilized.

    To avoid large forward cyclic applications in the CH-47, the flight controls have what's called a Longitudinal Cyclic Trim (LCT), which you can read about in the hyperlink in Maxsimal's post at the top.  Also included is talk about main rotor flapping, which is not simulated in KSP.  As a result, KSP helicopters will experience much greater pitch down attitudes in forward flight compared to their real-life counterparts.  And unfortunately, this also prevents designing a tandem-style helicopter with authentic yaw control.

    Link to comment
    Share on other sites

    7 hours ago, Slysix said:

    Is there a way to add an option to disable the automatic Cyclic/Collective controls for blades?

    Disable pitch, yaw and roll controls on them. There's buttons for that if you right click on the part. 

    Link to comment
    Share on other sites

    4 hours ago, Raptor9 said:

    What you're experiencing is normal.  In real helicopters this is called dis-symmetry of lift, and requires more forward cyclic to counter the pitch up tendency the faster you go.  As a result, you will need to trim the nose down to maintain attitude, in lieu of physically holding the controls forward.  As an alternative, try adding a horizontal stabilator to the tail, and map the trim to something like the Translate U/D action groups.  As you speed up, you can apply more and more stabilator incidence to keep the pitch stabilized.

    To avoid large forward cyclic applications in the CH-47, the flight controls have what's called a Longitudinal Cyclic Trim (LCT), which you can read about in the hyperlink in Maxsimal's post at the top.  Also included is talk about main rotor flapping, which is not simulated in KSP.  As a result, KSP helicopters will experience much greater pitch down attitudes in forward flight compared to their real-life counterparts.  And unfortunately, this also prevents designing a tandem-style helicopter with authentic yaw control.

    Sigh....I figured it out...I used lifting surfaces as structural members to place the rotors (quad rotor configuration that converted into a fixed wing)...the faster I moved, the more they generated lift.  The weird thing was the lift they generated forced the craft to go into a steady hover orientation.  So every time I let go of the controls the darn thing would go into a hover.

    Confirmed with my test bed craft (no lifting sufaces other then the blades of the rotors).  Other then the pendulum effect of the CM being under the CoL of the rotors...no self righting behaviour.

     

    Link to comment
    Share on other sites

    On 2/12/2020 at 11:59 PM, Maxsimal said:

    ...build a really stable Chinook style craft, consider looking into how those are actually built - they adjust their whole rotor assembly plane of rotation...

    You are blowing my mind right now.
    I get what it means, and that it works (I've only been learning about proper collective and cyclic since, well 1.8.1 really).
    But you'd think that all those 'this is how helicopters work'-video's, which specifically mention 'no, no plane change, it actually works using this really intricate mechanical device', could be bothered to mention "cept chinooks, those are WACK!" I think this isn't even properly stated on the Wikipedia page about chinooks.

    Which reminds me of this little tip: if you have a high level probe part, facing that probe upward, 'target Anti-radial', in surface mode, the craft will (try to) keep its pitch and roll zero. Very useful if you want to hover.
    It's the only way I can manage to land a helicopter on any pad smaller than the lvl3 runway.

    Edited by The-Grim-Sleeper
    Link to comment
    Share on other sites

    18 hours ago, The-Grim-Sleeper said:

    You are blowing my mind right now.
    I get what it means, and that it works (I've only been learning about proper collective and cyclic since, well 1.8.1 really).
    But you'd think that all those 'this is how helicopters work'-video's, which specifically mention 'no, no plane change, it actually works using this really intricate mechanical device', could be bothered to mention "cept chinooks, those are WACK!" I think this isn't even properly stated on the Wikipedia page about chinooks.

    Which reminds me of this little tip: if you have a high level probe part, facing that probe upward, 'target Anti-radial', in surface mode, the craft will (try to) keep its pitch and roll zero. Very useful if you want to hover.
    It's the only way I can manage to land a helicopter on any pad smaller than the lvl3 runway.

    Glad you found some of this helpful, and that's a great tip!   

    Helicopters are complicated, and I'm impressed with how much of the community has figured out how to work with them.  In many ways I'd say they're more complicated, at least physics-wise- than rockets - more force interactions and coupling.  
     

    Edited by Maxsimal
    Link to comment
    Share on other sites

    Quote
    • Chinook-style craft will generate interesting and unpredictable effects due to axis coupling effects.  If you want to build a really stable Chinook style craft, consider looking into how those are actually built - they adjust their whole rotor assembly plane of rotation, rather than just using cyclic/collective.

    I'm pretty sure that the CH-47 Chinook and other tandem rotor helicopters use regular swashplates and don't actually "bend" the central axis of the rotors. In the descriptions I found they show that the CH-47 does have swashplates fore and aft, but I haven't seen any mention of a coupling that allows it to tilt the central axis. Also the cyclic control has essentially the same effect as physically moving the plane of rotation of the rotor: the direction of thrust the the rotor generates changes.

    I believe that in the cited document (and others) the control is shown as tilting the rotor because that is easier to display and understand and not because the rotor really physically changes.

    Link to comment
    Share on other sites

    On 2/18/2020 at 3:46 PM, The-Grim-Sleeper said:

    Which reminds me of this little tip: if you have a high level probe part, facing that probe upward, 'target Anti-radial', in surface mode, the craft will (try to) keep its pitch and roll zero. Very useful if you want to hover.
    It's the only way I can manage to land a helicopter on any pad smaller than the lvl3 runway.

    You only need one High level probe part on the craft oriented in any direction and another part that you can control from (ie: docking port junior, claw,cockpit, chair,QBE) pointing straight up.  Control from that secondary point and SAS radial out when in 'surface mode' will try try to keep your craft straight and level.

    I use this as my stock no mod auto pilot even on fixed wing craft.  I like using docking ports so I have a attachment point if I want to lift things with a crane.

    Link to comment
    Share on other sites



×
×
  • Create New...