• Auxiliary encoders

    Josh Pieper04/28/2021 at 15:32 0 comments

    moteus has always had a port intended for use as an extra absolute encoder, and now it finally works!  This is for the case where you have a gear reduction, and want to be able to monitor the output of the reducer in addition to the rotor position.  The moteus firmware doesn't use the value for much, but does allow you to initialize the number of full revolutions of the rotor from it.  It also reports the value over CAN so that your application can use it.

    Currently, just the AS5048B is supported, although other I2C based encoders should be pretty easy to make work.

  • Anti-windup (pure velocity control mode)

    Josh Pieper04/18/2021 at 16:58 0 comments

    I recently added an optional "anti-windup" term to the position control loop in moteus.  This lets it operate in a pure velocity mode with behavior that is more familiar to a 3 stage control law, as opposed to the integrated position/velocity controller that moteus uses.

    You can configure it by setting the "servo.max_position_slip" option to the number of revolutions the control position is allowed to deviate from the actual position.

    I've got a video showing how to use it here: