4 ms·
What did I start? An autonomous lawn mower. My goal is to get it done for under $1,000 USD using mostly snap-together hardware. My timeline is to have it mowing
by benjamincburns 11y ago
What did I start? An autonomous lawn mower. My goal is to get it done for under $1,000 USD using mostly snap-together hardware. My timeline is to have it mowing via RC by the end of January (shipping to New Zealand takes a while, especially when you're on a budget), while I'd like it to be capable of safely mowing autonomously by July or so - though I'm optimistic that it'll reach good-enough stage by March. I'll publish the build log on my website [1] as I hit major milestones.
What did I finish? I've been rebuilding my larger quadcopter and I finally got it up in the air and it flies well enough for my needs, though admittedly I did trim my friend's tree with it a bit. I'm chalking that up to pilot error, however. I hadn't flown anything in a few months and it turns out that line-of-sight orientation on quadrotors isn't just like riding a bicycle. It could still use a bit of tuning -- projects like those are never really finished.
I also have a few fairly interesting/exciting projects which I desperately need to write up. One such example is a wide field-of-view stereo head-mounted display for FPV flying which can be built in an evening for under $200 USD. Another is my as-of-yet fruitless efforts to build a very low latency HD digital video transmission system - also for FPV flying. If these are projects which you'd find useful, or which you'd simply like to read more about - leave me a comment or flick me an e-mail [2]. Encouragement always helps when it comes to getting things written up.
1: http://www.benjamincburns.com/ http://www.benjamincburns.com/
2: My username at gmail.
- mrfusion 11y agoAwesome. What fail safes do you have?
- benjamincburns 11y agoThe only real failsafes I have are overcurrent detection on the blade motor (when you hit something bad, current will spike) which triggers immediate shut-off, as well as a big red emergency stop button that will be on top of a pedestal at between knee and waist height. Otherwise I intend to implement naive obstruction avoidance to start where I detect proximity to an obstruction and simply steer away from it when I'm too close. In the case where the distance to the obstruction decreases faster than warranted by vehicle velocity, I'll simply shut off the blade and stop moving until either the obstruction goes away, or some timeout expires. Later on I'll add some smarts to this w/ a bit of mapping so that the static object "too close threshold" varies depending on whether or not the object is known in the current map - that way I can implement wall-following for close edging without that behaviour conflicting with the lower-level "don't turn the neighbour's cat into sausage" behaviour. Edit 1: My yard is quite private, and lawn mowers (even electric ones) make scary noises, so I don't really expect that much will want to interfere with it while it is running. Edit 2: It'll also have a camera and I'll be experimenting with various monocular SLAM and odometry algorithms. If nothing else, I'll use the camera to capture video for remote FPV control and for offline structure-from-motion mapping purposes. My hope is that if I can get decent enough pose estimation (likely from fusion of VSLAM + wheel odometry + AHRS/IMU data + GPS via an EKF), that I can compare the live camera image with one taken from the map at a similar pose to find and avoid dynamic objects in the scene. Of course, to do that well I'll actually need some sort of statistical map of the environment, as a single textured 3D mesh won't convey the expected variance of the scene (things blowing in the wind, etc).
- mrfusion 11y agoAlso think about something for shutting down if one of the wheels lose contact with the ground. Eg being lifted up (or flipped over)
- benjamincburns 11y agoGood point. Will definitely do this.
- joshu 11y agoAre you looking at ROS?
- benjamincburns 11y agoI have been, yes. I don't know if I'll start off with ROS, but as soon as I start attempting to use the camera for nav purposes, I'll certainly go that way.