SD: Autonomous Lawnmower (ALP)

The Autonomous Lawnmower Project (ALP) is a revised version of my Senior Design (SD) I did as an undergraduate. The project was originally called Autonomous Lawnmower for Temple (ALT), wherein my team and I attempted to construct an autonomous lawnmower based on a set of rules prescribed in the ION Robotic Lawnmower Competition's Advance competition, in which a team must construct a lawnmower that can autonomously mow a cutting-field and while avoid obstacles. Because I want another SD team to pick up the project without having to perform any reverse engineering, I decided to redo much of the project as part of ALP, adding more complete documentation and finishing aspects of the project I believe should have been completed. Please read the introductory post on ALT and visit the original project's website for some background on the project. I will regularly update this page with posts that describe what I have completed and what I will be doing next in regards to ALP.

Project Goal: Develop a small-scaled model of the lawnmower that will perform all the required autonomy, including completing the lawnmower cutting-field and avoiding obstacles, while will also be able to perform those tasks outside. I will not focus on the development of the full-size lawnmower but instead will leave that task to another team (I am only one person and I will mostly be focused on the Zynq Project.). With the aforementioned goal in mind, I have, and this is liable to change as the project develops, divided the goal into several sub-projects, which are as follows.

    1. Remote Control Car, the moving-platform that will perform the autonomy

    2. Path Algorithm, the algorithm that will generate the lawnmower's path

    3. Localization, the way by which the moving-platform will determine it's location

    4. Line Detection, how the cutting-field's line will be detected (I have decided not to complete this part of the project due to more important commitments to other projects)

    5. Integration, adding all the miniature projects together and completing the entire project

Screenshot of the AlpGui program developed to interface with the ALP. The AlpGui program is set in its "lawnmower" mode, in which the moving object (i.e. the red remote control car in the video) follows the path generated by the Path Algorithm.

Project "Finished": Currently, manual control and multiple forms of autonomy--including the Path Algorithm--have been fully implemented and tested within ALP. The Path Algorithm and robotic localization based on computer vision were the main focus of the project. Because of the completion of those major objectives and other major commitments, I have decided to start preparing the project for another set of students. More information on the new set of students will soon follow, but, for now, just know there will only be small advances with the project by me, from this point forward.

Please visit the video page for videos on what has been accomplished.

Links:

Introduction to Autonomous Lawnmower for Temple (ALT)

Remote Control Car

Path Algorithm

Localization v1: OpenCV/MATLAB Implementation

Localization v2: (Java and OpenCV/C++ Implementation)

Videos

Videos - Mar 16, 2014 7:49:8 PM

Path Algorithm - Dec 14, 2013 10:43:21 PM

Remote Control Car - Sep 04, 2013 7:19:25 PM