Jump to content

[1.3] Pilot Assistant: Atmospheric piloting aids - 1.13.2 (May 28)


Crzyrndm

Recommended Posts

I like it! - but could we get AoA hold back too? I usually either use SmartASS pitch setting or abuse FAR's AoA assist because it's a lot easier to tune climb for different regimes like that - I have no idea what my VS is, usually. Climb-to-alt is nice but a rather general control.

Ideas for future - envelope control, whereby it takes WASD input as suggestions ( so you can land that barely in control beast without getting your fingers crossed up and then breaking your keyboard ), WASD as heading/climb increment/decrement keys, visible trim adjustment and given we have heading and alt hold, waypoints.

Thanks for this, saved me attempting it :)

Link to comment
Share on other sites

I like it! - but could we get AoA hold back too?

I'll think about it. AoA control can already be done fairly well using VS and tweaking the output limits of that block (which are AoA angles). Direct pitch control may be coming in the form of an SAS override

Ideas for future - envelope control, whereby it takes WASD input as suggestions ( so you can land that barely in control beast without getting your fingers crossed up and then breaking your keyboard ), WASD as heading/climb increment/decrement keys, visible trim adjustment and given we have heading and alt hold, waypoints.

That's... a very interesting and useful idea. Will look into over-riding keyboard controls this way.

Waypoints not going to happen. I have no intention of ever fully automating a flight. I made this because keyboard control is too extreme/slow in many cases and I needed a way around that (plus SAS doesn't do a good job for altitude holding...)

The plugin creates a "presets.cfg" file which KSP tries to load on next startup and fails, getting stuck on loading screen. You might want to use a different file extension.

:mad:, file extension isn't wrong, KSP just can't deal with a .cfg file that has no entries in it (and I didn't fulfill that condition during preset testing). Even worse, It would seem I stuffed up and lost a space in the file path at some point and the presets aren't saving correctly :sealed:

Both are quick fixes, fixed version will hopefully be incoming shortly

EDIT

New version is up. There was some real wierdness with filenames happening with my dev machine and I'm not sure if it was released with or without a space in the folder name.

Please check that the install path is GameData/Pilot Assistant (not PilotAssistant with no space)

EDIT2

Unfortunately I can't input the numbers directly without activating a bunch of action buttons.

Laptop I assume (no numpad). Don't think there's a whole lot I can do in this case other than including more increment/decrement buttons.

Idea for something on a future version, having a setting for a wing leveler rather than having to change the heading PID gains. Heading Hold would give heading, Wing Leveler would just keep the wing tilt at 0 no matter what the heading.

Make a preset for it for now. I will probably be including a toggle in the presets to say "load as leveller/load as heading control" in the future.

Edited by Crzyrndm
Link to comment
Share on other sites

I'll think about it. AoA control can already be done fairly well using VS and tweaking the output limits of that block (which are AoA angles). Direct pitch control may be coming in the form of an SAS override

Pitch hold would be what I most want, actually ( was tired & got AoA and pitch mixed up ). For gliding ( including re-entry ) that's one of the most useful tools & one of the biggest finger-killers to do by hand.

Link to comment
Share on other sites

Version 0.6
* Added WASD controls for heading and vertical set points. Hold KSP Modifier key (LAlt on windows) to engage fine control
* Fixed rudder to follow heading setpoint correctly
* Fix for preset states not persisting correctly (delete will work now...)
* Complete code rebuild to increase modularity and allow for further expansion with less headaches

RE: Pitch hold

What I'm aiming to do with the SAS replacement is have pitch in particular be fixed relative to the surface (so that your pitch doesn't constantly climb as you progress around the orbit) and also allow for fine tuning of the PID block (ala PID tune), manually setting and tweaking the setpoints, etc. (EDIT: How did I forget, not having the setpoint drift slowly like it does in stock...)

@GFurst

Normal flight controls (WASD by default) can now be used to tweak heading and vertical control settings. Enjoy :)

Edited by Crzyrndm
Link to comment
Share on other sites

Idea for something on a future version, having a setting for a wing leveler rather than having to change the heading PID gains. Heading Hold would give heading, Wing Leveler would just keep the wing tilt at 0 no matter what the heading.

I would be a big fan of this. Any time you can reduce clicks or avoid a mouse-keyboard switch increases the user-friendliness appeal of the mod.

Link to comment
Share on other sites

Just pause (F3) the game before making number entries :)
@GFurst

Normal flight controls (WASD by default) can now be used to tweak heading and vertical control settings. Enjoy :)

Hey there, thanks I'll be trying it soon.

I actually have keypad but I don't think it works in KSP. This happens to be a common issue for me, having to go to map screen to be able to input stuff without screwing everything up.

Mostly necessary with with RemoteTech flight computer and maybe others. About the blizzy toolbar, would you consider it?

Link to comment
Share on other sites

I actually have keypad but I don't think it works in KSP.

Just making sure, you do have numlock on right? With numlock off the keypad doesn't print numbers and instead does things like emulating the arrow keys (up/down/left/right : 8/2/4/6)

Blizzy's toolbar *maybe* after I finish off all the little bits of functionality that are queueing up again. It really is a long way down my priority list.

Edited by Crzyrndm
Link to comment
Share on other sites

Version 0.7


* Added wing leveller mode
* Fine control now works on stock fine control mode (caps lock toggle, indicated by blue coloured pips in the bottom left)
* Tab pauses all control systems and returns full control to user
* Alt-X activates wing leveller and sets target vertical speed to zero (level everything off)
* Fix for control systems not deactivating between flights
* All PID constants now always show atleast 1dp and up to 3sf (ie. 3 is displayed as 3.0, 3.333 would display as 3.33)
* Window now resizes more dynamically to fit available content

I think it's time to go to work on this SAS replacement I keep talking about :cool:

envelope control, whereby it takes WASD input as suggestions ( so you can land that barely in control beast without getting your fingers crossed up and then breaking your keyboard )

... visible trim adjustment

Can I get clarification on what these two requests are about?

Visible trim adjustment in particular sounds a little odd because it already shows on the stock GUI.

Edited by Crzyrndm
Link to comment
Share on other sites

Trim adjustment with a widget of some sort ( ideally a wheel for obvious reasons, but a number box with up/down arrows does the same thing ). For the same reasons this entire mod exists :)

"Envelope control" which is rather badly titled - I was seeing as limiters to control input so your aircraft refuses to fall out of the sky thanks to your hamfisted key mashing, like a modern fly-by-wire system - it'd be a much more direct input version of using WASD to change heading & VSI to use, I'd imagine ( more like a navigator saying "go up/right" instead of "330/fl30" ).

Edited by Van Disaster
Link to comment
Share on other sites

Trim adjustment with a widget of some sort ( ideally a wheel for obvious reasons, but a number box with up/down arrows does the same thing ). For the same reasons this entire mod exists :)

"Envelope control" which is rather badly titled - I was seeing as limiters to control input so your aircraft refuses to fall out of the sky thanks to your hamfisted key mashing, like a modern fly-by-wire system - it'd be a much more direct input version of using WASD to change heading & VSI to use, I'd imagine ( more like a navigator saying "go up/right" instead of "330/fl30" ).

I think I undestand now. Short version of envelope control: You still fly the craft, but your input is moderated somewhat.

How would something like that be different to say FAR's AoA limiter, or is it just a more expanded version (eg. limiters on: AoA, pitch, climb rate, pitch rate, ... in pitch axis)

I don't see a wheel happening for trim. If there was anything visual it would be bars similar (but way less fancy :sealed:) to the stock input position indicators. Me and graphics/art just isn't a good combo :D

Edited by Crzyrndm
Link to comment
Share on other sites

Just usual number input boxes with perhaps up/down arrows would be fine for trim, I think.

Still thinking about the practical implementation of fly-by-wire ( unfortunately I think that name is a joystick mod I haven't tried yet ) - but the major problems I have with keyboard control are simple logistical areas such as attempting to manage all three axes in a turn - which this mod already manages to do at a higher level of control abstraction - and control input sensitivity changing in different regimes causing stalls or other out of flight envelope experiences. I've never really found FAR's sensitivity adjustments to work well enough, some attitude change damping would help considerably I think - plus perhaps as you said some limiters. Maybe it's best to think in terms of pitch/roll/yaw targets given you're already dealing with targets, and have the FCS do it's best to match without breaking the plane? and maybe auto-rudder given that seems to be one of the more awkward bits of using a keyboard.

Edited by Van Disaster
Link to comment
Share on other sites

Just making sure, you do have numlock on right? With numlock off the keypad doesn't print numbers and instead does things like emulating the arrow keys (up/down/left/right : 8/2/4/6)

Blizzy's toolbar *maybe* after I finish off all the little bits of functionality that are queueing up again. It really is a long way down my priority list.

Version 0.7

I think it's time to go to work on this SAS replacement I keep talking about :cool:

Can I get clarification on what these two requests are about?

Visible trim adjustment in particular sounds a little odd because it already shows on the stock GUI.

Tested the v0.6 features yesterday, and it works perfectly. The WASD is really a fine feature and helps a lot on controlling.

Just one small oddity, during test I tried to maintain level flight while cutting throttle. So to stay level pitch and angle of attack would need to increase while speed is dropping, eventually reaching stall.

However with speed dropping the aircraft doesn't pitch up to increase AoA even though I've set an high limit on PiD limits. The pic below shows it

screenshot10.jpg

Anyway, I have to advise on overcomplicating the mod too much as it greatly increases chances of conflicts and issues, as well a escaping its original scope.

Ohhh and btw, how would like me to do a showcasing video of the mod?

Oh yeah, I almost forgot about the keypad thing, numlock is on, is just doesn't do anything, wonder if its only an issue for me or general to the linux version.

Edited by Gfurst
last line
Link to comment
Share on other sites

Just one small oddity, during test I tried to maintain level flight while cutting throttle. So to stay level pitch and angle of attack would need to increase while speed is dropping, eventually reaching stall.

However with speed dropping the aircraft doesn't pitch up to increase AoA even though I've set an high limit on PiD limits. The pic below shows it

http://s27.postimg.org/3w7k6fmpb/screenshot10.jpg

What was the output limits on the Vertical speed -> AoA block (the one under altitude)?

What is probably happening is that either the main clamp or the integral clamp of the Speed/AoA block forced it to follow the prograde down. Actually, I'd bet on the integral clamp being the cause of this (having it clamped lower means it's more responsive, but it won't work as well for situations like this). Increase the value marked "Clamp Upper" on the second vertical block and it should do what you expect.

E:

You can also do the same thing with the elevator control surface. By default I have the control surfaces integrals clamped quite tightly to increase responsiveness but that does significantly limit the deflection they will allow themselves.

Edited by Crzyrndm
Link to comment
Share on other sites

An early version of the Surface/Atmospheric SAS module is available on Github. It has some pretty obvious problems, most notably difficulties controlling a craft properly when the roll angle is not near zero.

However, it has two major advantages over the stock system: (quite apart from being tuneable)

1) The pitch holding is surface relative. No more steady climb as you progress around a planet (particularly noticeable during reentry)

2) Each axis is activated and deactivated seperately. Alter pitch without having to worry about the craft rolling to one side or the other.

To use Surface SAS, arm the system from the SAS GUI and then use the standard SAS toggle keybinding to activate/deactivate it.

NOTES:

Surface SAS will forcibly deactivate once it leaves that atmosphere. Later version will include an override toggle for this. Disarm the system and use the stock module for vacuum SAS

If the controls are doing wierd things, tap the temporary SAS ("F" by default on windows) to reset everything.

The preview release also includes 2 small changes to the existing Pilot Assistant (which is completely seperated from the SAS module)

   * Fix for presets not saving unless a scene load occured. Adding, updating, and removing presets now generates a save event
* Added a scalar to WASD control system. Holding the modifier key (Windows: LAlt) changes the target 10x faster normally, or 10x slower again with fine control active

Link to comment
Share on other sites

Further to chat on IRC about control surface gains, I did a bit more testing after making sure all pCtrlSurfs were set to 15deg. All seems reasonably ok until Mach 2/10km+ ( two fairly different but both large aircraft ), and then there's just not enough control deflection being used to keep altitude, let alone the set VS - I disabled the VS hold & pulled back manually and both aircraft pitched up, so it's not lack of basic pitch authority. Target AoA was set to 10deg so it's not the AoA target at fault either.

Having ( between PA heading hold, SmartASS pitch hold or stock SAS ) got up to 20km or so and mach 4 I started having problems with roll oscillation, which once again wasn't a lack of built in authority or roll target, and once that built up a little it turned into what looked like Dutch roll - but it was correctable by disabling PA heading & popping SAS on, and then manually steering out of it.

Github-current from 22nd was still eating my presets, will give 0.75 a go.

Link to comment
Share on other sites

The surfaces not being able to get enough action is probably just a matter of the integral clamps being a little low. At some point I really need to go through and retune the defaults a bit to lessen occurence of that...

Github-current from 22nd was still eating my presets, will give 0.75 a go.

:mad: If it keeps happening I'll have another dig through and see if I can't work out why :mad:

Link to comment
Share on other sites

Version 0.8


* Added SAS module that holds a surface relative heading (no more steady pitch climb :
* Added SAS tuning for both stock and the new SAS module
* Added Left alt hotkey to WASD control as a speed modifier. Holding alt down will change the target 10x faster than normal, or 10x slower if fine control is active
* Pilot Assistant presets are saved more often to

Had to keep pitch/yaw SAS activation synchronised for now, roll atleast is seperated

Now, to go see if I can't track down what is causing the presets to be repeatedly eaten...

Edited by Crzyrndm
Link to comment
Share on other sites

A couple things I've noticed so far:

1) If you're using the SAS, it generally does a good job of not blowing up the plane and keeping it pointed where you say. However,

2) Physics warp = insane flailing, and

3) Let's say you have heading 0, pitch 0, roll 0 set. If you happen to deviate from that to the LEFT a little bit (now you're heading 350, say), the SAS will attempt to yaw the plane all the way around in a circle to the left in order to come back to a heading of 0. EDIT: Actually happens on the "right" side of the gauge too. If you're heading about 45 and set 358, it will yaw right... it seems. Weird stuff happens around 0, maybe.

And, though I may be the only one on this,

4) The pilot assistant doesn't actually do anything - activating, deactivating, changing numbers, updating... is there some dark magic needed to make it work?

Edited by AccidentalDisassembly
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...