mirror of
https://github.com/Team4388/2023WayOfTheRobot.git
synced 2026-06-08 16:28:00 -06:00
Update that does not currently work
Work on shuffleboard integration
This commit is contained in:
+15
@@ -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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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[] {
|
||||||
|
|||||||
Reference in New Issue
Block a user