Lecture 2: Kinesthetic haptic devices - Stanford...

Preview:

Citation preview

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

Recommended