SlideShare a Scribd company logo
ENHANCING
RESTRICTIVE COMPUTE
DEVICES
ROBERT ENTENMAN
MAY 29 2015
UNIVERSITY OF WASHINGTON TACOMA ● SPRING COLLOQUIUM
ENTENR@UW.EDU
WHAT IS A RESTRICTIVE COMPUTE DEVICE?
CAN WE MAKE THEM BETTER?
Of course!
HOW CAN WE ENHANCE THESE DEVICES?
PARROT AR.DRONE 2.0
HOW CAN WE ENHANCE THESE DEVICES?
+
• ARM-based
• No room for more tasks in main
control loop
• X86-based
• Easy to exploit “embarassingly parallel”
operations
• Comm. Expansions Available
SAMPLE CONTROL LOOP
Motors
Altimeter
Gyros
Pressure
Ultrasonic
Magnetometer
Accelerometer
MAIN SAMPLING LOOP
Drone Status(TCP)
Edison CPU
Progressive Video Stream(UDP)
Image Processing
Location Update
Remote IO Update
MAIN UPDATE LOOP
Control Commands(UDP)
MULTIPLE DRONES?
Edison
CPU
Edison
CPU
Edison
CPU
PRIMARY
SECONDARY
EXISTING RESEARCH
Munich Technical University – CV Group, MAV Project
Credit: MTU
http://vision.in.tum.de/research/quadcopter
Credit: UWT Center for Data Science
IEEE ICARCV 2014 Conference
RESEARCH USE CASE
PROOF OF CONCEPT AND STUDY
• Evaluate:
• Loss of Power
• Loss of Communications
• Analysis of outbound control feedback messaging
• Project Scope and Phases
• Control of Single Drone
• Image Processing
• Control of Multiple Drones
PHASE I – CONTROL OF SINGLE DRONE
Edison CPU
PHASE II – IMAGE PROCESSING
Edison CPU
THANK-YOU
Faculty Sponsor: Dr. Matt Tolentino
Additional Questions? ● entenr@uw.edu
Image/Asset Credits:
University of Washington Tacoma Center for Data Science
Technische Universität München
Wikipedia
OpenCV Home
Parrot Electronics Home
Intel IoT Press Kit

More Related Content

Viewers also liked

2015 Q3 Beyond Estimation Market Outlook
2015 Q3 Beyond Estimation Market Outlook2015 Q3 Beyond Estimation Market Outlook
2015 Q3 Beyond Estimation Market Outlook
vermeulens
 
Wellesley 2025 Presentation
Wellesley 2025 PresentationWellesley 2025 Presentation
Wellesley 2025 Presentation
vermeulens
 
Kubo Recruitment: Attracting Candidates
Kubo Recruitment: Attracting CandidatesKubo Recruitment: Attracting Candidates
Kubo Recruitment: Attracting Candidates
Kubo Recruitment
 
Accenture_Delivery_Centers_Spain_fact_sheet
Accenture_Delivery_Centers_Spain_fact_sheetAccenture_Delivery_Centers_Spain_fact_sheet
Accenture_Delivery_Centers_Spain_fact_sheet
Peter Kuiper
 
Kubo: Contingent Recruitment Considerations
Kubo: Contingent Recruitment ConsiderationsKubo: Contingent Recruitment Considerations
Kubo: Contingent Recruitment Considerations
Kubo Recruitment
 
Ledivani edition1.0
Ledivani edition1.0Ledivani edition1.0
Ledivani edition1.0
Samule Wang
 
The catalogue about office chair & recliner chair
The catalogue about office chair & recliner chairThe catalogue about office chair & recliner chair
The catalogue about office chair & recliner chair
Samule Wang
 
Beyond Estimation Market Outlook
Beyond Estimation Market OutlookBeyond Estimation Market Outlook
Beyond Estimation Market Outlook
vermeulens
 
Grecia
GreciaGrecia
Grecia
sara1398
 
Company introduction pptpptv(2015 6)
Company introduction pptpptv(2015 6)Company introduction pptpptv(2015 6)
Company introduction pptpptv(2015 6)
Samule Wang
 
Las caminatas de fin de semanas
Las caminatas de fin de semanasLas caminatas de fin de semanas
Las caminatas de fin de semanas
kaerine
 
Career Success A to Z by Abhishek Ratna
Career Success A to Z by Abhishek RatnaCareer Success A to Z by Abhishek Ratna
Career Success A to Z by Abhishek Ratna
boyunruled79
 
Remodelacio del centre de Santa Coloma
Remodelacio del centre de Santa ColomaRemodelacio del centre de Santa Coloma
Remodelacio del centre de Santa Coloma
Ajuntament de Santa Coloma de Gramenet
 
Practica 6
Practica 6Practica 6
Practica 6
pino15
 

Viewers also liked (14)

2015 Q3 Beyond Estimation Market Outlook
2015 Q3 Beyond Estimation Market Outlook2015 Q3 Beyond Estimation Market Outlook
2015 Q3 Beyond Estimation Market Outlook
 
Wellesley 2025 Presentation
Wellesley 2025 PresentationWellesley 2025 Presentation
Wellesley 2025 Presentation
 
Kubo Recruitment: Attracting Candidates
Kubo Recruitment: Attracting CandidatesKubo Recruitment: Attracting Candidates
Kubo Recruitment: Attracting Candidates
 
Accenture_Delivery_Centers_Spain_fact_sheet
Accenture_Delivery_Centers_Spain_fact_sheetAccenture_Delivery_Centers_Spain_fact_sheet
Accenture_Delivery_Centers_Spain_fact_sheet
 
Kubo: Contingent Recruitment Considerations
Kubo: Contingent Recruitment ConsiderationsKubo: Contingent Recruitment Considerations
Kubo: Contingent Recruitment Considerations
 
Ledivani edition1.0
Ledivani edition1.0Ledivani edition1.0
Ledivani edition1.0
 
The catalogue about office chair & recliner chair
The catalogue about office chair & recliner chairThe catalogue about office chair & recliner chair
The catalogue about office chair & recliner chair
 
Beyond Estimation Market Outlook
Beyond Estimation Market OutlookBeyond Estimation Market Outlook
Beyond Estimation Market Outlook
 
Grecia
GreciaGrecia
Grecia
 
Company introduction pptpptv(2015 6)
Company introduction pptpptv(2015 6)Company introduction pptpptv(2015 6)
Company introduction pptpptv(2015 6)
 
Las caminatas de fin de semanas
Las caminatas de fin de semanasLas caminatas de fin de semanas
Las caminatas de fin de semanas
 
Career Success A to Z by Abhishek Ratna
Career Success A to Z by Abhishek RatnaCareer Success A to Z by Abhishek Ratna
Career Success A to Z by Abhishek Ratna
 
Remodelacio del centre de Santa Coloma
Remodelacio del centre de Santa ColomaRemodelacio del centre de Santa Coloma
Remodelacio del centre de Santa Coloma
 
Practica 6
Practica 6Practica 6
Practica 6
 

Similar to entenr_colloquium_v02

ppt-HUNGARY
ppt-HUNGARYppt-HUNGARY
ppt-HUNGARY
RAJPRASAD RS
 
Cern Security UAB-2009
Cern Security  UAB-2009Cern Security  UAB-2009
Cern Security UAB-2009
Gustavo Martinez
 
Active Network Node in Silicon-Based L3 Gigabit Routing Switch
Active Network Node in Silicon-Based L3 Gigabit Routing SwitchActive Network Node in Silicon-Based L3 Gigabit Routing Switch
Active Network Node in Silicon-Based L3 Gigabit Routing Switch
Tal Lavian Ph.D.
 
Open Networking Better Networking Through Programmability
Open Networking Better Networking Through ProgrammabilityOpen Networking Better Networking Through Programmability
Open Networking Better Networking Through Programmability
Tal Lavian Ph.D.
 
Hablemos de ALMA — Wideband Sensitivity Upgrade
Hablemos de ALMA — Wideband Sensitivity UpgradeHablemos de ALMA — Wideband Sensitivity Upgrade
Hablemos de ALMA — Wideband Sensitivity Upgrade
Joint ALMA Observatory
 
A small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspectionA small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspection
Hima Chandana
 
A small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspectionA small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspection
Hima Chandana
 
Oop2018 tutorial-stal-mo2-io t-arduino-en
Oop2018 tutorial-stal-mo2-io t-arduino-enOop2018 tutorial-stal-mo2-io t-arduino-en
Oop2018 tutorial-stal-mo2-io t-arduino-en
Michael Stal
 
SDN on WAN
SDN on WANSDN on WAN
SDN on WAN
Husain Al Yusuf
 
Cognitive Engine: Boosting Scientific Discovery
Cognitive Engine:  Boosting Scientific DiscoveryCognitive Engine:  Boosting Scientific Discovery
Cognitive Engine: Boosting Scientific Discovery
diannepatricia
 
Open Source Software Tools for Synchrophasor Applications
Open Source Software Tools for  Synchrophasor ApplicationsOpen Source Software Tools for  Synchrophasor Applications
Open Source Software Tools for Synchrophasor Applications
Luigi Vanfretti
 
Distance Measurement Using Ultrasonic Sensor and Nodemcu
Distance Measurement Using Ultrasonic Sensor and NodemcuDistance Measurement Using Ultrasonic Sensor and Nodemcu
Distance Measurement Using Ultrasonic Sensor and Nodemcu
IRJET Journal
 
Cost-effective software reliability through autonomic tuning of system resources
Cost-effective software reliability through autonomic tuning of system resourcesCost-effective software reliability through autonomic tuning of system resources
Cost-effective software reliability through autonomic tuning of system resources
Vincenzo De Florio
 
Arduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning SystemArduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning System
Madhav Reddy Chintapalli
 
Pipelining In computer
Pipelining In computer Pipelining In computer
Pipelining In computer
Talesun Solar USA Ltd.
 
Leonid Semakov presentation Enhanced Network Performance Evaluation
Leonid Semakov presentation Enhanced Network Performance EvaluationLeonid Semakov presentation Enhanced Network Performance Evaluation
Leonid Semakov presentation Enhanced Network Performance Evaluation
AlexMinov
 
JCHPS 240 B. Sivachandra Mahalingam 430-432
JCHPS 240 B. Sivachandra Mahalingam 430-432JCHPS 240 B. Sivachandra Mahalingam 430-432
JCHPS 240 B. Sivachandra Mahalingam 430-432
Abdul Nasar P.A
 
Next-Generation Optical Access Architecture
Next-Generation Optical Access ArchitectureNext-Generation Optical Access Architecture
Next-Generation Optical Access Architecture
Xi'an Jiaotong-Liverpool University
 
Operating System Concepts ( PDFDrive ).pptx
Operating System Concepts ( PDFDrive ).pptxOperating System Concepts ( PDFDrive ).pptx
Operating System Concepts ( PDFDrive ).pptx
ODINARARCH
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
Ammy Vijay
 

Similar to entenr_colloquium_v02 (20)

ppt-HUNGARY
ppt-HUNGARYppt-HUNGARY
ppt-HUNGARY
 
Cern Security UAB-2009
Cern Security  UAB-2009Cern Security  UAB-2009
Cern Security UAB-2009
 
Active Network Node in Silicon-Based L3 Gigabit Routing Switch
Active Network Node in Silicon-Based L3 Gigabit Routing SwitchActive Network Node in Silicon-Based L3 Gigabit Routing Switch
Active Network Node in Silicon-Based L3 Gigabit Routing Switch
 
Open Networking Better Networking Through Programmability
Open Networking Better Networking Through ProgrammabilityOpen Networking Better Networking Through Programmability
Open Networking Better Networking Through Programmability
 
Hablemos de ALMA — Wideband Sensitivity Upgrade
Hablemos de ALMA — Wideband Sensitivity UpgradeHablemos de ALMA — Wideband Sensitivity Upgrade
Hablemos de ALMA — Wideband Sensitivity Upgrade
 
A small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspectionA small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspection
 
A small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspectionA small climbing robot for the intelligent inspection
A small climbing robot for the intelligent inspection
 
Oop2018 tutorial-stal-mo2-io t-arduino-en
Oop2018 tutorial-stal-mo2-io t-arduino-enOop2018 tutorial-stal-mo2-io t-arduino-en
Oop2018 tutorial-stal-mo2-io t-arduino-en
 
SDN on WAN
SDN on WANSDN on WAN
SDN on WAN
 
Cognitive Engine: Boosting Scientific Discovery
Cognitive Engine:  Boosting Scientific DiscoveryCognitive Engine:  Boosting Scientific Discovery
Cognitive Engine: Boosting Scientific Discovery
 
Open Source Software Tools for Synchrophasor Applications
Open Source Software Tools for  Synchrophasor ApplicationsOpen Source Software Tools for  Synchrophasor Applications
Open Source Software Tools for Synchrophasor Applications
 
Distance Measurement Using Ultrasonic Sensor and Nodemcu
Distance Measurement Using Ultrasonic Sensor and NodemcuDistance Measurement Using Ultrasonic Sensor and Nodemcu
Distance Measurement Using Ultrasonic Sensor and Nodemcu
 
Cost-effective software reliability through autonomic tuning of system resources
Cost-effective software reliability through autonomic tuning of system resourcesCost-effective software reliability through autonomic tuning of system resources
Cost-effective software reliability through autonomic tuning of system resources
 
Arduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning SystemArduino Based Collision Prevention Warning System
Arduino Based Collision Prevention Warning System
 
Pipelining In computer
Pipelining In computer Pipelining In computer
Pipelining In computer
 
Leonid Semakov presentation Enhanced Network Performance Evaluation
Leonid Semakov presentation Enhanced Network Performance EvaluationLeonid Semakov presentation Enhanced Network Performance Evaluation
Leonid Semakov presentation Enhanced Network Performance Evaluation
 
JCHPS 240 B. Sivachandra Mahalingam 430-432
JCHPS 240 B. Sivachandra Mahalingam 430-432JCHPS 240 B. Sivachandra Mahalingam 430-432
JCHPS 240 B. Sivachandra Mahalingam 430-432
 
Next-Generation Optical Access Architecture
Next-Generation Optical Access ArchitectureNext-Generation Optical Access Architecture
Next-Generation Optical Access Architecture
 
Operating System Concepts ( PDFDrive ).pptx
Operating System Concepts ( PDFDrive ).pptxOperating System Concepts ( PDFDrive ).pptx
Operating System Concepts ( PDFDrive ).pptx
 
Quantum computer
Quantum computerQuantum computer
Quantum computer
 

entenr_colloquium_v02

Editor's Notes

  1. What are restrictive compute devices? Typically small form-factor or embedded devices Limited by size, maybe power, maybe programmatic limits. The unifying boundary here is that due to an external factor, processing time is limited in terms of complexity or operations per second. Perhaps the problem being solved is just computationally intensive. An image processing algorithm, or possibly even speech pattern recognition Here is an Auto ECU (Engine Control Uni)t from 2001– running a CPU of about 40 Mhz, and maybe 1 MB of program code to run a car. This TV set top box is also a restrictive compute device, mainly due to temperature constraints, by keeping noise level as passive as possible. Finally, we have a home power meter. This device has just enough intelligence to sample data, and forward it onward to a power utility. All of these devices are programmed to do simple tasks via deliberative control.
  2. Short answer: Of course! This is a Nest Thermostat, which leverages the power of the great Google in the sky to augment the base, simple, and restrictive functions that a thermostat would normally perform with the massive computing resources available in the cloud. This restrictive compute device’s functions have been augmented by wirelessly being able to receive and transmit data from the cloud (and all the big brother implications that this allows.)
  3. This is a Parrot AR.Drone 2.0. It uses 4 electric motors for actuation to provide it with 6 degrees of Freedom (DOF). 1 Ghz. 32-bit ARM Cortex A8, with an video DSP running at 800 Mhz. 1 GB DDR2 RAM @ 200 Mhz. 3-axis accelerometer, 3-axis magnetometer, 3-axis, gyroscope, Pressure sensor, and ultrasonic sensor. Camera operating at 60FPS Additionally, each motor has an 8 MIPS CPU per motor, listening to the ARM-based processor
  4. Let’s add on computation: Cost-Effective Source Exploit x86 instruction set for optimizations Wireless I/O Capable of even sending its commands out to a higher brain. The Intel Edison platform is all of these for about $50 today. The Edison platform is an x86 Atom-based dual-core chip. This die is attached to an Arduino package, enabling us to offer additional communication expansion such as Cellular, or Bluetooth LE 4.0.
  5. In this scenario, one Edison is established as Primary, and uses Bluetooth as a side-channel to communicate with the other Edison units which become “Secondary” units. This in theory allows for up to 32 discrete drone units in a single squad, assuming the Bluetooth communication side-channel loop could support it. Further study required here.
  6. There has been some research done in the area of drones and computer vision, as this is a popular topic that has captured the public’s imagination and excitement. A project from the Technical University of Munich has successfully demonstrated edge detection and pathfinding algorithms using a single drone. They too are leveraging OpenCV library, an open-source repository of Computer Vision API’s originally developed by Intel, and opened up for continued improvement. And more close to home, work undertaken here by former UWT Grad Student Kenny Kong, and Drs. Sheng and PHONETIC: “Tear-desci” involved writing a collision avoidance algorithm by sampling image data from camera sensors, and building a comprehensive set of polygon obstacles to avoid. Both of these solutions involved utilizing external CPU processing from laptops or nearby desktops. To date no one has leveraged small form-factor CPU’s that could be physically attached to the drones themselves. Phonetic: Tear-desci
  7. This is the National Palace in Haiti And this is after. A drone that could negotiate obstacles, control other drones, or relay information back to outside personnel would be incredibly useful during an emergency or disaster scenario. This is just one of many possible applications include security/defense, search and rescue, and…also, isn’t the idea of a fleet of drones kind of cool?!
  8. During the POC phase I evaluated: How the drone handles interruption of primary channel and side channel functions How the drone handles loss of power How does the drone communicate status updates over the TCP channel? What are the detail messages available How resilient is the UDP channel? (detail: Obviously you end retransmitting “LEFT, LEFT, LEFT” over a UDP channel which means you have to “react” to no longer needing to go Left via some other input data.
  9. Software Stack used to produce Phase I Edison stack supports NodeJS, and by extension the Node Package Manager NodePM. Cylon.JS is a framework used to support drones, and other robot packages out there. It provides a convenient interface for control. Note: We are not exploiting much of x86 in Phase 1, really just trying to get a feel for the hardware, tolerances with WiFi control distance, etc.
  10. In Phase II we’ll leverage the OpenCV libraries to begin performing image processing and edge detection on the video frames sent back from the drone. To begin with we’ll feed static images from a known source in order to perfect the algorithm. This implementation will likely be done in C or C++ for ease of adding in direct code written in assembly.