SUGAR v1.0 - Berkeley Sensor & Actuator Center

advertisement
<MNA/ODEs>
Electrical
&
Mechanical
=
Coupled
 G ce2 C 2 V 
W 
0
ce1 0
 Q   A  Q   B V 
0
mx 
ms  

 

 C1 0
 V 
 0 
0  V 
M
0

Gmna X  Amx X  Bms f X , X , t 
MNA matrix

D  q 0  K  q   F 

 






I  q   I
0  q   0 
MNA solution vector
where
1
B  Gmna Bms
Excitation vector
X  AX  Bf X , X , t 
Input coupling matrix
1
A  Gmna Amx
Multi-domain state vector
System matrix
1st order ODE
G=conductance
ce=constitutional eqs
C=capacitance
V=voltage
Q=charge
M=mass
D=damping
K=stiffness
F=force
q=displacement
Transient Analysis, (TA)
SUGAR uses Matlab’s ODE solvers to integrate the 1st order system. Assuming
the “mass” (G1) of the ode is constant, it’s stored into the solver. So we only
need to return the RHS. Options may be chosen whereby stability and accuracy
may be traded for speed.
Mechanical example:
D M 
G1  

I
0


 dF  dD 

K

G2 
dX
dX 


0

I


 X 
 X   F ( X , X , t )
    G2     

X
0
  
X 

Stored into ODE solver
ODE integration
Gap Test Case
TA / Gap-Closing Actuator
A)
B)
Transient response of a gap-closing actuator. A) shows a plot of displacement as a function of time. The
voltage ramps from 5V at t=5usec to 12V at t=500usec, and then releases. As the voltage increases
linearly during this time interval, the space between the gap decreases at a nonlinear rate due to
electrostatic forces; likewise, the period of oscillation decreases. The amplitude of oscillations decrease
exponentially due to the viscous layer of air between the device and substrate.
TA w/ Reduced Order Modeling
Z. Bai
ROM dim n
ode dim N
Reduced order modeling simulation (blue) superimposed onto our other transient
solver (red) demonstrates its accuracy. The lower dimensionality of the reduced
order system decreased simulation time by a factor 1/60. ROM via Krylov/Lanczos.
Sensitivity Analysis, (SA)
L Schenato, W Wu
Fstatic  K g X  K g nom   K  X
Monte-Carlo
Solves the above equation by drawing many
samples from  probability distributions. It
produces the most likely outcomes of
performance variables.
Ellipsoidal Calculus
Finds the extreme bounds on performance
parameters, i.e. the worst case scenario.
Geometric Variation
Performance possibilities
via Monte Carlo
Worst case scenario
via Ellipsoidal Calculus
L Schenato, W Wu
[Knominal + K] q = Fstatic
<Model Basics>
Mechanical example
3D linear beam matrices
Matrix coordinate transformation
Model functions
EOM
Many microelectromechanical systems can be represented by lumped models
and their performance described by parameterized ODEs such as
M q  Dq  Kq  F (t , q ).
The 3D displacement and excitation vectors for a system of N nodes (6N
degrees of freedom) are
 q1
q
 2
 q3
q  
 q4
 

 q N

 F1 

F 

 2

 F3 
 F  

F

 4

  




 F N 
 F xi
 q xi 
 F
q 
 yi
 yi 
 F zi
 q zi 
 Fi  
where q i  
 M xi
 q  xi 
 M yi
 q  yi 



q
 M zi
  zi 









The qi’s consist of displacement translations and rotations about global axes.
The Fi’s are the corresponding forces and moments. Any electrical elements are
appended onto these elements creating vectors of length Nmechanical + Nelectrical.
Stiffness Matrix
 EA
 L













EA
 L













Ki
EA
L
12EIz
L3
12EIy
6EIy
L3
6EIy
12EIy
6EIy
L2
L3
L2
4EIy
6EIy
2EIy
L
L2
L
6EIz
L2
6EIz
L2
4EIz
L
6EIz
L2
GJ
L
EA
L
12EIz
L3
12EIy
6EIy
12EIy
6EIy
L3
L2
L3
L2
6EIy
2
L
6EIz
L2
12EIz
L3
GJ
L
L2
12EIz
L3
6EIz
L2
GJ
L
GJ
L
2EIy
6EIy
2
L
2EIz
L
6EIz
L2
L
4EIy
L


6EIz 

L2 







2EIz 

L 


6EIz 

L2 







4EIz 

L 
G
E
2 * (1   )
J 
2 ( wh ) 3
7(w 2  h 2 )
wh 3
12
hw 3
Iz 
12
A  hw
Iy 
K i   1 21 2
J = polar 2nd moment o
L = length
E = Young’s modulus
G = Shear modulus
Iy = moment about y-ax
Iz = moment about z-ax
h = layer thickness
w = width
 = Poisson’s ratio
Ki = stiffness matrix
Mass Matrix
Mi
1
3

13

35

13


35



11L


210

11
L

210
 AL
1
6

9

70

9


70




13L

420


13
L


420
1
6
I y  Iz
11L
210
11L
210
9
70
9
70
3A
13L
420
L2
105
L2
105
I y  Iz
6A
13L
420
1
3
I y  Iz
6A
13L
420
 L2
140
13L
420
13
35
13
35
I y  Iz
3A
 L2
140
11L
210
11L
210


wh3
Iy 
13L

12
420 
hw3
13L

Iz 

420
12

A  hw


Mi 1212
 L2


140
2 
L 
140   AL


 = density
11L 

210 
L = length
11L


w = width
210

h = layer thickness


Iy = moment y-axis

L2

105
Iz = moment z-axis

L2 
Mi = mass matrix
105 
Couette Flow Damping Matrix
The ith damping matrix is given by
Di 
Lw


= viscosity,  = fluid layer thickness,
Di = damping matrix
Coordinate Transformations
Mi, Di, and Ki element matrices must be rotated into global coordinates before
assembled into system matrices.
T

directioncos


cos
direction

i  

directioncos


cos
direction


 sin y 
  cos z sin z  cos y
cos xX cos xX cos xX  1



1
cos x sin x   sin z cos z  
directioncos  cos yX cos yY cos yY   


cos zX cos zZ cos zZ    sin x cos x  
cos y 
1 sin y

E.g.
T
qglobal  Tqlocal , Fglobal  T T Flocal , Kglobal  T T KlocalT
Instead of 9 direction cosine angles, SUGAR requires x, y, z. Local reference
implies having the x-axis glued along the length of the beam, z-axis along
thickness, y-axis along width, and using the right-hand coordinate system.
Beams originate lying in the xy-plane (substrate), pointing along the positive x
axis.
Rotation / Positioning
y
node1
oy
y
node2
x
x
z
Beam initiates along the X axis.
The global XYZ and local xyz axes coincide.
Think of the XY-plane is the substrate.
z
Step 1: +Rotation about local y.
Local x & z are repositioned
in the global XY-plane.
x
x
ox
y
y
oz
z
Step 2: +Rotation about the new local z.
Local y & x are effected.
z
Step 3: +Rotation (twist) about local x.
Local y & z are effected.
3 positive rotations (right hand rule) are shown here.
Important: rotations in SUGAR are performed in the order of y-z-x!
Model Functions
function [output] = MF_beam(flag, R, params, x, t, nodes, varargin);
switch(flag) case 'vars‘
output.dynamic = {1 {‘x’ ‘y’ ‘z’ ‘rx’ ‘ry’ ‘rz’};
2 {‘x’ ‘y’ ‘z’ ‘rx’ ‘ry’ ‘rz’}};
E.g.
case ‘M’
Residual stress
Thermal expansion
output = beam_matrices('M', params);
Accelerating frames
case ‘D’
Electrostatic force
output = beam_matrices('D', params);
Nonlinear effects
case ‘K’
output = beam_matrices('K', params);
case ‘F’
[F, dFdx] = compute_forces(flag, params, x, t); output = F;
case ‘dFdx’
[F, dFdx] = compute_forces(flag, params, x, t); output = dFdx;
ETC…
Modelfunctions contain a model’s information. The output
(e.g. stiffness, electrostatic force, stress) is determined by the flag.
<Accelerating Frames>
For non-inertial reference frames, SUGAR solves the following ODE
Mq  Dq  Kq  Felectrostatic (t , q )  Finertial (t )
where the 6Nx1 inertial force vector is modeled by
  M  (  r )  2 M  r  M  r
FInertial  MR
M = mass matrix
R(t) = substrate position vector
(t) = angular frequency vector
r(t) = node position vector
Finertial = inertial forces
Understanding Inertial Forces
Fcoriolis

m
Fcentrifugal
Fcentrifugal   m  (  r )
Perpendicular to rotation axis
Ftransverse
0’
r
r
m
Fcoriolis  2 m  r
only if node is moving;
perpendicular to velocity

R
m
Ftransverse   m  r
If angular acceleration
Ftranslational
m
0’
0

Ftranslatio nal  mR
If substrate translates
Fnet   FElec   FInertial
Simple Gyro on a Rotating Substrate
Z

t1rad/sec
E
Ex(t)
-X
Y
The gyro is first set in motion along the y-axis. The
plots show the Ey and Ex displacements of node E as
functions of time. Midway through the simulation the
left anchor is set to spin about the z-axis at 1 rad/sec.
Though this angular velocity has almost no affect on
Ey, Ex is significantly affected.
Ey(t)
40us
<Residual Stress>
For residual stress , one static equilibrium state for a MEMS device is
Kq  FStress
FStress  A  A  wh
  process | netlist
 > 0 tensile (shortening),  < 0 compressive (elongation)
For strain gradient , one static equilibrium for the MEMS system given by
Kq  M Stress
M  EI y 
 > 0 concave upward,  < 0 concave downward
where
A = cross sectional area
I = moment of inertia about y-axis
= stress.
=strain
Residual Stress Gauge
8.4um
C Pan, W Hsu
SUGAR simulation of residual stress. MEMS devices are
often subject to residual stress effects which may affect
device performance. Simulated deflection of this residual
stress gauge is within 0.59% of measured data.
y=8.35um
Residual Stress Gauge
C Pan, W Hsu
ADXL-05 / BiCMOS
Close-up view of the residual strain effects.
Analog Devices
<Thermal Expansion>
For thermal expansion, the static representation for a MEMS devis is
Kq  FThermal
FThermal  A 
  ET
A  wh
Note: Average beam temperatures specified in the netlist.
where
E = Young’s modulus
T = Tbeam – Tambient
= coefficient of thermal expansion
= stress
B Allen
Heatuator Simulation
T=600C
T=150C
T=150C
y=4.82u
T=600C
In the real device there’s a heat distribution along the hot and cold arms. Averaging the
temperature along the beam produces the same linear thermal expansion. SUGAR is within
0.5% of the measured deflection done by B. Allen, Hilton Head 1998.
<Electrostatic Gap>
L
FElec,i   dxH i ( x)hp( x)
0
 1  oV  (d ( x))
p( x) 
2
2
d ( x)
2
This integral finds the equivalent nodal
force and moments caused by the
distributed surface forces, where H(x) is
the Hermitian shape function.
For this case, p(x) is the electrostatic
pressure.
TA Pull-in (ramp)
Smooth V(t) = 0V to 20V ramp.
Pulled in before it got to 20V
Abrupt V(t) = 11V to 15V, ramp.
Nonlinear resonance, then pull-in.
<Digital to Analog Converter>
R Yeh, KSJ Pister
Using a subnet description for device building blocks, the nestlist description of this 4-bit
MEMS DAC was reduced to just 14 lines text. SEM (left) and SUGAR visualization (right).
DAC Data
(nonlinear beams)
Output displacement vs digital input of a DAC. The nonlinear beam
model matches measured data to within 5%.
<Mirror Scanner>
KSJ Pister
Two-degree-of-freedom optical scanner prototype.
Mode 1 = 739Hz, mode 2 = 745Hz.
Projection Display
Texas Instruments
Electrostatic gap
TI mirror for flat panel projection displays.
Electrostatic gap electrodes (not visible) are underneath the plates.
The mass is a little off due to the overlapping plates.
Mode Analysis of a Torsional Mirror
a)
b)
BSAC
c)
d)
The mode shapes and frequencies
of modes 1, 3, 4 and 6 are shown
in Figures a) through d).
Respectively they are 15.5kHz,
31.1kHz, 41.7kHz, and 123kHz.
< Gyro Modes>
Design by Inertial Sensors Group UCB
Seshia, Howe
Mode Analysis of Accelerometer
LLNL
Design provided by: Jonathan Simon, LLNL
a)
b)
c)
a) schematic design. b) first mode
shape corresponding to 27.73 Hz from
SUGAR. c) third mode corresponding
to 133.02 Hz from SUGAR, mMatches
Simon’s analysis 132.46 Hz within
0.5%
Induced Current
(Multimode resonator)
R Brennen
This demonstrates steady-state analysis applied to a multi-mode resonator. The left figure
shows the Bode and phase plot of the current induced on the sensing comb as a function of
the frequency of the voltage at the driving comb of the figure on the left. The measured
modes are with in 5% of experimental frequency given by Brennen et. al.
<Nonlinear model>
y
EI
s = distance along the beam from node 1 to node 2
r(s) = radius of curvature at s
y(s) = angle of the beam at s with respect to the horizontal
M(s) = moment at s
E = modulus of elasticity
I = moment of inertia about the z-axis (out of plane)
x and y are the in-plane horizontal and vertical axes with the origin at node 1.
Fo = external force at node 2
L = beam length
 = projected beam shortening
L
x
1
ds
dy
F0
Y

dx
2
L-

Y0
Nonlinear stiffness model
To obtain nonlinear stiffness, we first assume that the curves can be approximated
by a third order polynomial of the form
2
F0 L
q
q
q
 A  B  C    D 
EI
L
L
L
2
3
were q stands for , x, y, etc. Seeing that the solution has odd symmetry, we only
need to keep constants B and D, which also eases iterative computations.
Absorbing the material and geometric terms into B and D, respectively K1 and K2,
we find that
F0  K1,i q  K2,i q
3
The coefficients of these polynomial curves are associated with the linear
stiffnesses K1,i and the cubic nonlinearities K2,i.
In order to maintain accuracy, it is applied in a continuous piecewise fashion by
dividing the total physical range into, say, 4 intervals, were i(q)=[1,4]. (see plot)
Nonlinear Model Results vs Theory

L
F0 L2
EI

L
y0
 /2
Circles are theory. The red, blue, & green curves are nonlinear model
<9-Node Plate Model> Excitation 1
9-Node Plate Model, Excitation 2
Conclusion
SUGAR is . . .
Simple
Text netlist description
Matlab environment
Conclusion
SUGAR is . . .
Accurate
Simulated results < 5% of
actual device performance
e.g. gap pull-in, Heatuator,
residual stress, multimode
resonator
Conclusion
SUGAR is . . .
Extensible
User-definable
modelfunctions
Easy to add more
Matlab functionality
Conclusion
SUGAR is . . .
FREE!
www-bsac.eecs.berkeley.edu/~cfm
cfm@bsac.eecs.berkeley.edu
some near-term goals
CIF in/out, Squeeze film damping, Nonlinear
stiffness, Curved beams, Plates, Buckling, Fringing
fields, Trapezoidal beams, Initially loaded beams,
Capacitive sensing, Friction, Collisions, Charge
transfer, Noise analysis, Genetic Algorithms for
design optimization, AutoMacroLevel Algorithms for
large dynamic systems, Joints, Strain limiting, Heat
transfer, Plasticity, Piezoelectric, Piezoresistive,
Resistance(temperature), Thermoelectrics, Multiple
time scale handling, Fluidic systems, Flight,
Performance analysis, Assembly, Magnetics, Rigid,
Bimetalic,
Shape-memory,
charge
leakage,
repulsion, Millennium web service, etc.
Download