`DEMO001
`
`Education:
`• University of Pennsylvania, BSEE (1983-87)
`• University of Oxford, DPhil (1987-91) [Mobile Robotics]
`History of MIT Positions:
`• MIT Sea Grant AUV Lab 1991-1996
`• Dept. of Ocean Engineering 1996-2004
`• Dept of Mechanical Engineering in 2005-present
`• Computer Science and Artificial Intelligence Laboratory
`Current Responsibilities:
`• Area Head for Ocean Science and Engineering
`• Director, Ford-MIT Alliance
`Research Interests:
`• Mapping, Navigation, and Control of Autonomous Marine Vehicles
`• Mobile Sensor Networks
`
`PGS Exhibit 1097, pg. 1 PGS v. WestemGeco (IPR2014-00688)
`
`
`
`Source Code
`
`Leonard
`DEMO002
`
`Source code is a set of computer instructions
`
`Includes comments
`
`Written using a human-readable computer language
`
`#include <stdio.h>
`
`/* a simple C program to print out "hello, world" */
`
`main()
`{
`printf("hello, world\n");
`}
`
`PGS Exhibit 1097, pg. 2 PGS v. WestemGeco (IPR2014-00688)
`
`
`
`DigiFIN: Lateral Control Software Overview
`
`u
`
`
`
`Streamer
`Separations
`
`Commanded
`DigiFIN
`Wing Angles
`
`PGS Exhibit 1097, pg. 3 PGS v. WesternGeco (IPR2014-00688)
`
`JL-3
`
`
`
`DigiFIN Hardware & Software
`
`1101101110
`
`01100011101110000101\
`
`0011110000111:
`
`7
`
`liioooooiiiooiioooiiiioiiiirjooiiiooooioiooiooooini
`
`Hardware
`• Sensors
`- Temperature
`- Depth
`- Wing Angle
`- Pitch
`- Roll
`• Motor
`• Microcontroller
`
`Software
`• C Language
`• Assembler
`• Fin Commands
`• Backoff Algorithm
`• Out Of Bounds
`Conditions
`
`MOTOR CONTROL
`FUNCTION
`
`POWER SUPPLY +15V
`MOTOR VOK STATUS
`MOTOR H-8RIDGE
`CURRENTSENSE
`DIRECTION CONTROL
`
`Tx Data
`
`Rx Data..
`
`Control
`
`INCREMENTAL
`POSITION
`ENCODER
`
`ENHANCED
`LATERAL CONTROL
`MOTOR MODULE
`
`POWER CONTROL
`A, B, PWR FILTERS
`QUADRATURE
`DECODER
`MOTOR CONTROL
`(CPLD)
`
`LATERAL STEERING CONTROL FUNCTION
`
`PTX227, DigiFIN Product Specification, at 11
`PGS Exhibit 1097, pg. 4 PGS v. WesternGeco (IPR2014-006^8)
`
`
`
`DigiFIN: Back Off Algorithm
`
`' I
`
`n
`
`Zero Force: Ro^Negate* Fm^Zero */
`Vdcaf orce-0:
`
`r No vertical force component because Rn*Ze«> */
`if(Vsrtc*cn*-K))
`
`r ab»(mSne) V
`if(mSine<0 0]
`mSin»B -mSinv:
`muS -10;
`n*rt -• (0 5'mS**):
`r Calculate value of max magnitude */
`mSine-atfi_deg<ab*_theta>0 01) r Do not let $ine<0)-C V
`r abs<msiie) V
`if(mS<na<0 0)
`mSvw* -mSm.
`imu "26 ;({1 0-a£*_»ncle_6eg/S0 0)'rnSm*):
`r Absolute value of max 7
`amax • amax<0.0 ? -amax: amax,
`r Calculate adjusted angle V
`adj_irgie - astgn'friA'anglejfeg.
`r Absolute vriue of adj^ai^e V
`abs_adj_angte • adi_angle<0 0 f -adj_argle ad|_angte;
`r Umi magnitude of adjualed Angle 7
`if(ab»jrti_angle>amaa)
`atij angle • adj_angle<0.0 "> -enax : amax:
`
`)
`«k*
`(
`
`J-
`!***** Qgp^ AWare with large Depth Error *****!
`/* Depth Error(ft) = Depth - Depth Target
`Depth Error Positive:
`1) Too deep
`2) Need upward force
`Depth Error Negative:
`1) Too Shallow
`2) Need downward force
`
`Upward Force: sign(Roll) * sign(Fin) = -1
`Downward Force: sign(Roll) * sign(Fin) = 1
`
`If vertical force direction increases depth error,
`we must reduce vertical force.
`
`Vp'trui^ceM.
`
`r Reduce Vertical Force if Force Increases Depth Error *7
`I* if(Too Deep and Vertical Force is Downward)
`OR
`if(Too Shallow and Vertical Force is Upward)
`7
`else if(((DepthErrorFeet>=0) && (VerticalForce==1)) ||
`((DepthErrorFeet<0) && (VerticalForce==-1)))
`
`{
`
`adj_artgl* • Mign'an^te^deg
`
`tF9G*n[0H)*/
`
`Fn Angle back to MathScaie A
`^^fciBJrtScj9ic^Ti*ftOrt}TcUal!iS^a(
`
`km
`
`_Uat hScaM?,
`
`Sr>e
`net, Approxvnabcn for
`jpscrmsl fne«rwfire^*h*r»i.«ri
`;* <**3^5 - (**5)15' - (**7^7! •
`
`few terms a'o fti
`
`jv-uwei cJ K. k. or*/ me
`|a»*appi9
`p*2 manj te rm are to
`I| you wfeih lo hart* more tnacr )u«t » It* •
`
`/*" Vertical Force Decreases Depth Error "7
`/* if(Too Deep and Vertical Force is Upward)
`OR
`if(Too Shallow and Vertical Force is Downward)
`7
`
`PTX271 at IONSC2217
`
`PTX27! at IONSC2218
`PGS Exhibit 1097, pg. 5 PGS v. WestemGeco (IPR2014-00688)
`
`JL-5
`
`
`
`DigiFIN: Lateral Control Software Overview
`
`Separations
`
`Commanded
`DigiFIN
`Wing Angles
`
`PGS Exhibit 1097, pg. 6 PGS v. WestemGeco (IPR2014-00688)
`
`JL-6
`
`
`
`Kalman Filter
`
`Leonard
`DEMO007
`
`A Kalman filter is an algorithm the produces estimates for a system
`that changes over time by combining measurements with predictions
`from a dynamic model.
`
`Predict
`
`Update
`
`PGS Exhibit 1097, pg. 7 PGS v. WesternGeco (IPR2014-00688)
`
`JL-7
`
`
`
`ORCA's Kalman Filter
`
`Leonard
`DEMO008
`
`Description : The Kalman Filter software held in directory ncn/kf has been written
`in such a manner as to be able to solve more than one KF problem,
`i.e. it is generic.
`In order to solve a particular problem, this generic Kalman Filter
`software must be populated with data and equations which fully
`specify the particular problem which is to be solved. This process
`can be thought of as the compilation or building of the problem specific
`Kalman Filter. This module contains routines to perform this compilation
`process.
`
`PTX280
`
`PGS Exhibit 1097, pg. 8 PGS v. WesternGeco (IPR2014-00688)
`
`JL-8
`
`
`
`Prediction In ORCA
`
`Leonard
`DEMO009
`
`PREDICTED
`POSITION
`
`)
`/
`
`PGS Exhibit 1097, pg. 9 PGS v. WestemGeco (IPR2014-00688)
`
`JL-9
`
`
`
`Prediction In ORCA
`
`
`/* state */ /* state */
`
`ZMatSetEK S, par->ix.ilat, I, ZMatSetEK S, par->ix.ilat, I, s.lat V dT*s.1atdot};
`ZMatSetEK S, par->ix.ilatdot, 1, s.latdot);
`ZMatSetEK S, par->ix.ilon, 1, s.lon + dT*s.londot);
`ZMatSetEK S, par->ix.ilondot, 1, s.londot);
`
`PXT282
`
`S. l a t
`
`j
`
`
`
`X TIME X
`
`SPEED
`
`
`
`PRIOR PRIOR
`
`POSITION + ( POSITION + (
`
`©
`
`PREDICTED
`POSITION
`
`®
`
`J
`
`PGS Exhibit 1097, pg. 10 PGS v. WestemGeco (IPR2014-00688)
`
`JL-10
`
`
`
`Latitude And Longitude
`
`Boston
`42.3583° N, 71.0603° W
`
`Houston
`29.7631° N, 95.3631° W
`
`PGS Exhibit 1097, pg. 11 PGS v. WestemGeco (IPR2014-0068 8)
`
`
`
`ORCA's Kalman Filter
`
`Leonard
`DEMO012
`
`50 Feet
`
`I
`
`P
`
`i
`
`n . ..
`i
`/
`
`"—'
`
`v
`
`5 Feet Per Second Velocity (Speed + Direction)
`
`V
`
`Previous
`Position
`
`V
`
`5 feet per second x 10 seconds = 50 feet
`
`Best Estimate
`Of Position
`
`Predicted
`Position
`
`J
`
`PGS Exhibit 1097, pg. 12 PGS v. WestemGeco (IPR2014-00688)
`
`JL-12
`
`
`
`Acoustic Ranging
`
`Leonard
`DEMO013
`
`5 Feet
`
`J
`
`PGS Exhibit 1097, pg. 13 PGS v. WestemGeco (IPR2014-00688)
`
`JL-13
`
`
`
`ORCA's Kalman Filter (Rejection)
`
`Leonard
`
`DEMO014
`
`Measured
`Position
`
`PGS Exhibit 1097, pg. 14 PGS v. WesternGeco (IPR2014-00688)
`
`JL-14
`
`
`
`ORCA's Kalman Filter (Rejection)
`
`Leonard
`
`DEMO015
`
`, Jl|t
`
`Previous
`Position
`
`Best Estimate
`Of Position
`Predicted
`Position
`
`Predicted Position becomes best estimate
`
`i, JU
`
`x > /
`
`PGS Exhibit 1097, pg. 15 PGS v. WestemGeco (IPR2014-00688)
`
`JL-15
`
`
`
`ORCA And The Lateral Controller
`
`Leonard
`DEMO016
`
`ORCA sends the Lateral
`Controller streamer separations
`
`ORCA
`
`Lateral Controller
`
`PGS Exhibit 1097, pg. 16 PGS v. WestemGeco (IPR2014-00688)
`
`
`
`Modes Of Operation In Lateral Controller
`
`I
`
`j
`
`:
`I I
`I
`
`
` I
`I
`/
`/ /
`M (
`I
`I
`'
`•/ '
`1
`/
`/
`7
`/ 1
`i
`
`I
`'
` 1
`•
`*
`'
`i
`Hi
`1
`1
`
`I
`'
`i
`
`i
`
`
`
`I
` tf
`I
`1
`1
`I
`i
`vi f i
`I
`
`I
`
`1
`i
`•
`
`i
`
`I ! 1
`
`'
`
` •
`
`
`
`•
`
`v
`
`\ \
`
`I I I
`I M
`1 \
`\
` \
` \
` \
`i
`I
`\
`i d i
`I
`I
`:\
`
`
`I
`
` r
`1
`i Kf
`i
`
`\ | \
`\
`\
`
` \
`*
` \
`'
`\
`v
`
`\
`
`\ \ \ \ \
`\
`\ \ A
`\ A \ "A'"A
`\
`\ A
`\ A
`•AUftwKltlM
`\ \
`\ \
`\
`\ \
`\ A V
`
`HMMMjlM
`
`
`
`\
`
`
`
`\
`
`\
`*
`
`i
`
`\
`
`MUdUUUUUhU
`i f - \
`, \ \
`\ ]
`\ : \ \ ,
`•fNHUUUyuUU
`\ \ \ \
`\
`\ \ \
`\
`\
`\
`\
`\ V \
`\
`\
`\
`\
`\
`\
`\
`\
`
`
`
`
`
`Even Separation Mode
`
`Fan Mode
`
`Ghost Mode
`
`PGS Exhibit 1097, pg. 17 PGS v. WestemGeco (IPR2014-00688)
`
`JL-17
`
`
`
`Lateral Controller: Even Separation Mode
`
`Leonard
`DEMO018
`
`< = • i 3 -
`
`A
`
`.
`
`<=> • <=>
`
`<=•'
`
`!"=>
`
`<=i
`
`Hj
`
`PGS Exhibit 1097, pg. 18 PGS v. WestemGeco (IPR2014-00688)
`
`JL-18
`
`
`
`Lateral Controller: Fan Mode
`
`HJ H '
`
`/
`
`/
`
`i
`/
`
`i
`i
`
`ii
`i
`
`I
`/
`4 - H I i
`/
`i
`i
`Mmbmi
`/
`/" r i
`!
`/
`i
`i
`
`/
`
`/
`r
`
`
`
`1
`
`i
`
`l
`
`
`
`
` i
`
` i
`l
`I
`
` f
`
`i
`I
`
`l
`
`
`
`I
`
`'
`
`'
`
`•
`
`l
`
`
`
`i
`
`'
`
`I
`
`I
`
`'
`
`l
`
`
`
`\
`
` \
`
` \
`
`
`
`1
`
`1 300^. '
`
` \
`-
`I 0 \ I ;.
`U i; 1, V
`
`i
`
`i \ | \
`
`I 1 I | \
`
`
`
`I
`
`
`
`i
`
`1
`
`PGS Exhibit 1097, pg. 19 PGS v. WestemGeco (IPR2014-00688)
`
`JL-19
`
`
`
`DEMoo2o
`
`Lateral Controller: Ghost Mode
`
`Leonard
`
`Lateral Controller
`
`I
`
`I
`
`[
`
`/ / /'
`/‘
`/“
`/' / /
`/ §/
`3/ / _/ / /' / / 1/’ _/
`/‘
`_/
`_/ _/
`v/V
`/
`_/
`‘/4 / A/V _/
`/ /" / /' /' / /t / J/t /
`/////t ////'/
`/' /' f" /"
`1/
`__/
`/‘L /L" f f
`_//V / // /// /
`/
`1/ f /' /
`/'
`V?/t /‘ _/ f
`’ V//////////'
`_/
`_/
`9/‘ /' f 7/" /' /‘ _/ /'
`_/ / /
`/
`/"
`/t /
`/'
`/’
`/
`/ /. /.r /t /.t /r
`/. f /.
`
`[
`
`I
`
`PGS Exhibit 1097, pg. 20 PGS v. WestemGeco (IPR2014-00688)
`
`“'2°