Home Contents Start Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Next

Logic Level Shifting

The compass is a 3.3v device and we may end up with more sensors that run on 3.3v. Currently, conversion between 3.3v on the I^2C connections is done using a couple of resistors. This is not really ideal so I bought an active level shifter as this will hopefully remove as many abnomilies from the compass as possible. It was mounted on a small veroboard using arduino headers again that give me a pluggable module.

level shifter This means if I blow up the shifter, I just plug another one in.

The floorplan of the mower was extended to mount this board as a removable module. There is a little extra space as I may put the relay board that controls the cutting motors in there going forward.

levelShifter mount

Drop-off Detection

After adding a great many sensors to Moana, the last thing I want is for the robot to fall down a ditch and be damaged. Ideally, I want to detect when the front of the mower is about to plunge off a cliff and shut the motors down. The mower may get stuck with the castors hanging but hopefully it won't fall over the edge and end up in a watery grave.

Grass Detection Ideas

If it is possible to detect the difference between grass and concrete, this will add a new and very useful feature to the mower. This means that when the mower has cut a strip of grass, if it detects concrete ahead, it can turn around, just as if it had detected a fence. It would be useful to turn this feature on and off, depending on the area being mowed.

Infra Red

If I can combine drop-off detection and grass detection, it will help keep down the number of sensors I need to monitor. I am thinking I may be able to use a short-range infra-red sensor to do this as these work on the amount of light that is reflected as opposed to the time delay used by ultrasonic sensors. If the sensor is pointed down in front of the mower, no reflection means no ground so we need to stop quickly. Now it may well prove that grass reflects differently to concrete and I can use that difference to detect when we are about to roll over concrete.

Since grass may reflect differently depending on its length and whether it is wet etc, I think running a 'IR Calibration' on the reflectance value when the mower starts may be useful to stop false triggering. Just a thought at this stage.

Infra-red may prove unreliable in sunlight, but it does mean I don't have to worry about interfering and synchronization with the main ultrasonic ranger. Mounting this sensor on the very top of the sonar tower and aiming it just in front of the mower would be a good solution but I will need to run a lot of tests to see if this is a feasible idea.

Optical/Colour Detection

The use of a camera is something that was going to be deferred until the end of the project as there is a lot of number crunching involved. However, boards are now available that contain the pixel processing on-board the sensor such as the pixy 2 which could accomplish this. An initial review of the specs indicate that this device can detect colour and even colour-coded patterns. This means it could easily tell the difference between grass and concrete reliably (provided we are not mowing in the dark). The recognition of colour-coded patterns means we could place posts at strategic points in the field (such as each corner) which the mower could use to get an accurate idea of where it is. This was going to be the end goal but the pixy2 looks like it does the grunt-work so could easily interface with the arduino without the need for a more powerful processor such as a Raspberry Pi. Well worth investigation.


June 2018


Home Contents Start Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Next