View Single Post
  #14   Spotlight this post!  
Unread 21-04-2016, 19:27
sysdes sysdes is offline
Engineering Mentor
AKA: Maurice Veldhuis
FRC #4678 (CyberCavs)
Team Role: Mentor
 
Join Date: Dec 2014
Rookie Year: 2013
Location: Drayton, Ontario
Posts: 9
sysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant futuresysdes has a brilliant future
Re: Predictions for Season High Score

Quote:
Originally Posted by EmileH View Post
Check out 4678. Their Sally Port/Drawbridge mechanism isn't that different from other teams' but the software makes all the difference:

http://watchfirstnow.com/archives/162638135
Very true. The programming of our sally port and draw bridge crossing is actually based on the code that 254 posted on their impressive, smooth and precise drive train motion control. We studied how they managed fairly complex motion like their auto in 2014 that allowed them to park up against the low goal before tossing the ball into the target to guarantee they couldn't be defended against.

Thanks to their willingness to share how they did it, we came to realize that the motion control profiles they described did not need to be restricted to just the drive train motors. Our Sally Port and Drawbridge crossings are pretty much automatic (in teleop, the operator just has to hold down a button as the programming goes through the motions). We use a system similar to their drive train motion profiling but we add in the 2 axes of our arm to go along with the motion of the drive train. To program the motion, we took our robot and placed it in front the defense. We manually put the arm into the starting position, recorded the encoder values and then moved the arm to what appeared to be a good "next position". We did this several times and recorded encoder values of the arm and the drive train encoders until we had moved the robot completely through the defense. Then we created code that would interpolate the encoder positions based on time and we just feed new position values to the Talon SRXs for the arm joints and do a similar position control of the drive train (using Victor SP's) at approximately 50 times per second. There are plenty of videos of the results.

Thanks again to team 254 for sharing their valuable insights (and code) on how to get the most out of the robots we build.
Reply With Quote