X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2FRobot.java;h=c82f09f83336cb4ae7f171e712f86b9b573afc2d;hb=refs%2Fheads%2Fmaster;hp=36ca70bc268a526c02d33f5531c1d8d550fcbe90;hpb=38a404b33adc222b57179884470913cb4c0a011d;p=3501%2F2017steamworks diff --git a/src/org/usfirst/frc/team3501/robot/Robot.java b/src/org/usfirst/frc/team3501/robot/Robot.java index 36ca70b..c82f09f 100644 --- a/src/org/usfirst/frc/team3501/robot/Robot.java +++ b/src/org/usfirst/frc/team3501/robot/Robot.java @@ -1,36 +1,111 @@ package org.usfirst.frc.team3501.robot; -import org.usfirst.frc.team3501.robot.Constants.DriveTrain; +import org.usfirst.frc.team3501.robot.commandgroups.AutonMiddleGear; +import org.usfirst.frc.team3501.robot.commandgroups.AutonSideGear; +import org.usfirst.frc.team3501.robot.subsystems.Climber; +import org.usfirst.frc.team3501.robot.subsystems.DriveTrain; +import org.usfirst.frc.team3501.robot.subsystems.Intake; +import org.usfirst.frc.team3501.robot.subsystems.Shooter; + +import edu.wpi.cscore.UsbCamera; +import edu.wpi.first.wpilibj.CameraServer; +import edu.wpi.first.wpilibj.DriverStation; import edu.wpi.first.wpilibj.IterativeRobot; +import edu.wpi.first.wpilibj.command.Command; import edu.wpi.first.wpilibj.command.Scheduler; +import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; +import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard; public class Robot extends IterativeRobot { - public static OI oi; - public static DriveTrain driveTrain; + private static DriveTrain driveTrain; + private static Shooter shooter; + private static OI oi; + private static Intake intake; + private static Climber climber; + + Command autonCommand; + SendableChooser autonChooser; @Override public void robotInit() { - driveTrain = new DriveTrain(); - oi = new OI(); + driveTrain = DriveTrain.getDriveTrain(); + oi = OI.getOI(); + shooter = Shooter.getShooter(); + intake = Intake.getIntake(); + climber = Climber.getClimber(); + + autonChooser = new SendableChooser(); + autonChooser.addDefault("Middle Gear", new AutonMiddleGear()); + autonChooser.addObject("Red Boiler Gear", + new AutonSideGear("RED", "BOILER")); + autonChooser.addObject("Red Retrieval Gear", + new AutonSideGear("RED", "RETRIEVAL")); + autonChooser.addObject("Blue Boiler Gear", + new AutonSideGear("BLUE", "BOILER")); + autonChooser.addObject("Blue Retrieval Gear", + new AutonSideGear("BLUE", "RETRIEVAL")); + SmartDashboard.putData("Autonomous Chooser", autonChooser); + + CameraServer server = CameraServer.getInstance(); + UsbCamera climberCam = server.startAutomaticCapture("climbercam", 0); + UsbCamera intakeCam = server.startAutomaticCapture("intakecam", 1); + } + + public static DriveTrain getDriveTrain() { + return DriveTrain.getDriveTrain(); + } + + public static Shooter getShooter() { + return Shooter.getShooter(); + } + + public static OI getOI() { + return OI.getOI(); + } + + public static Intake getIntake() { + return Intake.getIntake(); + } + + public static Climber getClimber() { + return Climber.getClimber(); } @Override public void autonomousInit() { + driveTrain.setLowGear(); + + // autonCommand = (Command) autonChooser.getSelected(); + autonCommand = new AutonMiddleGear(); + Scheduler.getInstance().add(autonCommand); } @Override public void autonomousPeriodic() { Scheduler.getInstance().run(); - } @Override public void teleopInit() { + driveTrain.setHighGear(); } @Override public void teleopPeriodic() { Scheduler.getInstance().run(); + updateSmartDashboard(); + } + public void updateSmartDashboard() { + SmartDashboard.putNumber("left encode ", + driveTrain.getLeftEncoderDistance()); + SmartDashboard.putNumber("right encoder", + driveTrain.getRightEncoderDistance()); + SmartDashboard.putNumber("angle", driveTrain.getAngle()); + SmartDashboard.putNumber("voltage", + DriverStation.getInstance().getBatteryVoltage()); + SmartDashboard.putNumber("rpm", shooter.getShooterRPM()); + SmartDashboard.putNumber("target shooting", + shooter.getTargetShootingSpeed()); } }