[alt.hackers] Why isn't there a comp.robotics news group?

hollombe@ttidca.TTI.COM (The Polymath) (03/03/90)

I've been prototyping a work cell for a robot arm to test automatic teller
machines (ATMs, aka CATs in local parlance).  Lots of hacks, both software
and hardware.

Hardware:

Problem:  The robot has to insert a card in a card reader.  This requires
positional accuracy to hundredths of an inch in six dimensions. (Human
hand-eye coordination is truly amazing).

Solution:  The robot can position itself with sufficient accuracy, so I
just have to make sure it grabs the card in the same place, every time.
An hour's work with tape and cardboard and I've got a fixture that causes
the card to fall into precise position no matter how you drop it in.
(Next hack:  Designing a rack that does the same for multiple cards).

Problem:  Deposit envelopes flop around when grabbed by an end, making it
impossible to insert them in the narrow (.25") slot.

Solution:  A minor modification to the gripper fingers, using cut up
rubber bands and rubber cement, causes them to slightly crease the end of
the envelope.  That causes the rest of the envelope to hold itself stiff
for accurate positioning.  As a bonus, it gives a better grip for taking
money and receipts from the ATM.

Problem:  The ATM is driven by a color-graphic touch-screen (Look, Ma, no
buttons! (-: ).  The robot's gripper fingers are metal, sharp and pointy.
The touch screen is plastic.

Solution:  Sculpt a finger out of packing foam to add compliance to the
robot's touch and glue it to the back of a gripper finger with rubber
cement.

Software:

Problem:  The robot has to operate in real time to simulate a human being
and keep the ATM from timing out.  It has to do many different tasks in
essentially random order.  In particular, it has to quickly touch the
screen in any one of 50K possible locations (200 x 256).

Solution:  Each of the robot's tasks is defined as a separate program in
the robot controller's memory.  The host ATM controller configures a tty
port to act as a dumb terminal and talk to the robot controller's dumb
terminal i/o port.  It sends commands to the robot to run the appropriate
program as necessary. (E.g.:  RUN DIPCARD).  To touch the screen, it sends
a location number (range: 0 to 50K) and runs the robot's touch screen
program which uses a palletizing algorithm to calculate the x,y,z
coordinates of the touch.  The robot controller thinks a human being is
typing all this (very quickly (-: ) at a keyboard.

The ATM side of the software, BTW, was hacked out of an existing program
that fakes, in software, some of what the robot actually does -- but
that's another story.


Not a bad hack, if I say so myself -- especially when you consider I had
less than four days to throw it together. (VIP wanted a demo for visiting
brass.  He got it -- no smoke, no mirrors).  Of course, the above leaves
out quite a few of the nitty-gritty, make-it-work details (don't want to
reveal too much about how the ATMs work, after all (-: ).

-- 
The Polymath (aka: Jerry Hollombe, hollombe@ttidca.tti.com)  Illegitimis non
Citicorp(+)TTI                                                 Carborundum
3100 Ocean Park Blvd.   (213) 450-9111, x2483
Santa Monica, CA  90405 {csun | philabs | psivax}!ttidca!hollombe