Giter Site home page Giter Site logo

Comments (7)

nuggreat avatar nuggreat commented on August 13, 2024

If RCS is contributing to your control (and based on your screen shot it does) then in kOS versions prior to 1.4.0.0 we didn't know KSP did not tell kOS the correct torque you could get from RCS blocks. One of the fixes in kOS 1.4.0.0 is ignoring what KSP tells us for RCS torque and calculating it our selves. This inconsistent torque data if you are using RCS for rotation is likely the cause of the inconsistent amount of time it takes to rotate the craft.

As to the ROLLTS and YAWTS values those change the stage 2 PIDs not the stage 1 PIDs and only the stage 1 PIDs are exposed to the users thus the documentation remains correct.

from kos.

quetschke avatar quetschke commented on August 13, 2024

My previous report was KSP 1.12.3 and kOS 1.3.2. I just updated to a clean install of KSP 1.12.5 and kOS 1.4.0 the only mod. The behavior stays mostly as previously described, except for the KI = 0.4 case with PITCHTS/YAWTS unchanged. I get more variations between tries. Sometimes the PITCH/YAW values stay at 1 0.4 0 or change to 1 0.2 0 / 1 0.8 0 in later runs.

As for your comment towards RCS, yes RCS is onboard, but the script has RCS OFF.

So, even if ROLLTS and YAWTS changes are not visible, the "stopping" times do not change. I get ~28s independent of setting ROLLTS/10 and YAWTS/10 or leaving them unchanged. Also, first run is (most of the time) different. Sorry, this is a bit nondeterministic.

from kos.

darthgently avatar darthgently commented on August 13, 2024

Just to be sure, you are measuring time intervals in game time, not real time, correct? I only mention it because game time rate can change a bit over time if memory is tight as leaks and fragmentation increase

from kos.

quetschke avatar quetschke commented on August 13, 2024

@darthgently the time is measured in gametime seconds (TIME:SECONDS) and I use a moving average over the sum of ANGLEERROR and ROLLERROR to avoid stopping early when crossing zero.

from kos.

nuggreat avatar nuggreat commented on August 13, 2024

A PID loop in kOS can alter it's Ki if it has an extraUnwind flag set, I don't think this is exposed to normal users and is instead an internal thing for the steering manager so seeing the ki change is allowed. It should only be changing between 2x and normal. I wonder if the fact you are printing the Ki is causing issues with kOS changing the Ki and that is what is causing the accumulating values there.

As to determinism kOS tries but when KSP it's self is not deterministic there is only so much that can be done.

from kos.

quetschke avatar quetschke commented on August 13, 2024

@nuggreat: I see changes in the Ki of either *2, *1 or /2. That's probably what you meant. So that part works as expected.

from kos.

nuggreat avatar nuggreat commented on August 13, 2024

The ki should only be changing between a value of 0.1 and 0.2 (assuming default steering manager PID) the fact it isn't staying in that range and is going higher/lower means that some how the act of printing the ki is preventing the increase or reduction from taking effect some of the time is a problem.

from kos.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.