This
is the anti-static material designed to bleed static to the base slowly
at the time of docking.
This is CYE's 900 Mhz radio frequency link at the CPU end. From
inside the armoire that houses my laptop, printer, radio and other electronic
devices, located in my bedroom at one end of the house, CYE can be controlled
throughout my 3000 square foot rancher. The house has metal stud
walls but they do not seem to interfere with the radiation pattern.
CYE maintains top communications strength anywhere in the home.
This is CYE's dataport. Power, a single line input, an analog
to digital input, and an access point into CYE's 2400 baud addressable
packet information network
Here is one of the tests I used, at first to test the infinite lifetime of CYE. For this test, CYE begins docked on his Home Base. He backs off, turns to face the dining room hot spot, plans a path to the hot spot, then proceeds at a good clip to the center of the room. He turns to face the corner checkpoint at D!, plans a path to the point where the tails of the two checkpoint arrows would intersect. CYE will first turn to face the black arrow direction and proceed slowly forward till it hits the wall. His position on the screen may appear to pass through the wall until CYE hits the wall. His Y location is now known better. CYE's image on the screen will jump back to facing the black wall. Next CYE will back off, turn to face the grey wall of the checkpoint, and crawl slowly toward that wall to obtain an accurate position in the X dimension. CYE will then back away. CYE's next action may be to verify the Y dimension and directional accuracy by approaching the black wall side of the checkpoint again. When fully satisified that X,Y, and direction are known, CYE will back out and face the corner to await the next command. The program issues a go to home base command. Note this is a goto not a check in. CYE will turn to face home base, and plan a path home.
Planning can be simple or quite complex depending on the status of the map areas between the current and target locations. CYE appears to use an A* planning algorithm to evaluate hundreds of potential paths, around uncertain areas and known obstacles to reach a plan that will get to the target point. It is not possible to know what the "costs" the planner uses to evaluate each path, but there are some interesting artifacts from the planning. CYE may not choose the shortest and straightest path even when there are no obstacles and the entire area is "known". Continuing this description of the test program, CYE will proceed to the home base, back away, turn to face the grey wall of the home base, checkpoint and then reapproach where it thinks home base is. I can't determine the exact logic because I have seen CYE dock (charging indicated) and then back off, turn a little, back off more, turn to face the wall, and attempt to dock again. It is almost like CYE is trying to find the left and right limits of the docking adapter, then he docks exactly in the center of the dock. CYE will wait for the programmed time, exactly. You can set your watch within a second accuracy by CYE activities.
This test executed the loop 6 times (about 6.2 hours). Each excursion
took 1 minute 4 seconds minimum and 1 minute 20 seconds maximum.
When I last checked on CYE, he was sitting on his docking station, the
program had stopped without any error indication, but the loop counter
was at 94 indicating that 6 excursions had taken place. Other duty
cycles (1.5 minutes off, 10 minutes docked) have resulted in more excursions
but less total life time. I have not tried to maximize his life by
longer excursions. Since he can live for up to 20 hours off the base,
an interesting test would be a duty cycle of 18 hours hiding off base in
some unobtrusive corner followed by 6 hours of docked sleep. This
could result in many days before his "end of life" occurs.
Additionally, possibly he should sit for an hour very close to his base
to bleed off static before proceeding very slowly to dock. I have
not tried these behaviors.
This shot shows the CYE's position uncertainty after I "drove" him onto the tile floor in the Foyer and spun him around a bit. I was purposely disorienting him by running him into unknown walls at slight angles while on tile floor and spinning him back and forth. When he docked he discovered 8 inches in X, 11 inches in Y and 6 degrees of directional error. I would venture a guess that there is not a robot in anyones shop that constantly knows its position and direction with this much accuracy at even four times the price. If you don't try to confuse him, CYE will regularly know his position to within 2 inches. He automatically updates his uncertainty polygon and uses the uncertainty polygon and directional undertainty in path planning and obstacle avoidance. These calculations are beyond the average home robotics enthusiast knowledge. When the enthusiast has the knowledge, they will not usually have the time to invest in programming and refining the real world constant factors that are affected by wheel geometry, materials, motor characteristics, encoder characteristics, speec, surfaces, and dynamic factors such as mismatches between motor responses and surface transitions taken at an angle, and the list goes on.
PROBOTICS has packaged a phenomenal amount of smarts
into an inexpensive platform that can easily be extended with sensors,
output devices, and simple to complex programming as desired. I think
that CYE is the beginning of a new generation of consumer robotics.
Certainly the emergence of AIBO in the robotic toy space, and CYE in the
robotic platform space herald a new age in artificial life as we look foward
at a new millenium of human life.
© 1999 Alan McDonley. All rights reserved.