mr. fusion: a navigation solutionicarus.erau.edu/mr-fusion-capstone/1-proposal/mr. fusion final...
TRANSCRIPT
Mr. Fusion: A Navigation SolutionORAL PROPOSAL
DECEMBER 11, 2019
1
A NAVIGATION SOLUTION
OverviewProject Description
Guidance Subsystem
Navigation Subsystem
Control Subsystem
Hardware & Reliability
Power & Mechanical
Software Considerations
Cost & Marketing
Project Management
2
Guidance◦ David (Technical Lead)
◦ Sean
Navigation◦ Joseph (Project Lead)
◦ Emmett
Control◦ TJ
◦ Duncan
◦ Joy
◦ Connor
Team Layout
Project DescriptionJOSEPH KROEKER
3
Project OverviewAutonomous robot traversing campus◦ Autopilot subsystem to get to user-selected destination
◦ High-fidelity localization using sensor fusion◦ GPS + Inertial + visual & wheel odometry
◦ Real-time embedded processing on platform
4
(Sec 3.0, p.10)
Requirements & VerificationIADT Verification Methodology◦ Inspection
◦ Observation/measurement of a quality or quantity
◦ Ex. Size, weight
◦ Analysis◦ Mathematical backing without testing on real hardware
◦ Ex. MTTF, non-destructive performance degradation prediction
◦ Demonstration◦ Use normally and observe behavior
◦ Ex. UI interactions, timing
◦ Test◦ Intentionally force into boundary cases to tease out unlikely but required behavior
◦ Ex. Invalid user input, edge conditions
5
(Sec 4.0, p.19)
Requirements Summary
6
Number Requirement I A D T
4.1.2.3 The system shall operate for at least 1 hour without recharging.
X X
4.1.4.1 The system shall plan paths in areas that are traversable by the robot platform.
X
4.1.9.1.2 The robot platform shall have a ground clearance of at least 3 cm.
X
4.1.9.1.3 The robot platform shall handle a slope of at least 1:12 (ADA). X
4.1.9.1.4 The robot platform shall handle deviations from level plane including pavement cracks up to 2 cm in wide and 1 cm high.
X
(Sec 4.0, p.20)
Minimum Map BoundaryGreen circles are required UI locations
Red boundary includes required paths
(Sec 4.0, p.23)
7
Concept of OperationsRobot use case◦ Wireless UI for final
destination and cancellation
◦ Robot autopilot is a black box
(Sec 5.2, p.24)
8
System ComponentsAutopilot◦ All computation, functional behavior for guidance, navigation, and control (GNC)
User Interface◦ Wirelessly accessible for user input
Robot Platform◦ Motors + wheels, chassis for mounting electronics
◦ Off-the-shelf, 2-wheeled differential-drive + power supply
Sensor Suite◦ Hardware sensors, camera
9
GNC Subsystem DescriptionGuidance – What’s my path to destination?◦ Determines direction to next waypoint
Navigation – Where am I right now?◦ Estimates position, velocity, and attitude (PVA)
Control – How do I successfully move there?◦ Controller actuates motors to change PVA
10
(Sec 5.3, p.24)
Guidance SubsystemSEAN LINK
11
GuidanceHow does the robot get from its current location to user requested destination?
Subtasks◦ Reading a map of campus◦ Receiving input from a user◦ Determining the shortest path◦ Resolve discrepancies between the map and the actual
environment◦ Give instructions to the control system
12
Guidance
13
(Sec 5.5.1.1, p.51)
Campus Map
14
(Sec 5.5.1.1, p. 51)
Campus Map (cont.)<name>Line 4</name>
<LineString>
<coordinates>
-112.4494117,34.6162565,0
-112.449401,34.6161858,0
-112.4493996,34.6161582,0
-112.4493996,34.6161207,0
-112.4493996,34.6160777,0
-112.449401,34.6159839,0
-112.4494425,34.6158271,0
</coordinates>
</LineString>
15
(Sec 3.2.1.1, p.18)
User Input
16
Destination:
Student Union
(Sec 5.5.1.1, p.51-52)
Shortest Path
17
(Sec 3.2.1.1, p.17)
Graph vs Actual EnvironmentDependencies◦Knowing the robot's current location (requires integration to navigation)
◦Knowing a set of traversable paths (requires integration to the ToF camera)
18
Graph vs Actual Environment (cont.)
19
(Sec 5.5.1.1, p.51)
Graph vs Actual Environment (cont.)
20
Instructions to Control System
21
(Sec 5.5.1.1, p.51)
CPM Diagram for Guidance Sub-team
22
(Sec 6.1.1, p.72)
Guidance System - Current State
23
Navigation SubsystemEMMETT HAMMAN
24
NavigationCreate the best estimation of the robot’s current PVA.
Subtasks
•Define the Coordinate Frame for Navigation
•Overview of Sensors
•Methods for Sensor Fusion
•Implement Sensor Fusion
25
Coordinate FrameECI/ECEF vs. Tangential
26
(Sec. 3.2.2, p. 14)
Sensors
27
Package Sensor Measurement
Fixed Relative
STIM300 Gyroscope ω
Accelerometer a
VN-200 GPS r
Magnetometer ψ
Barometer h
Robot Motors Odometer v ω
AD-96 ToF Visual Odometer v ω
(Sec. 3.2.2, p. 15)
Sensor Fusion Methodology
28
(Sec. 5.3.2, p. 25)
Sensor Fusion Implementation
29
(Sec. 5.3.2, p. 27)
Schedule
30
Control SubsystemCONNOR ROCKWELL
31
ControlSend signals to motor encoders to produce a desired speed and heading from the robot◦ Control Theory
◦ Control Scheme
◦ Control sub-team timeline
32
Control TheoryOpen-loop System◦ Inputs translated to outputs
◦ Prone to instability
33
(Sec 3.2.3, p.16)
Control TheoryIndividual Wheel Closed-loop System◦ Includes feedback
◦ Single-Input-Single-Output
◦ Compares real value with desired value
34
(Sec 3.2.3, p.17)
Control SchemeRobot Control System◦ Multiple-Input-Multiple-Output◦ Input: Guidance info
◦ Controller: Control scheme for motors
◦ Feedback: Navigation info
35
(Sec 5.3.3, p.27)
Control SchemeHigh-Level Dynamic Model◦ Inputs:
◦ u1 – motor speed as voltage input for motor 1
◦ u2 – motor speed as voltage input for motor 2
◦ Outputs:
◦ v – speed of the robot
◦ θ – angle of orientation
36
Top-down view of robot
(Sec 5.3.3, p.28)
CPM Diagram for Control Sub-team
37
(Sec 6.1.3, p.60)
Hardware & ReliabilityTJ HALL
38
Hardware ConsiderationsComponent Selection
Processing
Sensing
Reliability
39
Component Selection Robotic Platform
◦ IG42-SB2, 2WD Tube Mount
Sensors◦ VN-200
◦ STIM-300
◦ ToF Development Kit
Processors◦ Raspberry Pi 4 (x2)
◦ Jetson
Other Hardware◦ Ethernet Switch
◦ NEMA Enclosure
40
(Sec 5.4.2.5, p.36)
Processing Guidance
◦ Raspberry Pi 4
◦ Path Planning
◦ UI
Navigation◦ Jetson Nano
◦ Sensor Data
Controls◦ Raspberry Pi 4
◦ Control Law
ToF Camera◦ DragonBoard 410c
◦ Image Flow
41
(Sec 5.4.1, p.32)
Sensing VN-200◦ GPS+IMU
◦ Magnetometer and barometer
STIM-300◦ IMU
◦ Accelerometer and gyroscope
IG42 Wheel Odometry◦ Encoders
AD-96TOF1-EBZ ToF Camera◦ Visual Odometry
◦ Traversability
42
(Sec 5.4.2, p.33)
Reliability MIL-HDBK 217F
Risks◦ Developmental
◦ Integration
Safety◦ Cutoff Switch
43
(Sec 5.7, p.61)
Power & MechanicalJOY FUCELLA
44
Power & Mechanical
45
Hardware Considerations
Power Board Design
Mechanical Concepts◦ Construction
◦ Mounting
Hardware Considerations
• Separate power supplies
• Battery life extended
46
(Sec 5.4.3, p.35)
Power Board Design
47
Component Iin_max Vin Pin_max
Raspberry Pi 4 3 A 5 V 15 W
Raspberry Pi 4 3 A 5 V 15 W
ToF Camera 4 A 5 V 20 W
Jetson Nano 4 A 5 V 20 W
DragonBoard 410c 3 A 6.5 V 19.5 W
Total 104.5 W
Battery Life: 2.2 hours
(Sec 5.4.4, p.36)
Power Board Design (continued)
48
(Sec 5.4.4, p.37)
Mechanical Concepts – Construction
49
• Two off-the-shelf robots
• Allows for concurrent testing
• Comes with instructions
• Printed Circuit Board (PCB) designed and constructed
• External protection purchased and modified
(Sec 5.6.1, p.55)
Mechanical Concepts – Mounting
50
• Structural support for the sensors
• Mount made from sheet metal
(Sec 5.6.2, p.55)
Software ConsiderationsDAVID STOCKHOUSE
51
Software ConsiderationsArchitecture
Data Flow
Control Flow
Implementation
Image Processing
52
(Sec 5.5, p.41)
Software ArchitectureGuidance
◦ Coarse and fine path planning, web server interface
Navigation◦ Kalman filter, hardware interfacing
Control◦ Control law, motor/encoder
interfacing
DragonBoard◦ ToF image processing for guidance
and navigation
53
(Sec 5.5.1, p.38)
Guidance Software Architecture
Path Planning◦ Reads external inputs
◦ Performs coarse and fine guidance
◦ Sends drive commands to control
54
(Sec 5.5.1.1, p.40)
Guidance Software ArchitectureUser Interface◦ Backend Server
◦ "Process" to service HTTP requests
◦ Direct interface between frontend and path planning
◦ Frontend Client◦ Executes on user's device
◦ Direct interface between user and autopilot
55
(Sec 5.5.1.1 p.40)
Navigation Software Architecture
Kalman Filter◦ Input measurements from all
sensors
◦ Output PVA estimate and uncertainty to guidance
Hardware Interface Threads◦ Serial buffers for
VN-200 and STIM300
56
(Sec 5.5.1.2 p.42)
Control Software Architecture
Control Law◦ Input speed and relative heading
from guidance
◦ Output necessary motor speed
Motor Interface Thread(s)◦ Serial interface for motor driver
and encoder buffer
57
(Sec 5.5.1.3 p.43)
Data FlowBetween processors◦ Ethernet PHY
◦ Interface protocol control next semester
Between processes◦ OS message queues
Between threads◦ Shared memory
58
(Sec 5.5.2, p.44)
Control Flow
59
Autonomous subsystems work as a pipeline
(Sec 5.5.3, p.45)
Control Flow GuidanceFSM
◦ Waiting after init
◦ Coarse guidance immediately after user input
◦ Active until reaches destination
60
(Sec 5.5.3, p.46)
Control Flow GuidanceRepeated primary loop
◦ Starts with time-step inputs
◦ Implements FSM behavior
◦ Ends with control output
61
(Sec 5.5.3.1, p.47)
Control Flow GuidanceSubroutines
62
(Sec 5.5.3.1, p.48)
Control Flow NavigationSimpler loop
◦ Read sensors
◦ Filter estimate
◦ Output estimate
◦ No FSM
63
(Sec 5.5.3.2, p.49)
Control Flow ControlMostly input/output
Forces keeping contact with guidance
64
(Sec 5.5.3.3, p.50)
ImplementationProof of Concept◦ MATLAB, Simulink
Embedded Software◦ C typical, Rust where appropriate
User Interface◦ Apache server hosted on guidance processor
◦ PHP backend
◦ Leaflet + JS frontend◦ Mapping GUI framework
65
(Sec 5.5.4, p.48)
Image Processing SoftwareGuidance◦ Traversability estimate
Navigation◦ Visual odometry
66
(Sec 3.2.4, p.18)
Sales, Cost, & MarketingDUNCAN PATEL
67
Sales, Cost, & MarketingSales Volume
NRE Costs
Recurring Costs
Sales Price
Return On Investment
Commercial Viability Horizon
68
Sales Volume
69
0
50
100
150
200
250
300
350
400
Vo
lum
e
Month of Sale
Sales Forecast
GROWTH
MATURITY
DECLINE
INTRODUCTION
(Sec 2.1, p.8)
Non-recurring Engineering Costs
70
Component Unit Cost Quantity Total Cost
Robot Platform * $1,500.00 2 $3,000.00
Raspberry Pi * $62.99 2 $125.98
Jetson Nano $99.99 1 $99.99
VN-200 $3,000 1 $3,000.00
STIM300 $10,000 1 $10,000
AD-96TOF1-EBZ $735.00 1 $735.00
NEMA Enclosure * $40.00 4 $160.00
Power Supply PCB * $40.00 3 $120.00
PCB SMD * $10.00 3 $30.00
Sheet Metal * $30.00 1 $30.00
Battery Enclosure * $7.68 3 $23.04
Ethernet Switch $16 1 $16
Total Cost $17,340.00
Actual Cost $3,505.01
Task Unit Cost Quantity Total Cost
Metal Bender $195.00 1 $195.00
Metal Drill Bits $149.99 1 $149.99
Power Drill $254.10 1 $254.10
Soldering Station $37.99 1 $637.08
Total Cost $637.08
(Sec 7.1, p.61)
Recurring Costs: Overhead & MarketingOverhead
◦ No hiring and firing throughout the project
◦ Even without tasks members can fill in where needed
◦ No overhead with project
Marketing◦ Pamphlet distribution across potential customers
◦ Pamphlets cost $25 each and printing for expected customers gives $3,750
◦ Online advertisements◦ Cost $1.25 per click with and expected $500 per month
◦ Initial cost of $4,250
◦ Monthly cost of $500
71(Sec 7.2, p.64)
(Sec 7.2, p.64)
Recurring Costs: Materials & Labor Component Unit Cost Quantity Total Cost
Robot Platform $1,500.00 1 $1,500.00
Raspberry Pi $62.99 2 $125.98
Jetson Nano $99.99 1 $99.99
VN-200 $3,000 1 $3,000.00
AD-96TOF1-EBZ $735.00 1 $735.00
NEMA Enclosure $40.00 4 $160.00
Power Supply
PCB
$40.00 3 $120.00
PCB SMD $10.00 3 $30.00
Sheet Metal $30.00 1 $30.00
Battery Enclosure $7.68 3 $23.04
Sensor Enclosure $6.38 4 $25.52
Sensor Power
Supply
$35 1 $35
Ethernet Switch $16 1 $16
Total Cost $5,900.53
72
Task Time (Hours)
Labor Count
Type Cost Per Unit
Soldering PCB 1 1 Assembly $95
Mechanical Mount Fabrication
1 2 Assembly $190
Robot Assembly 1 2 Assembly $190
Product Testing 1 1 Technician $125
Total $665
(Sec 7.2, p.64)
Sales PriceTotal Development Cost: $441,250
◦ Total Labor Development Cost: $404,000.
◦ Total Material Development Cost: $37,250
Total Volume Cost: $38,844,964.◦ Cost Per Unit: $6,466
◦ Material cost Per Unit: $5,800
◦ Direct Labor Cost: $665
Total Project Cost: $39,286,814
Adjusted Per Unit Cost:$6,539
Sales Price (5% profit margin):$6,865◦ Profit Per Unit Sold: $326
73
(Sec 2.2, p.9)
Return On Investment
-$900,000.00
-$800,000.00
-$700,000.00
-$600,000.00
-$500,000.00
-$400,000.00
-$300,000.00
-$200,000.00
-$100,000.00
$0.00
$100,000.00
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
ROI VALUATION CURVE
Per Unit Profit: $326
Monthly ROI: 9.34396%
Annual ROI: 192.104%
Max Calculated Debt: $6,540,962.72
Valuation: $0.71
74(Sec 7.3, p.65)
Commercial Viability Horizon
75
◦ ERAU, Prescott Campus Tour Guide◦ Cool Factor
◦ Assumptions
◦ Tour cost: 1 tour = $11
◦ Robot Use: 1 robot = 5 tours per week
◦ Estimations
◦ Robot Cost: 625 tours = 1 robot
◦ Cost Coverage: 2 years and 4 months = 1 robot
◦ Adaptability◦ New map must be loaded
(Sec 2.3, p.10)
Project ManagementJOSEPH KROEKER
76
Schedule – CPM Chart
77
(Sec 6.1, p.53)
Timeline
Prototype AssemblyJanuary 20, 2020
UI CompleteFebruary 7, 2020
Full System InterfacingMarch 23, 2020
Controls ImplementationFebruary 7, 2020
Guidance ImplementationFebruary 14, 2020
Subsystem InterfacingMarch 19, 2020
Full System TestingApril 20, 2020
Navigation ImplementationFebruary 24, 2020
End of DevelopmentMay 1, 2020
(Sec A.1, p.71)
Questions?David Stockhouse◦ [email protected]
Joseph Kroeker◦ [email protected]
Joy Fucella◦ [email protected]
TJ Hall◦ [email protected]
79
Emmett Hamman◦ [email protected]
Connor Rockwell◦ [email protected]
Sean Link◦ [email protected]
Duncan Patel◦ [email protected]
Backup Slides
80
Schedule – Gantt Chart
81
IMU Tangential Mechanization Equations
82
Kalman Filter Algorithm
83
Trade StudiesRobotic Platform
84
Trade StudiesSensors
85
Trade StudiesMotor Drivers
86
Battery Life Calculation(24 V / 104.5 W) * 9.6 Ahr = 2.2 hours
87
Sales Volume Table
88
Calendar
Month
Aug20 Sep20 Oct20 Nov20 Dec20 Jan21 Feb21 Mar21 Apr21 May21 Jun21 Jul21
Sales
Forecast
14 18 25 37 59 88 124 147 176 211 253 278
Calendar
Month
Aug21 Sep21 Oct21 Nov21 Dec21 Jan22 Feb22 Mar22 Apr22 May22 Jun22 Jul22
Sales
Forecast
305 335 341 347 353 360 342 324 307 276 248 223
Calendar
Month
Aug22 Sep22 Oct22 Nov22 Dec22
Sales
Forecast
200 180 162 145 130
ROI
89
Low-Level Plant Model for MotorP(s) – transfer function of the plant
V(s) – armature voltage
θ(s) – motor speed
J – moment of inertia
b – motor viscous friction constant
L – armature inductance
R – armature resistance
K – motor torque constant
90