TIIC 2016 North America: Autonomous Weed Eliminator


University: Carnegie Mellon University
Team Members: Hannah Lyness, Nishant Pol, Sam Zeng
TI Parts Used:

  • MSP430F5521 16-bit MCU
  • MSP430G2553 16-bit MCU
  • TLV1117-33 3.3V LDO
  • TLV1117-50 3.3V LDO
  • SN74LV08 Dual AND
  • SN74LV74 Dual D-FF
  • OPA4134 Quad 8MHz Op Amp
  • Plus all TI ICs in a laptop

Project Description

How annoying is it to spend a sunny afternoon not enjoying the beach, but removing those pesky, prickly weeds from your lawn?  CLEANUP will do it for you, without complaining, and in any hot or cold weather, as long as the electronics don't get wet.  The project was for the System Engineering and Capstone classes for the Carnegie Mellon Robotics Additional Major.

CLEANUP (Careful, Logical Elimination And Negation of Unwanted Plants) is a robot designed to autonomously find and extract broad leaf weeds from a mid sized residential or commercial lawn.  It uses a learning algorithm to find and center over weeds, and a drill to remove the weed with minimal damage to the lawn. 


The robot can drive up a 30 degree incline or over 2" high obstacles using a robust skid steer four-wheel-drive base to tackle the toughest lawns without causing damage to the lawn.  The weed eliminator mechanism uses a special weeding drill powered by a cordless drill hacked for easy on-off and direction control.  It is mounted on a linear slide to give precise depth control.  Easy maintainability allows quick replacement of parts. 


A number of sensors are used on the robot:  A downward-looking camera, shielded from sunlight by the black lightbox, captures images of the ground to look for weeds.  An IMU and non-contact hall-effect wheel encoders allow for 2cm precision positioning of the robot over a weed without expensive differential GPS.  The elimination mechanism uses limit switches to sense position, along with a current sensor to ensure the drill does not damage hard surfaces.  Finally, two invisible fence wire tracers and hall effect bumper sensors are used to keep the robot out of your flowerbed or neighbor's lawn. 

Actuators and sensors are controlled by three MSP430F5521 microcontrollers.  Firmware performs hundreds of on-line diagnostic checks and error logging to ensure safe operation of the robot.  It also handles detection and recovery of packet failures from motor related noise. 


The onboard laptop computer performs high level planning and weed detection.  The detection algorithm uses a two-pronged approach: a fast routine that checks for areas of the image that match color signatures of weeds, and a slow routine that searches for weed features.  Once a weed is detected, the planning routine issues motor velocities to precisely position the robot over the weed for extraction.

Features
  • Fully autonomous operation
  • Robust design can tackle the hardest of all lawns
  • Covers 100 square meters of lawn in an hour
  • Eliminates weed in one minute
  • Hundreds of mechanical, electrical, and firmware safety checks to ensure safe operation of system, and easy debugging during faults
  • Actuators:
    • Two-motor 4WD skid steer chain drive base
    • Stepper motor linear slide for drill positioning
    • DC brush drill for weed elimination
  • Sensors:
    • Webcam for weed detection
    • IMU
    • Hall-effect non-contact encoders for drivebase
    • Hall-effect non-contact sensors for bumpers
    • Wire tracer and amplifier for invisible fence
    • Current sensor for drill fault detection
    • Limit switches for linear slide homing
    • Temperature sensors in microcontrollers for fault detection
  • Eco-friendly: no chemicals, no combustion engine

Resources

Full Project Report:

SDDD3.pdf

Firmware on Github

Electrical Schematics on Github

High-Level Software on Github: HW drivers

High-Level Software on Github: Detection

High-Level Software on Github: Localization

High-Level Software on Github: Planning