denkbots' 2026 REBUILT Ri3D Robot Requirements

Ri3D REBUILT Robot Requirements

We used the tools discussed in Part 1 – Game Theory to determine our strategy for this season’s game (and game manual). Now we are ready to define our Robot REQuirements (REQ).

Check out our Ri3D Robot Requirements explainer video below:

Requirements

In engineering/business, requirements are the building blocks of a new product.  A requirement is a clearly defined and measurable function of the product. When running development teams with several people in multiple locations, requirements allow everyone to have an understood path forward.

So how do we determine requirements?  Requirements are derived from your and Robot Strategy, guided by your Robot Mission Statement (RMS), and bound by your CONstraints (CON).

Don’t worry, there isn’t going to be a whole other article on constraints, because we already know all of them.  Remember the game manual and all of those numbered rules, like Gn, G27, Rn, etc.?  Each one of those clearly defined and observable rules serve as anti-functions for our robot, by explicitly explaining the things our robot can not do. For the sake of this article, we will highlight a few of the notable constraints for this game below.

  • [CON.R03] A ROBOT’S STARTING CONFIGURATION may not have a FRAME PERIMETER greater than 110 in. (~279 cm) and may not be more than 30 in. (~76 cm) tall
  • [CON.R105] ROBOTS may not extend more than 12 in. (~30 cm) beyond their FRAME PERIMETER.
  • [CON.R106] ROBOTS may not extend beyond their FRAME PERIMETER in more than one direction at a time.

Decisions Decisions Decisions

Before we choose a strategy, we have to decide what we want to accomplish with our robot.

  • Do we want to build a robot that might perform average in the qualifying matches, but will position us to be picked onto a strong Alliance for the Finals?
  • Do we want to build a robot that will best position us to win all of our matches and be a top Alliance Captain?
  • Do we have limited resources and want to build the simplest robot that can give us the highest impact in any given match?

That is up to each team to decide for themselves, as a group. Approach this question realistically, but don’t sell yourself short. Pick an attainable goal and stick to it. For the purposes of this article, we are going to look at our Ri3D build and choose a goal similar to the last bullet in the previous list: We are going to build a robot with limited resources that would be picked to compete in the playoffs.

We will define this goal as our Robot Mission Statement. This term will be the basis of the rest of this article.

Given our models, observations, and Robot Mission Statement; we are going to choose the strategy that allows us to have the largest individual impact on a qualifying match. This means we will evaluate designs for a robot that can most efficiently retrieve and deposit FUEL in the HUB.

Now, we can start defining a few simple REQs immediately. For example, a primary REQs would very simply be:

  • [REQ.02] The Robot shall be capable of depositing FUEL in the HUB.

Notice that we do not say how we are going to deposit FUEL, pickup/transport FUEL, or anything specific.  We are just defining the high level system functionality at this point.  By codifying these initial strategy decisions in REQs, we ensure that all following design decisions are made only to achieve these system functions.  With this approach in mind, we can define our REQs:

  • [REQ.01] The Robot shall be capable of traversing the playing field without breaking.
  • [REQ.02] The Robot shall be capable of depositing FUEL in the HUB.
  • [REQ.03] The Robot shall be capable of collecting FUEL.
  • [REQ.04] The Robot shall be capable of climbing the TOWER.

It is important to note: Because the team got to this point through a set of easy to understand and well defined procedures as a group, moving forward as a unified team is easy and staying focused is more manageable.

With our strategy clearly defined in REQs, we are ready to create our priority list! This is a list of activities that our robot should be able to complete, ranked in order of importance. The purpose of this list is to focus our design and prototyping efforts, ensuring that we can create a competent robot before adding additional functionality.

  1. Move
  2. Shoot into the HUB
  3. Intake FUEL from the ground
  4. Climb LEVEL 1 of the TOWER
  5. Store large quantities (>24) of FUEL.
  6. Traverse the TRENCH.
  7. Climb LEVEL 2 of the TOWER.
  8. Climb LEVEL 3 of the TOWER.

Note that not every available action you could take is on this list. For example, we have decided that in order to complete our goals, we do not need to feed fuel to the HUMAN PLAYER through the CORRAL. Therefore, it does not make our priority list.

We intentionally made this list longer than we believe we can accomplish for this Robot in 3 Days. This allows us to have something to stretch towards, without losing sight of our main requirements. Depending on how much time and experience you have, you may have a longer priority list, but never lose sight of the most important items.

Summary

So how does this method of robot design help a team? By using an inclusive and objective process that brings in all team members to define a clear path forward, a team is much less likely to waste time arguing about the overall design of the robot or lose time due to confusion about the robot’s objective.

By clearly codifying the robot objectives in well defined and measurable Robot Requirements, mentors and students are much less likely to get distracted or lose focus when designing/building subsystems to help the robot achieve those requirements.

So where do we go from here? Time to take the limiters off and start looking at what types of physical systems will accomplish our priorities! Check out our next article: Part 3 – Design Elements and Prototypes for more fun!

stay denk friends

If you want to learn more about this process, check out our presentation from the 2018 Purdue FIRST Forums on Robot Requirements!

Please feel free to join the conversation on our Facebook or Bluesky with your questions, thoughts, and feedback on these articles!

Before you go, make sure you check the weather and dress appropriately!

Leave a Reply