Best gear for starting ArduPilot Mower

Not sure I fully agree with this. We often discuss means to make these machines safer to operate.

As for where to put the kill switch circuit trigger - recommend not passing it through the autopilot. You want to be able to reliably stop the machine even if there is an autopilot failure.

3 Likes

We’re currently experimenting with these http://www.milleredge.com/PDFs/inst_instruction/CPT210_inst.pdf

1 Like

Seriously not trying to put a damper on ANY bumper/kill design, but not sure it’s what our machines need. My latest mower weighs 500+ lbs and happily cuts at 2.5 m/s. At that speed, if any contact is made, serious damage to something is done before the servos react and the engine starts to wind down. (Spent some time recently repairing an 1800 lb mower that found a tree…). I believe that our machines move too fast and weigh too much for a contact type shut down to be really worthwhile unless we stick it out several feet and make it to absorb serious KE.

2 Likes

@Swebre2023, I mostly agree…except…

The machine in question is much smaller and may well benefit from such a device.

Even the big boys might benefit from a bumper-type kill switch to avoid continued “driving” into any given obstacle, even if it’s damaged…at least it might not be on fire!

A few more points to ponder:

Proximity based switches can be problematic because they can falsely trigger on underbrush or high weeds. And every LIDAR I’ve ever tried really sucks in bright sunlight anyway. The only promising radar I’ve used requires some goofy monkeying with companion computers, and the dev board is quite fragile. Still, I would like to find one that works reliably at a distance of 1-5m without breaking the bank, but my motivation is somewhat low. I want to use active obstacle avoidance, but ArduPilot’s implementation has proven frustrating in a mowing environment. Should I find a good sensor solution, I may well move to a ROS-based navigation scheme to take full advantage.

Camera based detection is probably the best overall answer and could operate independently of the autopilot for some added reliability. I simply haven’t invested the time to use it effectively, and it’s admittedly the most complex solution I’ve mentioned.

Bigger picture: never rely on any single safety device. You should have some measure of automated failsafes as well as an independent kill switch (or two or three). I will admit that my own machine could be improved from that standpoint, but I do have multiple ways to make it stop, with or without RC control.

The safety aspect of these machines is a big part of why I will likely never try to market such a product or create a business out of it. There are other reasons that aren’t really important here.

We are getting good results with this lidar, outdoors, with range up to about 6 meters.
360° Omni-directional Triangulation Lidar, 8m Radius Ranging, Software Start-stop Control, Robot Positioning Lidar, UART Communication, D200 Developer Kit with LD14P Lidar | D200 LiDAR Kit We are scanning at about 12" above the ground. We implemented the logic on the companion computer (i.e. the lidar isn’t directly connected to the autopilot). I agree that bumper is sort of a last resort.

1 Like

Wow. Much more interesting discussion than I expected. My robot is all electric and about 20KG. Heavy for an electric, but light compared to many of your gas mowers. Worx uses I believe a sonic sensor that is cheap but doesn’t work at all. It dodges single blades of grass but climbs trees. I was thinking Lidar but sunlight in Florida is a huge issue. I think I’ll try a combination of sonic sensor with bumper switch that directly cuts blade motor power, with a manual reset and monitor developments on these forums. A friend in Australia has been using a cheap sonic sensor with some limited success Bumper switches tend to be fragile if used often. Luckily I have control of my lawn-- fully fenced, no kids or dogs, so unexpected obstacle is a rare event. I agree with Yuri that these can be dangerous devices and liability if we were to sell them is an issue. I have been using a Worx for some time as an experiment and done several engineering improvements, but reluctant to sell anything for that reason.

Sorry for the deleated post but I just wanted to pull all the advertising out of the video as much as I could. Advertising for others is not my goal here.
I have certainly been following the discussion about collision avoidance, especially for the bigger mowers. I have always been conflicted with the fact that if you put something on the mower that actually worked in keeping you away from obstacles, then you couldn’t get up close to those fences and trees to mow around them. I mow around a lot of obstacles and maybe I take a few chances with some of the low value obstacles, but I get right up close and personal with them, so I have less manual cutting in to do.
I noticed that the City of Tyler, TX announced they had bought 3 autonomous mowers for $55,000 each and they showed a video of one of the mowers on the news.

I thought it was interesting that the sensors were mounted up high and pointed down. Also they mentioned that it stops if it gets within 15 feet of an object, which would cramp my mowing style.

Many design choices to make. Hey, another question. Placement of the GPS antenna? Thinking front of mower? Over the blade(s)? At the center of the mower–i.e. pivot point?

The GPS antenna can be mounted anywhere you want. It just needs to look cool, be in a safe place, and see the sky. When setting up the GPS system in Ardupilot you will be putting in offsets X/Y/Z relating the GPS antenna to the center of rotation or pivot point and the flight controller. Most users end up pivoting centered between the rear tires for rear wheel drive mowers.

1 Like

Re GPS - What Steve Said.

I’d add - keep them low profile as they are tree branch magnets.
Trading off protection for view of the sky…

1 Like

If the forum supports such, it might be a good thing to create a “sticky” thread that would stay at the top of the thread list, dedicated to the creation of such a rover mower. I’m sure there’s a bunch of discussion of such, but if it’s not easily accessible, then it’s not helpful. The more of us that get involved, more knowledge will be disseminated!

Welcome to the Ardupilot community! The small little mower group is only a very tiny part of a very large community of world wide users and we are just glad they let us use their platform. It is very important to learn how to search the entire Ardupilot website for information. Having a “sticky” thread at the top is a good idea we have pushed for in the past and maybe we need to try again.
Here are some of the other active mower conversations.

https://discuss.ardupilot.org/t/kevings-autonomous-zero-point-turn-lawn-mower/
https://discuss.ardupilot.org/t/new-build-dev-prod-setup-toro-60-zero-turn/
https://discuss.ardupilot.org/t/yuris-mower-updates/

The right answer here is a section of the wiki. But you were the only one to contribute, and we both got a little frustrated at the process.

I’ve been extremely busy, so it’s hard for me to curate that well right now, but I will try.

In the meantime, if you wish to continue compiling info, share it on a Google Drive folder with public access, and I’ll try and pull it into my fork of the wiki as time permits. That will avoid you having to learn git.

For those who want to contribute directly, here is the WIP branch on GitHub:

I am happy to start trying to work on this information as my time permits. I am also happy to jump back into Github once again in a little more informed and restrained manner. I don’t mind learning it and I probably have more time available than you do. I think I learned enough before to become useful quickly. It may end up just being written by 2 people (you and me).

Also, since you are a very new user to Ardupilot, you may not have discovered the collective information set we call the “wiki” that documents how to build these machines. Note the mowers only exist as a rover in that documentation, but getting a working auto mower does involve some knowledge not documented in the rover section.
https://ardupilot.org/rover/index.html

Chris - re the D200 Lidar, how are you managing things like trees and fences.
Im guessing there are lots of returns, and again guessing anything close causes a stop.
I got 25mm from a fence a few times today, - have you a minimum safe gap ?..

Paul, this required a lot of programming. We have a concept called “mowable area”. For each yard we have an exterior perimeter which sets the outside border of the mowable area, and we have a set of interior perimeters for each obstacle, which are “islands” inside the mowable area that we do not mow. To create the perimeter and the obstacles we implemented a record mode on the mower. To do the initial setup for a yard, we manually drive the mower around in record mode to record the perimeter and to record each obstacle inside the perimeter. The mowable area is the area inside the perimeter, excluding the obstacle areas. Then while mowing, we determine where each lidar return is in the real world (translating it from the mower’s frame to lat/long), and if the lidar return is (a) outside of the perimeter or (b) inside an obstacle, we ignore the lidar return. If the lidar return is otherwise inside the mowable area, we stop. We are scanning a radius of 5 meters. We are doing some smoothing/signal processing on the lidar returns. We are achieving good results with this approach, locating obstacles to within 3-5" of their actual location (i.e. combining lidar range accuracy with mower location accuracy), and hence doing a pretty good job of filtering out obstacles that are outside the mowable area. With our setup the lidar recognizes items taller than 10" above the ground (because this is where the lidar is mounted) and more than about 2" in diameter.

This picture shows a mowplan. The mowing paths are solid grey lines for mowing, and dashed grey lines for repositioning. The dashed black lines show the edge of the mowable area. On this lot, the small round obstacles are trees and the larger obstacle is a conservation mowing zone. Any lidar returns outside the outer black lines or inside the inner black lines are ignored.

4 Likes

Wow Chris - thats boss level.
Congrats for taking on the challenge(s) and getting results. Clearly non-trivial.
Put simply, “only stop for obstacles in the mowable area”

We’re currently running the model “remove all obstacles from the mowable area” - which is “eyes on 100%” and a long way from labour saving autonomy, but still useful in a controllable, lockable landscape.

cheers.

Don’t have much to say or ask, but I too have built a Ardupilot Mower and an looking forward to being part of the club.

I also built a program like @Christopher_Milner that includes a perimeter and islands. One thing I do, since my mower is skid steer, is back up from first waypoint (WP0) at a 30 degree angle to the next waypoint (WP1), move forward to the next waypoint (WP1), and then reverse to Waypoint 2 (WP2). Doesn’t chew up the lawn so much.

2 Likes

Welcome to the group! I like the idea of going backward and forward. You can actually get the mower in to tight places by backing in and lining up along a fence for instance. With a big mower that has the center of rotation set between the rear wheels, it takes some space to ease over next to a fence close so you can drive along it. If you back in to get lined up, it is easier. It was a big discovery for me when I realized you can program these things to go forward and backward just as easy.