Go to Post So measure not by the masses, but by the sparks that you generate. - Kims Robot [more]
Home
Go Back   Chief Delphi > Technical > Programming > Java
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #16   Spotlight this post!  
Unread 04-02-2015, 22:49
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,089
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Limit Swtich Help

Quote:
Originally Posted by mmaunu View Post
Ether: I have learned so much from reading your posts and papers over the years. I didn't intend to sound like I was correcting your post but merely adding explicit context for other readers.
Understood. The additional explanation you provided was appropriate and useful. Reps :-)



Last edited by Ether : 04-02-2015 at 22:55.
Reply With Quote
  #17   Spotlight this post!  
Unread 04-02-2015, 22:58
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Electrical/Programming Mentor
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,784
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Limit Swtich Help

Quote:
Originally Posted by curtis0gj View Post
I have setup the limit switch program with the suggestions but I am attempting to setup reverse for the victors. Also I am trying to setup the same if statement layout for my relays does this look okay?
Code:
public class Robot extends SampleRobot {
    RobotDrive robot;
    Joystick stick;
    Joystick xbox;
    Relay spike1;
    Relay spike2;
    Victor victor1;
    Victor victor2;
    DigitalInput limit;
    boolean limitPressed = false;

    public Robot() {
    	robot = new RobotDrive(0, 1);
        stick = new Joystick(1);
        xbox = new Joystick(0);
        spike1 = new Relay(0);
        spike2 = new Relay(1);
        limit = new DigitalInput(4);
        victor1 = new Victor(4);
        victor2 = new Victor(5);
    }
    public void operatorControl() {
    	
    	while (isOperatorControl() && isEnabled()) {
            stick.getThrottle();
            robot.arcadeDrive(stick.getY(), stick.getX());
            limitPressed = limit.get(); //Do I want this out side of my while operator control loop?
            System.out.println("limitPressed=" + limitPressed); //Read the RoboRIO log for some values before you go all out on your motors.
            
            if(limitPressed) {
            	victor1.set(0);
            	victor2.set(0);
            } else if (xbox.getRawButton(4)) {
            	victor1.set(1);
            	victor2.set(1);
            } else {
            	victor1.set(0);
            	victor1.set(0);
            }
            if(xbox.getRawButton(1)) {
            	victor1.set(-1);
            	victor1.set(-1);
            } else {
            	victor1.set(0);
            	victor2.set(0);
            }
            if(xbox.getRawButton(3)) {
            	spike1.set(Relay.Value.kForward);
            	spike2.set(Relay.Value.kForward);
            } else {
            	spike1.set(Relay.Value.kOff);
            	spike2.set(Relay.Value.kOff);            	
            }
            if(xbox.getRawButton(2)) {
            	spike1.set(Relay.Value.kReverse);
            	spike2.set(Relay.Value.kReverse);	
            } else {
            	spike1.set(Relay.Value.kOff);
            	spike2.set(Relay.Value.kOff);
            }    
    	}
    }
The relays look good. In addition to double victor1's which have already been pointed out, consider the effect of pushing buttons 1 and 4 at the same time - you'll oscillate between full speed forward and full speed reverse. It's probably not a big deal, as your driver shouldn't be pushing them both at the same time anyways, but I personally like to prevent that sort of situation. Using some fairly simple logic, you can reduce everything dealing with the victors to a single if/else-if/else block. Something like:
Code:
if ()//the conditions you want it to go up
{
    //go up
}
else if ()//the conditions you want it to go down
{
    //go down
}
else
{
    //stop
}
You can set up the conditionals using the AND (&&) operator, the OR (||) operator, and the not (!). For example, to say "when button 4 is pressed and the limit switch is not pressed", you would do "xbox.getRawButton(4) || !limitPressed". Figuring out how to use logic like this is a very powerful tool while programming!
__________________
2007 - Present: Mentor, 2177 The Robettes
LRI: North Star 2012-2016; Lake Superior 2013-2014; MN State Tournament 2013-2014, 2016; Galileo 2016; Iowa 2017
2015: North Star Regional Volunteer of the Year
2016: Lake Superior WFFA
Reply With Quote
  #18   Spotlight this post!  
Unread 04-02-2015, 23:37
mmaunu's Avatar
mmaunu mmaunu is offline
Registered User
FRC #2485 (W.A.R. Lords)
Team Role: Mentor
 
Join Date: Mar 2013
Rookie Year: 2010
Location: San Diego, CA
Posts: 89
mmaunu is a jewel in the roughmmaunu is a jewel in the roughmmaunu is a jewel in the roughmmaunu is a jewel in the rough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
For example, to say "when button 4 is pressed and the limit switch is not pressed", you would do "xbox.getRawButton(4) || !limitPressed". Figuring out how to use logic like this is a very powerful tool while programming!
Just to clarify for others, the condition would have && instead of ||:
Code:
    xbox.getRawButton(4) && !limitPressed
which is what you said very clearly but we all get noise in our signal sometimes between the brain and the fingers

Reps from Ether! I am showing my students that one!!! You might have a little bit of a fan club here at Team 2485...we seriously owe a lot to you and it is a shame if I haven't said that and "thank you" before (which is probably the case as I am mainly a lurker...but I am working on it).
__________________
2014 Las Vegas (Winners with 987, 2478; Excellence in Engineering)
2014 San Diego (Finalists with 987, 3250; Quality Award)
2013 Inland Empire (Winners with 1538, 968; Excellence in Engineering Award)
2013 San Diego (Finalists with 2984, 4322; Creativity Award)
2012 Las Vegas (Finalists with 2034, 3187; Quality Award)
Reply With Quote
  #19   Spotlight this post!  
Unread 05-02-2015, 06:32
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
The relays look good. In addition to double victor1's which have already been pointed out, consider the effect of pushing buttons 1 and 4 at the same time - you'll oscillate between full speed forward and full speed reverse. It's probably not a big deal, as your driver shouldn't be pushing them both at the same time anyways, but I personally like to prevent that sort of situation. Using some fairly simple logic, you can reduce everything dealing with the victors to a single if/else-if/else block. Something like:
Code:
if ()//the conditions you want it to go up
{
    //go up
}
else if ()//the conditions you want it to go down
{
    //go down
}
else
{
    //stop
}
You can set up the conditionals using the AND (&&) operator, the OR (||) operator, and the not (!). For example, to say "when button 4 is pressed and the limit switch is not pressed", you would do "xbox.getRawButton(4) || !limitPressed". Figuring out how to use logic like this is a very powerful tool while programming!
So when I go to add my second limit switch for the top could I use if(limit || limit2) or do I need a new if statement? Also I have been trying to figure out how to covert my victor buttons to axis would this be the correct way,
if(xbox.getRawAxis(I need to check mapping)) {
victor 1.set(1);
victor2.set(1);
}

Last edited by curtis0gj : 05-02-2015 at 06:46.
Reply With Quote
  #20   Spotlight this post!  
Unread 05-02-2015, 07:52
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Electrical/Programming Mentor
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,784
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Limit Swtich Help

Good catch mmaunu... I can only blame Sleep deprivation from the build season

Curtis, that looks correct for dealing with two limit switches, good job!

If you want to control the victors with axis instead of buttons, you need to pay attention to what the return types are. A button returns a Boolean, true or false, as it only has two states (pressed or not pressed). An axis from a joystick, however, returns a number between -1 and 1, indicating how far it is moved from the center. Treating that number like a Boolean in an if statement won't do what you want. Instead, you have three options:

Option 1 - turn the number into a Boolean value by using a comparison. You can say something like "if(axis > 0)" to indicate that you want to do something if the value of the axis is positive. Other handy comparisons are less than (<), equals (previously discussed, ==), and not equals (!=).

Option 2 - use the axis to give you variable speed control over the motor. By passing the axis directly into the motor, something like "victor1.set(axis)", the motor will go at a speed proportional to how far you move the joy stick, and it'll go both up and done with that one command! Also, if you let go of the joystick, it'll stop

Option 3 - this is kind of a combination of options 1 and 2 by using something called a ternary operator. A ternary operator is kind of like doing an if statement in a single line. An example would be "axis>0?1:0;". You can read this as " if the axis is greater than 0, then use the value 1, otherwise use the value 0". Everything before the question mark is your conditional. Everything between the question mark and the colon is what happens if true, and everything after the colon is what happens when false. So, if we always want the elevator moving at full speed, we could do something like "victor1.set(axis>0?1:axis<0?-1:0);". Here I strung two ternary operators together - if the axis is greater than 0, return 1, otherwise if the axis is less than 0 return -1, otherwise return 0. Many people find ternary operators confusing and non-intuitive, so don't feel bad about going with a more straightforward option!

Finally, a word of warning. Often when you let go of a joystick, it will return to something very close to 0, but not quite there. In all the examples above, I used an absolute 0 value for comparisons, which won't work unless the joystick returns to be perfectly centered! It's a lot better to use a "deadband" around 0 - go up if it's greater than 0.05, go down if less than -0.05, otherwise stop. That way if the joystick is close to center you'll stop.
__________________
2007 - Present: Mentor, 2177 The Robettes
LRI: North Star 2012-2016; Lake Superior 2013-2014; MN State Tournament 2013-2014, 2016; Galileo 2016; Iowa 2017
2015: North Star Regional Volunteer of the Year
2016: Lake Superior WFFA
Reply With Quote
  #21   Spotlight this post!  
Unread 05-02-2015, 08:19
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
Good catch mmaunu... I can only blame Sleep deprivation from the build season

Curtis, that looks correct for dealing with two limit switches, good job!

If you want to control the victors with axis instead of buttons, you need to pay attention to what the return types are. A button returns a Boolean, true or false, as it only has two states (pressed or not pressed). An axis from a joystick, however, returns a number between -1 and 1, indicating how far it is moved from the center. Treating that number like a Boolean in an if statement won't do what you want. Instead, you have three options:

Option 1 - turn the number into a Boolean value by using a comparison. You can say something like "if(axis > 0)" to indicate that you want to do something if the value of the axis is positive. Other handy comparisons are less than (<), equals (previously discussed, ==), and not equals (!=).

Option 2 - use the axis to give you variable speed control over the motor. By passing the axis directly into the motor, something like "victor1.set(axis)", the motor will go at a speed proportional to how far you move the joy stick, and it'll go both up and done with that one command! Also, if you let go of the joystick, it'll stop

Option 3 - this is kind of a combination of options 1 and 2 by using something called a ternary operator. A ternary operator is kind of like doing an if statement in a single line. An example would be "axis>0?1:0;". You can read this as " if the axis is greater than 0, then use the value 1, otherwise use the value 0". Everything before the question mark is your conditional. Everything between the question mark and the colon is what happens if true, and everything after the colon is what happens when false. So, if we always want the elevator moving at full speed, we could do something like "victor1.set(axis>0?1:axis<0?-1:0);". Here I strung two ternary operators together - if the axis is greater than 0, return 1, otherwise if the axis is less than 0 return -1, otherwise return 0. Many people find ternary operators confusing and non-intuitive, so don't feel bad about going with a more straightforward option!

Finally, a word of warning. Often when you let go of a joystick, it will return to something very close to 0, but not quite there. In all the examples above, I used an absolute 0 value for comparisons, which won't work unless the joystick returns to be perfectly centered! It's a lot better to use a "deadband" around 0 - go up if it's greater than 0.05, go down if less than -0.05, otherwise stop. That way if the joystick is close to center you'll stop.
So could I do something like
Code:
axis = Xbox.getRawAxis(someaxis); // Do I need float or double?

if(axis == 1) {
     victor1.set(1);
     victor2.set(1);
}
Sorry if thats way off Im still a bit confused.
Reply With Quote
  #22   Spotlight this post!  
Unread 05-02-2015, 09:19
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Electrical/Programming Mentor
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,784
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Limit Swtich Help

Quote:
Originally Posted by curtis0gj View Post
So could I do something like
Code:
axis = Xbox.getRawAxis(someaxis); // Do I need float or double?

if(axis == 1) {
     victor1.set(1);
     victor2.set(1);
}
Sorry if thats way off Im still a bit confused.
Your getting there! It can be hard to learn this stuff remotely without someone experienced there to help.

Your code is actually really close. Joystick axis values are returned as doubles, but that's a good question! There is often a lot of confusion between float and double, as they appear to be basically the same. In situations like thiszits useful to look at the javadoc For the object your using. A quick search turned up a copy here: http://team2168.org/javadoc/ go there and click on "Joystick" in the class listing on the left. You can then scroll through all of the methods in the joystick class, find the one you're using, get a short description of it, and see its return type. Pretty handy!

With the code you posted, the elevator will go up only if you have the joystick pushed full forward so the return value is 1. Pushing it halfway, so you get 0.5, wouldn't move it. Additionally, if you aren't pushing perfectly straight, you won't get a return value of 1! Take a piece of graph paper, draw a set of axis, and then draw a circle with a radius of 1, centered on the origin. Everything inside that circle is a value that can be returned by the joystick. If you push the joystick forward, you could get 0 for the x axis and 1 for the y axis... Or you could get something just a little less than 1 for the y axis and a little greater or less than 0 for the x axis, if you aren't perfectly straight.

So the only problem with your code is that it demands perfection from the driver to work. It would be much better to do something like "axis > 0.5" (pick an appropriate number) so you have a range on the joystick where pushing it forward makes it move. That way your driver doesn't have to be perfect!
__________________
2007 - Present: Mentor, 2177 The Robettes
LRI: North Star 2012-2016; Lake Superior 2013-2014; MN State Tournament 2013-2014, 2016; Galileo 2016; Iowa 2017
2015: North Star Regional Volunteer of the Year
2016: Lake Superior WFFA
Reply With Quote
  #23   Spotlight this post!  
Unread 05-02-2015, 11:48
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
Your getting there! It can be hard to learn this stuff remotely without someone experienced there to help.

Your code is actually really close. Joystick axis values are returned as doubles, but that's a good question! There is often a lot of confusion between float and double, as they appear to be basically the same. In situations like thiszits useful to look at the javadoc For the object your using. A quick search turned up a copy here: http://team2168.org/javadoc/ go there and click on "Joystick" in the class listing on the left. You can then scroll through all of the methods in the joystick class, find the one you're using, get a short description of it, and see its return type. Pretty handy!

With the code you posted, the elevator will go up only if you have the joystick pushed full forward so the return value is 1. Pushing it halfway, so you get 0.5, wouldn't move it. Additionally, if you aren't pushing perfectly straight, you won't get a return value of 1! Take a piece of graph paper, draw a set of axis, and then draw a circle with a radius of 1, centered on the origin. Everything inside that circle is a value that can be returned by the joystick. If you push the joystick forward, you could get 0 for the x axis and 1 for the y axis... Or you could get something just a little less than 1 for the y axis and a little greater or less than 0 for the x axis, if you aren't perfectly straight.

So the only problem with your code is that it demands perfection from the driver to work. It would be much better to do something like "axis > 0.5" (pick an appropriate number) so you have a range on the joystick where pushing it forward makes it move. That way your driver doesn't have to be perfect!

Will this work?
Code:
double axis = Xbox.getRawAxis(*));

if(axis  > 0.5) {
     victor1.set(1);
     victor2.set(1);

}
Reply With Quote
  #24   Spotlight this post!  
Unread 05-02-2015, 11:54
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Electrical/Programming Mentor
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,784
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Limit Swtich Help

That looks good to me. Give a try, see if it does what your expecting!
__________________
2007 - Present: Mentor, 2177 The Robettes
LRI: North Star 2012-2016; Lake Superior 2013-2014; MN State Tournament 2013-2014, 2016; Galileo 2016; Iowa 2017
2015: North Star Regional Volunteer of the Year
2016: Lake Superior WFFA
Reply With Quote
  #25   Spotlight this post!  
Unread 05-02-2015, 13:06
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
That looks good to me. Give a try, see if it does what your expecting!
Okay thanks for the help so far I will test it tonight.
Reply With Quote
  #26   Spotlight this post!  
Unread 05-02-2015, 16:34
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

I am having a problem where my relay is stuck in forward (showing a green light) or off (showing no light) when I press a button. Here's the code.
Code:
if(xbox.getRawButton(4)) {
            	spike1.set(Relay.Value.kForward);
            	spike2.set(Relay.Value.kForward);
            } else if(xbox.getRawButton(1)) {
            	spike1.set(Relay.Value.kReverse);
            	spike2.set(Relay.Value.kReverse);     
            } else {
            	spike1.set(Relay.Value.kOff);
            	spike2.set(Relay.Value.kOff);            	
            }
    	}
    }
Reply With Quote
  #27   Spotlight this post!  
Unread 05-02-2015, 17:14
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Electrical/Programming Mentor
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,784
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Limit Swtich Help

When I read that, it looks like it says "while button 4 is pushed, go forward. While button 1 is pushed, go in reverse. If neither button is pushed, stop" is that not what's happening? Your description of the behavior isn't really complete to tell us what you want to have happen.

Take a look at the user manual for the spike, found here: http://content.vexrobotics.com/docs/...uide-sep05.pdf

It describes the operation of the LED. It's been a while since my team has used one, but I believe it says kForward is green, kReverse is red, kOff is Orange, kOn is blank.

Double check the wiring and make sure it isn't shorting something when you push button 1, I've seen a short cause the LED to turn off before.
__________________
2007 - Present: Mentor, 2177 The Robettes
LRI: North Star 2012-2016; Lake Superior 2013-2014; MN State Tournament 2013-2014, 2016; Galileo 2016; Iowa 2017
2015: North Star Regional Volunteer of the Year
2016: Lake Superior WFFA
Reply With Quote
  #28   Spotlight this post!  
Unread 05-02-2015, 17:36
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
When I read that, it looks like it says "while button 4 is pushed, go forward. While button 1 is pushed, go in reverse. If neither button is pushed, stop" is that not what's happening? Your description of the behavior isn't really complete to tell us what you want to have happen.

Take a look at the user manual for the spike, found here: http://content.vexrobotics.com/docs/...uide-sep05.pdf

It describes the operation of the LED. It's been a while since my team has used one, but I believe it says kForward is green, kReverse is red, kOff is Orange, kOn is blank.

Double check the wiring and make sure it isn't shorting something when you push button 1, I've seen a short cause the LED to turn off before.
The issue is when I press button 1 one relay goes in reverse and the other goes to kOn (LED BLANK) and when I press button 4 it goes in kForward(GREEN). Also the spike is stuck in kForward because it's always green unlike the other which is yellow.
Reply With Quote
  #29   Spotlight this post!  
Unread 05-02-2015, 17:48
Jon Stratis's Avatar
Jon Stratis Jon Stratis is offline
Electrical/Programming Mentor
FRC #2177 (The Robettes)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Minnesota
Posts: 3,784
Jon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond reputeJon Stratis has a reputation beyond repute
Re: Limit Swtich Help

Double check the orientation of the PWM wire, both in the spikes and in the relay ports on the RoboRio. I have a suspicion that one is plugged in backwards or in the wrong location all together.
__________________
2007 - Present: Mentor, 2177 The Robettes
LRI: North Star 2012-2016; Lake Superior 2013-2014; MN State Tournament 2013-2014, 2016; Galileo 2016; Iowa 2017
2015: North Star Regional Volunteer of the Year
2016: Lake Superior WFFA
Reply With Quote
  #30   Spotlight this post!  
Unread 05-02-2015, 18:02
curtis0gj curtis0gj is offline
Registered User
FRC #5033 (Beavertronics)
Team Role: Programmer
 
Join Date: Jan 2015
Rookie Year: 2015
Location: Canada
Posts: 121
curtis0gj will become famous soon enough
Re: Limit Swtich Help

Quote:
Originally Posted by Jon Stratis View Post
Double check the orientation of the PWM wire, both in the spikes and in the relay ports on the RoboRio. I have a suspicion that one is plugged in backwards or in the wrong location all together.
No I just checked everything looks good the black cable is closest to the edge on the roboRIO and it is facing the correct way on the spike.
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 13:06.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi