This workshop explores the technology options, architectures, and implementations associated with instrumenting AR, VR, and simulated worlds. Using flight simulation as the primary use case, you learn to consume, process, store, and analyze high velocity telemetry as well as exploring control plane implementations using AWS IoT, AWS Lambda, Amazon Kinesis, and Amazon SNS. This is a hands-on workshop and you need a laptop (tablets are not suitable). You should have a solid understanding of AWS products and Node.js.
2. Your Hosts for the Day
Marc Teichtahl
• Manager Solutions Architect, Melbourne Australia
3. Your Hosts for the Day
Marc Teichtahl
• Manager Solutions Architect, Melbourne Australia
Marten Payne
• Technical Account Manager , Melbourne Australia
4. Your Hosts for the Day
Marc Teichtahl
• Manager Solutions Architect, Melbourne Australia
Marten Payne
• Technical Account Manager , Melbourne Australia
Daniel O‘Brien
• Solutions Architect, Wellington, New Zealand
5. Your Hosts for the Day
Having trouble?
The proctors are here to help!
https://pixabay.com/en/balloon-talk-language-german-males-2557031/
6. Today
Section 1: Introduction to AR, VR, and Synthetic Worlds
Section 2: Architectures and Technology
Break
Section 3: Hands-On Workshop
7. Today
Section 1: Introduction to AR, VR, and Synthetic Worlds
Section 2: Architectures and Technology
Break
Section 3: Hands-On Workshop
8. Today
Section 1: Introduction to AR, VR, and Synthetic Worlds
Section 2: Architectures and Technology
Break
Section 3: Hands-On Workshop
9. Today
Section 1: Introduction to AR, VR, and Synthetic Worlds
Section 2: Architectures and Technology
Break
Section 3: Hands-On Workshop
10. Today
Section 1: Introduction to AR, VR, and Synthetic Worlds
Section 2: Architectures and Technology
Break
Section 3: Hands-On Workshop
20. These Worlds Are Similar but Different
Virtual
reality
Virtual “things” in
a virtual world
21. These Worlds Are Similar but Different
Virtual
reality
Virtual “things” in
a virtual world
22. These Worlds Are Similar but Different
Virtual
reality
Augmented
reality
Virtual “things” in
a virtual world
Virtual “things” in
the real world
23. These Worlds Are Similar but Different
Virtual
reality
Augmented
reality
Virtual “things” in
a virtual world
Virtual “things” in
the real world
24. These Worlds Are Similar but Different
Virtual
reality
Augmented
reality
Simulators
Virtual “things” in
a virtual world
Virtual “things” in
the real world
Real “things” in
a virtual world
25. These Worlds Are Similar but Different
Virtual
reality
Augmented
reality
Simulators
Virtual “things” in
a virtual world
Virtual “things” in
the real world
Real “things” in
a virtual world
26. These Worlds Are Similar but Different
Virtual
reality
Augmented
reality
Simulators
Virtual “things” in
a virtual world
Virtual “things” in
the real world
Real “things” in
a virtual world
Synthetic
worlds
31. However, They Have Similar Attributes
Many commonalities
Visual Tactile Audible
32. How do we think about these worlds?
https://pixabay.com/en/steelwork-engineering-structure-1031611/
33. A Framework for Synthetic Worlds
Simulate
• Models
• Systems
• Coordinates
• Inputs
• Outputs
34. A Framework for Synthetic Worlds
Simulate Visualize
• Views and cameras
• Landscapes
• Objects
• AI
35. A Framework for Synthetic Worlds
Simulate Visualize Interface
• Human
• Tactile
• Switches, dials
• Buttons
• Motors
• Lights
36. A Framework for Synthetic Worlds
Simulate Visualize Interface Process
• Mediate
• Normalize
• Transform
• Log and record
37. A Framework for Synthetic Worlds
Simulate Visualize Interface Process Interact
• Influence
• Impact
• Human factors
38. A Framework for Synthetic Worlds
Simulate Visualize Interface Process Interact
Learn
Machine learning Predictive analytics Feedback Reporting
39. A Reference Architecture
Sim hub
toCloudWatch toDynamo
CloudWatch Dynamo
DB
Redshift
toRedshift
kinesisAnalytics
Aggregatedata
raw data
AML
S3
Lex
CloudWatch
Dashboard
kinesis
raw data
raw data
Simulator
Visuals
Simulate
Interface/interact
Interact
Visualize
Learn
Process
40. A Reference Architecture
Sim hub
toCloudWatch toDynamo
CloudWatch Dynamo
DB
Redshift
toRedshift
kinesisAnalytics
Aggregatedata
raw data
AML
S3
Lex
CloudWatch
Dashboard
kinesis
raw data
raw data
Simulator
Visuals
Interface/interact
Interact
Visualize
Learn
Process
41. A Reference Architecture
Bus
toCloudWatch toDynamo
CloudWatch Dynamo
DB
Redshift
toRedshift
kinesisAnalytics
Aggregatedata
raw data
AML
S3
Lex
CloudWatch
Dashboard
kinesis
raw data
raw data
Simulator
Visuals
Interact
Visualize
Learn
Process
Switches, inputs, outputs
42. A Reference Architecture
Bus
toCloudWatch toDynamo
CloudWatch Dynamo
DB
Redshift
toRedshift
Aggregatedata
raw data
AML
S3
Lex
CloudWatch
Dashboard
Kinesis
raw data
raw data
Simulator
Visuals
Interact
Visualize
Learn
Switches, inputs, outputs
Kinesis Analytics
46. A Reference Architecture
Bus
Kinesis Analytics
Aggregatedata
raw data
AML
S3
Lex
CloudWatch
Dashboard
Kinesis
raw data
raw data
Simulator
Visuals
Switches, inputs, outputs
toCloudWatch toDynamotoRedshift
+Greengrass
IoT
GG
DynamoDBAmazon
CloudWatch
Amazon
Redshift
47. But When We Develop
https://pixabay.com/en/entrepreneur-start-start-up-career-696976/
48. But When We Develop
We care about a number
https://pixabay.com/en/entrepreneur-start-start-up-career-696976/
of important considerations
49. What must we consider?
Volume, velocity, frequency
50. What must we consider?
Volume, velocity, frequency
• The amount of data
• The rate at which data is
produced/consumed
• Frequency of data generated
51. What must we consider?
Volume, velocity, frequency
• Kinesis or IoT
• Control plane and data plane
• Sharding, costs
• Threads, concurrency, and
locking (mutexes/semaphores)
53. What must we consider?
Latency
• Network
• Application
• Processing
• Human factors
54. What must we consider?
Latency
• Network partitions—IoT and
AWS Greengrass
• Application design and
efficiencies
• AWS Lambda (warm-up time,
and so on)
• Motion sickness
55. What must we consider?
Cost, deployment, security
56. What must we consider?
Cost, deployment, security
• Choice of technology
• Ease of deployment
• Continuous deployment
• Lambda
57. You Can Choose Your Own Adventure
Visualize Interface Process InteractSimulate
58. You Can Choose Your Own Adventure
Simulate
Visualize Interface Process Interact
59. You Can Choose Your Own Adventure
Simulate
Visualize Interface Process Interact
SurgerySim
TouchSurgery
NurseSim
60. You Can Choose Your Own Adventure
Simulate Visualize
Interface Process Interact
61. You Can Choose Your Own Adventure
Simulate Visualize
Interface Process Interact
Lumberyard
Unity
CryEngine
UnrealEngine
62. You Can Choose Your Own Adventure
Simulate Visualize Interface
Process Interact
Bus
63. You Can Choose Your Own Adventure
Simulate Visualize Interface
Process Interact
RSLogix
SOIC
Step7
Bus
64. You Can Choose Your Own Adventure
Simulate Visualize Interface Process
Interact
Bus
65. You Can Choose Your Own Adventure
Simulate Visualize Interface Process
Interact
Bus
66. You Can Choose Your Own Adventure
Simulate Visualize Interface Process
Interact
AWS IoT
Amazon Kinesis Analytics
AWS Lambda
Amazon Athena
AWS CloudWatch
Bus
67. You Can Choose Your Own Adventure
Simulate Visualize Interface Process Interact
Bus
68. You Can Choose Your Own Adventure
Simulate Visualize Interface Process Interact
Bus
69. You Can Choose Your Own Adventure
Simulate Visualize Interface Process Interact
RaspberryPi
Intel Edison
Arduino
Bus
70. You Can Choose Your Own Adventure
Simulate Visualize Interface Process Interact
Bus
71. You Can Choose Your Own Adventure
Simulate Visualize Interface Process Interact
Amazon Lex
Amazon Polly
Bus
73. Introduction—The Problem Statement
Traditionally, it has been complex and expensive to:
Securely acquire “near” real-time data from
simulator engines
Process and store large volumes of data to enable
the extraction of meaningful insights
Deliver a user experience that intuitively exposes
near real-time information
74. Introduction—What You Will Do Today
• Uses AWS Kinesis, AWS Lambda, AWS CloudFormation and
AWS API Gateway to securely acquire, process, and publish
near real-time flight data from a simulator data source
• Implements AWS Lambda and Amazon Kinesis to process
flight data using serverless architectures
• Stores the flight data for real-time using Amazon
DynamoDB
• Deploys a user interface to visualize the flight data
You will build a system that:
75. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
76. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
77. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
Preprocessing
78. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
Preprocessing Serverless processing
79. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
Preprocessing User interfaceServerless processing
80. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
Preprocessing User interface
Acquire
Serverless processing
81. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
Preprocessing Serverless processing User interface
Acquire
Process
82. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Data sources
Time
Flight
Environment
Preprocessing Serverless processing User interface
Acquire
Process Present
83. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Time
Flight
Environment
• Various types of data from sensors and systems
• Send raw data from the simulator
• Real time and simulator time
• Pitch, roll, yaw, airspeed, heading, and so on
• Wind speed and direction, turbulence
• Aggregation of raw data
Acquire
84. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Time
Flight
Environment
• Processing
• Storage
• Publishing
Amazon
Aurora
Amazon
S3
Amazon
Redshift
AWS
Lambda
Amazon
Kinesis
Streams
Amazon
Kinesis
Analytics
Amazon
Kinesis
Firehose
Amazon
SNS
ProcessAcquire
85. How the Pieces Fit Together
https://pixabay.com/en/airplane-plane-aircraft-sign-99047/
Icons made by Freepik from www.flaticon.com
Time
Flight
Environment
Final UI
image here
Acquire Process Present
86. Data Lifecycle
Process Present
• A powerful user interface to view
flight data
• A map, location, and flight info UI
to visualize the simulated world
Acquire
Processing of raw data into final
simulation dataset
• Smoothed data
• Aggregates
• Averages
Acquisition of data from remote
simulator data sources
• Flight
• Environmental/weather
• Time