MechJeb2

MechJeb2

4M Downloads

Ships occasionally won't align to maneuver nodes

SpareBuffalo opened this issue · 9 comments

commented

Very occasionally a ship won't align either via MJ or via the stock autopilot. The angle in both cases I have experienced has been off by only a couple of degrees. In MJ the error is greater than the stock, I have never experienced an error of more than ten degrees. This results in rotation about an odd axis, and MJ won't auto-warp or execute the node. It is verified fixed by returning to main menu.

The photo shows the alignment error. The craft was rotating around the maneuver node axis without pointing the nose straight into the maneuver node.
wont align

commented
commented

In the Attitude Adjustment controller try using the "HybridController" and in general it seems the PID needs more Integral and less deadband (i think).

commented

Okay, well I haven't had it happen since I posted this. Couldn't find any setting about HybridController, but I changed the other two settings. Pardon my ignorance, but I'm not at all sure what they changed lol. Don't even know what Deadband (have an idea) or Integral are (math 🙄).

commented
commented

Yeah, no tweaking is working for me either, but I haven't gotten the time to Debug.Log what is actually going on

commented

manually increasing warp with '.' should work BTW, its just annoying.

commented
commented
                if ((core.attitude.attitudeAngleFromTarget() < 1 && core.vessel.angularMomentum.magnitude < 0.05) || (core.attitude.attitudeAngleFromTarget() < 10 && !MuUtils.PhysicsRunning()))

its almost certainly that line in the NodeExecutor. it should probably use angular velocity instead of momentum. dunno if you can find that off of Vessel or off of MJ's vesselState already, or if you need to just divide by mass there, and offhand IDK what a good value would be.

commented

fixed this to use angularVelocity, using the HybridController and tweaking MaxStoppingTime to 1.0 or so is recommended.