Page 151 - Designing Autonomous Mobile Robots : Inside the Mindo f an Intellegent Machine
P. 151

Chapter 9

            If the distance between points is too small, the number of points can become unnec-
            essarily large, requiring a great deal of memory. Since this path may be transmitted
            over our communications system, large files are undesirable from a bandwidth stand-
            point as well. The spacing between points is usually within an order of magnitude of
            the length of the vehicle, unless they describe a particularly tight geometry.

            Smoothest performance can be achieved in following such a path if the rabbit is moved
            in smaller increments than the distance between the bread crumbs. This can be done by
            simply performing a straight-line segment between each of the bread crumbs.


            The Z axis, maps, and wormholes
            For outdoor systems, the z axis must be saved for each of the points in a bread crumb
            trail if the robot is to operate on anything but a flat surface. Indoors, however, the
            robot may need to move from floor-to-floor of a building. It is not enough to save
            the z value of each floor, because the floor plans are typically different at each level.
            For this reason, instead of a normal z axis, I prefer having the ability to change maps.
            In Cybermotion systems, each node has a prefix that is the abbreviation for the map
            it belongs to. For example, Flr1_AB is node AB on the Flr1 map. Special “paths”
            known as wormholes have nodes that are physically at the same location but that
            belong to adjoining maps. In this way, an action from Flr1_AB to Flr2_AC creates
            no executable instructions for the robot, but causes the base station to register that
            the robot has gone from node AB on the Flr1 map to node AC on the Flr2 map.

            An object-oriented approach to the situation is to assign both the value of Z and the
            map name as properties of the nodes. Paths between nodes would then inherit these
            properties. Nodes can be objects in their own right that are in turn properties of
            paths, or they can simply be members of arrays that are properties of paths. The
            latter representation will conserve memory while the former is more politically
            correct.
            There are compelling reasons to maintain multiple map capability, even in outdoor
            systems. For one thing, the size of each map can be kept reasonable. Smaller maps
            mean faster display, pan, and zoom at the base station. In addition, it is quite pos-
            sible that an autonomous vehicle will need to enter a structure such as a parking
            garage where multiple maps are essential.









                                                   134
   146   147   148   149   150   151   152   153   154   155   156