Exemple #1
0
    def __init__(self):

        super().__init__("Arm")

        self.limiter = DigitalInput(arm_stopper.dio)
        self.final_extender_solenoid = SolenoidHandler(
            *solenoids.final_armextender)
        self.extender_solenoid = SolenoidHandler(*solenoids.armextender)
        self.grabber_solenoid = SolenoidHandler(*solenoids.grabber)

        self.rotator_motors = {}
        self.rotator_motors["L"] = Motor(*arm_motors.L)
        #self.rotator_motors["R"] = Motor(*arm_motors.R)

        self.wench_motor = Motor(*arm_motors.wench)

        self.rotator_encoders = {}
        #self.rotator_encoders["L"] = Encoder(*arm_encoders.L)
        self.rotator_encoders["R"] = Encoder(*arm_encoders.R)

        #self.rotator_encoders["L"].setPIDSourceType(PIDController.PIDSourceType.kRate)
        self.rotator_encoders["R"].setPIDSourceType(
            PIDController.PIDSourceType.kDisplacement)
        self.rotator_encoders["R"].setDistancePerPulse(arm_encoders.R_dpp)

        self.last_rot_time = None
Exemple #2
0
    def __init__(self, L0, L1, R0, R1):

        super().__init__('Drive')

        self.L0 = Motor(L0)
        self.L1 = Motor(L1)
        self.R0 = Motor(R0)
        self.R1 = Motor(R1)
Exemple #3
0
    def __init__(self):
        self.rear_motor = Motor(motor_type="rear_motor")
        self.front_motor = Motor(motor_type="front_motor")

        self.front_right_blinker = Blinker(7)
        self.fron_left_blinker = Blinker(11)

        self.range_sensor = RangeSensor()
        self.camera = Camera()
Exemple #4
0
    def __init__(self):
        super().__init__('Arm')

        # extender_solenoid is the one that raises/lowers the arm
        # grabber_solenoid opens/closes the arms.
        self.extender_solenoid = SolenoidHandler(*solenoids.armextender)
        self.grabber_solenoid = SolenoidHandler(*solenoids.grabber)

        self.rotator_motors = {}
        self.rotator_motors["L"] = Motor(*arm_motors.L)
        self.rotator_motors["R"] = Motor(*arm_motors.R)
Exemple #5
0
    def __init__(self):
        super().__init__('Drive')

        # These can be used individually, but you should use RobotDrive to controll these
        self.LB = Motor(ids.LB_motor)
        self.LF = Motor(ids.LF_motor)
        self.RB = Motor(ids.RB_motor)
        self.RF = Motor(ids.RF_motor)

        self.drive_train = RobotDrive(self.LF, self.LB, self.RF, self.RB)
        self.drive_train.setInvertedMotor(0, True)
        self.drive_train.setInvertedMotor(1, True)
        self.drive_train.setExpiration(0.1)
Exemple #6
0
    def __init__(self):

        super().__init__("TankDrive")

        self.motors = {
            "LF": Motor(*drive_motors.LF),
            "LB": Motor(*drive_motors.LB),
            "RF": Motor(*drive_motors.RF),
            "RB": Motor(*drive_motors.RB)
        }

        self.encoders = {
            "L": Encoder(*drive_encoders.L),
            "R": Encoder(*drive_encoders.R)
        }

        self.encoders["L"].setPIDSourceType(PIDController.PIDSourceType.kRate)
        self.encoders["R"].setPIDSourceType(PIDController.PIDSourceType.kRate)
        
        # Now they are the same kind of encoder.        
        self.encoders["L"].setDistancePerPulse(drive_encoders.L_dpp)
        self.encoders["R"].setDistancePerPulse(drive_encoders.R_dpp)

        self.gearshift = SolenoidHandler(*solenoids.gearshift)
Exemple #7
0
 def __init__(self):
     self.rear_motor = Motor(motor_type="rear_motor")
     self.front_motor = Motor(motor_type="front_motor")
     self.range_sensor = RangeSensor()
     self.camera = Camera()