ISAC Anthropometric Hand Kit Buckley, Tom Billings, Ananya

Introduction and Requirements
The Center for Intelligent Systems is a research group whose goal is to
advance the state of the art in intelligent systems such as autonomous
robots through development in the areas of skill learning, perception
learning, and task learning. The CIS Anthropomorphic Hand project,
sponsored by Dr. Kazuhiko Kawamura of CIS, aims to create a humanoid
hand for the ISAC robot currently used in the cognitive robotics laboratory.
Hardware
Software
The palm was created using a modular cavity design. It was designed using
ProEngineer and printed using Rapid Prototype.
The main purpose of the program on the HCS12 microcontroller is to
transition between electronic control and physical manifestation of this
project. The code was developed in C using Freescale's CodeWarrior IDE.
The microcontroller receives commands from the host computer via the
serial port, then translates these commands into a sequence of pulses that
instruct the driver cards on how to move the motors in the correct direction,
at the correct speed, and for the correct period of time.
The project has the following specifications:
Driver Card Connection Board
To Motor A
Microcontroller Connections
The fingers were made using Polymorph. Their design specifications were a
length of 120 mm and a width of 20 +/- 2 mm. Four joints are seen instead of
three- the last is to mimic flexibility of the human palm when closing.
Motor Wires
Motor Wires
Gnd V+
EasyDriver v3
Card A
Gnd V+
EasyDriver v3
Card B
Step Dir
Step Dir
Touch Sensor Circuits
Touch Sensor Index
Motor Step Thumb
Driver Card A Gnd
Driver Card B V+
Driver Card B Gnd
Driver Card C V+
Driver Card C Gnd
Driver Card D V+
Driver Card D Gnd
Driver Card E V+
Driver Card E Gnd
Driver Card B Dir
Driver Card C Dir
** Driver Card A Step
** Driver Card A Dir
** Driver Card B Step
** Driver Card B Dir
** Driver Card C Step
** Driver Card C Dir
** Driver Card D Step
** Driver Card D Dir
** Driver Card E Dir
** Driver Card E Step
Driver Card D Step
Driver Card D Dir
Driver Card E Step
To Motor D
Gnd V+
Driver Card A Dir
Touch Sensor Middle
Force sensing resistors, placed on each fingertip, were used to detect a
touch. The sensors decrease in resistance with an increase of applied force,
so they were used in conjunction with an inverting operational amplifier
circuit.
Driver Card B Step
Driver Card C Step
Driver Card A Step
Step Dir
Motor Step Index
To Gnd on 12 V 4 A AC
to DC Power Supply
Driver Card A V+
To Motor C
To V+ on 12 V 4 A AC
to DC Power Supply
Motor Wires
Reset Switch
Touch Sensor Thumb
EasyDriver v3
Card C
1. The hand must be an anthropomorphic right hand, necessitating four
digits and a thumb, each with humanoid joints and grasping action.
2. The total mass of the hand cannot exceed 1 kg.
3. The hand must be durable; it must be able to survive an impact due to
arm malfunction.
4. The hand should possess independent finger control and should also be
able to perform three distinct grasping functions: a full hand close, a twofinger (thumb and index) pinch, and a three-finger (thumb, index, and
middle) grasp.
5. There should be feedback from the fingers to the control unit to indicate
when a touch occurs.
To Motor B
Driver Card E Dir
To Motor E
Touch Sensor Ring
Motor Wires
Touch Sensor Pinky
Motor Direction Pinky
Gnd V+
Motor Wires
EasyDriver v3
Card D
Gnd V+
EasyDriver v3
Card E
Step Dir
Step Dir
Motor Direction Ring
Motor Step Middle
Motor Direction Middle
Reset Switch Gnd
Control Lines for Touch Sensor Circuit
Motor Step Ring
Motor Direction Index
Motor Step Pinky
Microcontroller
Motor Direction Thumb
** Debug Pins are used for connecting motors when the microcontroller is being programmed and tested on the project board.
System Overview
EasyDriver Card Connections
Motor Wires By Color
Brown
Red
Orange
Blue
Red
Green
Yellow
Black
Motor Wires
To 12V 4A
AC to DC
power supply
Gnd V+
EasyDriver v3
Step
The computer software provides the interface between the user and the
microcontroller. It provides the user with the ability to close and open the
fingers and set control variables. The software is written in Visual C++ using
Microsoft Visual Studio. The main software is a C++ class composed of a
header file (Hand.h) and a source file (Hand.cpp). There are two provided
applications which make use of the Hand class: a Console Application and
a Windows Forms Application. The Windows Forms Application provides a
graphical user interface.
Dir
Open_Fingers(Open cmd)
To Microcontroller
Open_Fingers
called
The fingers are controlled individually by stepper motors. Each motor is
connected to a driver card which accepts a step pulse and direction from
the microcontroller. These 5 driver cards are mounted on a circuit board that
also contains the microcontroller and two 16 pin IC sockets.
Is the microcontroller
connected?
YES
YES
Is it a valid parameter?
NO
Send Correct Data
Byte
NO
Attempt to connect
to microcontroller
Wait for response
Successful?
YES
NO
Was a ‘DONE’ returned?
NO
YES
Functionality and Results
The system is composed of five major components:
1. Five fingers fashioned with Polymorph and providing feedback by means
of a touch sensor at each fingertip.
2. A palm printed using Rapid Prototype.
3. Five bi-polar stepper motors used to control each finger independently,
mounted on a control box connected to ISAC’s body.
4. An actuation system using 25-lb test fishing line that is run from the
motors through cable housing to the fingers.
5. A microcontroller that controls the motors and receives feedback from
the touch sensors on the hand. High-level control of the microcontroller is
achieved by means of a serial port connection to a computer that
contains a C++ Hand class. A Console application and a Windows Forms
application that incorporate the Hand class are provided.
Independent finger control was tested by running the hand through a
number of different flexion and grasping tasks, including closing individual
fingers in random order and performing grasping functions in random
sequence. All these commands were successfully completed.
The functionality of the hand's grasping ability was assessed for each of the
grasping functions by three different testing procedures involving variations
in potential object weight, shape, and texture. The hand can hold textures
ranging from a smooth plastic bottle to a plush animal. It can grasp sizes
and shapes such as a credit card, pliers, and a Styrofoam cup. The hand
can grasp objects with masses up to 500 g.
Durability of the fingers was tested through cyclic flexion and overextension500 cycles per finger. The finger/palm interface was tested through impact
testing and was shown to be able to survive impact at 35 mph.
Exit Function
Update finger
status variables
Conclusion
There were a number of initial conditions applied to this project when we
first undertook it. They were systematically met throughout the course of our
work, in a manner that allowed us to finish well within budget:
1. The hand is an anthropomorphic right hand.
2. The total mass is 200 g, well under the 1 kg limit. This was achieved by
moving the motors and electronics off the hand and onto ISAC’s body.
3. Through repeated testing, durability of the system was verified.
4. Independent finger control and the requisite grasping motions are
demonstrated.
5. Feedback, via the touch sensors, is provided.
The design has been tested and implemented on ISAC, and demonstrates
full hand functionality.