Hey guys! I am having trouble coding the solenoid. I want it to be so that whenever I push on the buttons on the top of the Attack 3 joystick, the solenoid opens up. The button labeled 3 on the Attack three opens the solenoid forward and the button 2 opens the solenoid backwards. However, my code does neither of this. In fact, I’m not sure if it’s the code or not, but the air only come out of hole 2 of the solenoid. If you see anything that would be affecting the situation so that it doesn’t work, let me know!
/*----------------------------------------------------------------------------*/
/* Copyright (c) FIRST 2008. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
package edu.wpi.first.wpilibj.templates;
import edu.wpi.first.wpilibj.DoubleSolenoid;
import edu.wpi.first.wpilibj.Jaguar;
import edu.wpi.first.wpilibj.Joystick;
import edu.wpi.first.wpilibj.SimpleRobot;
/**
* The VM is configured to automatically run this class, and to call the
* functions corresponding to each mode, as described in the SimpleRobot
* documentation. If you change the name of this class or the package after
* creating this project, you must also update the manifest file in the resource
* directory.
*/
public class RobotTemplate extends SimpleRobot {
/**
* This function is called once each time the robot enters autonomous mode.
*/
Jaguar lTalon,rTalon;
Joystick throttle;
DoubleSolenoid exampleDouble;
Joystick aimer;
public void autonomous() {
}
/**
* This function is called once each time the robot enters operator control.
*/
public void robotInit(){
lTalon=new Jaguar(3);
rTalon=new Jaguar(4);
throttle=new Joystick(1);
exampleDouble=new DoubleSolenoid(1,2);
}
public void operatorControl() {
while(isOperatorControl() &&isEnabled()){
lTalon.set(-throttle.getZ());
rTalon.set(throttle.getZ());
}
if(aimer.getRawButton(3)){
exampleDouble.set(DoubleSolenoid.Value.kForward);
}
else if(aimer.getRawButton(2)){
exampleDouble.set(DoubleSolenoid.Value.kReverse);
}
else{
exampleDouble.set(DoubleSolenoid.Value.kOff);
}
}
}
/**
* This function is called once each time the robot enters test mode.
*/