Source code for wpilib.pwmvictorspx

# validated: 2018-01-01 DV 166d9e01bf75 edu/wpi/first/wpilibj/PWMVictorSPX.java
#----------------------------------------------------------------------------
# Copyright (c) 2008-2017 FIRST. All Rights Reserved.
# Open Source Software - may be modified and shared by FRC teams. The code
# must be accompanied by the FIRST BSD license file in the root directory of
# the project.
#----------------------------------------------------------------------------

#import hal

from .pwmspeedcontroller import PWMSpeedController

__all__ = ["PWMVictorSPX"]


[docs]class PWMVictorSPX(PWMSpeedController): """ Cross the Road Electronics (CTRE) Victor SPX Speed Controller with PWM control. """ def __init__(self, channel: int): """Constructor for a VictorSPX connected via PWM. :param channel: The PWM channel that the PWMTalonSRX is attached to. 0-9 are on-board, 10-19 are on the MXP port. .. note :: The PWMVictorSPX uses the following bounds for PWM values. These values should work reasonably well for most controllers, but if users experience issues such as asymmetric behavior around the deadband or inability to saturate the controller in either direction, calibration is recommended. The calibration procedure can be found in the VictorSPX User Manual available from CTRE. - 2.004ms = full "forward" - 1.520ms = the "high end" of the deadband range - 1.500ms = center of the deadband range (off) - 1.480ms = the "low end" of the deadband range - 0.997ms = full "reverse" """ super().__init__(channel) self.setBounds(2.004, 1.52, 1.50, 1.48, .997) self.setPeriodMultiplier(self.PeriodMultiplier.k1X) self.setSpeed(0) self.setZeroLatch() #hal.report(hal.UsageReporting.kResourceType_PWMVictorSPX, self.getChannel()) self.setName("PWMVictorSPX", self.getChannel())