From 14ed720b5694b71e6f7f834901a1a404956d44cd Mon Sep 17 00:00:00 2001 From: Driver Station Computer Date: Sat, 14 Dec 2024 17:02:42 -0800 Subject: [PATCH] we worked on PID elevator again in a new way. --- .../java/com/team766/robot/candle_bot/OI.java | 7 +++--- .../com/team766/robot/candle_bot/Robot.java | 5 ++++ .../robot/candle_bot/mechanisms/Elevator.java | 23 +++++++++++++++++++ 3 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 src/main/java/com/team766/robot/candle_bot/mechanisms/Elevator.java diff --git a/src/main/java/com/team766/robot/candle_bot/OI.java b/src/main/java/com/team766/robot/candle_bot/OI.java index 9402be0c..02f7830a 100644 --- a/src/main/java/com/team766/robot/candle_bot/OI.java +++ b/src/main/java/com/team766/robot/candle_bot/OI.java @@ -25,18 +25,19 @@ public OI() { } public void run(final Context context) { + + context.takeOwnership(Robot.elevator); while (true) { // wait for driver station data (and refresh it using the WPILib APIs) context.waitFor(() -> RobotProvider.instance.hasNewDriverStationData()); RobotProvider.instance.refreshDriverStationData(); if(joystick0.getButtonPressed(1)){ - Robot.candle.LED(); + Robot.elevator.setPosition (10); } if(joystick0.getButtonPressed(2)){ - Robot.candle.stop(); - + Robot.elevator.setPosition (150); } // Add driver controls here - make sure to take/release ownership diff --git a/src/main/java/com/team766/robot/candle_bot/Robot.java b/src/main/java/com/team766/robot/candle_bot/Robot.java index 09a902a8..8a6ca6b8 100644 --- a/src/main/java/com/team766/robot/candle_bot/Robot.java +++ b/src/main/java/com/team766/robot/candle_bot/Robot.java @@ -3,16 +3,21 @@ import com.team766.framework.AutonomousMode; import com.team766.framework.Procedure; import com.team766.hal.RobotConfigurator; +import com.team766.robot.candle_bot.mechanisms.Elevator; import com.team766.robot.candle_bot.mechanisms.candle; import com.team766.robot.example.mechanisms.*; public class Robot implements RobotConfigurator { public static candle candle; + + public static Elevator elevator; + // Declare mechanisms (as static fields) here @Override public void initializeMechanisms() { candle = new candle(); + elevator = new Elevator(); // Initialize mechanisms here } diff --git a/src/main/java/com/team766/robot/candle_bot/mechanisms/Elevator.java b/src/main/java/com/team766/robot/candle_bot/mechanisms/Elevator.java new file mode 100644 index 00000000..177995e7 --- /dev/null +++ b/src/main/java/com/team766/robot/candle_bot/mechanisms/Elevator.java @@ -0,0 +1,23 @@ +package com.team766.robot.candle_bot.mechanisms; + +import com.team766.framework.Mechanism; +import com.team766.hal.MotorController; +import com.team766.hal.RobotProvider; + +public class Elevator extends Mechanism{ + private MotorController elevatormotor; + +public Elevator(){ + elevatormotor = RobotProvider.instance.getMotor("Elevator.elevatormotor"); + elevatormotor.setSensorPosition(0); +} + public void setPosition(double position) { + checkContextOwnership(); + elevatormotor.set(MotorController.ControlMode.Position, position); + } + public void run(){ + log("elevator encoder: " + elevatormotor.getSensorPosition()); + } + +} +