I’m originally a java programmer, but I’ve taken on Labview since this past last year. I’m trying to make a code that will assign a value of 0 when a button ( button 1) is pressed and then change that value into a 1. When the button is then pressed again the value is changed back into a 0.
This code is for a claw that will open and close. Any advice, help, or screenshots?
int x=reader.nextInt(); // takes value of pressing the claw button
while (y==1) //the robot is turned on
{
if(x==-1)
{
claw=0; //open position
}
else(x==0)
{
claw=1; //close position
}
x=reader.nextInt(); //checks the next value of the claw button
y=OnOrOff.nextInt() //checks if robot is on or off
}
As the example stands the green output alternates between a 1 or 0. You can eliminate the inside Case statement if you don’t put anything inside it.
If you want a real number output use “Boolean To (0,1)” located on the boolean palette.
If the claw is solenoid operated you can just stick the activate inside the toggle where indicated and use this in Teleop.
A motor operated claw would require a longer cycle, but could be used, as is, inside Periodic Tasks or Autonomous Independent, not in Teleop.
To make an else if statement, you just go to the false case of the case structure and put another case structure inside that.
There are also other ways to do it, like taking all your inputs and making them into a number (with a boolean array to number function, if you’re interested) and wiring that one number to the structure. However, it’s easiest (although ugliest) to just nest the case structures.