allista

[1.2.2] Throttle Controlled Avionics

1536 posts in this topic

Throttle Controlled Avionics - Continued

real-time engine balancing, attitude and altitude control, VTOL autopiloting

Originally created by qfeys and Zenka

Current development and maintenance: allista


TCA is a plugin that enhances the attitude control of a ship by dynamically changing the output of its engines and RCS thrusters. Even with most unbalanced designs TCA maintains stable flight and quick precise response to user or autopilot input. TCA also provides many sophisticated autopilot programs based on this core functionality, including waypoint navigation and automatic landing. It is also fast enough to simultaneously control a whole squadron of ships without much overhead.

First read, then flyTCA Manual First read, then fly!

Support me on Patreon

Features

  • Functionality:
    • Simultaneous control over multiple vessels.
    • Realtime RCS and engine balancing.
    • Multiple engine roles and engine profiles.
    • Full support of slow engines (jets, propellers, etc.)
    • Thrust attitude control.
    • Hovering control.
    • Many sophisticated autopilot programs.
    • Orbital maneuvering independent of command module orientation.
    • User defined macros.
  • Technical:
    • Both the Toolbar and the stock AppLauncher are supported.
    • Per-vessel/per-save configuration profiles and custom presets.
    • In-game configurable key binding.
    • Full career mode integration (see below).

Introduction to TCA2

New Features in TCA3

Launching shuttle with TCA

New orbital autopilots in TCA 3.2.0

TCA Modules in Tech Tree

EvIbKtt.png

Downloads and Installation

!!! ModuleManager is required but not included !!!

If you're upgrading, DELETE the old version before installing a new one BUT do not delete the TCA.conf and config.xml files to preserve your settings.

ChangeLog

Acknowledgments:

First of all, many thanks to qfeys and Zenka for creating the original concept and implementation. Without them TCA would not exist.

And I want to express extreme gratitude to @smjjames, who helped me so much with the testing of TCA3 and proposed countless improvements. Without it this version would never have come to a release!

 

My patrons on Patreon. Thank you for your support!

Also, here are the mods whose code and ideas were used in one way or another:

 

Edited by allista
New version released: v3.4.0 [1.2.2]
47 people like this

Share this post


Link to post
Share on other sites

Thank you very much for continuing this mod sir. It was one of my must haves.

1 person likes this

Share this post


Link to post
Share on other sites

Awesome, Allista. Thanks for the continued support. :)

Share this post


Link to post
Share on other sites

Yep, this is definitely one of the best mods for anything with more than one engine.

Share this post


Link to post
Share on other sites

At last, hotkey :)

This addon is all i need for my vtol shis.

1 person likes this

Share this post


Link to post
Share on other sites

Only last week did I find out about this mod, and tried it out. Fantastic! Then today, the new version. So, thanks very ouch for taking it over.

I have a question….. what do I need to do for it to work well with Mechjeb? For Landing, and Translatron (such as vertical hold), the engines sputter and the ships fall lout of the sky. On Ascent Guidance, it does fly mostly under control, but sputters and wobbles and drifts horizontally in the pitch and yaw directions. Or are they incompatible with each other?

I've worked up a big SSTO SpacePlane, to land on Minmus, which has some VTOL landing rockets so it can land vertically (and take off vertically) with the fuselage horizontal. I'll probably do the landing manually (using TCA), and the vertical takeoff will be easy enough.

But still, it'd be great if I could also use Mechjeb and TCA together for future projects.

- GeorgeG

8KbfHHj.jpg

Edited by GeorgeG

Share this post


Link to post
Share on other sites
Only last week did I find out about this mod, and tried it out. Fantastic! Then today, the new version. So, thanks very ouch for taking it over.

I have a question….. what do I need to do for it to work well with Mechjeb? For Landing, and Translatron (such as vertical hold), the engines sputter and the ships fall lout of the sky. On Ascent Guidance, it does fly mostly under control, but sputters and wobbles and drifts horizontally in the pitch and yaw directions. Or are they incompatible with each other?

I've worked up a big SSTO SpacePlane, to land on Minmus, which has some VTOL landing rockets so it can land vertically (and take off vertically) with the fuselage horizontal. I'll probably do the landing manually (using TCA), and the vertical takeoff will be easy enough.

But still, it'd be great if I could also use Mechjeb and TCA together for future projects.

- GeorgeG

http://i.imgur.com/8KbfHHj.jpg

Yea, it would be great, but there is an intrinsic problem with this two: to maintain orientation MechJeb2 uses a vector PID-controller that is tuned in real time depending on engines' torque (well, engines, r.wheels, lifting surfaces... MechJeb is thorough and tough!) and inertia tensor of a ship. But TCA changes engines' thrust (and thus torque) relatively fast, and in many cases it causes self-excitation of the TCA-MechJeb system. The stock SAS works better as it, unlike MJ, does not try to predict ship's movements, using three separate PID-controllers for pitch, yaw and roll with hard-coded coefficients.

With such heavy and complex ship, I would turn off the auto-tuning in TCA and try to lower the Steering Gain and P and I values of engines' controller. The ship may become slow in response, but steady with MechJeb. In my tests I had experience of successful tweaking TCA to work with MJ on heavy and very wobbly (not many struts) rocket.

Oh, and in my experience landing manually with TCA is a relatively easy task. I've landed a heavy SSTO to the Mun using MJ for targeting and deceleration with main engines and TCA with vertical thrusters for final descend.

Edited by allista

Share this post


Link to post
Share on other sites

please add it to CKAN mod enabler/downloader! and thank you again works great as always

Share this post


Link to post
Share on other sites
please add it to CKAN mod enabler/downloader! and thank you again works great as always

KerbalStuff adds all new mods to CKAN automatically.

NetKAN had probably not indexed it yet, though. I'll check NetKAN repo...

UPD1: KS bot submitted the pull request a day ago, but it is still hanging there among other 12. NetKAN is not fast, we need to wait a little longer.

UPD2: I've added a handmade .netkan file and requested a merge. This file fixes errors introduced by the KS Bot, and thus should (I hope) be accepted faster.

Edited by allista

Share this post


Link to post
Share on other sites

Thank you for reviving this again! It had been on my radar to ask about. :D

Share this post


Link to post
Share on other sites

This is a great mod thank you. Is it also possible to change the default hotkey for tca?

Share this post


Link to post
Share on other sites
This is a great mod thank you. Is it also possible to change the default hotkey for tca?

It is.

For now, through the config file: open the GameData/ThrottleControlledAvionics/Plugins/PluginData/ThrottleControlledAvionics/TCA.glob file in a text editor and find the line "TCA_Key = y"; change 'y' to any printable key you want. Key combinations and special keys are not yet supported, but I'll add them in the future, as well as in-game key-binding changing.

Share this post


Link to post
Share on other sites
This is a great mod thank you. Is it also possible to change the default hotkey for tca?
It is.

For now, through the config file: open the GameData/ThrottleControlledAvionics/Plugins/PluginData/ThrottleControlledAvionics/TCA.glob file in a text editor and find the line "TCA_Key = y"; change 'y' to any printable key you want. Key combinations and special keys are not yet supported, but I'll add them in the future, as well as in-game key-binding changing.

Ok, I didn't mess around with glob files before, so I didn't check it out. Thanks again.

Share this post


Link to post
Share on other sites

Excellent mod! Very well done. Had an idea for it, not sure if this has been brought up already. But make a part for it thats added to the ship. Thus allowing it to be intergrated into the career tech tree as a unlockable later on in your career game. Just a thought. Either way thanks for the great mod!

Share this post


Link to post
Share on other sites

If the only intent of adding a part is to make it unlockable on the tech tree, you don't need a part. It's doable without it. :)

Share this post


Link to post
Share on other sites
Excellent mod! Very well done. Had an idea for it, not sure if this has been brought up already. But make a part for it thats added to the ship. Thus allowing it to be intergrated into the career tech tree as a unlockable later on in your career game. Just a thought. Either way thanks for the great mod!
If the only intent of adding a part is to make it unlockable on the tech tree, you don't need a part. It's doable without it. :)

Yea, I wanted to say the same: It's a little more complex, but non the less doable. And I thought many times about making TCA to be a part, or a module added to cockpits with MM, but in the end decided otherwise.

Anyway, thanks for the suggestion, I'll implement it in the next release.

Share this post


Link to post
Share on other sites

I built a space shuttle and was wondering if this mod will account for the torque applied by the control surfaces and the torque from the high amount of wing pieces on the shuttle?

Share this post


Link to post
Share on other sites
I built a space shuttle and was wondering if this mod will account for the torque applied by the control surfaces and the torque from the high amount of wing pieces on the shuttle?

Not by itself -- it only considers engines. But if the additional torque is less than torque from engines, enabled SAS should compensate it with TCA.

In the legacy forum thread while testing the beta version of TCA VDNKh said:

This works amazingly for shuttles. Both NASA and Buran style shuttle launch systems. I didn't have to touch any settings to get it to fly on target.

Share this post


Link to post
Share on other sites

Intriguing mod. Question: does it play nice with infernal robotics and engines on rotatrons/hinges/whatever?

Share this post


Link to post
Share on other sites
Intriguing mod. Question: does it play nice with infernal robotics and engines on rotatrons/hinges/whatever?

I haven't tested it, but there should be no problem: TCA computes engines' limits each physical frame based on thrust vectors each engine part provides. So as soon these vectors move (e.g. Gimbal moves them too) TCA accounts for the change and recalculates limits accordingly.

Share this post


Link to post
Share on other sites

I think it does not work with Kerbal ISP difficulty Scaler. I built small asymmetrical craft and it was tipping over. Then I built something similar to example shown in OP vid and it worked great. I think TCA is reading original engine stats not modified ones. As long as craft is symmetrical and uses one type of engines TCA will do good. Steering by throttling individual engines is great idea.

I insist on using NEAR. Lessened drag forces me into nerfing engines behavior in the atmosphere. That is what ISP difficulty scaler is for. So, Allista would you consider looking into it? I dont know If it is something easy to correct.

No matter your answer, thank you for your work, mod is great, I can certainly design around some of its limitations.

Share this post


Link to post
Share on other sites
I think it does not work with Kerbal ISP difficulty Scaler. I built small asymmetrical craft and it was tipping over. Then I built something similar to example shown in OP vid and it worked great. I think TCA is reading original engine stats not modified ones. As long as craft is symmetrical and uses one type of engines TCA will do good. Steering by throttling individual engines is great idea.

I insist on using NEAR. Lessened drag forces me into nerfing engines behavior in the atmosphere. That is what ISP difficulty scaler is for. So, Allista would you consider looking into it? I dont know If it is something easy to correct.

No matter your answer, thank you for your work, mod is great, I can certainly design around some of its limitations.

Hm... that's strange, I'll investigate the matter.

I've never used ISP scaler, but a quick glance into its code shows no obvious problem, as the Scaler modifies maxThrust which TCA reads from the engine each frame.

Share this post


Link to post
Share on other sites

I feel really stupid. I'd swear it was not working on my first attempt. Now I have just made total contraption and it works no problem. Here it is:

screenshot0_zpsujk8ywx5.png

So it does work with ISP scaler. Apologies for stirring things up.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now