54 lines
1.8 KiB
Java
54 lines
1.8 KiB
Java
// 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 edu.wpi.first.wpilibj2.command.SubsystemBase;
|
|
import edu.wpi.first.net.PortForwarder;
|
|
import edu.wpi.first.networktables.NetworkTable;
|
|
import edu.wpi.first.networktables.NetworkTableEntry;
|
|
import edu.wpi.first.networktables.NetworkTableInstance;
|
|
import edu.wpi.first.wpilibj.shuffleboard.Shuffleboard;
|
|
import edu.wpi.first.wpilibj.shuffleboard.ShuffleboardTab;
|
|
|
|
public class Limelight3G extends SubsystemBase {
|
|
ShuffleboardTab dashboard = Shuffleboard.getTab("dashboard");
|
|
NetworkTable table = NetworkTableInstance.getDefault().getTable("limelight");
|
|
NetworkTableEntry tx = table.getEntry("tx");
|
|
NetworkTableEntry ty = table.getEntry("ty");
|
|
NetworkTableEntry pipeline = table.getEntry("pipeline");
|
|
NetworkTableEntry tv = table.getEntry("tv");
|
|
NetworkTableEntry camMode = table.getEntry("camMode");
|
|
NetworkTableEntry tid = table.getEntry("tid");
|
|
|
|
/** Creates a new Limelight. */
|
|
public Limelight3G() {
|
|
dashboard.addDouble("tv", this::getv).withSize(0, 0).withPosition(1,3);
|
|
for (int port = 5800; port <= 5807; port++) {
|
|
PortForwarder.add(port, "limelight.local", port);
|
|
}}
|
|
public double getx(){
|
|
return tx.getDouble(0);
|
|
}
|
|
public double gety(){
|
|
return ty.getDouble(0);
|
|
}
|
|
public double getv(){
|
|
return tv.getDouble(0);
|
|
}
|
|
public void setpipeline(){
|
|
pipeline.setNumber(0);
|
|
}
|
|
public void setcamMode(){
|
|
camMode.setNumber(0);
|
|
}
|
|
public double getTid(){
|
|
return tid.getDouble(0);
|
|
}
|
|
@Override
|
|
public void periodic() {
|
|
// This method will be called once per scheduler run
|
|
}
|
|
}
|