From b54ad73beef09380405bef17c832266a2e24cf39 Mon Sep 17 00:00:00 2001 From: Kevin Zhang Date: Wed, 10 Feb 2016 19:10:11 -0800 Subject: [PATCH] Add lidar to drivetrain --- src/org/usfirst/frc/team3501/robot/Robot.java | 11 ----------- .../frc/team3501/robot/subsystems/DriveTrain.java | 8 ++++++++ 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/src/org/usfirst/frc/team3501/robot/Robot.java b/src/org/usfirst/frc/team3501/robot/Robot.java index a86721d0..051aac62 100644 --- a/src/org/usfirst/frc/team3501/robot/Robot.java +++ b/src/org/usfirst/frc/team3501/robot/Robot.java @@ -5,7 +5,6 @@ import org.usfirst.frc.team3501.robot.subsystems.DriveTrain; 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; @@ -22,15 +21,12 @@ public class Robot extends IterativeRobot { SendableChooser positionOneDefense, positionTwoDefense, positionThreeDefense, positionFourDefense, positionFiveDefense; - public static Lidar lidar; - @Override public void robotInit() { driveTrain = new DriveTrain(); oi = new OI(); shooter = new Shooter(); scaler = new Scaler(); - lidar = new Lidar(I2C.Port.kOnboard); // 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 @@ -123,18 +119,11 @@ public class Robot extends IterativeRobot { @Override public void teleopInit() { - lidar.start(); } @Override public void teleopPeriodic() { - printLidarValues(); Scheduler.getInstance().run(); } - - public void printLidarValues() { - - System.out.println(lidar.pidGet()); - } } diff --git a/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java b/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java index 6969ed1d..6936abf7 100644 --- a/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java +++ b/src/org/usfirst/frc/team3501/robot/subsystems/DriveTrain.java @@ -1,15 +1,18 @@ package org.usfirst.frc.team3501.robot.subsystems; import org.usfirst.frc.team3501.robot.Constants; +import org.usfirst.frc.team3501.robot.Lidar; import edu.wpi.first.wpilibj.CANTalon; import edu.wpi.first.wpilibj.CounterBase.EncodingType; import edu.wpi.first.wpilibj.Encoder; +import edu.wpi.first.wpilibj.I2C; import edu.wpi.first.wpilibj.command.Subsystem; public class DriveTrain extends Subsystem { // Drivetrain related objects private Encoder leftEncoder, rightEncoder; + public static Lidar lidar; private CANTalon frontLeft, frontRight, rearLeft, rearRight; public DriveTrain() { @@ -18,6 +21,7 @@ public class DriveTrain extends Subsystem { rearLeft = new CANTalon(Constants.DriveTrain.REAR_LEFT); rearRight = new CANTalon(Constants.DriveTrain.REAR_RIGHT); + lidar = new Lidar(I2C.Port.kOnboard); leftEncoder = new Encoder(Constants.DriveTrain.ENCODER_LEFT_A, Constants.DriveTrain.ENCODER_LEFT_B, false, EncodingType.k4X); rightEncoder = new Encoder(Constants.DriveTrain.ENCODER_RIGHT_A, @@ -35,6 +39,10 @@ public class DriveTrain extends Subsystem { rightEncoder.reset(); } + public double getLidarDistance() { + return lidar.pidGet(); + } + public double getRightSpeed() { return rightEncoder.getRate(); // in inches per second } -- 2.30.2