View Single Post
  #3   Spotlight this post!  
Unread 16-02-2015, 16:29
Ozuru's Avatar
Ozuru Ozuru is offline
It's always the programmer's fault.
no team
 
Join Date: May 2013
Rookie Year: 2010
Location: Earth
Posts: 268
Ozuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to beholdOzuru is a splendid one to behold
Re: PID Subsystem -- Align With Tote

Quote:
Originally Posted by cstelter View Post
We did something similar to drive to the low goal 2 years ago. I think the best avenue is a PID command although you may only need to apply P.

We had a gyro and had the PID follow a setpoint while driving forward.

Code:
returnPIDInput() {
    return gyro.getAngle();
}

usePIDOutput(double output) {
    driveTrain.tankDrive(m_speed+output, m_speed-output);
}
So you begin driving at some intended speed (say 0.5) and an angle you want to maintain (say 0.0).

Eventually you get a picture that says you're 50 pixels off center and perhaps that calculates to a new angle of +10 degrees, so in your execute() of your PIDCommand, you observe this and do setSetpoint(10) (change to 10 degrees) and your pid starts applying the resulting output incrementally above your base speed to rotate your robot while it continues to move forward.

The picture data constantly updates the angle.

We haven't done vision yet this year (many new students-- way behind)-- but the above will only drive you to the center of the tote. when you get there, you may be at an angle to the tote, depending on your starting point, etc. but if you know you are pretty much lined up to begin with the above should keep you on target.

Generally the gyro data comes a lot quicker than the camera data which is why we chose to drive along a gyro angle and update tangle relative to the gyro as often as we acquired a new picture.
Thank you for all of that. If you want help with vision tracking this year, let me know. The gyroscope angle is an interesting idea -- it seems this competition that it may just be easier to use a gyro for that.
Reply With Quote