View Single Post
  #6   Spotlight this post!  
Unread 29-03-2015, 15:32
engunneer's Avatar
engunneer engunneer is online now
Alumni turned Mentor
AKA: Branden Gunn
FRC #4761
Team Role: Mentor
 
Join Date: Jan 2007
Rookie Year: 1996
Location: Reading, MA
Posts: 817
engunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond reputeengunneer has a reputation beyond repute
Re: Updating Speed Using Ultrasonic Sensors

In addition to everyone else's suggestions, the problem you are having is mostly from the structure of your if statement
Code:
if(sonar.getRangeInches() < 40) {
            driveTrain.setSensitivity(0.5)
          elseif(sonar.....<30){
            driveTrain.setSensitivty(0.25)......
remember that if an if statement returns true, the other elses aren't always evaluated
What you wrote
Code:
If it's <40, then do something
If it's not <40 but is <30, do something else (this can't happen!)
try instead building from one direction to the other
Code:
if(sonar.getRangeInches() >= 40) 
{
            driveTrain.setSensitivity(1);
}
else if(sonar.....>= 30)
{
            driveTrain.setSensitivity(0.5);
}
else /*if(sonar.....< 30)*/
{
            driveTrain.setSensitivty(0.25);
}
you can also do it mathematically (y=mx+b)
Code:
driveTrain.setSensitivty(sonar.getRangeInches() / 40)
__________________
Student FRC23 (1996-1999), Mentor FRC246 (2000), Mentor FRC1318 (2007-2009), Mentor FRC93 (2011), Mentor FRC2151 (2012), Mentor FRC23 (2013), Mentor FRC4761 (2014-2017)
1998 - National Chairman's Award and Woodie Flowers Award (FRC23, Mike Bastoni ) | 2007 - PNW SF (488, 1595) | 2008 - Oregon RCA - Seattle #2 Seed, SF (488, 1696) | 2009 - Oregon #1 Seed, Winners (1983, 2635) - Seattle SF (945, 2865) - Galileo #2 Seed, SF (973, 25) | 2012 Midwest F (111, 71) | 2014 RIDE Winners (78, 125), Inspector - NEU #24, QF (3479, 3958) - NECMP #35 | 2015 Reading #11, SF (1058, 190), Inspector - RIDE #17, QF(4055, 5494), Inspector - NECMP #57 | 2016 Reading #4, SF (133, 4474), DCA, Inspector - Ride #22, SF (1735, 2067), Creativity, Inspector - NECMP #48, RCA - Archimedes
Reply With Quote