We have recently transitioned to the latest version of Phoenix 6 and are encountering some issues.
The kS in PositionVoltage is not functioning as we expected.
Despite removing all other PID constants and setting kS to approximately 3, the motor did not move, we even tried to put kP to a low value (0.01) to see if kS will do anything from there, which it didn’t.
Additionally, We tried to use ClosedLoopReference and ClosedLoopReferenceSlope to read the target velocity/position in the Motion Magic Control.
Even when we operate the falcon with motion magic control, they return 0 constantly.
We have set the appropriate update frequencies for the falcon when testing.
Has anyone run into similar problems, or has any idea if we did something wrong?
Edit: formating
kS is multiplied by the sign of setpoint velocity. If you’re using unprofiled position control, then the setpoint velocity is 0, so kS will output 0. We cover this in our Basic PID and Profiling documentation. In general, for position closed-loops you want to use motion profiling or the onboard Motion Magic® controls.
Is Motion Magic® itself still working? What are your Motion Magic® cruise velocity and acceleration values? They default to 0 (just like PID gains), so you need to configure them before using Motion Magic®.
The Motion Magic itself is working, we have set cruise velocity to 79.6, acceleration to 159, and jerk to 15,900. The motor seemed to be following a motion profile pretty well, we just couldn’t get his target position nor velocity.
Also, the ClosedLoopError is behaving the same way as the position and velocity, any alternatives to get them or a clue to why they are not retrieving any value?