Outline Introduction Statical virtual sensors Dynamical virtual sensors
Virtual Sensing for Control Ulf Holmberg
[email protected]
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Outline 1
Introduction Towards intelligent sensors Virtual (soft) sensors
2
Statical virtual sensors Car engine virtual sensing and control Ankle gait assistance
3
Dynamical virtual sensors Kalman filters A virtual microphone headrest system A “sensor-free” power assisting wheelchair
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Outline 1
Introduction Towards intelligent sensors Virtual (soft) sensors
2
Statical virtual sensors Car engine virtual sensing and control Ankle gait assistance
3
Dynamical virtual sensors Kalman filters A virtual microphone headrest system A “sensor-free” power assisting wheelchair
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Primary sensors → Intelligent sensors Major defects in primary sensors: - nonlinearity - cross-sensitivity - time (or frequency) response - noise - parameter drift
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Primary sensors → Intelligent sensors Major defects in primary sensors: - nonlinearity - cross-sensitivity - time (or frequency) response - noise - parameter drift Intelligent sensors compensation techniques: - structural compensation - tailored compensation - monitored compensation (‘sensor-within-a-sensor’) - deductive compensation (soft sensors) Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Example of “intelligent” sensors piezo sensors: vibration damping of ski, tennis rackets, etc. encoder: ‘noiseless’ → high gain feedback accelerometer: mechanic-electronic on chip laser: autonomous trucks ultra-sound: submarine navigation, fish detection computer vision: gestures replacing remote control fiber optic sensors: -
strain/displacement force/pressure moisture/temperature/chemical parameters vibration/acoustic emission distributed sensing Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Accelerometer: a micro-electromechanical sensor Applications: air bags, impact detection active suspension adaptive breaks inertial navigation machine control robotics tilt/attitude sensor vibration sensor aerospace, flight control
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Sensor fusion
improve measurand by combination of sensors - range of operation - reliability (fault detection) - accuracy - bandwidth
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Sensor fusion of thermal and visible images
Visible
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Sensor fusion of thermal and visible images
Thermal
Visible
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Sensor fusion of thermal and visible images Thermal
Visible
Fused
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Alternative to sensor fusion Elvira, a Humanoid
Inclinometer only stationary angle sensor Dynamical angle sensing: sensor fusion with rate gyro
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Alternative to sensor fusion Elvira, a Humanoid
Inclinometer only stationary angle sensor Dynamical angle sensing: sensor fusion with rate gyro include sensor dynamics → compliant control design Angle step responses 15
Open loop 10
Closed loop
5
0
-5
-10
0
1
2
3
4
5
6
7
time [s]
Ulf Holmberg
Virtual Sensing for Control
8
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Outline 1
Introduction Towards intelligent sensors Virtual (soft) sensors
2
Statical virtual sensors Car engine virtual sensing and control Ankle gait assistance
3
Dynamical virtual sensors Kalman filters A virtual microphone headrest system A “sensor-free” power assisting wheelchair
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Virtual sensors extract information from other related signals Virtual sensors are model-based estimators static model based on related signal internal state reconstruction (Kalman filter, observer)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Towards intelligent sensors Virtual (soft) sensors
Virtual sensors extract information from other related signals Virtual sensors are model-based estimators static model based on related signal internal state reconstruction (Kalman filter, observer) Example Object not physically accessible: - nuclear reactor, bio reactor - human brain - cylinder chamber in an internal combustion engine Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Outline 1
Introduction Towards intelligent sensors Virtual (soft) sensors
2
Statical virtual sensors Car engine virtual sensing and control Ankle gait assistance
3
Dynamical virtual sensors Kalman filters A virtual microphone headrest system A “sensor-free” power assisting wheelchair
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Optimal ignition control
Optimal control of ignition: Pressure peak at a constant crank angle
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Today’s approach
Drawbacks with feedforward table complex suboptimal hard to calibrate
Why not use feedback from pressure sensors?
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Feedback using pressure sensor
Pressure Drawbacks with pressure sensors expensive (US$ 2000) intrusive short life-time (500h)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensor from spark plug ion current Ion current measurement system
Averaged pressure and ion current Ion current Pressure trace (Scaled)
2
Volts
1.5
1
virtual sensing 0.5
0
−40
−30
−20
−10
0
10 20 Crank Angle
30
Correlation between pressure peak position ion current last peak Ulf Holmberg
Virtual Sensing for Control
40
50
60
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Novel approach - using virtual sensors
Spark plugs as virtual sensors for control of ignition air/fuel ratio exhaust gas recirculation Result: up to 10% reduction in fuel consumption!
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Ion current measurement
Single cycle ion current characteristic phases ignition: coil charging and ringing–disturbance flame front: flame propagation–chemical ionization post flame: temperature increase–thermal ionization Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Pressure peak position—ion current Dynamometer data under constant ignition, speed and load
Ion current signal shows large combustion cycle variations
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
EGR—ion current Average ion current with and without EGR
EGR decreases combustion rate and temperature
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
EGR—ion current Average ion current with and without EGR
EGR decreases combustion rate and temperature → smaller ion signal and delayed peak Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Decreased fuel consumption and NOx emission Three load cases in dynamometer showing EGR reducing fuel consumption NOx emission
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Measure of combustion variability (EGR level) Indicated mead effective pressure (IMEP) Z 1 IMEP = p(θ)dV (θ) Vd Coefficient of variation COV (IMEP) =
σ(IMEP) µ(IMEP)
σ standard deviation µ mean Notice: pressure sensor needed (only in labs!) Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing of combustion variability
Feature based on ion current signal I (ck ) (ck crank angle) M=
n X
I (ck )
“Mass”
k=1
Virtual sensor (find relation) M ∼ COV (IMEP)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing of combustion variability COV(M)
COV(M) 6∼ COV(IMEP) (low EGR) Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing of combustion variability COV(M)
COV(M) 6∼ COV(IMEP) (low EGR) Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing of combustion variability COV(M)
Mean(M)
COV(M) 6∼ COV(IMEP) (low EGR)
Mean(M) ∼ COV(IMEP) (low EGR)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing of combustion variability COV(M)
Mean(M)
COV(M) 6∼ COV(IMEP) (low EGR)
Mean(M) ∼ COV(IMEP) (low EGR)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing of combustion variability COV(M)
Mean(M)
COV(M) 6∼ COV(IMEP) (low EGR)
Mean(M) ∼ COV(IMEP) (low EGR)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virtual sensing and control of combustion variability
Variable of interest (combustion variability) v ≡ COV (IMEP) Virtual sensor vˆ = d1 · M + d2 Controller u(t) = u(t − 1) +
1 (vdes (t) − vˆ (t)) Ti
u(t): EGR valve position at cycle t
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virutal sensing of pressure peak position Ion current samples I (ck ) at crank angle ck Center of mass: T
cM = c m/M
mk = I (ck ) m = [m1 , . . . , mn ]T c = [c1 , . . . , cn ]T
Model pressure peak position θp as θˆp = a · cM + b Interpolate between non-EGR (a1 , b1 , M1 ) and EGR (a2 , b2 , M2 ) a(M) = b(M) =
a2 −a1 M2 −M1 (M b2 −b1 M2 −M1 (M
Ulf Holmberg
− M1 ) + a1 − M1 ) + b1
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Virutal sensing of pressure peak position
6000 cycles of each no-EGR/EGR Measured and estimated pressure peak position [cad] 20
a)
10 0
2000
4000
6000
8000
1e4
cycles
8000
1e4
cycles
8000
1e4
cycles
Measured and estimated pressure peak position [cad] 20
b)
10 0
2000
4000
6000
θˆp = a1 · cM + b1 θˆp = a2 · cM + b2 θˆp = a(M) · cM + b(M)
Measured and estimated pressure peak position [cad] 20
c)
10 0
2000
4000
6000
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Closed-loop step response of combustion variability Road experiment
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Car engine virtual sensing and control - summary
Virtual sensing of pressure peak position θp Virtual sensing of combustion variability v = COV (IMEP) Simultaneous control of θp and v (I-controllers) Reduction of fuel consumption (10%) and NOx Implemented on a SAAB and tested on Highway
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Outline 1
Introduction Towards intelligent sensors Virtual (soft) sensors
2
Statical virtual sensors Car engine virtual sensing and control Ankle gait assistance
3
Dynamical virtual sensors Kalman filters A virtual microphone headrest system A “sensor-free” power assisting wheelchair
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Prosthesis control
Ankle gait assistance Estimate inclination θ Adjust ankle angle ϕ to θ Accelerometer sensor for gait phase detection for θ estimation
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Gait phase detection 2
af (k) = h1 af (k − 1) + a(k) − a(k − 1)
0
g
Band pass filter
a)
−2
Heel lift [Stance stops] |af (kHL )| > γS Toe off [Swing starts] af (kTO ) > γT
g
Foot down [Stance starts] |af (k)| < γS , k ∈W
2
2
4
b)
0 −2
ST FL SW 2
4 s
Stance: Estimate (a → θ) Swing: Control (foot unloaded)
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Ground angle estimation Ground angle estimation Sample estimate ˆ θ(k) = − arcsin(a(k)/g ) Average over stance samples kX HL −1 1 ˆ θ(n) = θ(k) kHL − kFD k=kFD
Average over steps θf (n) =
Ankle reference Ankle error ea (n) = θf (n) − ϕ(n) Threshold f (ea (n)) =
ea (n), |ea (n)| > d 0 else
Reference
N−1 1 X θ(n − i) N
ϕref (n) = ϕref (n − 1) + f (ea (n))
i=0
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Ankle control
deg
5
a)
0 !5
deg
5
100
200
b)
0 !5
100
200 s
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Stair sensing during gait
2-axis accelerometer + gyro
aX = ax cos φ − ay sin φ aY = ax sin φ + ay cos φ − g At Stance ax = g sin φ ay = g cos φ
ax → φˆ = arctan ay
Estimate at Stance ˆ φ¯ = mean[φ]
Ulf Holmberg
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Swing estimation Velocity Integrate gyro during swing
vˆX ,k+1 = vˆX ,k + aX ,k h vˆY ,k+1 = vˆY ,k + aY ,k h
φˆk+1 = φˆk + ωk h, k = 0, . . . , T φˆ0 = φ¯Before (stance)
Compensate drift
Compensate drift φk = φˆk TT−k + φ¯After Tk , k = 0, . . . , T making φT = φ¯After (next stance)
Ulf Holmberg
vX ,k = vY ,k =
T −k ˆX ,k T v T −k v T ˆY ,k
Position xk+1 = xk + vX ,k h yk+1 = yk + vY ,k h
Virtual Sensing for Control
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Classification of stairs
Classification variable (xT > 0.2m) 0.015
yT QT = xT 0.01
Classification Up: γU < QT Horizontal: γD < QT < γU Down: QT < γD
0.005
0 0.4
0.2
0
0.2
0.4
QT
Ulf Holmberg
Virtual Sensing for Control
0.6
0.8
1
1.2
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Foot orthosis strain sensing in hill walking
S1
Estimate inclination from strain from gait cycles at different walking speeds 0.5 −3 degrees 0 degrees 0
−5degrees
Volt
3 degrees
−0.5 5 degrees
0
25
50 % Gait cycle
75
100
Ulf Holmberg
Virtual Sensing for Control
S2
Outline Introduction Statical virtual sensors Dynamical virtual sensors
Car engine virtual sensing and control Ankle gait assistance
Fourier series representation Sample strain from gait cycle s = ( S(t1 ) . . . , S(tN ) )T Introduce Cij = cos(Ωij) Sij = sin(Ωij) 1 = ( 1 . . . 1 )T
C ∈