Started work on subsystems
This commit is contained in:
parent
f07655877e
commit
88aea5ac14
|
|
@ -48,7 +48,7 @@ public class DriveSubsystem extends TestableSubsystem {
|
||||||
.withSteerKI(steerI)
|
.withSteerKI(steerI)
|
||||||
.withSteerKD(steerD)
|
.withSteerKD(steerD)
|
||||||
.withSteerKV(steerKV)
|
.withSteerKV(steerKV)
|
||||||
.withSteerOffset(0.359375)
|
.withSteerOffset(1.752197)
|
||||||
.withSteerEncoderId(10)
|
.withSteerEncoderId(10)
|
||||||
.withModuleLocation(new Translation2d(1, 1))
|
.withModuleLocation(new Translation2d(1, 1))
|
||||||
.withModuleName("Front Left")
|
.withModuleName("Front Left")
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,61 @@
|
||||||
|
// Copyright (c) FIRST and other WPILib contributors.
|
||||||
|
// Open Source Software; you can modify and/or share it under the terms of
|
||||||
|
// the WPILib BSD license file in the root directory of this project.
|
||||||
|
|
||||||
|
package frc.robot.subsystems;
|
||||||
|
|
||||||
|
import org.fairportrobotics.frc.posty.TestableSubsystem;
|
||||||
|
import org.fairportrobotics.frc.posty.test.PostTest;
|
||||||
|
import static org.fairportrobotics.frc.posty.assertions.Assertions.*;
|
||||||
|
|
||||||
|
import edu.wpi.first.wpilibj2.command.Command;
|
||||||
|
|
||||||
|
public class HopperSubsystem extends TestableSubsystem {
|
||||||
|
|
||||||
|
/** Creates a new ExampleSubsystem. */
|
||||||
|
public HopperSubsystem() {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Example command factory method.
|
||||||
|
*
|
||||||
|
* @return a command
|
||||||
|
*/
|
||||||
|
public Command exampleMethodCommand() {
|
||||||
|
// Inline construction of command goes here.
|
||||||
|
// Subsystem::RunOnce implicitly requires `this` subsystem.
|
||||||
|
return runOnce(
|
||||||
|
() -> {
|
||||||
|
/* one-time action goes here */
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An example method querying a boolean state of the subsystem (for example, a digital sensor).
|
||||||
|
*
|
||||||
|
* @return value of some boolean subsystem state, such as a digital sensor.
|
||||||
|
*/
|
||||||
|
public boolean exampleCondition() {
|
||||||
|
// Query some boolean state, such as a digital sensor.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void periodic() {
|
||||||
|
// This method will be called once per scheduler run
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void simulationPeriodic() {
|
||||||
|
// This method will be called once per scheduler run during simulation
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostTest(name = "A friendly name", enabled = true)
|
||||||
|
public void myFailingPostTest(){
|
||||||
|
assertThat(true).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostTest(enabled = true)
|
||||||
|
public void myPassingPostTest(){
|
||||||
|
assertThat("Hello World").endWith("World");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,86 @@
|
||||||
|
// Copyright (c) FIRST and other WPILib contributors.
|
||||||
|
// Open Source Software; you can modify and/or share it under the terms of
|
||||||
|
// the WPILib BSD license file in the root directory of this project.
|
||||||
|
|
||||||
|
package frc.robot.subsystems;
|
||||||
|
|
||||||
|
import org.fairportrobotics.frc.posty.TestableSubsystem;
|
||||||
|
import org.fairportrobotics.frc.posty.test.PostTest;
|
||||||
|
|
||||||
|
import com.ctre.phoenix6.hardware.TalonFX;
|
||||||
|
|
||||||
|
import static org.fairportrobotics.frc.posty.assertions.Assertions.*;
|
||||||
|
|
||||||
|
import edu.wpi.first.wpilibj.DigitalInput;
|
||||||
|
import edu.wpi.first.wpilibj.DigitalOutput;
|
||||||
|
import edu.wpi.first.wpilibj2.command.Command;
|
||||||
|
|
||||||
|
public class IntakeSubsystem extends TestableSubsystem {
|
||||||
|
/** Creates a new ExampleSubsystem. */
|
||||||
|
public IntakeSubsystem() {}
|
||||||
|
DigitalOutput LinearActuator = new DigitalOutput(0);
|
||||||
|
boolean deployed = false;
|
||||||
|
TalonFX rollers = new TalonFX(0);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Example command factory method.
|
||||||
|
*
|
||||||
|
* @return a command
|
||||||
|
*/
|
||||||
|
public Command exampleMethodCommand() {
|
||||||
|
// Inline construction of command goes here.
|
||||||
|
// Subsystem::RunOnce implicitly requires `this` subsystem.
|
||||||
|
return runOnce(
|
||||||
|
() -> {
|
||||||
|
/* one-time action goes here */
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An example method querying a boolean state of the subsystem (for example, a digital sensor).
|
||||||
|
*
|
||||||
|
* @return value of some boolean subsystem state, such as a digital sensor.
|
||||||
|
*/
|
||||||
|
public boolean exampleCondition() {
|
||||||
|
// Query some boolean state, such as a digital sensor.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void periodic() {
|
||||||
|
// This method will be called once per scheduler run
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void simulationPeriodic() {
|
||||||
|
// This method will be called once per scheduler run during simulation
|
||||||
|
}
|
||||||
|
|
||||||
|
public void intake(int value)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void actuatorToggle()
|
||||||
|
{
|
||||||
|
|
||||||
|
LinearActuator.set(!deployed);
|
||||||
|
deployed = !deployed;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean getDeployed()
|
||||||
|
{
|
||||||
|
return deployed;
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostTest(name = "A friendly name", enabled = true)
|
||||||
|
public void myFailingPostTest(){
|
||||||
|
assertThat(true).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostTest(enabled = true)
|
||||||
|
public void myPassingPostTest(){
|
||||||
|
assertThat("Hello World").endWith("World");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,61 @@
|
||||||
|
// Copyright (c) FIRST and other WPILib contributors.
|
||||||
|
// Open Source Software; you can modify and/or share it under the terms of
|
||||||
|
// the WPILib BSD license file in the root directory of this project.
|
||||||
|
|
||||||
|
package frc.robot.subsystems;
|
||||||
|
|
||||||
|
import org.fairportrobotics.frc.posty.TestableSubsystem;
|
||||||
|
import org.fairportrobotics.frc.posty.test.PostTest;
|
||||||
|
import static org.fairportrobotics.frc.posty.assertions.Assertions.*;
|
||||||
|
|
||||||
|
import edu.wpi.first.wpilibj2.command.Command;
|
||||||
|
|
||||||
|
public class ShooterSubsystem extends TestableSubsystem {
|
||||||
|
|
||||||
|
/** Creates a new ExampleSubsystem. */
|
||||||
|
public ShooterSubsystem() {}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Example command factory method.
|
||||||
|
*
|
||||||
|
* @return a command
|
||||||
|
*/
|
||||||
|
public Command exampleMethodCommand() {
|
||||||
|
// Inline construction of command goes here.
|
||||||
|
// Subsystem::RunOnce implicitly requires `this` subsystem.
|
||||||
|
return runOnce(
|
||||||
|
() -> {
|
||||||
|
/* one-time action goes here */
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An example method querying a boolean state of the subsystem (for example, a digital sensor).
|
||||||
|
*
|
||||||
|
* @return value of some boolean subsystem state, such as a digital sensor.
|
||||||
|
*/
|
||||||
|
public boolean exampleCondition() {
|
||||||
|
// Query some boolean state, such as a digital sensor.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void periodic() {
|
||||||
|
// This method will be called once per scheduler run
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void simulationPeriodic() {
|
||||||
|
// This method will be called once per scheduler run during simulation
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostTest(name = "A friendly name", enabled = true)
|
||||||
|
public void myFailingPostTest(){
|
||||||
|
assertThat(true).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostTest(enabled = true)
|
||||||
|
public void myPassingPostTest(){
|
||||||
|
assertThat("Hello World").endWith("World");
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue