Update that does not currently work

Work on shuffleboard integration
This commit is contained in:
Astatin3
2023-02-16 19:46:21 -07:00
parent 363a211a1b
commit 012c8a2e2d
6 changed files with 41 additions and 14 deletions
+15
View File
@@ -5,6 +5,15 @@
} }
}, },
"NetworkTables": { "NetworkTables": {
"Persistent Values": {
"open": false
},
"Retained Values": {
"open": false
},
"Transitory Values": {
"open": false
},
"retained": { "retained": {
"apriltag": { "apriltag": {
"open": true "open": true
@@ -55,6 +64,12 @@
}, },
"open": true "open": true
}, },
"shuffleboard": {
"Subscribers": {
"open": true
},
"open": true
},
"visible": true "visible": true
} }
} }
+1 -1
View File
@@ -139,6 +139,6 @@ public final class Constants {
public static final int XBOX_DRIVER_ID = 0; public static final int XBOX_DRIVER_ID = 0;
public static final int XBOX_OPERATOR_ID = 1; public static final int XBOX_OPERATOR_ID = 1;
public static final double LEFT_AXIS_DEADBAND = 0.04; public static final double LEFT_AXIS_DEADBAND = 0.04;
public static final boolean SKEW_STICKS = false; public static final boolean SKEW_STICKS = false; // TODO: find the actual value
} }
} }
+12 -3
View File
@@ -15,7 +15,10 @@ import edu.wpi.first.wpilibj.TimedRobot;
import edu.wpi.first.wpilibj2.command.Command; import edu.wpi.first.wpilibj2.command.Command;
import edu.wpi.first.wpilibj2.command.CommandScheduler; import edu.wpi.first.wpilibj2.command.CommandScheduler;
import frc4388.utility.RobotTime; import frc4388.utility.RobotTime;
import frc4388.robot.subsystems.Vision;
import frc4388.robot.subsystems.Location;
import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard;
/** /**
* The VM is configured to automatically run this class, and to call the * The VM is configured to automatically run this class, and to call the
@@ -30,7 +33,7 @@ public class Robot extends TimedRobot {
private RobotTime m_robotTime = RobotTime.getInstance(); private RobotTime m_robotTime = RobotTime.getInstance();
private RobotContainer m_robotContainer; private RobotContainer m_robotContainer;
//private Vision Apriltag = new Vision(); private Location location = new Location();
/** /**
@@ -61,7 +64,13 @@ public class Robot extends TimedRobot {
// block in order for anything in the Command-based framework to work. // block in order for anything in the Command-based framework to work.
CommandScheduler.getInstance().run(); CommandScheduler.getInstance().run();
//final Object[] apriltagPos = Apriltag.getApriltagLocation(); // Call position and rotation reorder
location.reoderPrio();
final Object[] pos = location.getPosition();
if (pos != null) {
SmartDashboard.putNumber("name", (Double) pos[0]);
}
//ystem.out.print(apriltagPos[0]); //ystem.out.print(apriltagPos[0]);
} }
@@ -11,10 +11,16 @@ public class Apriltags {
public Object[] getApriltagPosition() { public Object[] getApriltagPosition() {
final var tagTable = NetworkTableInstance.getDefault().getTable("apriltag"); final var tagTable = NetworkTableInstance.getDefault().getTable("apriltag");
// return new Object[] {true,
// tagTable.getEntry("TagPosX"),
// tagTable.getEntry("TagPosY"),
// tagTable.getEntry("TagPosZ")
// };
return new Object[] {true, return new Object[] {true,
tagTable.getEntry("TagPosX"), 1,
tagTable.getEntry("TagPosY"), 2,
tagTable.getEntry("TagPosZ") 3
}; };
} }
@@ -30,6 +36,7 @@ public class Apriltags {
public boolean isAprilTag() { public boolean isAprilTag() {
final var tagTable = NetworkTableInstance.getDefault().getTable("apriltag"); final var tagTable = NetworkTableInstance.getDefault().getTable("apriltag");
return tagTable.getEntry("IsTag").getBoolean(false); // return tagTable.getEntry("IsTag").getBoolean(false);
return true;
} }
} }
@@ -15,17 +15,13 @@ public class Location {
} }
public Object[] getPosition() { public Object[] getPosition() {
Object[] Position = {};
if(isLimelight){ if(isLimelight){
//Return Limelight Position //Return Limelight Position
}else if(isApriltag){ }else if(isApriltag){
return Apriltag.getApriltagPosition(); return Apriltag.getApriltagPosition();
}else{
//Return odometry Position, last resort
} }
return Position; return null;
} }
public Object[] getRotation() { public Object[] getRotation() {
@@ -28,7 +28,7 @@ public class SwerveDrive extends SubsystemBase {
private SwerveDriveKinematics kinematics = new SwerveDriveKinematics(leftFrontLocation, rightFrontLocation, leftBackLocation, rightBackLocation); private SwerveDriveKinematics kinematics = new SwerveDriveKinematics(leftFrontLocation, rightFrontLocation, leftBackLocation, rightBackLocation);
// private SwerveDriveOdometry odometry = new SwerveDriveOdometry( // private SwerveDriveOdometry odometry = new SwerveDrive(
// kinematics, // kinematics,
// gyro.getRotation2d(), // gyro.getRotation2d(),
// new SwerveModulePosition[] { // new SwerveModulePosition[] {