1 package org
.usfirst
.frc
.team3501
.robot
;
3 import org
.usfirst
.frc
.team3501
.robot
.subsystems
.DriveTrain
;
4 import org
.usfirst
.frc
.team3501
.robot
.subsystems
.Intake
;
5 import org
.usfirst
.frc
.team3501
.robot
.subsystems
.Shooter
;
7 import edu
.wpi
.first
.wpilibj
.IterativeRobot
;
8 import edu
.wpi
.first
.wpilibj
.command
.Scheduler
;
9 import edu
.wpi
.first
.wpilibj
.smartdashboard
.SmartDashboard
;
11 public class Robot
extends IterativeRobot
{
12 private static DriveTrain driveTrain
;
13 private static Shooter shooter
;
15 private static Intake intake
;
18 public void robotInit() {
19 driveTrain
= DriveTrain
.getDriveTrain();
21 shooter
= Shooter
.getShooter();
22 intake
= Intake
.getIntake();
24 SmartDashboard
.putNumber(driveTrain
.DRIVE_P_Val
, 0);
25 SmartDashboard
.putNumber(driveTrain
.DRIVE_I_Val
, 0);
26 SmartDashboard
.putNumber(driveTrain
.DRIVE_D_Val
, 0);
27 SmartDashboard
.putNumber(driveTrain
.DRIVE_TARGET_DIST
, 50);
28 SmartDashboard
.putNumber(driveTrain
.DRIVE_MOTOR_VAL
, 0.5);
30 SmartDashboard
.putNumber(driveTrain
.GYRO_P_Val
, 0);
31 SmartDashboard
.putNumber(driveTrain
.GYRO_I_Val
, 0);
32 SmartDashboard
.putNumber(driveTrain
.GYRO_D_Val
, 0);
36 public static DriveTrain
getDriveTrain() {
40 public static Shooter
getShooter() {
41 return Shooter
.getShooter();
44 public static OI
getOI() {
48 public static Intake
getIntake() {
49 return Intake
.getIntake();
52 // If the gear values do not match in the left and right piston, then they are
53 // both set to high gear
55 public void autonomousInit() {
56 driveTrain
.setHighGear();
59 SmartDashboard
.putNumber(Constants
.DriveTrain
.DRIVE_P_Val
, 0);
60 SmartDashboard
.putNumber(Constants
.DriveTrain
.DRIVE_I_Val
, 0);
61 SmartDashboard
.putNumber(Constants
.DriveTrain
.DRIVE_D_Val
, 0);
62 SmartDashboard
.putNumber(Constants
.DriveTrain
.DRIVE_TARGET_DIST
, 50);
63 SmartDashboard
.putNumber(Constants
.DriveTrain
.GYRO_P_Val
, 0);
64 SmartDashboard
.putNumber(Constants
.DriveTrain
.GYRO_I_Val
, 0);
65 SmartDashboard
.putNumber(Constants
.DriveTrain
.GYRO_D_Val
, 0);
66 SmartDashboard
.putNumber(Constants
.DriveTrain
.P_Val
, 0);
67 SmartDashboard
.putNumber(Constants
.DriveTrain
.I_Val
, 0);
68 SmartDashboard
.putNumber(Constants
.DriveTrain
.D_Val
, 0);
69 SmartDashboard
.putNumber(Constants
.DriveTrain
.MOTOR_VAL
, 0.5);
71 SmartDashboard
.putNumber(Constants
.DriveTrain
.DRIVE_MOTOR_VAL
, 0.5);
73 SmartDashboard
.putNumber(driveTrain
.DRIVE_P_Val
, 0);
74 SmartDashboard
.putNumber(driveTrain
.DRIVE_I_Val
, 0);
75 SmartDashboard
.putNumber(driveTrain
.DRIVE_D_Val
, 0);
76 SmartDashboard
.putNumber(driveTrain
.DRIVE_TARGET_DIST
, 50);
78 SmartDashboard
.putNumber(driveTrain
.DRIVE_MOTOR_VAL
, 0.5);
80 SmartDashboard
.putNumber(driveTrain
.GYRO_P_Val
, 0);
81 SmartDashboard
.putNumber(driveTrain
.GYRO_I_Val
, 0);
82 SmartDashboard
.putNumber(driveTrain
.GYRO_D_Val
, 0);
85 double driveP
= SmartDashboard
.getNumber(driveTrain
.DRIVE_D_Val
,
86 driveTrain
.PID_ERROR
);
87 double driveI
= SmartDashboard
.getNumber(driveTrain
.DRIVE_I_Val
,
88 driveTrain
.PID_ERROR
);
89 double driveD
= SmartDashboard
.getNumber(driveTrain
.DRIVE_D_Val
,
90 driveTrain
.PID_ERROR
);
92 double gyroP
= SmartDashboard
.getNumber(driveTrain
.GYRO_P_Val
,
93 driveTrain
.PID_ERROR
);
94 double gyroI
= SmartDashboard
.getNumber(driveTrain
.GYRO_I_Val
,
95 driveTrain
.PID_ERROR
);
96 double gyroD
= SmartDashboard
.getNumber(driveTrain
.GYRO_D_Val
,
97 driveTrain
.PID_ERROR
);
99 double Setpoint
= SmartDashboard
.getNumber(driveTrain
.DRIVE_TARGET_DIST
,
100 driveTrain
.PID_ERROR
);
101 double Speed
= SmartDashboard
.getNumber(driveTrain
.DRIVE_MOTOR_VAL
,
102 driveTrain
.PID_ERROR
);
104 driveTrain
.getDriveController().setName("Drive");
105 driveTrain
.getGyroController().setName("Gyro");
107 driveTrain
.getDriveController().setConstants(driveP
, driveI
, driveD
);
109 driveTrain
.getGyroController().setConstants(gyroP
, gyroI
, gyroD
);
114 public void autonomousPeriodic() {
115 Scheduler
.getInstance().run();
120 public void teleopInit() {
125 public void teleopPeriodic() {
126 Scheduler
.getInstance().run();