X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=src%2Forg%2Fusfirst%2Ffrc%2Fteam3501%2Frobot%2FRobot.java;h=8fd099fb2999081e999638cb08d2e46b9872297f;hb=4d4bcc688036e2dfeb20824d91b8a9972c20ecf4;hp=37b3c24671f8b6c96d8e879c1d53d756729c8dba;hpb=6947c8a4fbc2b4b6fe8e5a68ee477c82f8a4b0b2;p=3501%2Fstronghold-2016 diff --git a/src/org/usfirst/frc/team3501/robot/Robot.java b/src/org/usfirst/frc/team3501/robot/Robot.java index 37b3c246..8fd099fb 100644 --- a/src/org/usfirst/frc/team3501/robot/Robot.java +++ b/src/org/usfirst/frc/team3501/robot/Robot.java @@ -1,9 +1,14 @@ package org.usfirst.frc.team3501.robot; import org.usfirst.frc.team3501.robot.Constants.Defense; +import org.usfirst.frc.team3501.robot.sensors.GyroLib; +import org.usfirst.frc.team3501.robot.subsystems.DefenseArm; import org.usfirst.frc.team3501.robot.subsystems.DriveTrain; +import org.usfirst.frc.team3501.robot.subsystems.IntakeArm; +import org.usfirst.frc.team3501.robot.subsystems.Scaler; import org.usfirst.frc.team3501.robot.subsystems.Shooter; +import edu.wpi.first.wpilibj.I2C; import edu.wpi.first.wpilibj.IterativeRobot; import edu.wpi.first.wpilibj.command.Scheduler; import edu.wpi.first.wpilibj.smartdashboard.SendableChooser; @@ -14,49 +19,36 @@ public class Robot extends IterativeRobot { public static DriveTrain driveTrain; public static Shooter shooter; + public static Scaler scaler; + + public static IntakeArm intakeArm; + public static DefenseArm defenseArm; + // Sendable Choosers send a drop down menu to the Smart Dashboard. SendableChooser positionChooser; SendableChooser positionOneDefense, positionTwoDefense, positionThreeDefense, positionFourDefense, positionFiveDefense; + // Gyro stuff + public GyroLib gyro; + @Override public void robotInit() { driveTrain = new DriveTrain(); oi = new OI(); + gyro = new GyroLib(I2C.Port.kOnboard, false); + shooter = new Shooter(); + scaler = new Scaler(); + intakeArm = new IntakeArm(); initializeSendableChoosers(); + addPositionChooserOptions(); + addDefensesToAllDefenseSendableChoosers(); + sendSendableChoosersToSmartDashboard(); - // add options for positions to the positionChooser - positionChooser.addDefault("Position 1", 1); - positionChooser.addObject("Position 2", 2); - positionChooser.addObject("Position 3", 3); - positionChooser.addObject("Position 4", 4); - positionChooser.addObject("Position 5", 5); - - // add options for defenses into each defense chooser (5) - addDefense(positionOneDefense); - addDefense(positionTwoDefense); - addDefense(positionThreeDefense); - addDefense(positionFourDefense); - addDefense(positionFiveDefense); - - // send the Sendable Choosers to the Smart Dashboard - // Sendable Choosers allows the driver to select the position of the robot - // and the positions of the defenses from a drop-down menu on the Smart - // Dashboard - SmartDashboard.putData("PositionChooser", positionChooser); - SmartDashboard.putData("Position One Defense Chooser", positionOneDefense); - SmartDashboard.putData("Position Two Defense Chooser", positionTwoDefense); - SmartDashboard.putData("Position Three Defense Chooser", - positionThreeDefense); - SmartDashboard.putData("Position Four Defense Chooser", - positionFourDefense); - SmartDashboard.putData("Position Five Defense Chooser", - positionFiveDefense); } - // initialize all the Sendable Choosers private void initializeSendableChoosers() { positionChooser = new SendableChooser(); positionOneDefense = new SendableChooser(); @@ -66,7 +58,23 @@ public class Robot extends IterativeRobot { positionFiveDefense = new SendableChooser(); } - private void addDefense(SendableChooser chooser) { + private void addPositionChooserOptions() { + positionChooser.addDefault("Position 1", 1); + positionChooser.addObject("Position 2", 2); + positionChooser.addObject("Position 3", 3); + positionChooser.addObject("Position 4", 4); + positionChooser.addObject("Position 5", 5); + } + + private void addDefensesToAllDefenseSendableChoosers() { + addDefenseOptions(positionOneDefense); + addDefenseOptions(positionTwoDefense); + addDefenseOptions(positionThreeDefense); + addDefenseOptions(positionFourDefense); + addDefenseOptions(positionFiveDefense); + } + + private void addDefenseOptions(SendableChooser chooser) { chooser.addDefault("Portcullis", Defense.PORTCULLIS); chooser.addObject("Sally Port", Defense.SALLY_PORT); chooser.addObject("Rough Terrain", Defense.ROUGH_TERRAIN); @@ -77,6 +85,26 @@ public class Robot extends IterativeRobot { chooser.addObject("Rock Wall", Defense.ROCK_WALL); } + private void sendSendableChoosersToSmartDashboard() { + SmartDashboard.putData("PositionChooser", positionChooser); + SmartDashboard.putData("Position One Defense Chooser", positionOneDefense); + SmartDashboard.putData("Position Two Defense Chooser", positionTwoDefense); + SmartDashboard.putData("Position Three Defense Chooser", + positionThreeDefense); + SmartDashboard.putData("Position Four Defense Chooser", + positionFourDefense); + SmartDashboard.putData("Position Five Defense Chooser", + positionFiveDefense); + + SmartDashboard.putData("Position Four Defense Chooser", + positionFourDefense); + SmartDashboard.putData("Position Five Defense Chooser", + positionFiveDefense); + + shooter = new Shooter(); + + } + @Override public void autonomousInit() { Scheduler.getInstance().run(); @@ -85,18 +113,16 @@ public class Robot extends IterativeRobot { Integer chosenPosition = (Integer) positionChooser.getSelected(); Integer chosenDefense = 0; - switch (chosenPosition) { - case 1: + if (chosenPosition == 1) chosenDefense = (Integer) positionOneDefense.getSelected(); - case 2: + else if (chosenPosition == 2) chosenDefense = (Integer) positionTwoDefense.getSelected(); - case 3: + else if (chosenPosition == 3) chosenDefense = (Integer) positionThreeDefense.getSelected(); - case 4: + else if (chosenPosition == 4) chosenDefense = (Integer) positionFourDefense.getSelected(); - case 5: + else if (chosenPosition == 5) chosenDefense = (Integer) positionFiveDefense.getSelected(); - } System.out.println("Chosen Position: " + chosenPosition); System.out.println("Chosen Defense: " + chosenDefense); @@ -109,11 +135,17 @@ public class Robot extends IterativeRobot { @Override public void teleopInit() { + + gyro.start(); + } @Override public void teleopPeriodic() { Scheduler.getInstance().run(); + System.out.println("Degrees: " + gyro.getRotationZ().getAngle()); + } + }