Our Robots

2015 Robot

2015 robot

Our robot was designed with the following priorities in mind:

  • Drive - We decided this was the most important task we could perform in the game, which consisted of quick and versatile movement
  • Stacking Totes - The second crucial function of the robot is to lift and stack totes in a quick and controlled fashion
  • Container Retrieving - Our next essential goal was to control the middle recycling containers. This is because of the high score potential and the possibility that the other alliance may take them.


Long orientation chassis, welded from 2”x1” extruded aluminum tubing (Dimensions: 27.5” x 41.5”)

6-wheel slide drive design

6 omni-wheel, 4 in forward direction and 2 in sideways direction

Driven with #25 roller chain by 2 CIM motors per single-speed AndyMark Toughbox Gearboxes for a total of four CIMs

Tote Manipulation

Our robot has two subsystems working together to grab, lift, and place totes on a stack and scoring platform. There is a tote grabbing mechanism and an elevator.

Tote Grabber

Our grabbing mechanism was designed so we can pick up totes and containers quickly and reliably. This is done by two arms made from 2”x1” extruded aluminum tubing welded to additional 2”x1” tubing cut at angles to make a concave shape for the container. The arms travel along two 7” igus linear track with the help of two custom made sliders made from UHMW plastic bolted to the arms. This is all powered by two 3” stroke bimba air cylinders.


Our elevation system travels 70 inches upwards and the grabbing mechanism is driven by two chains that are connected to a tough box with two mini CIMS driving the mechanism. The chains are kept tight by using two tensioners that tension the chain by tightening nuts on a bolt that pulls the tensioners towards the front causing the chain to be tensioned. The way that the grabbing mechanism slides up and down is that there are two 1X1 square tubing sides that are used as rails and what we use to ride the rails are 4 UHMW cylinders that was lathed to have an indent in the centre that spans 1 inch, in the centre of the guides there are 3/8 shafts that allow the guides to rotate and roll up and down the rail freely.

Container Retrieving

For our container retriever our plan is to have 2 long pieces of light-weight plastic or PVC as long arms. We will bend the plastic at the end to form a hook to grab the containers by the top hole. This will be actuated by a Bimba pneumatic cylinders. Our system is very effective and light-weight. We are able to retrieve 2 containers at a time with this system. Due to the speed of our system will have the ability to get containers in the autonomous period.

Electrical & Pneumatics

All of the components of the control system are located on a specially bent board that is made to be mounted onto the angled tower frame. All of the controller are laid out on the lower board that is parallel to the majority of the motors. There are holes drilled between every set of motors so it is more convenient and neat to run the wires to the motors. The main breaker is also located on this board on the far right side so it is close to the battery in order to minimize the distance. The battery is laid flat on the chassis and has a belt around it in order to secure it to the robot while in motion. The rest of the electrical is mounted vertically and is positioned to be close to the controllers for neat and easy to follow wiring. The pneumatics are mounted on the back of the vertical board with a hole drilled near the pneumatic control module in order to run the wires through. There are gauges and pressure switch are also mounted on this board. The air tank is located along the left angle frame.

Programming & Sensors

This year, our robot will be using various sources of sensory input that may be used simultaneously with operator input in order to run a teleoperated period as well as a fully autonomous period. Programming is what allows the robot operator(s) to connect to the hardware using logic, algorithms and operator input as well as to run/control its various functions. Such types of sensory inputs and logic include, but are not limited to:

Digital Encoders

This year, digital encoders are used to track the rotations of each set of wheels on the drivetrain. With the help of some logic and algorithms, digital encoders allow us to measure the linear distance traveled by the robot. Such data allows us to autonomously translate the robot in a specified distance, and with the help of gyros, to rotate, and move in a specified direction.

Analog Encoders

Analog encoders, unlike digital encoders and similar to potentiometers, give us the absolute position of a rotating object. Analog encoders will be used to set the location of the tote grabbing mechanism and the container retriever (using PID loops), as well as to prevent elevator slippage when under a heavy load.

Limit Switches

When triggered, limit switches can perform programmer specified tasks when triggered. Limit switches on this year’s robot are used to prevent the elevator from moving any further when it has reached its maximum/minimum height in order to prevent various mechanical complications.


Gyros allow us to measure how much the robot has rotated. Gyros will be used in the robot during the autonomous period, using specified parameters in the code, to rotate towards a certain location as well as to adjust the robot accordingly in order to drive straight.

USB Camera

The USB camera allows us to display a video feed to the dashboard which gives the operators a helping hand in order to accomplish a certain task.

PID Loops

PID loops, with the help of the appropriate sensor(s), allow various functions of the robot to be set to a specific parameter. In the autonomous period, PID loops are used to move the container grabber to a specified location in order to take possession of recycling container(s) and are also used to move the elevator to a specified location in order to manipulates totes. In the teleoperated period, PID loops are used in order to prevent elevator slippage from occurring when under a heavy load and can be used to set the elevator to various preset heights.

The robot’s code is written entirely in Java and various information regarding the robot will be displayed on the SmartDashboard.


Our robot has been designed to stack and carry a stacked set of 6 totes and a recycling container at the same time. It can then place this stack on the scoring platform to score points. The robot can also place a coopertition stack on the step as well. We also have a design that allows us to pull the center recycling containers on to our alliances side of the field.


The design of our robot begins with the viewing of the game animation, when we learn what the game objectives are. We then evaluate the value of the points in relation to the speed, simplicity and repeatability of the actions needed to complete certain objectives. We then lay out criteria that we demand from the robot, both those outlined in the rules and demands we have created to keep our designs reliable, accurate and fast, with a focus on our priorities in that order.

Once we have defined what actions the robot will take, we begin to work on how the robot will achieve these goals, in the most reliable, accurate and fast way. This involves brainstorming sessions where we come up with a variety of ideas on how to achieve goals, and narrow down to a few general ideas to test by quantifying the values that each system will have and how it will benefit us. Testing is done by breaking into groups and finding the problems in each system and refining them. We then revisit our quantified objective table with more comparative numbers, and the design with the highest score will be pursued.

We then lay out a collective system of all attachments as one robot using computer-aided design and begin the construction of the practice robot where more problems are found and refined, creating a robot that is continually improving. When we are content with the overall design we move on to the manufacturing of the final robot, which through the course of competition season will also see many improvements to increase efficiency.