MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development...
Transcript of MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development...
![Page 1: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/1.jpg)
2Infinity Control Solutions
MATLAB EXPO 2019Creating an embedded product with
a very small development team
Neil RutlandPrincipal Consultant
Brendan JoinerSenior Control Applications Engineer
30 May 2019
![Page 2: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/2.jpg)
2Infinity Control Solutions
Overview
• Personal experience creating embedded products
• MATLAB and Simulink experience
• What next?
– Design embedded products that seem simple because they
just work
– Sophisticated algorithms under the hood
– With a small team…
30 May 2019Proprietary
2
![Page 3: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/3.jpg)
2Infinity Control Solutions
Past - Embedded products
• Control of vibration in flexible rotors
– Using Active Magnetic Bearings
Proprietary3
30 May 2019
![Page 4: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/4.jpg)
2Infinity Control Solutions
Past - Embedded products
• Submarine autopilots
• Real-time simulator
30 May 2019Proprietary
4
![Page 5: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/5.jpg)
2Infinity Control Solutions
Past - Embedded products
• MBDA Meteor Air-to-Air missile
– G&C lead autopilot & homing guidance
– Large teams
– Model based design and auto-code generation
Proprietary5
30 May 2019
![Page 6: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/6.jpg)
2Infinity Control Solutions
Past - Embedded products
• Auto-steering agricultural vehicles
– Model based design
– Medium size team
– No auto-code generation
30 May 2019Proprietary
6
![Page 7: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/7.jpg)
2Infinity Control Solutions
Past - MATLAB & Simulink
• Numerical analysis and plotting data
• FEM flexible rotor
• Control system design
• Requirements specification
• Vehicle modelling
– Underwater, air and on ground
• Actuator modelling
30 May 2019Proprietary
7
![Page 8: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/8.jpg)
2Infinity Control Solutions
Past - MATLAB & Simulink
• Hydraulic modelling
• Sensor modelling, e.g., IMUs, seekers, GNSS
• Trials analysis
• GUIs visualising system performance
• Symbolic calculations
• Timesheets…anything and everything
30 May 2019Proprietary
8
![Page 9: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/9.jpg)
2Infinity Control Solutions
Past – MATLAB & Simulink
• Meteor project
– Modelling – auto-code generation for Simulink models
into Development Model (DM)
– G&C – algorithm design plus Algorithm Development
Model (ADM)
– G&C specified algorithms using STATEMATE by I-Logix
• Auto-coded into DM
• Duplicating algorithms running in ADM
Proprietary9
30 May 2019
![Page 10: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/10.jpg)
2Infinity Control Solutions
Past – MATLAB & Simulink
• Next MBDA project
– See MATLAB EXPO 2015
• Accelerating FASGW(H) / ANL Image Processing with Model-
Based Design
Proprietary10
30 May 2019
![Page 11: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/11.jpg)
2Infinity Control Solutions
Now – small team
• MATLAB & Simulink established and mature tool for
developing algorithms in embedded products
• Previously had multiple large teams
– 10’s G&C, Modelling and Software engineers to develop a
product
• Now one small team can do the same
– Using MathWorks tools…
30 May 2019Proprietary
11
![Page 12: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/12.jpg)
2Infinity Control Solutions
Now – small team
• Another view is allowing development
without Systems Engineering
– Why do we use Systems Engineering?
30 May 2019Proprietary
12
![Page 13: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/13.jpg)
2Infinity Control Solutions
Now – small team
• Simulator Mk1
– Simulink Desktop Real-Time
– Simulink Coder
– Vehicle Network Toolbox
– Running in Windows 10 with USB adapters
• Mk2 ported to ARM embedded platform
– Embedded Coder
– Initially M3 and now using M7
30 May 2019Proprietary
13
![Page 14: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/14.jpg)
2Infinity Control Solutions
Now – small team
• Simulator used for HWIL development of RotoMate
product
30 May 2019Proprietary
14
![Page 15: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/15.jpg)
2Infinity Control Solutions
Now – small team
• Return On Investment (ROI) – Country Maths
– Annual cost for The MathWorks tools $12K AUD
• MATLAB & Simulink
• MATLAB Coder, Simulink Coder and Embedded Coder
– Use existing target with GNU Tools
– Development effort for drivers, e.g. CAN, LED, USB
– One s/w engineer $70-120K AUD depending on experience
– ROI = $(70K+120K)/2 - $20K - $12K = $63K per year
30 May 2019Proprietary
15
S/w engineer Driver
dev
MathWorks
tools
![Page 16: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/16.jpg)
2Infinity Control Solutions
Future directions
• Develop algorithms using MathWorks tools
– Sell in embedded products
– Sell software modules/libraries for customers to use in their
products
– Keep the team small using the right tools
– Focus on the algorithms
30 May 2019Proprietary
16
![Page 17: MATLAB EXPO 2019 · MATLAB EXPO 2019 Creating an embedded product with a very small development team ... •Duplicating algorithms running in ADM Proprietary 9 30 May 2019. 2Infinity](https://reader033.fdocuments.in/reader033/viewer/2022052611/5f06890f7e708231d418791a/html5/thumbnails/17.jpg)
2Infinity Control Solutions
THE END
30 May 2019Proprietary
17