Interface AbsoluteEncoder

    • Method Detail

      • getPosition

        double getPosition()
        Get the position of the motor. This returns the native units of 'rotations' by default, and can be changed by a scale factor using setPositionConversionFactor().
        Returns:
        Number of rotations of the motor
      • getVelocity

        double getVelocity()
        Get the velocity of the motor. This returns the native units of 'rotations per second' by default, and can be changed by a scale factor using setVelocityConversionFactor().
        Returns:
        Number of rotations per second of the motor
      • setPositionConversionFactor

        REVLibError setPositionConversionFactor​(double factor)
        Set the conversion factor for position of the encoder. Multiplied by the native output units to give you position
        Parameters:
        factor - The conversion factor to multiply the native units by
        Returns:
        REVLibError.kOk if successful
      • getPositionConversionFactor

        double getPositionConversionFactor()
        Get the conversion factor for position of the encoder. Multiplied by the native output units to give you position
        Returns:
        The conversion factor for position
      • setVelocityConversionFactor

        REVLibError setVelocityConversionFactor​(double factor)
        Set the conversion factor for velocity of the encoder. Multiplied by the native output units to give you velocity
        Parameters:
        factor - The conversion factor to multiply the native units by
        Returns:
        REVLibError.kOk if successful
      • getVelocityConversionFactor

        double getVelocityConversionFactor()
        Get the conversion factor for velocity of the encoder. Multiplied by the native output units to give you velocity
        Returns:
        The conversion factor for velocity
      • setAverageDepth

        REVLibError setAverageDepth​(int depth)
        Set the average sampling depth for an absolute encoder. This is a bit size and should be either 1, 2, 4, 8, 16, 32, 64, or 128
        Parameters:
        depth - The average sampling depth of 1, 2, 4, 8, 16, 32, 64, or 128
        Returns:
        REVLibError.kOk if successful
      • getAverageDepth

        int getAverageDepth()
        Get the average sampling depth for an absolute encoder
        Returns:
        The average sampling depth
      • setZeroOffset

        REVLibError setZeroOffset​(double offset)
        Sets the zero offset of an absolute encoder (the position that is reported as zero).

        The zero offset is specified as the reported position of the encoder in the desired zero position, if the zero offset was set to 0. It is influenced by the absolute encoder's position conversion factor, and whether it is inverted.

        Always call SetPositionConversionFactor() and SetInverted() before calling this function.

        Parameters:
        offset - The zero offset with the position conversion factor applied
        Returns:
        REVLibError.kOk if successful
      • getZeroOffset

        double getZeroOffset()
        Gets the zero offset for an absolute encoder (the position that is reported as zero).

        The zero offset is specified as the reported position of the encoder in the desired zero position, if the zero offset was set to 0. It is influenced by the absolute encoder's position conversion factor, and whether it is inverted.

        Returns:
        The zero offset of the absolute encoder with the position conversion factor applied