In the FIRST Robotics Competition, choosing a manipulator that achieves your team’s strategy goals is crucial to fielding a successful robot.  However, designing and building one is often one of the most challenging aspects of the competition.  Successful teams have learned how to use the engineering design process to produce better results in the short six week build season.  This tutorial will teach you how to use this process to choose, prototype, refine, and implement a manipulator for FRC.  Though this tutorial is about using the engineering design process in FIRST Robotics, a similar process can be applied to any engineering competition.
In industry, the engineering design process is usually a formal series of steps.  In competition robotics, the formality is usually discarded in favor of a faster turnaround time.  There are about as many different implementations of the engineering design process as there are engineers.  In this tutorial, the general process we will follow is illustrated in the opening picture.  In the FIRST Robotics Competition, this circular process is accompanied by the mantra “design is iterative,” as popularized by John V-Neun of Innovation First International.
To fully adopt and successfully implement this iterative approach to design is challenging.  Your team will need to have the motivation to continue working even when you face repeated failure.  You will have to be willing to develop and re-develop a manipulator until you achieve excellence.  Attaining it will not come naturally, only through hard work not just during the build season, but during the rest of the year as well.
Finally, the process you use to implement a manipulator heavily depends on an honest evaluation of your team’s resources.  A team that has access to materials, work time, and experienced people will operate differently than a second year team that is still learning the ins and outs of building a robot and only has several hours per week to work.  Failing to make adjustments appropriate to your team’s capabilities will inevitably result in failure.

The pictures in this tutorial are primarily from my team's (FRC Team 2374) design process for the 2012 FRC game, Rebound Rumble.


Step 1: Develop a Strategy

The first step in designing a successful manipulator is to develop a strategy.  It is important to understand the rules of the game before trying to choose your strategy.  Otherwise, you may waste time developing a strategy that violates the rules.  Most often, a team’s strategy will be a list of robot capabilities.  Many teams also rank the robot features, using a system that labels each capability as a demand, a desire, or a wish.  The example below possible robot capabilities and how they may be ranked:
  • The robot’s max speed is 8 ft/s – Demand
  • The robot’s max speed is 12 ft/s – Desire
  • The robot can shift with max speeds of 7 and 15 ft/s – Wish
As shown in the example, an important step in determining these capabilities is creating specific performance requirements for each feature.  These create a quantifiable goal against which to measure your prototypes’ performance.  Making reasonable estimates for performance requirements can be tricky, because they are often based on experience and intuition, especially for game specific tasks.  In some cases, using physics to determine performance requirements can be beneficial.  For example, teams in 2011 FRC game were able to use information about the allowed motors to determine the minimum possible time for a miniature robot to climb a 10 ft. tall pole.
The final part of developing a strategy is ensuring that it does not overshoot your team’s abilities.  Your team must check that your goals are achievable with your given resources.  If they are not, you must focus on fewer, higher priority objectives rather than spreading your team too thin.
This seems like a very useful tutorial for those interested in competing in the FIRST Robotics Competition. Great detail!
Ah! Deming's PDCA (Plan Do Check Act) to improve performance and effectiveness) Very good!

About This Instructable




Add instructable to: