top of page

Project Overview 

Personal Project

Me and a group of three other classmates were tasked with designing a robot to perform a set of tasks using a Lego EV3 kit. 

​

The code, and all modifications were entirely designed by me and my group. 

 

The motivation for this project was to not only complete a fun design challenge, but to also show the possibility of entirely automated search and retrieval algorithms

ev3standardconfiguration_edited.jpg

Standard Configuration of EV3 Robot

What Does "Maze Runner" Do?

Ev3Robot.jpg

Modified EV3 Robot & The Maze

1.

Using a coded left hand turn maze-solving algorithm, the Maze Runner navigates the maze using a color sensor facing the ground. It stores each tile in a 2D array, allowing it to take the shortest path to the exit if it is placed at the start of the maze. The maze is also entirely customizable by the user. Red = turn, white = go straight. Using a gyro sensor, the robot also has a coded turn correction feature that allows it to correct its orientation if it gets thrown off its original path. 

2.

Once in the maze, the robot will not exit until it has picked up one of three different colored blocks. Using a touch sensor mounted onto a designed, 3D-Printer gripper mechanism, the robot will pick an object up when it runs into one, and begin searching for the exit. 

3.

Finally, once the robot has found the exit of the maze, it will place the block on its corresponding color path. The robot can then be run through the maze again to find the shortest path to the exit.

Process

Ideation 

After outlining a basic set of constraints/criteria, different solutions for different functions were conceptualized. Putting these solutions together generated three different concepts for Maze Runner. The final decision was chosen based on:

​

  • Cost

  • Time frame 

  • Resources that were available to us (how accurate the sensors would be for example)

  • Efficiency 

  • Accuracy

​

In the end, a robot with gripper jaws in the front attached to a touch sensor was decided upon, as it met all the conditions above. 

EngineeringCriteria.png
MazeRunnerConcepts.png

Table of Constraints/Criteria & Different Design Concepts

Early Stages of Design 

Once the general idea of the robot was solidified, and a design concept was chosen, I began designing and re-iterating the gripper jaws. The maze piece sheets were created by me, and would be laser cut later on. I purposely formed each sheet in the orientation shown in the photo, to maximize the space used up on the laser cutting board in order to minimize cost of materials. Note that the pattern selected would lead to either two extra red or green pieces being made, hence the reason why two sheets were made. 

​

Three different sizes were made to make sure that if any of the sensors had errors, there was always a backup plan (using bigger pieces allows more room for mistake with the sensors). 

​

Two different gripper teeth patterns were ideated to test and see which one would have the highest success rate in holding an object. 

​

Due to the limitations of the EV3 Robot Kit, neither gripper 1 or 2 was sufficient, as the robot had to be raised to some extent so both grippers would have trouble clasping objects. Making bigger or taller blocks wasn't an option either, as the motors I was challenged to make use of were not strong enough to provide enough force to grip and lift heavier objects. With these obstacles in mind, I came up with a new, innovative idea for a gripper that could be integrated into the robot kit, while picking up blocks that weren't any heavier or taller. 

PuzzlePieces.png
GripperV2.png
gripperV1.png

Maze Pieces AutoCAD Sheet & Iteration 1 and 2 of The Gripper Jaw

Prototyping/Finalized Design 

After a long period of time consisting of failed 3D-Prints, booked laser cutting beds, and flawed designs, I had enough. Going back to the drawing board one last time, I realized that my solution didn't have to be extremely complex or flashy, but practical and efficient. The jaws themselves didn't have to look like normal jaws, they had to be suited for the task at hand. Entirely 3D-printed from ABS plastic, the new gripper featured the following:

​

  • Jaws angled downward to pick up items lower on the ground.

  • Jaws that act as a sort of funnel, allowing objects to be scooped, even if they aren't directly in front of the robot.

  • Jaws that make contact after closing, so objects don't fall forward after being grabbed

  • A hinge-like mechanism allowing the robot to pick up the object, and put it over its body to shift the center of mass closer to the middle of the vehicle for more stable steering. 

  • A simple but intuitive rack and pinion system to open and close jaws, hooked up to the EV3 motors

​

Once the gripper was completed, next I had to make the puzzle pieces themselves. After doing calculations, taking into account parameters such as material cost, laser cutting bed size, and surface friction, I came to the conclusion that HDF was the most cost effective material, which met all of our needs. Initially acrylic sheets was going to be used, however due to the nature of how the color sensor detects paint on transparent surfaces, I chose to go with HDF with taped on colored paper.​​​

GripperAssm1.png
GripperAssm2.png

1

2

GripperAssm4.png
GripperAssm5.png

3

4

Step by Step of Gripper Assembly

Gripper In Action

LaserCutPieces.png

Laser Cut Maze Pieces

Mazerunnerpic.jpg
ColoredMaze.jpg

Final Touches

Once the gripper was completed alongside the maze, the last things left for me to do was to finish some sections of the coding, create the objects that would be placed in the maze, and somehow increase the friction of the jaws or the blocks themselves to allow for more successful pick-ups. â€‹â€‹â€‹

​

For the coding portion, I programmed the left-hand turn algorithm, the block detection and block pick-up code, and finally the block sorting at the end of the maze. 

​

Designing blocks may seem like a trivial task at first, but due to the accuracy of the EV3 sensors, it becomes a lot more complicated. The blocks had to be heavy enough so the touch sensor could detect it and the robot wouldn't just knock them over, but not too heavy so that the gripper could pick it up. In order to solve this issue, small platforms were added to the bottom face of each block, so that they wouldn't be knocked over easily and were a bit heavier. Both the platforms and blocks were 3D-Printed.

​

Finally, the last issue that was faced was the blocks slipping out of the jaws after being grabbed. To counter this, I decided to add more friction to the blocks and jaws. Smearing sticky paste over the gripper jaws and covering the blocks in card stock generated enough friction so that no more slippage occurred. 

​

Finally, the Maze Runner was fully ready for action!

Finalized Maze and Robot

Results

Once the robot was completed, the last thing to do was test! It worked surprisingly  well for the time-frame we created it in, as well as how restricted we were with the kit accuracy. The robot still does need human correction from time to time, but other then that all functions were met. Some takeaways from this project were:​

​

  • All functions being met

  • Total project cost under $200 (EV3 kits were funded by UW)

  • Personal gratifications from professors and peers 

  • Theoretically able to solve any maze constructed in this style 

  • ​Block pick-up succession rate greater then 90%

Maze Runner in Action!

bottom of page