Entry #3: Finding The Way
Omocube can now get itself from one place to another. Before navigation, Omocube could already move its motors, but only through simple commands like forward, backward, turn left, and turn right, with no obstacle avoidance or path planning. In order do to that, Omocube has to know what is around it, and what it can and can't get past, while the space continues to change around it.
How it works
As Omocube moves, its depth camera continuously builds a 3D map of its surroundings. From that map, it decides which parts of the floor are safe to cross. Flat ground is fine and small bumps are ignored, but anything too tall to step over or too steep a drop is considered an obstacle to go around. Overhangs it can fit under, however, do not count as obstacles. People and anything else that moves are also handled separately, since they won't be in the same place a moment later.


The map is stored on Omocube, the same as everything else it experiences. Its map is built from its live view and is kept fresh and updated, so it never plans a route around things that have since moved.
Getting unstuck
Navigation changes decisions into planned movement. Omocube can be asked to go somewhere or follow someone, and it works out the route itself. If it gets stuck along the way, it notices and routes a different path, tries backing up, or rotates in place.