Skip to content
This repository was archived by the owner on Jan 13, 2025. It is now read-only.

Commit cda7400

Browse files
committed
Elevator changes
1 parent 528b97f commit cda7400

File tree

6 files changed

+92
-10
lines changed

6 files changed

+92
-10
lines changed

src/main/java/com/team766/robot/rookie_bot/OI.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public void run(final Context context) {
3232
context.waitFor(() -> RobotProvider.instance.hasNewDriverStationData());
3333
RobotProvider.instance.refreshDriverStationData();
3434

35-
Robot.drive.setArcadeDrivePower(joystick0.getAxis(1), joystick0.getAxis(4));
35+
Robot.drive.setArcadeDrivePower(joystick0.getAxis(1), joystick0.getAxis(3));
3636

3737
// Add driver controls here - make sure to take/release ownership
3838
// of mechanisms when appropriate.

src/main/java/com/team766/robot/rookie_bot/Robot.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,18 @@
55
import com.team766.hal.RobotConfigurator;
66
import com.team766.robot.example.mechanisms.*;
77
import com.team766.robot.rookie_bot.mechanisms.Drive;
8+
import com.team766.robot.rookie_bot.mechanisms.Elevator;
89

910
public class Robot implements RobotConfigurator {
1011
// Declare mechanisms (as static fields) here
1112
public static Drive drive;
12-
13+
public static Elevator elevator;
14+
1315
@Override
1416
public void initializeMechanisms() {
1517
// Initialize mechanisms here
1618
drive = new Drive();
19+
elevator= new Elevator();
1720
}
1821

1922
@Override

src/main/java/com/team766/robot/rookie_bot/mechanisms/Drive.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ public void drive(double leftPower, double rightPower) {
1919
}
2020

2121
public void setArcadeDrivePower(double forward, double turn) {
22-
double leftMotorPower= turn + forward;
23-
double rightMotorPower= -turn + forward;
22+
double leftMotorPower= turn - forward;
23+
double rightMotorPower= -turn - forward;
2424
drive(leftMotorPower, rightMotorPower);
2525

2626

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package.com.team766.robot.rookie_bot.mechanisms;
2+
3+
4+
import com.team766.framework.Mechanism;
5+
import com.team766.hal.RobotProvider;
6+
import com.team766.hal.MotorController;
7+
import com.team766.hal.EncoderReader;
8+
9+
public class Elevator extends Mechanism{
10+
private MotorController m_elevator;
11+
private EncoderReader m_elevatorEncoder;
12+
13+
public Elevator() {
14+
m_elevator = RobotProvider.instance.getMotor("elevator");
15+
m_elevatorEncoder = RobotProvider .instance.getEncoder("elevator_encoder");
16+
resetEncoder();
17+
18+
}
19+
20+
public void move(double power){
21+
m_elevator.set(power);
22+
}
23+
24+
public double getElevatorDistance(){
25+
return m_elevatorEncoder.getDistance();
26+
}
27+
28+
public void resetEncoder(){
29+
m_elevatorEncoder.reset();
30+
}
31+
32+
}
33+
Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,24 @@
1-
package com.team766.robot.mechanisms;
1+
package com.team766.robot.rookie_bot.mechanisms;
2+
23

34
import com.team766.framework.Mechanism;
4-
import com.team766.hal.SolenoidController;
55
import com.team766.hal.RobotProvider;
6+
import com.team766.hal.SolenoidController;
7+
8+
9+
public class Launcher extends Mechanism {
10+
private SolenoidController pusher;
11+
12+
13+
public Launcher() {
14+
pusher = RobotProvider.instance.getSolenoid("launch");
15+
}
16+
17+
18+
public void setPusher(boolean extended) {
19+
checkContextOwnership();
620

7-
public class Launcher extends Mechanism{
8-
private SolenoidController pusher;
921

10-
public Launcher()
11-
}
22+
pusher.set(extended);
23+
}
24+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package com.team766.robot.rookie_bot.procedures;
2+
3+
import com.team766.framework.Procedure;
4+
import com.team766.controllers.PIDController;
5+
import com.team766.framework.Context;
6+
import com.team766.robot.rookie_bot.Robot;
7+
8+
public class PIDElevator extends Procedure {
9+
double setpoint;
10+
PIDController controller;
11+
12+
public PIDElevator(){
13+
14+
this.setpoint = 1;
15+
}
16+
17+
public void run(Context context){
18+
context.takeOwnership(Robot.elevator);
19+
Robot.elevator.resetEncoder();
20+
21+
controller = new PIDController(0.001, 0, 0.0001, 0, 1, 0.01);
22+
controller.setSetpoint(setpoint);
23+
while (!controller.isDone())
24+
{
25+
controller.calculate(Robot.elevator.getElevatorDistance());
26+
double motor_effort = controller.getOutput();
27+
Robot.elevator.move(motor_effort);
28+
}
29+
Robot.elevator.move(0);
30+
context.yield();
31+
}
32+
}
33+

0 commit comments

Comments
 (0)