35
ME 327: Design and Control of Haptic Systems Winter 2018 Lecture 2: Kinesthetic haptic devices: design, kinematics and dynamics Allison M. Okamura Stanford University

Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

  • Upload
    hadat

  • View
    273

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

ME 327: Design and Control of Haptic Systems Winter 2018

Lecture 2:Kinesthetic haptic devices:

design, kinematics and dynamics

Allison M. OkamuraStanford University

Page 2: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

kinematics

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 3: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

✓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

Page 4: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

✓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

Page 5: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 6: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 7: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 8: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 9: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 10: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 11: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 12: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

simplified dynamics

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 13: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

mass-damper model

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 14: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 15: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 16: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

rendering a wall (in one degree of freedom)

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 17: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 18: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

• 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

Page 19: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

rendering a simple wall

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 20: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

when the tool is not a point

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 21: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 22: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 23: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

displaying impact vibrations

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Kuchenbecker, et al. 2006Okamura, et al. 2001

Page 24: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

aside: wall realism evaluation

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Kuchenbecker, et al. 2006

Page 25: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

kinesthetic device examples

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 26: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 27: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 28: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 29: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

Types of Devices

Florian Gosselin, CEAStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 30: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

Types of devices

K. KuchenbeckerStanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018

Page 31: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 32: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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)

Page 33: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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

Page 34: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

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)

Page 35: Lecture 2: Kinesthetic haptic devices - Stanford …web.stanford.edu/class/me327/lectures/lecture02-kinesthetic.pdf · Lecture 2: Kinesthetic haptic devices: design, ... relationship

Haptics Demowith Phantom Omni/Geomagic Touch

Stanford University ME 327: Design and Control of Haptic Systems © Allison M. Okamura, 2018