-
update 6; final update
06/01/2018 at 01:30 • 0 commentsI achieved the majority of my goals either entirely or to some limited degree. My overarching goal of creating a robot that could map mazes and solve them by traversing the shortest path was only partially realized. I was able to implement a more basic algorithm, the left wall follower. However, this algorithm only allowed the robot to solve mazes without loops and lacked any mapping capacity. As a result, the robot could complete the maze when placed in very specific starting locations, but it could not complete the maze from the true starting point. Unfortunately I was unable to successfully implement the flood fill code to the 3pi. I was successful in keeping the cost below $150, with an estimate of around $132. More than half of this cost stemmed from the standard 3pi robot. Had I designed my own robot, I certainly would have been able to decrease the total cost even further. I also accomplished all of my goals regarding maze design and construction. I was satisfied with the complexity of my final maze design, and although I knew it would be difficult to create a perfectly accurate sized and neat maze, my work on that was as much as I could have hoped for. The installation of functional encoders onto the 3pi was an additional success. This seemed to be a choke point in terms of project completion for other similar projects that I found online, so I am glad that I was able to get them working. Although I was not able to extensively test the encoders with maze run throughs, they provided ideal output readings when hooked up to an oscilloscope.
There are various improvements and additions that could be made for this project. The addition of the encoders introduced some issues with motor values for turning because the wheels were pushed further out from the robot body. Also, there was a lack of digital I/O lines on the 3pi itself, so I could only attach one encoder, in this case, the left wheel encoder. This affected my ability to take accurate encoder readings. The Arduino software also posed a challenge as it was difficult to debug my code. The flood fill algorithm could also be improved upon since it returns the shortest path distance wise, but not necessarily time wise. My maze design, however, would not have encountered this type of problem even had the code been functioning. Some other improvements that could be made include implementing flood fill first in Java and then translating into Arduino so I could debug beforehand in the jGrasp software, and create my own robot so that I could have more I/O lines available for customization.
-
update 5
04/16/2018 at 23:36 • 0 commentsI have now finished soldering my encoders and I am in the process of making sure the motors are still properly functioning and testing if the encoders work. Once I am done with this, I can move on to coding the maze mapping algorithm.
-
update 4
03/13/2018 at 15:12 • 0 commentsI have since completed construction of the maze and tested the robot's basic functions such as turning in the maze. I also decided that I want to use flood fill rather than Dijkstra's algorithm to map the maze. I am now in the process of installing encoders onto the 3pi.
-
Update 3
01/07/2018 at 18:16 • 0 commentsSince my last update, I have tested and confirmed that the basic functionalities for my 3pi robot are working fine. I am now in the process of sketching out my maze design onto the poster board and will tape it over once I am done. I have also looked at what I will need to do in order to switch out the existing 3pi motors for my own, and will be ready to solder them as soon as I am finished with the maze construction.
-
Update 2
12/05/2017 at 00:21 • 0 commentsI've since finished the design for the maze, and will begin construction as soon as my materials arrive. I'm also waiting for the motors and encoders to modify my 3pi robot for this project. In the meantime, I have added the 3pi libraries to Arduino and I am starting to code the 3pi to perform basic tasks involving maze solving, so I can become more familiar with the technology.
-
Update 1
11/03/2017 at 03:45 • 0 commentsI have now determined the methods I will use to both map out the maze and find the shortest path to the finish point. I have also placed my parts orders necessary for modification of the 3pi to complete the goal of this project. In addition, I have begun designing the maze on Autodesk Fusion 360.