I thought I would post a “Post Worlds” reveal of the teams programming skills runs with their robot “Theta”. The students didn’t get all the bugs worked out at Worlds with the fields there and all the new sacks that were being used. The team had several runs of 230 points and at least 2 runs of 240 points on the practice fields just before we loaded up to travel to worlds. I have attached a video of a 225 point run where 3 sacks fell off the trough in the last seconds. Just thought some of you might enjoy watching.http://www.youtube.com/watch?v=TUmyI8DoeQE
It was awesome to see this run develop over the course of the season. It has always been a huge pleasure to work with you guys in the past 3 years as you really know how to get stuff done, and are amazing people. Great job!
Thank you. At first we did reposition the robot as it crossed the second tile, but we found that it was faster and just as accurate to have it drive straight through. We just drop the bags in as it passes by. We use 13 different sensors not including the LCD screen buttons: 3 potentiometers, 4 line-followers, 1 gyro-sensor, 3 ultrasonics, and 2 quad-encoders (not the integrated ones). We use most of them for this run; I think we only used two of the ultrasonics. We actually found that our program was more effective than driving, so we automated routines that we could execute during the matches. Not sure our drivers used them though… oh well.
They used RobotC. I’d also like to see the code, because even though i had it explained a couple times, it is pretty difficult to understand without an actual example…
We actually have been debating about whether or not to give out our code. The only other person to display their code was Josh Wade and that was after he graduated. Our programming is one of the things that makes our robots unique and we would not like it copied but we also want to be helpful and hopefully inspire others to expand their programming arsenal. So all that is still up for debate. This is a topic that has not come up very often on the forum.
The thing is, those with the ability to understand the code don’t need it, we can write our own. Those that can’t write this level of code won’t understand it anyway. Hardly anyone downloads most of the code I post.
Joking aside that run was truly amazing. It was great fun competing against you guys for programming skills at Nationals - glad you got your 200+ score at Worlds.
I have a few (possibly stupid) questions if you don’t mind:
I noticed the shovel “bounces” after picking up sacks - is that backlash or is there an advantage to it?
In the middle, it appears you used line following (unless my eyes decieve me) Did you have any issues with different lighting conditions at different events or was it not enough to affect the run? Also, did you use any sort of PID line following or just straight-up 3-step?
We used to use mecanum wheels, but we ran into issues with strafing straight. Did you use a gyro or line following or something to keep it straight or was it just straight enough on its own?
Finally, did you use any sort of error correction (like scoring and hoping for the best if you get caught, etc) or was it reliable enough to trust that the parts beforehand would work?
I believe that is the PID controller. We needed the kp high for the speed of flipping in the sacks.
Yes, we used line following (PID). We started using it after nationals, if I remember correctly, so we only used it at the world championship. The lighting there was fine.
EDIT: Forgot a little bit…
We made the front wheels go slightly slower and it corrects with gyro. Also, our robot’s center of gravity is quite centered.
We check on lines to get our absolute position. For example, when crossing the center, the robot watches for the middle line. During our run at nationals, it tried dumping where the high goal post was (with just encoder).
We never got it to score over 200 at worlds, which was frustrating to say the least, and the main reason for this posting. 190 was our highest but we had gotten much higher consistently on our field. The good thing about skills is you’re wholly responsible for your outcome, but the bad part is you’re wholly responsible for your outcome.
I have laughingly agree with this. Most of the help you give us leaves us baffled the day we see it. It’s usually a couple of day’s later after we quit thinking about it that it makes sense. I would have to read 3018’s code a dozen times and wait a few day’s for the light to go on. Most of the advance code is helpful for those who get it right off the bat, but for the rest of us it is a good learning tool if we really want to take the time to understand it. With 20 years of cob webs on my programming skills nothing comes as fast as it used to. I do think a lot of what is posted inspires others to learn though!