Lecture 2: Kinesthetic haptic devices - Stanford...
Transcript of Lecture 2: Kinesthetic haptic devices - Stanford...
ME 327: Design and Control of Haptic Systems Winter 2018
Lecture 2:Kinesthetic haptic devices:
design, kinematics and dynamics
Allison M. OkamuraStanford University
kinematics
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
✓1
✓2✓1
✓2
✓1
✓2
✓1
✓2
Capstan drive
Friction drive
transmission
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
✓pulley
✓sector rpulley
rpulley✓pulley = rsector✓sector
xhandle = rhandle✓sector
xhandle =rhandlerpulley
rsector✓pulley
rsector
rhandle
xhandle
Hapkit kinematics
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
position, velocity, and acceleration
In this class, you will measure position and time data directly from your Hapkit
position
time0
velocity
time0
�t
acceleration is usually too noisyvavg =
�x
�t
vinst =dx
dt= x
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
rpulley
rsector
rhandle
Fhandle
⌧pulley
⌧sector
⌧pulleyrpulley
=⌧sectorrsector
Fhandle =⌧sectorrhandle
Fhandle =rsector
rhandlerpulley⌧pulley
⌧ = Frrelationship betweenforce and torque:
Hapkit force/torque relationships
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
forward kinematics for higher degrees of freedom
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
for mechanical trackers that use joint angle sensors, you need a map between joint space and Cartesian space
fwd kinematics: from joint angles, calculate endpoint position
computing end-effector velocity
• forward kinematics tells us the endpoint position based on joint positions
• how do we calculate endpoint velocity from joint velocities?
• use a matrix called the Jacobian
x = J q
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
formulating the Jacobian
multidimensional form of the chain rule:
x =@x
@q1q1 +
@x
@q2q2 + · · ·
y =@y
@q1q1 +
@y
@q2q2 + · · ·
...
xy
�=
"@x@q1
@x@q2
@y@q1
@y@q2
# q1q2
�
x = J q
assemble in matrix form:
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
compute the necessary joint torques
the Jacobian can also be used to relate joint torques to end-effector forces:
this is a key equation for multi-degree-of-freedom haptic devices
⌧ = JT f
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
how do you get this equation?
the Principle of virtual workstates that changing the coordinate frame does not change the total work of a system
f · �x = ⌧ · �qfT �x = ⌧T �q
fTJ�q = ⌧T �q
fTJ = ⌧T
JT f = ⌧
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
simplified dynamics
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
mass-damper model
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
free body diagram
Fb = bx,
sum forces, equate to inertia:
mx = Fa – Fb
mx + bx = Fa
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
system block diagram
Computer
∑
xd hk
dtd hb
hk
hb
∑ h
m1 ∫ dt ∫ dt
fb
( ) 12−TJ ? cmdτ TJ1 tEnvironmen
Virtual
-
-
+-
+-
fhand
ftotal xh xh xh +- fa +
-
fcmd
xd
-
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
human
device
rendering a wall (in one degree of freedom)
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
1. read the position of the user from the haptic display
2. see if there is a collision with objects in the virtual environment
3. if there is, calculate forces
4. send corresponding torque commands to motors, and change the virtual environment state
classic algorithm for renderingwith an impedance-type device
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
• the virtual environment pretends that the user is holding onto a fictional rigid body though the haptic device handle
• this rigid body interacts with other “rigid” bodies in the virtual environment.
• with impedance control, nothing is perfectly rigid: F = kx
static rigid body interaction
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
rendering a simple wall
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
when the tool is not a point
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
in what ways does this algorithm feel like a real wall?
in what ways does it not?
how could you make it feel more like a real wall?
discussion
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
visual feedback of stiffness
• trick: never show the point penetrating the surface, even if it is
• psychophysical studies have shown that this makes the surface appear stiffer/harder
Actual:
Visual display:
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
displaying impact vibrations
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
Kuchenbecker, et al. 2006Okamura, et al. 2001
aside: wall realism evaluation
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
Kuchenbecker, et al. 2006
kinesthetic device examples
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
Types of Devices
Florian Gosselin, CEAStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
Types of devices
K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
kinesthetic device challenges• competing goals of high stiffness and low mass
• force feedback feels soft - “Nerf World”
• point-based interactions are overly simple
• devices of sufficient quality are expensive
• limited workspace size, degrees of freedom, and actuation power
• usually constrained to sit at a desk
• no programmable tactile feedback
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
fill out the survey http://www.stanford.edu/class/me327/assignments/survey.pdf
(return in class today if not done already)
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018
pay lab materials fee ($50 check made out to Stanford University, by class time Thursday 9/18)
do Assignment #1 http://web.stanford.edu/class/me327/#c3do your 3D printing as early as possible!
attend seminar tomorrow 12-1 pm, with Mark Cutkosky in 420-040 (Jordan Hall)
Assignment 1 due 1/18
1. Readings (no pts.)
2. Design and 3D print your Hapkit handle (10 pts.) Can start tomorrow 1/12
3. Haptics application ideas (10 pts.)
4. Haptic device simulation (30 pts.) We will notify you when the electronic submission folders on Box are ready
Office Hours• Jake: Mondays 10-11 am in 520-145
• Nathan: Wednesdays 3-5 pm in 520-145
• Allison: TBD
• 520-145 (D'Arbeloff Teaching Lab) schedule is online
• You can also post questions to piazza
• You can also email us for an appointment (please email all three of us and be sure to state your available times for the next couple of days)
Haptics Demowith Phantom Omni/Geomagic Touch
Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018