Class NidecBrushless

    • Constructor Detail

      • NidecBrushless

        public NidecBrushless​(int pwmChannel,
                              int dioChannel)
        Constructor.
        Parameters:
        pwmChannel - The PWM channel that the Nidec Brushless controller is attached to. 0-9 are on-board, 10-19 are on the MXP port
        dioChannel - The DIO channel that the Nidec Brushless controller is attached to. 0-9 are on-board, 10-25 are on the MXP port
    • Method Detail

      • set

        public void set​(double speed)
        Set the PWM value.

        The PWM value is set using a range of -1.0 to 1.0, appropriately scaling the value for the FPGA.

        Specified by:
        set in interface SpeedController
        Parameters:
        speed - The speed value between -1.0 and 1.0 to set.
      • get

        public double get()
        Get the recently set value of the PWM.
        Specified by:
        get in interface SpeedController
        Returns:
        The most recently set value for the PWM between -1.0 and 1.0.
      • setInverted

        public void setInverted​(boolean isInverted)
        Description copied from interface: SpeedController
        Common interface for inverting direction of a speed controller.
        Specified by:
        setInverted in interface SpeedController
        Parameters:
        isInverted - The state of inversion true is inverted.
      • getInverted

        public boolean getInverted()
        Description copied from interface: SpeedController
        Common interface for returning if a speed controller is in the inverted state or not.
        Specified by:
        getInverted in interface SpeedController
        Returns:
        isInverted The state of the inversion true is inverted.
      • pidWrite

        public void pidWrite​(double output)
        Write out the PID value as seen in the PIDOutput base object.
        Specified by:
        pidWrite in interface PIDOutput
        Parameters:
        output - Write out the PWM value as was found in the PIDController
      • setExpiration

        public void setExpiration​(double timeout)
        Set the safety expiration time.
        Specified by:
        setExpiration in interface MotorSafety
        Parameters:
        timeout - The timeout (in seconds) for this motor object
      • getExpiration

        public double getExpiration()
        Return the safety expiration time.
        Specified by:
        getExpiration in interface MotorSafety
        Returns:
        The expiration time value.
      • isAlive

        public boolean isAlive()
        Check if the motor is currently alive or stopped due to a timeout.
        Specified by:
        isAlive in interface MotorSafety
        Returns:
        a bool value that is true if the motor has NOT timed out and should still be running.
      • stopMotor

        public void stopMotor()
        Stop the motor. This is called by the MotorSafetyHelper object when it has a timeout for this PWM and needs to stop it from running. Calling set() will re-enable the motor.
        Specified by:
        stopMotor in interface MotorSafety
        Specified by:
        stopMotor in interface SpeedController
      • isSafetyEnabled

        public boolean isSafetyEnabled()
        Check if motor safety is enabled.
        Specified by:
        isSafetyEnabled in interface MotorSafety
        Returns:
        True if motor safety is enforced for this object
      • disable

        public void disable()
        Disable the motor. The enable() function must be called to re-enable the motor.
        Specified by:
        disable in interface SpeedController
      • enable

        public void enable()
        Re-enable the motor after disable() has been called. The set() function must be called to set a new motor speed.
      • getChannel

        public int getChannel()
        Gets the channel number associated with the object.
        Returns:
        The channel number.