Haptics ME7960, Sect. 007 Lect. 3: Physical Haptic Lect. 3: Physical Haptic Systems Spring 2009 Prof William Provancher Prof. William Provancher Prof. Jake Abbott University of Utah Salt Lake City, UT USA We would like to acknowledge the many colleagues whose course materials were borrowed and adapted in putting together this course, namely: Drs. Allison Okamura (JHU), Katherine Kuchenbecker (U Penn), Francois Conti, Federico Barbagli, and Kenneth Salisbury (Stanford), Ed Colgate (Northwestern), Hong Tan (Purdue), Blake Hannaford and Ganesh Sankaranarayanan (U. Washington), and Karon MacLean (UBC).
77
Embed
Haptics-Utah-Lect3-Physical Haptic Systems.ppt · 2009-01-20 · Haptics ME7960, Sect. 007 Lect. 3: Physical HapticLect. 3: Physical Haptic Systems Spring 2009 Prof William ProvancherProf.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
HapticsME7960, Sect. 007
Lect. 3: Physical HapticLect. 3: Physical Haptic Systems
Spring 2009Prof William ProvancherProf. William Provancher
Prof. Jake AbbottUniversity of Utah
Salt Lake City, UT USAy,We would like to acknowledge the many colleagues whose course materials were borrowed and adapted in putting together this course, namely: Drs. Allison Okamura (JHU), Katherine Kuchenbecker (U Penn), Francois Conti, Federico Barbagli, and Kenneth Salisbury (Stanford), Ed Colgate (Northwestern), Hong Tan (Purdue), Blake Hannaford and Ganesh Sankaranarayanan (U. Washington), and Karon MacLean (UBC).
T d ’ ClToday’s ClassPhysical Haptic SystemsPhysical Haptic Systems
Actuators for haptic/tactile systemsActuator types Actuator examples
SensorsAmplifierAmplifierControl CardOverview of Control Architecture
Overall system viewKinematics
Readings
2
Readings
Ph i l H ti S tPhysical Haptic SystemsBasic Elements of a haptic systemBasic Elements of a haptic system
Physical device (the plant of a control system) Actuators and transmissionS
Discussed today
SensorsHigh power (current) amplifier + power supply (what magnitude of currents?)Controller
Computer ControllerControl (DAQ) Card( )Servo control loop (typicallyat ≥1kHz) Why???
Analog Controller (quite rare)
3
Analog Controller (quite rare)
Illustration from K. J. Kuchenbecker and G. Niemeyer, “Induced Master Motion in Force-Reflecting Teleoperation.” ASME Journal of Dynamic Systems, Measurement, and Control. Volume 128(4):800-810, December 2006.
Actuators and transmissionActuators and transmission
4
Illustration from K. J. Kuchenbecker and G. Niemeyer, “Induced Master Motion in Force-Reflecting Teleoperation.” ASME Journal of Dynamic Systems, Measurement, and Control. Volume 128(4):800-810, December 2006.
Haptic/Tactile Actuator Types Not typically used in haptic Electromagnetic Actuators
Electric motors DC Brushed PM Motors (most commonly used in haptics)DC B hl
systems. Why??
DC BrushlessStepper Motors
Voice coils and linear motorsLawrence force W
/Kg)
Lawrence forcePneumatic Actuators HydraulicSMA r D
ensi
ty (W
SMAPiezoelectricElectro-rheological
Pow
erWeight (Kg)
5
Magneto-rheological (and magnetic particle brakes)… An interesting exception can be found in
Lawrence, D. A., Pao, L. Y., and Aphanuphong, S. 2006. Unwarping Encoder Ripple in Low Cost Haptic Interfaces. In Proceedings of Haptics Symposium (March 25 - 29, 2006), Washington, DC, 12.
Power supplied through brushes generates a magnetic field around the armaturearmature.
The north pole of the armature is pushed away from the north magnet andfrom the north magnet and pulled toward the south, causing rotation.
When the armaturecommutator
When the armature becomes horizontal, the connections between the commutator and the brushes reverse, and the process repeats
PermanentMagnetBrush
7
process repeats.Source: wikipedia.org
[Slide courtesy of S. Bamberg, Univ. of Utah]
DC t tDC motor terms Cogging / Torque RippleCogging / Torque Ripple
Tendency for torque output to ripple as the brushes transfer power (on bad motors this can be felt)
Friction/damping Caused by bearings and eddy currents (mostly, it’s coulomb friction that you feel but at high speedscoulomb friction that you feel, but at high speeds, especially through a geared transmission, viscous friction can begin to dominate)
St ll tStall torque Max torque delivered by motor when operated continuously without cooling (In most applications, you design
8
g ( pp , y gmotors to stay away from stall for efficiency. However, haptic devices are mostly standing still)
High cable tension high dragPossibly high reflected N2 inertia
Pulley
DC Motors with capstan drives for linear motion
ProsCog-less linear transmission
Clark, J. E., Provancher, W. R., Mitiguy, P. “Theory, Simulation, And Hardware: Lab Design For An Integrated System Dynamics Education,” In Proc. of ASME IMECE, Orlando, FL, Nov. 5–11, 2005, p 147–153.
ConsRelatively low forces
TCableIssues with friction transmission of cable on
, p y yTeleoperation and Virtual Environments.” PRESENCE, 4(4):387-402, 1995Murray, A.M. and Klatzky, R.L. and Khosla, P.K, Psychophysical Characterization and Testbed Validation of a Wearable Vibrotactile Glove for Telemanipulation, Presence: Teleoperators & Virtual Environments, MIT Press 12:2, pp. 156-182, 2003
Lawrentz force magnetic l it ti d ilevitation devices
McKibben Artificial MuscleMcKibben Artificial Muscle, pneumatically actuated with similar properties to biological musclesmuscles
Spring-like, flexible, for use within robotic arms and for prosthesis Shadowrobot handHigh force to weight ratioConstructed from internal air bladder and outer braided weave
Shadowrobot McKibben ActuatorshellAs bladder inflates, shell allows for expansion while maintaining cylindrical shape causing the
Shadowrobot. McKibben Actuator
17
cylindrical shape, causing the muscle to shorten http://www.shadowrobot.com/airmuscles/
Shape Memory Alloy (SMA)(Li A t t )(Linear Actuators)
Most commonly in wire form: contracts when heatedMost commonly in wire form: contracts when heatedRepeated strains can be up to 3%
Based upon a solid state phase change (molecular realignment)
Two phases: Martensite and Austenite At low temperatures the material is MartensiteAt low temperatures, the material is MartensiteIf the Martensite material is loaded, this creates a deformation (typically seen as a shortening wire)‘Shape memory’ occurs when heated: the material willShape memory occurs when heated: the material will ‘remember’ its undeformed shape by heating to the Austenite phase
Since the Austenite and undeformed Martensite phases have
20
Since the Austenite and undeformed Martensite phases have the same shape
ProsProsRelatively robustHigh force / High power densityHigh force / High power densitySmall sizeInexpensive and readily available (especially inInexpensive and readily available (especially in wire form)
ConsConsLow efficiency (bad for portable applications)Gets hot (bad for direct contact with skin typically… however, see
Pi l t i A t tPiezoelectric ActuatorsPiezoelectric crystal strains when voltage is appliedPiezoelectric crystal strains when voltage is applied
Strains can be up to 0.1%Details
Direct piezoelectric effect: a piezoelectric material will generate charges (electric field) upon the application of stress along a properly poled directionConverse piezoelectric effect: a piezoelectric material will change its shape upon the application of an electric field (along a poled direction)
[Homma, et al. 2004]Winfield & Colgate (2007)http://lims.mech.northwestern.edu/projects/TPaD/index.htm
Physical Haptic SystemsPhysical Haptic Systems
SensorsSensorsPositionSensor
ForceSensor
25
Illustration from K. J. Kuchenbecker and G. Niemeyer, “Induced Master Motion in Force-Reflecting Teleoperation.” ASME Journal of Dynamic Systems, Measurement, and Control. Volume 128(4):800-810, December 2006.
Rotary motionIncremental and absolute Encoders (also resolvers, but less common)Hall effect sensorPotentiometer (not common in haptics – noisyTachometer (pulse or generator)Tachometer (pulse or generator)Optical gray-scale analog sensors
Linear (translational) motion (less common)Encoders, potentiometer, optical emitter-detector,
AccelerationMEMS (most common now)MEMS (most common now)Piezoelectric and others
3D, 6-DOF motionVision based (Vicon), ultrasonic (Logitech), magnetic (Polhemus, Ascension Flock of Birds), others
( ) ( )Pressure (Tactile) (Also shape, but less common)Capacitive, piezoelectric…
Force sensorsLoad cells (flexure + strain/displacement sensor)FSRs
Number of independent position variablesNumber of independent position variables needed to in order to locate all parts of a mechanismmechanism DOF of motion DOF f iDOF of sensing DOF of actuation DOF does not always correspond to number of joints!
How do they work?How do they work? A small transverse voltage is generated across a current-carrying conductor in the presence of acurrent-carrying conductor in the presence of a magnetic field
(Discovery made in 1879, but not useful until the advent ofuntil the advent of semiconductor technology)
Differentiate positionDifferentiate position advantage: use same sensor as position sensor disadvantage: get noise signaldisadvantage: get noise signal
Alternative f d ti b t ti kfor encoders, measure time between ticks
Noise on velocity signal can create jitter, especially at high K gains (many haptic controllers don’t even includeat high Kv gains (many haptic controllers don t even include damping)Common solutions
Tach/GeneratorVoltage a speed (same source as back EMF)Resolution only as great as your A/D converterNot great at low speeds
Integrate the signal from an accelerometerIntegrate the signal from an accelerometerTime per tick rather than ticks per time
use a special chip that measures time between ticks Especially good to do at slow speedsp y g pFares poorly at high velocities
Filtering (conventional to smooth or Kalman filtering to combine sensor signals)
Digital differentiationD li ith i b filt iDealing with noise by filtering
How do you deal with noiseHow do you deal with noiseFiltering
Example 1: Pre-filter positionsV = P2 – P1
tAverage 20 readings = P1 Average next 20 readings = P2
Example 2: Post-filter Velocities (more common)Example 2: Post filter Velocities (more common)Position reading at time 1 = P1 Position reading at time 2 = P2C l l t i t t l itCalculate instantaneous velocitySet velocity equal to filtered version of instantaneous velocity
FIR filters Median (with defined sample window)Moving average (with defined sample window)
IIR filtersFading memory filterg y
Filtered value = old_value * filter_ratio+ current value * (1 – filter_ratio)
Typical filter ratio 0.8 to 0.9ypCan simulate in Matlab with a step input to figure out equivalent cutoff frequency (function of filter_ratio and sample frequency)
Filter output = 0.667 at τ sec and 10%-90% rise time ~2.2 τTi t t RC 1/ C f f 1/(2 )Time constant τ ≡ RC = 1/ω, Corner frequency ≡ fc = 1/(2 π τ) E.g., 90:10 fading memory filter (i.e., filter ratio = 0.9) has fc = 15.2 Hz when running a 1 KHz servo loop.
Set fc near (typically above) the mechanical time constant
42
Set fc near (typically above) the mechanical time constant of your systemWhy not just set filter_ratio = .999 ???
Illustration from K. J. Kuchenbecker and G. Niemeyer, “Induced Master Motion in Force-Reflecting Teleoperation.” ASME Journal of Dynamic Systems, Measurement, and Control. Volume 128(4):800-810, December 2006.
Illustration from K. J. Kuchenbecker and G. Niemeyer, “Induced Master Motion in Force-Reflecting Teleoperation.” ASME Journal of Dynamic Systems, Measurement, and Control. Volume 128(4):800-810, December 2006.
DAQ/Controller Computer CardUsually a PCI bus card
Common control cardsCommon control cardsSensoray 626 (~$700)
Four 14-bit D/A outputs, up to 6 encoder inputs,…Four 14 bit D/A outputs, up to 6 encoder inputs,…dSpace 1104 (ACE1104CLP, ~$5K)Quanser Q4 and Q8 (≥ $4K)IOTech (e.g., DaqBoard/3001 ~$1K))Servo2go (ISA bus only, but 8 ch. for ~$1K)
Sensoray 626
Computer BoardsDAC and Encoder inputs on separate cards
National Instruments
47
National Instruments DAC and Encoder inputs on separate cards
Illustration from K. J. Kuchenbecker and G. Niemeyer, “Induced Master Motion in Force-Reflecting Teleoperation.” ASME Journal of Dynamic Systems, Measurement, and Control. Volume 128(4):800-810, December 2006.
Other things your controller ill dwill needGrounded interfaces (e g force feedbackGrounded interfaces (e.g., force feedback devices)
Very similar to robots Need Kinematics
Determine endpoint position Calculate velocitiesCalculate velocities Calculate force-torque relationships
Sometimes need Dynamics If you are weak on these topics, you may want to check out Introduction to robotics: mechanics and control by Craig (1989) or notes from your robotics
Think of aThink of a manipulator/ interface as a set of bodiesas a set of bodies connected by a chain of jointsof joints Revolute most common for hapticcommon for haptic interfaces
x = L1cos(θ1) + L2cos(θ2) y L sin(θ ) + L sin(θ )y = L1sin(θ1) + L2sin(θ2)
Sometimes done this way with haptic devices (e g can be usedhaptic devices (e.g., can be used when controlling elbow and shoulder joints of a Phantom Premium since its joint motions cause motion
59
joint motions cause motion independently at the end effector)
x = L1cos(θ1) + L2cos(θ1+θ2)y = L sin(θ ) + L sin(θ + θ )y = L1sin(θ1) + L2sin(θ1+ θ2)
Usually done this way with robots, sometimes with hapticrobots, sometimes with haptic devicesTypically used if you have actuators t j i t (i l ti t ti )
Recall that the forward kinematics tells us theRecall that the forward kinematics tells us the end-effector position based on joint positions H d l l t l it ?How do we calculate velocity? Use a matrix called the Jacobian
R di f t tiReading for next timeV Hayward and K MacLean “Do It Yourself Haptics:V. Hayward and K. MacLean. Do It Yourself Haptics: Part 1.” IEEE Robotics and Automation Magazine, December, 2007, pp. 88-104.
Next lecture will be on “Overview of dynamics/controls & yterminology”
63
Supplemental Information on Ki ti d J biKinematics and Jacobians
Although “Introduction to Robotics” is aAlthough Introduction to Robotics is a prerequisite for this class, we recognize that some of you may be a little rusty withsome of you may be a little rusty with kinematics, hence the pages that follow will provide a refresher as a reference to look atprovide a refresher as a reference to look at on your own
x = L1cos(θ1) + L2cos(θ2) y L sin(θ ) + L sin(θ )y = L1sin(θ1) + L2sin(θ2)
Sometimes done this way with haptic devices (e g can be usedhaptic devices (e.g., can be used when controlling elbow and shoulder joints of a Phantom Premium since its joint motions cause motion
66
joint motions cause motion independently at the end effector)
x = L1cos(θ1) + L2cos(θ1+θ2)y = L sin(θ ) + L sin(θ + θ )y = L1sin(θ1) + L2sin(θ1+ θ2)
Usually done this way with robots, sometimes with hapticrobots, sometimes with haptic devicesTypically used if you have actuators t j i t (i l ti t ti )
Recall that the forward kinematics tells us theRecall that the forward kinematics tells us the end-effector position based on joint positions H d l l t l it ?How do we calculate velocity? Use a matrix called the Jacobian
Most devices will have values for which theMost devices will have values for which the Jacobian is singular Thi th t th d i h l tThis means that the device has lost one or more degrees of freedom in Cartesian Space T ki dTwo kinds:
Si l it M thSingularity Math If the matrix is invertible then it is nonIf the matrix is invertible, then it is non-singular
Can check invertibility if J by taking theCan check invertibility if J by taking the determinant of J . If it is equal to 0, then it is singular gCan use this method to check which values of θ will cause singularities