View Single Post
  #2   Spotlight this post!  
Unread 18-05-2011, 16:26
Tom Bottiglieri Tom Bottiglieri is offline
Registered User
FRC #0254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Jan 2004
Rookie Year: 2003
Location: San Francisco, CA
Posts: 3,186
Tom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond reputeTom Bottiglieri has a reputation beyond repute
Re: paper: NUTRONs Robot Software 2011

Hi all,

I heard a cool story this year at the Championship about how Wildstang used elements from the Cheesy Poofs Software I published last year in their 2011 robot (and then the teams won together! Woah! ). I thought this story really showed a neat aspect of sharing code source, so I figured in that spirit I would post my team's software from this year.

The code was developed by our programming student Ziv and myself, and borrowed a few algorithms from last years Team 254 code, originally developed by Austin Schuh for teams 254/971.

Quote:
Originally Posted by White Paper Description
This is the software used for our team's Logomotion entry. It was programmed using Java. This was my (and the teams) first major Java project, so we had to learn the language as we developed. That being said, I think we did a good job. The team won the Innovation in Control award for a double tube scoring autonomous mode and other control features.

We used a very object oriented design and tried to avoid state machines whenever possible. The idea was that each mechanism of the robot (elevator, autonomous, etc) should be able to be commanded, and the commands should decide what the robot does rather than the robot deciding what to do based on the command.

The elevator and drive were simulated in code so all of the control logic was built and tested before the code ever touched the robot. All we had to do once the robot was built was drop the code and tune PID gains. This was AMAZING!

Features
- Scriptable Autonomous Mode
- Architecture for in-code robot mechanism simulation
- Amazing control of a 18 ft/s drive base using CheesyDrive
- Automatic minibot deployment
- Precise control of an 8 ft/s elevator
- Roller claw with automatic tube acquiring

Feel free to ask any questions or post comments. I'd love to hear some feedback from seasoned Java devs to help improve for next year.

Last edited by Tom Bottiglieri : 18-05-2011 at 16:43.
Reply With Quote