`
`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. WesternGeco (IPR2014-00689)
`
`JL-l
`
`
`
`Source Code
`
`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-00689)
`
`JL-2
`
`
`
`DigiFIN: Lateral Control Software Overview
`
`Leonard
`DEMO003
`
`iu:
`
`C-H
`Orca •
`
`Commanded
`DigiFIN
`Wing Angles
`
`PGS Exhibit I
`097, pg. 3 PGS v WestemGeco (IPR2014-00689)
`
`JL-3
`
`
`
`DigiFIN H ardware & Software
`
`m — " *
`1101101110
`•Ewj *
`
`i
`
`HI r-
`oiioooiiioinooooioIV
`
`7 / /
`
`ooiiiiooooin:
`
`lllOOOOOlllOOllOOOllllOlllldiOOlllOOOOlOlOOlOOOOllll
`
`Hardware
`• Sensors
`- Temperature
`- Depth
`- Wing Angle
`- Pitch
`- Roll
`• Motor
`• Microcontroller
`
`r Software
`
`• C Language
`• Assembler
`• Fin Commands
`• Backoff Algorithm
`• Out Of Bounds
`Conditions
`
`MOTOR CONTROL
`FUNCTION
`
`POWER SUPPLY +15V
`MOTOR VOK STATUS
`MOTOR H-BRIDGE
`CURRENT SENSE
`DIRECTION CON TROL
`
`Tx Data
`
`Rx Data.
`
`Control
`
`INCREMENTAL
`POSITION
`ENCODER
`
`H—•
`
`ENHANCED
`LATERAL CONTROL
`MOTOR MODULE
`
`POWER CONTROL
`A. B, PWR FILTERS
`QUADRATURE
`DECODER
`MOTOR CONTROL
`(CPLD)
`
`LATERAL STEERING CONTROL FUNCTION
`
`PTX227, DigiFrN Product Specification, at 11
`PGS Exhibit 1097, pg. 4 PGS v. WesternGeco (IPR2014-006^9)
`
`JL-4
`
`
`
`DigiFIN: Back Off Algorithm
`
`Leonard
`DEMO005
`
`s
`
`r Zero Force: FtaNNe^at/e F in-Zero 7
`Veftjcrforce-O;
`
`r Nc verocai krx componert because Fir-Zero 7
`tKVarftcrfcfc*"^)
`e<jj_*rVte - «iQn*a<tflle_defl:
`i*" ftkiaM WnCmI
`f»rsa bKi***** 0»tfn £r x* ">
`" <|1» Ck»» :JPsJ
`m f t-v« vOvafiMitf!:
`OR
`
`• awpn'tangie.dev? 0),
`
`r at»<mSne} 7
`if(mSine<0 0}
`mSirw" -mSine;
`mud - 1,0,
`muR -• (0 5"mSme):
`r Cerate vakie ol rrua maoniude 7
`mSine-«i_cJeg(«b»_<hrtrK) 01) r Do rxrt M i»e<0K>">
`r efc»(mSine) 7
`4(mSine<0 0)
`mSme» -mSine;
`amax "26 /((1 0-atx_angk_deg/80 0)*mS«e):
`r Absolute value ol max 7
`smu « amax«0 0 ? -amax : amax;
`r Ctk.Jate adjusted anQle 7
`ad]_angie - aai8n*nnuirangle_deg;
`r AbsoUe vAit of adLarjgte V
`abs_adj_anQte • adi_anQie<0 0 7 -adj_wg<« a dj_angte;
`r Umi magnitude of adjusted Angle 7
`f( aS»_aGj_«r»gte > «rruw)
`acj_ar>gle • adi_«ngle<0.0 ? -anrax: amax:
`
`rots • fcwtlM &»»* Tart**
`
`I***** Qep^ Aware with large Depth Error *****!
`I* 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.
`
`Ve-ncarofceM
`
`« wgn'injie fleg
`
`bf9G»n(0)»C*/
`
`"C^verl Fin ArtflJe back le MilPSc-te K
`
`jbrn Angle_MathScai»:
`
`na ApsfCximalicn fef competing Sue
`: w t*m ol the w*o tuicten
`• * i
`- (**3X3! - (j^yS' - (x*7y7! •
`Mluev ot i. only the dm tew lemw a o fx
`tii dpptuacne* p*2 many wrrm^eae
`j i'Oy *-v*r K> have more than jusl a few
`
`}
`f** Reduce Vertical Force if Force Increases Depth Error **/
`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)))
`
`{
`
`/*** Vertical Force Decreases Depth Error **7
`/* if(Too Deep and Vertical Force is Upward)
`OR
`if(Too Shallow and Vertical Force is Downward)
`
`PTX271 at IONSC22I7
`
`PTX271 at IONSC2218
`PGS Exhibit 1097, pg. 5 PGS v. WestemGeco (IPR2014-00689)
`
`JL-5
`
`
`
`DigiFIN: Lateral Control Software Overview
`
`Streamer
`Separations
`
`Lateral Controller
`
`• Commanded
`DigiFIN
`Wing Angles
`
`k
`
`PGS Exhibit 1 097, pg. 6 PGS v. WesternGeco (IPR2014-00689)
`
`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.
`
`PGS Exhibit 1097, pg. 7 PGS v. WesternGeco (IPR2014-00689)
`
`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-00689)
`
`
`
`Prediction In ORCA
`
`Leonard
`DEMO009
`
`
`
`TIME TIME
`
`m m
`
`X
`
`SPEED
`
`J ~ >
`
`PREDICTED
`POSITION
`
`®
`
`PGS Exhibit 1097, pg. 9 PGS v. WestemGeco (IPR2014-00689)
`
`JL-9
`
`
`
`ttt
`
`Prediction In ORCA
`
`Leonard
`DEMO010
`
`1
`—r r
`_
`/* state */
`ZMatSetEl( S, par->ix.ilat,1, s.lat * dT*s.latdot);
`ZMatSetEl( S, par->ix.ilatdot, 1, s.latddt);
`2MatSetEl( S, par->ix.ilon, 1, s.lon + dT*s.londot);
`ZMatSetEl( S, par->ix.ilondot, 1, s.loridot);
`
`s. lat J r PRIOR
`
`POSITION
`
`©
`
`PXT282
`
`PREDICTED
`POSITION
`
`V
`
`®
`
`PGS Exhibit 1097, pg. 10 PGS v. WestemGeco (IPR2014-00689)
`
`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-00689)
`
`JL-ll
`
`
`
`ORCA's Kalman Filter
`
`T
`
`1
`
`1
`
`a
`
`55 Feet
`
`50 Feet
`
`53 Feet
`
`T
`
`i ^ t
`
`i k i
`
`5
`r
`3 r
`A*
`
`JL
`
`1-
`
`<
`/{
`i
`
`•
`
`d-r-
`
`.
`
`5 Feet Per Second Velocity (Speed + Direction)
`
`Predicted
`Position
`
`Best Estimate
`Of P osition
`
`Y
`
`Previous
`Position
`
`5 feet per second x 10 seconds = 50 feet
`
`PGS Exhibit 1097, pg. 12 PGS v. WestemGeco (IPR2014-00689)
`
`JL-12
`
`
`
`Acoustic Ranging
`Acoustic Ranging
`
`.
`
`.
`
`Hi
`
`Leonard
`
`
`
`PGS Exhibit 1097, pg. 13 PGS v. WestemGeco (IPR2014-00689)
`PGS Exhibit 1097, pg. 13 PGS v. WestemGeco (IPR2014-00689)
`
`JL-13
`“‘13
`
`
`
`ORCA's Kalman Filter (Rejection)
`
`Measured
`Position
`
`PGS Exhibit 1097, pg. 14 PGS v. WestemGeco (IPR2014-00689)
`
`
`
`ORCA's Kalman Filter (Rejection)
`
`Leonard
`DEMO015
`
`Previous
`Position
`
`Best Estimate
`Of Position
`
`Position
`
`Predicted Position becomes best estimate
`
`/
`
`Measured
`Position
`
`^ /
`
`PGS Exhibit 1097, pg. 15 PGS v. WestemGeco (IPR2014-00689)
`
`JL-15
`
`
`
`ORCA And The Lateral Controller
`
`Leonard
`DEMO016
`
`, lU i
`
`ORCA sends the Lateral
`Controller streamer separations
`
`ORCA
`
`Lateral Controller
`
`PGS Exhibit 1097, pg. 16 PGS v. WestemGeco (IPR2014-00689)
`
`
`
`Modes Of Operation In Late ral Controller
`
`. /' /
`
`l
`
`I
`
`If
`
`7
`
`4
`
`I
`
`I
`
`/ i f < 1
`m M 1
`1 I
`' i
`i
`i
`i
`SH i w t
`i
`i
`B
`'
`1
`/
`1
`1
`
`3 I SHI
`
`'I 1WC I
`i
`l
`k KP-JC •
`M \
`\
`\
`i
`i1
`\
`\
`M 1 V
`i i \
`
`11 Hi 3 I
`l! " v
`V
`\
`I
`I
`1 la
`I
`V
`;
`y
`I I \ m m '
`i
`1 i \
`n I
`>
`*
`
`J
`
`i
`i
`i
`'
`
`I
`
`!
`
`/
`1
`
`1
`
`i
`
`i
`
`!
`
`I
`
`Even Separation Mode
`
`Fan Mode
`
`Ghost Mode
`
`PGS Exhibit 1097, pg. 17 PGS v. WestemGeco (IPR2014-00689)
`
`JL-17
`
`
`
`Lateral Controller: Even Separation Mode
`
`
`
`1 • ! 1 ~ !
`
`Lateral Controller
`
`•"--J •1
`
`< 3 1 i A li I
`
`I
`
`II
`
`II
`
`I
`
`,,c> <P\
`
`1 B j •
`1
`
`1
`
`PGS Exhibit 1097, pg. 18 PGS v. WestemGeco (IPR2014-00689)
`
`JL-18
`
`
`
`Lateral Controller: Fan Mode
`
`Leonard
`DEMO019
`
`11
`
`Lateral Controller
`
`—
`
`—
`
`1 L
`
`.
`
`-
`
`£
`
`/ i l l i
`/ill i
`i
`i
`i
`l
`I
`!
`!
`!
`I
`J l
`i
`
`! /
`i
`1
`
`i
`
`/
`
`1 1
`
`/
`
`/
`
`300 ft-
`
`11 \
`\
`' " \ \
`J 1
`i
`I
`i
`!
`I
`I
`
`i 1 \
`
`I
`I
` >
`^
`\
`i
`! 1 \
`1
`\
`i
`\
`
`V
`
`3
`
`PGS Exhibit 1097, pg. 19 PGS v. WestemGeco (IPR2014-00689)
`
`JL-19
`
`
`
`Lateral Controller: Ghost Mode
`
`Leonard
`
`DEM0020
`
`
`
`//////////
`
`//////////
`
`//////////
`
`//////////
`
`//////////
`
`I
`
`//////////
`//////////
`//////////
`’ //////////
`
`//////////
`
`//////////
`
`.//////////
`
`PGS Exhibit 1097, pg. 20 PGS v. WesternGeco (IPR2014-00689)
`
`“4°
`
`