Build an inexpensive solar electric lawn mower that can navigate my lawn using one or more Raspberry Pi’s. I don’t know about you, but the commercial robot lawn mowers are too expensive and not nearly terrifying enough to be any fun, so I guess I will just have to build something myself…
Power plant will be a deep cycle 12Volt battery, using solar panels to keep the battery charged up between mowing periods.
Use cheap DC motors, possibly 2 truck wind shield washer motors to drive the left and right wheels.
For cutting the grass use either a hedge trimmer, or a weed whipper, not spinning blades of death.
Navigation, use 2 pi’s with pi cameras attached to each to enable vision based identification of location in yard. Will need to use QR code posters or something similar around the yard for reference points.
I found the following at Princess Auto online.
2 Wheels suitable for grass(13X5 inches), 1 wheel with a pivot system (8X2.5 inches).
2 12V DC gear motors (found car seat adjustment motors, would have preferred wind shield washer motors but these motors have a longer shaft making it easier to attach the wheels, hopefully they work ok). (Total bill $135)
1 weed whip or hedge cutter that can run on 12V. (approx $60, found a used one for free)
? Multiple Solar Panels
The wheels should work great on my lawn as they are meant for lawn tractor use.
The motors may be a little small for this project, however they are geared down a lot and the goal is not to make a fast robot, just a cheap platform for experimentation and grass cutting!
2014-Sept-24 Birth of a robot platform
When I started this project I decided that I wanted to use common materials that anybody could easily buy and work with to build their own robot. I had a big pile of scrap 2X4 studs and plywood sheets from building a shed, so I decided to use that instead of building a metal frame. Wood is very strong and very easy to work with, I did have to buy a 5/8 inch threaded rod to use as an axle, and also some v-belt pulleys and belts to gear down the motor further to turn the wheels. Unfortunately the pulleys are brutally expensive, $8 for the 1.5 inch pulley and $30 for the 8 inch pulley, $6 for each belt (Home Hardware had everything I needed). This is the most expensive part of my robot so far, even the Raspberry Pi and motor controllers cost less than the pulleys! I had to wire the pulleys up to the wheel to make them rotate together, hopefully that does not wear out too quickly.
Total cost so far ($130 + $90) = $220, starting to add up, but as long as I keep it under $500 I will be very happy.
Here are a few pictures of the base of the robot that I built in just one evening with a drill, some screws, a jig saw, and a bit of recycled lumber. I will eventually post some dimensions for this in case anyone wants to build something similar.
I hooked up the motor to a 6 cell RC car battery pack and it easily moves around the garage with an extra 70 lbs on top of it at the speed of a slow walk. I expect the deep cycle 12Volt that I plan on using will have a lot more power available, so I am hoping that this robot will move around pretty effortlessly at around walking speed. I will need to build some supports for the motors before I hook up the big battery or it will probably tear them out of the frame!
The robot is pretty stable, but I am thinking about adding a second castor wheel in the front to keep it from tipping (I have a big hill in the backyard that might cause it some problems). With the air filled tires, this thing goes over curbs pretty well and rides very smoothly.
The next step is to fit the battery and electronics enclosure in… This has been a really fun project so far, I can’t wait to get it hooked up to my network!
2014-Sep-25 Prepping the Pi
I was tired today, so I thought I would begin prepping my pi for it’s new life as a killer of grass.
First, I needed wifi to come up automatically, here are the commands I used to set it up from the command line.
if you see the wlan0 entry then your wireless adapter is working properly, otherwise the adapter you are using is probably not compatible with the pi.
make sure the following tools are installed (hook up ethernet cable for this bit)
->sudo apt-get install wpasupplicant wireless-tools
If you do not know your ssid, then get list of networks available using
->sudo iwlist wlan0 scan | more
Now add your ssid to the wpa config file using
->sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Add the following to the end of the file:
Reboot to see if it works, don’t forget to disconnect your ethernet cable.
When you log in again, type:
check that you have an IP address, if so then you are done, otherwise it is time to start searching Google for the problem!
I began wiring up my L298N DC motor controller to my pi, here is a poor quality picture of it. I will post a drawing of the final wiring once all the smoke clears! Unfortunately the units I bought have some of the poorest soldering I have ever seen, I hope they don’t all blow up when I attach power…
2014-Sep-26 Motor Test
Today I decided to do a big motor test to make sure this monstrosity would survive. I had to rearrange the front of the body a bit to place the battery in the center. I rigged up some scary wiring just to see how well the motors worked, and I found that it can haul me and the battery around on slopes and even up the sloped curb to my driveway! The kids loved it and rode around on it together for about half an hour until I noticed the motors getting warm, then I ended the test and their fun. Half an hour without a failure with 140 extra pounds seems like a pretty successful test. I am still not done with the front wheel, I am thinking of adding a second wheel to help the mower float over loose gravel better, but surprisingly it was extremely stable with just the one wheel. Next I need to hook up the L298N DC motor controllers and see if the magic smoke stays inside…
2014-Sep-28 Time to call the Doctor!
I was thinking about building a cover for the robotic chassis to protect it from the elements, and being a guy who likes sci-fi and mixing the practical with the impractical, I decided that the best cover I could build would need to make a statement of some kind. (Statement = I am a bit silly and still like to have fun.) So here is a picture of the beginning of the my own personal Dalek lawn cutting robot! I figured it can EXTERMINATE! all the longer blades of grass from my lawn with fanatical efficiency. I might need to change the name of my project to the Dalek-berry-Pi Mower? The Dalek cover is removable from the base with 6 screws so that I can swap it will another cover if needed to make the lawn mower work practically on the steeper sections of my lawn.
I have ordered some Ultrasonic sensors off Amazon and an I2C 3-axis accelerometer to add some needed collision and upset detection to the system. Hopefully they arrive next week and I can begin programming them into the system. Until they arrive, I will just have to work on the motor control and web interface so I can control it from my phone as I develop the routines for automatic navigation. I just saw a commercial about a robotic vacuum from Dyson that uses a ‘360 degree’ camera to navigate using landmarks in the room, cool! That is very similar to my end goal for the RaspiMower.