# Open-source domestic robots

This article describes the building of a set of simple, open-source, domestic robots.

## Specifics

* Use of a single, open-source, robot operating system for all domestic robots mentioned in this document. This includes vacuuming & mopping robot, lawn mowing & pruning robot.
* The robots are to be made very simple; they are to use only IPS, augmented GPS (e.g. DGPS, AGPS, ...) or Galileo for positioning together with a compass to allow orientation. The robot software would then need to allow the drawing of the map complete with gps coordinates of the corners so that the robot knows the area it needs to run over.
This differs greatly with some common domestic robots as robotic lawn mowers; which use a border wire and sensors. Parameters such as the setting of the cleaning/mowing tool radius and the area which is not covered (between the tool's radius and the 4 sides of the machine) should be able to be altered (for each type and size of robot)
No additional sensors, or collision detection, ... are to be foreseen
* Most of the robots (an exception being the robotic lawn mower) are to use 2 caterpillar tracks with the area for the tool being placed in the middle body (between the tracks).
* All robots are to use a small direct-ethanol fuel cell (DEFC) as a power source. Biobutanol (or alternatively ethanol, but this requires more modification) is used in the combustion engines of converted robotic lawn mowers. Power plugs with automated boom are to be used with converted battery-powered mowers.

## Advantages

The approach followed has some great advantages; these include:
* Heavy reduction in cost: this due the possibility of home building, the reuse of already owned devices (e.g. non-robotic lawn mower), use of hydrogen, oxyhydrogen or liquid nitrogen instead of the more costly lithium batteries, elimination of costly sensors, ...
* independence of commercial manufacturers

## Disadvantages

The disadvantages are:
* Due to the lack of sensors, the robot can not detect and avoid obstacles, causing some potential problems.
These include:
** Rotating opened or closed doors can obstruct the path of the robot (opened doors can obstruct the path next to the entrance, while closed doors can obstruct the path at the entrance itself
** People are best to keep out of a room that is being cleaned until the robot has finished cleaning in this room. This as people may obstruct the path of the robot, and the robot does not have sensors or collision detecting, meaning it will smash straight unto the person if the person blocks his path.
** Depending on the way the robot has been home built, some margin can exist near the house walls that the robot is uncapable of sweeping
* The robot requires fairly "empty" rooms in order to sweep it; this means that all obstacles on the robot's path need to be cleared prior to the sweeping of the room by the robot

## The designs

2 types of domestic robots are to be designed:
* A vacuum & mopping robot
* A lawn mowing robot

### Vacuum & mopping robot

The vacuum & mopping robot is to be designed to incorporate 2 functions:
* simultaneous vacuum cleaning & mopping
* vacuum cleaning alone
Surfaces that allow both vacuum cleaning & mopping; will always use the dual function. Other surfaces such as sandy driveways and water permeable garden paths can use only the second function.
The vacuum cleaner is to incorporate from the front to the center of the device following utensils:
* a ecologic soap + water outlet to wet the surface (alternatively electrolysed water may be used)
* a plastic brush: a brush for scrubbing the wettened surface
* a v-shaped wet mop and wet vacuum cleaner hose; the mop is to gather the water, soap & filth, while the wet vacuum cleaner hose is used to suck up the filth, soap and water. The wet vacuum cleaner hose is to be connected to 2 bags (or containers); one for storing the soap, water and filth (first function) and the second one for filth alone (for the second function)
Depending on the initial tests, the brushes may be fitted unto a rotating disc (to increase scrubbing) and perhaps the mop may be left out completely depending on how much water actually winds up being left over on the floor. If this amount is so little that it evaporates quickly anyhow, the mop is best left out. Also, perhaps the mop may be fixed to either an automatically roll (rolling up when filled with water into an extra container under the mop in tilted position).

### Lawn mowing robot

The lawn mowing robot can be made from a regular (push-)lawnmower. This avoids needing to build it entirely from scratch. The tank of the regular push mower is first filled with biobutanol. This way, it is already emissionless, and some of the power obtained from this renewable energy source can be used to power the electronic components that make it robotic. Next: making it robotic. We do this by implementing a printed circuit board (PCB) which is to incorporate the guidance system, and 2 motors that connect to either of the back lawnmower wheels via an axle (the front wheels are unpowered and are made rotatable (mount wheels with freely rotatable axles).Next, the main engine (already used for rotating the blade) is given a dynamo or alternator (mount this on the drive belt, ...). The power generated from this is then relayed to the PCB. Rotating the mower after every straight run is done by powering the 2 back wheels in opposing directions. The 2 front wheels will simply follow the movement of the back wheels. In addition, we need to allow the PCB to control the throttle and the pull cord. The latter can be done by means of a solenoid that can pull on the pull cord. Then, we need to allow the robot to discard the clipped grass in the container somewhere. We could do so by making a small, deep hole in the garden where the lawnmower can be instructed to ride over once the container is full, and empty the container via a (electrically operated) trapdoor in the container. This solution allows the user to reuse the grass, ie for composting purposes. Another method is to simply install a mulching kit on the mower, so that no container is necessairy and less programming is needed. The downside however is that the blade too needs to be swapped, and no grass can be reused for composting purposes.

## FAQ

Why don't you use a border wire and sensors ? As mentioned before, the sensors create an extra cost to the robot. However, as you probably noticed that the robot thus requires an augmented GPS receiver, additional equipment for computation and compass, this is not the only reason. Another reason is that for most of the robots, the use of this method which makes sure that the robot uses straight runs is actually much more effective. Also for some of them (e.g. agricultural robots), the robot cannot just swarm around the field anyhow; the crops placed in the rows would obstruct the robot.
I noticed you described the conversion of a lawn mower; why isn't there a more efficient lawn mower design foreseen next to the lawn mower conversion design ? For example, a legged lawn mower could be more efficient than a wheeled or tracked one. Indeed, I thought of this; however the use of lawns altogether is a mistake. Instead of lawns, paths made from small or large rocks, and the use of indigenous (long) plants is actually a more suitable and natural approach. Also as seen in xeriscaping, the plants then no longer require watering, fertilisation, ... However, as lawns today are such a common part of many gardens, the use of a robotic lawn mower is still a must. This however does not mean that it is useful to spend the time on designing a new, more efficient, lawn mower.
What possible expantions to the project could be done ? A possible expantion of the project I was thinking about was the use of the software in a soil cultivation robot (for preparing the soil before planting or sowing plants, or removing weeds). Also, a pruning robot could be an expantion of the project. However,as these machines are more useful to commercial entrepreneurs than home users, it is doubtful that they could use a small robot; rather the robot guidance system is better implemented to farm tractors (which can mount harrows, ploughs, ...). Also, I am not sure whether using the more efficient agricultural techniques (e.g. no-till farming) they would actually still be useful.
A small pruning robot however could be useful to make from scratch.
What about a fruit picking robot ? No, I considered it but fruit picking robots require far more advanced sensors and programming. It is doubtful that any DIY fruit picking robot project will succeed in this any time soon and I believe the costs for doing so will probably be higher (or just as expensive) than the commercial products now on the market. Also, given the fact that again this is a device for professional users, the time required for digging into this type of robot simply isn't worth it.
'Could domestic robots utilize large language models? Possibly - large language models could be used to verbally interact with provide the domestic robot with instructions/requests.