From 636cf0465605d9dd482e1fb75f8b81e509703403 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sat, 16 Jan 2016 11:28:27 -0500 Subject: rename to robot2016 --- src/org/usfirst/frc/team4272/robot2016/Teleop.java | 64 ++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 src/org/usfirst/frc/team4272/robot2016/Teleop.java (limited to 'src/org/usfirst/frc/team4272/robot2016/Teleop.java') diff --git a/src/org/usfirst/frc/team4272/robot2016/Teleop.java b/src/org/usfirst/frc/team4272/robot2016/Teleop.java new file mode 100644 index 0000000..4bc1b46 --- /dev/null +++ b/src/org/usfirst/frc/team4272/robot2016/Teleop.java @@ -0,0 +1,64 @@ +package org.usfirst.frc.team4272.robot2016; + +import org.usfirst.frc.team4272.robotlib.ToggleButton; +import org.usfirst.frc.team4272.robotlib.PushButton; +import org.usfirst.frc.team4272.robotlib.Xbox360Controller.Axis; +import org.usfirst.frc.team4272.robotlib.Xbox360Controller.Button; + +import edu.wpi.first.wpilibj.Joystick; +import edu.wpi.first.wpilibj.Relay; + +public class Teleop { + private ToggleButton grabButton = new ToggleButton(); + private ToggleButton pushButton = new ToggleButton(); + private PushButton camButton = new PushButton(); + + public Teleop() { + } + + private static double jsScale(Joystick j) { + double y = -j.getY();/* +:forward; -:backward */ + double z = -j.getZ();/* +:more-sensitive; -:less-sensitive */ + return Math.copySign(Math.pow(Math.abs(y), 2.0-z), y); + } + + public Control run(Control control, HwOI oi) { + /* Drive */ + control.lDrive = jsScale(oi.lStick); + control.rDrive = jsScale(oi.rStick); + /* Winch */ + control.winch = oi.xbox.getAxis(Axis.LY ) * -1;/* up is neg, down is pos */ + if (Math.abs(control.winch) < 0.1) { control.winch = 0; } + + /* left intake */ + if (oi.xbox.getButton(Button.LB)) { + control.lIntake = Relay.Value.kReverse; + } else if (oi.xbox.getAxis(Axis.LT) > 0.75) { + control.lIntake = Relay.Value.kForward; + } else { + control.lIntake = Relay.Value.kOff; + } + + /* right intake */ + if (oi.xbox.getButton(Button.RB)) { + control.rIntake=(Relay.Value.kReverse); + } else if (oi.xbox.getAxis(Axis.RT) > 0.75) { + control.rIntake=(Relay.Value.kForward); + } else { + control.rIntake=(Relay.Value.kOff); + } + + control.grab = grabButton.update(oi.xbox.getButton(Button.A)); + control.push = pushButton.update(oi.xbox.getButton(Button.B)); + + if (camButton.update(oi.xbox.getButton(Button.RT))) { + try { + ProcessBuilder pb = new ProcessBuilder("/home/lvuser/tweeterbot/bin/snapPhoto"); + pb.redirectErrorStream(true); + pb.start(); + } catch (Exception e) {}; + } + + return control; + } +} -- cgit v1.2.3