• Profile image

    For getting RPM: https://wnp78.github.io/JunoXml/ see PartModifierScriptProperties. You can call any value from that category in Vizzy via a fUNk block, and I don't believe this risks a craft's mobile compatibility... though I might be wrong. You can also just call that through an inputController, which makes more sense for a dial, but then there's no guarantee that mobile players can use it.

    one year ago
  • Profile image

    From observing PIDs with planes, I find that the PID process variable is the current attitude and heading (and the setpoint, then, your target direction), not the craft's angular velocity as described on the KSP wiki.
    Make a plane, set its pitch integral to 0, and give it a pitch to hold. If the PID applied to angular velocity, it would eventually reach the target pitch, just slowly; in Juno it'll always fall a few degrees short.
    If you specifically want to know what the sliders mean, and are fine with a programmer's explanation: http://brettbeauregard.com/blog/2011/04/improving-the-beginners-pid-introduction/ The Beginner's PID taught me everything I know about PID controllers. But, to summarize...
    Error = SetPoint - Process Variable
    Proportional = Error, current frame
    Integral = Error(frame1)+Error(frame2)+Error(frameN...) Or, the sum of all errors over time
    Derivative = Error(current) - Error(lastFrame) Or, the rate-of-change of error
    And the sliders you mess with are simple multipliers on each value.
    That is the core of every PID controller ever implemented (with some variance in details). So if you play any other game with a PID controller that you can tune, that's what's happening under the surface.

    one year ago