Team 1519 - 2016 Code Release (Java)

As always, we on Team 1519 had great aspirations of polishing our code over the summer and fall this year in order to do a fall 2016 code release with some nice, well-commented software.

However, just like last year, the summer came and went with off-season tournaments, demonstrations and some downtime. Our fall was spent on shop training activities, so we never really made the time to clean up the 2016 robot code so that we could post it.

So now, here we are again, the day before kickoff, and all we can share is the code we had in the robot during the competition season - complete with warts, spaghetti, dead code, and all. It also lacks as many comments and design documentation as it should have.

Nonetheless, maybe it will be of help to some other teams. Autonomous remains one of our areas of focus, with programs that allowed us to select different autonomous program pieces to cross 7 of 9 defenses (no sally port or drawbridge), but including the CDF, from any of the 5 defense positions, with various scoring options, and returning to the neutral zone after shooting. We had a prototype two-ball autonomous program which could score both balls, but required at least 5-7 seconds too long. Since we had no hope of trimming that much time off the program, we never completed it. Still impressed by those teams that accomplished the 2-ball auto in the limited time! (Shout out to 195 - the only NE team to do so at NECMP!)

We also aimed the robot to the target in both autonomous and teleop modes using results of vision processing (running on the driver station). The code to control the robot is herein - we employed a “trick” of having the robot move slowly forward or backwards while aiming to allow more precise heading control instead of spinning in place, particularly for a robot with very high traction (8WD with moderately-inflated 8" pneumatic wheels).

We used TalonSRX controllers exclusively. They were great for PID control of the robot’s arm, including switching PID constants on the fly depending upon whether the arm is moving up or down using the “slots” feature of the TalonSRX.

Oh, and the robot’s name was “Lady Launch-a-lot.” If you’d like to see the robot in action, we have an autonomous video montage on YouTube.

Feel free to post questions here or to email or PM me if I don’t seem to be paying attention to this thread during the build season… (184 KB) (10.3 KB) (184 KB) (10.3 KB)