Real-Time Sensing on Android Reliable Mobile Systems Group Fiji Systems Inc. Yin Yan, Shaun Cosgrove, Ethan Blanton, Steven Y. Ko, Lukasz Ziarek

Slides:



Advertisements
Similar presentations
Intro to Android and iOS CS-328 Dick Steflik. The Players Android – Open source mobile OS developed ny the Open Handset Alliance led by Google. Based.
Advertisements

Chapter 13 Embedded Systems
Chapter 13 Embedded Systems Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
DEPARTMENT OF COMPUTER ENGINEERING
Contiki A Lightweight and Flexible Operating System for Tiny Networked Sensors Presented by: Jeremy Schiff.
Chapter 13 Embedded Systems
Optimize tomorrow today. TM 1 Optimize tomorrow today. Arlene Minkiewicz, Chief Scientist PRICE Systems, LLC Software.
SKKU Embedded Software Lab Remote Sensor Byunghei Jun Dongsu Kim Dongig Sin.
Chapter 1 Embedded And Real-Time System Department of Computer Science Hsu Hao Chen Professor Hsung-Pin Chang.
CS378 - Mobile Computing Sensing and Sensors. Sensors "I should have paid more attention in Physics 41" Most devices have built in sensors to measure.
CS378 - Mobile Computing Sensing and Sensors. Sensors "I should have paid more attention in Physics 41" Most devices have built in sensors to measure.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 15 Slide 1 Real-time Systems 1.
Mobile Handset Hardware Architecture
TouchDevelop Create apps for all your devices
EMBEDDED SYSTEMS G.V.P.COLLEGE OF ENGINEERING Affiliated to J.N.T.U. By By D.Ramya Deepthi D.Ramya Deepthi & V.Soujanya V.Soujanya.
How cheap and simple can a UAV be? Chris Anderson, Wired Magazine/DIY Drones.
1 Nokia N900 – Debian in your pocket Presentation by Eric Halmans - Jan 2010 Nokia N900.
Introduction to Real-Time Systems
Sérgio Ronaldo Barros dos Santos (ITA-Brazil)
1 소프트웨어공학 강좌 Chap 11. Real-time software Design - Designing embedded software systems whose behaviour is subject to time constraints -
DexterNet Katherine Gilani (UT Dallas) Philip Kuryloski (Cornell) Posu Yan (UC Berkeley) An Open Platform for Heterogeneous Body Sensor Networks and Its.
Example title for notes and handouts
1 XYZ: A Motion-Enabled, Power Aware Sensor Node Platform for Distributed Sensor Network Applications Presenter: James D. Lymberopoulos, A. Savvides.
Sensors – Part I SE 395/595.
IMPROVE THE INNOVATION Today: High Performance Inertial Measurement Systems LI.COM.
CS378 - Mobile Computing Sensing and Sensors Part 2.
Dhanshree Nimje Smita Khartad
Reference: Ian Sommerville, Chap 15  Systems which monitor and control their environment.  Sometimes associated with hardware devices ◦ Sensors: Collect.
Towards real-time camera based logos detection Mathieu Delalandre Laboratory of Computer Science, RFAI group, Tours city, France Osaka Prefecture Partnership.
Unit - VI. Linux and Real Time: Real Time Tasks Hard and Soft Real Time Tasks Linux Scheduling Latency Kernel Preemption Challenges in Kernel Preemption.
Slide 1 Chapter 11 Real –time Software Designs. Slide 2 Real-time systems l Systems which monitor and control their environment l Inevitably associated.
Fall 2013 SILICON VALLEY UNIVERSITY CONFIDENTIAL 1 Introduction to Embedded Systems Dr. Jerry Shiao, Silicon Valley University.
Real-Time, Clocking, and Porting (My Job ) Determining the Real Time Capabilities of various Operating Systems. Writing code to support Real Time Clocking.
CSE501 Yin Yan. RT Linux RTEMS Research in Reliable Mobile System Blue seal RTDroid Record and replay Resource Accounting.
©Ian Sommerville, Robin Abraham 2004CS 361, Summer 2004 Slide 1 Real-time Software Design.
Real-time Software Design King Saud University College of Computer and Information Sciences Department of Computer Science Dr. S. HAMMAMI.
CSCI1600: Embedded and Real Time Software Lecture 18: Real Time Languages Steven Reiss, Fall 2015.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
CSCI1600: Embedded and Real Time Software Lecture 2: Introduction Steven Reiss, Fall 2015.
Sensors in android. App being more applicable Keeping track of your heart beat while jogging. Pointing the phone camera towards the night sky to know.
1.Accelerometer:Accelerometer in an iPhone. Definition: An accelerometer is a sensor which measures the tilting motion and orientation of a mobile phone.
Sensors For Mobile Phones  Ambient Light Sensor  Proximity Sensor  GPS Receiver Sensor  Gyroscope Sensor  Barometer Sensor  Accelerometer Sensor.
SR: 599 report Channel Estimation for W-CDMA on DSPs Sridhar Rajagopal ECE Dept., Rice University Elec 599.
System Architecture Directions for Networked Sensors.
Acceleration Sensing Dec 10, 2004 Zhong-Yi Jin William Chang.
2-1 Advanced Embedded Systems Presentations Lecture 20.
Lecture 4: Sensors Topics: Motion, Position, and Environmental Sensors Date: Feb 11, 2016.
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Embedded System Design and Development Introduction to Embedded System.
CPE 490/590 – Smartphone Development
Software Architecture of Sensors. Hardware - Sensor Nodes Sensing: sensor --a transducer that converts a physical, chemical, or biological parameter into.
CHAPTER 8 Sensors and Camera. Chapter objectives: Understand Motion Sensors, Environmental Sensors and Positional Sensors Learn how to acquire measurement.
Android Android Sensors Android Sensors: – Accelerometer – Gravity sensor – Linear Acceleration sensor – Magnetic Field sensor – Orientation.
Sensors in Android.
Vijay Kumar Kolagani Dr. Yingcai Xiao
Real-time Software Design
Real-time Software Design
Real-time Software Design
REAL-TIME OPERATING SYSTEMS
Making Android Run On Time
ANDROID AN OPEN HANDSET ALLIANCE PROJECT
RTDroid: toward building dynamic real-time systems
Goal : Develop a software that converts arm movements into messages
Vijay Kumar Kolagani Dr. Yingcai Xiao
CS499 – Mobile Application Development
Real-time Software Design
Mobile Handset Sensors
Vijay Kumar Kolagani Dr. Yingcai Xiao
Android Intents & Sensors
Presentation transcript:

Real-Time Sensing on Android Reliable Mobile Systems Group Fiji Systems Inc. Yin Yan, Shaun Cosgrove, Ethan Blanton, Steven Y. Ko, Lukasz Ziarek

Interest in Real-Time Android Evaluating Android OS for Embedded Real-Time Systems Android and RTOS together: The dynamic duo for today’s medical devices RTAndroid: A real-time extension to Android with non-blocking GC RTDroid: RTOS + RTVM + RT-Android Framework 1 / 19

Indoor Positioning Inertial sensor data Bluetooth GSM Wireless Lan Wearable Tracking activity Sleeping quality Daily calorie consumption Sensor Event Driven Apps in Mobile 2 / 19

Sensor Event Driven Apps in Real-time GPS inertial measurement unit Camera and antenna pointing Stabilization 3 / 19

Requirement for Sensor Architecture Traditional mobile sensing app Multi sensors Multi components Hardware control Real-time sensing app Predictability in data delivery 4 / 19

Available Sensors in Android Hardware sensor  Accelerometer  Ambient temperature  Geomagnetic field  Gyroscope  Light  Pressure  Humidity Software Sensors  Linear acceleration  Significant motion  Step detector  Step counter  Rotation sensor  Game rotation vector  Gravity  Magnetometer  Orientation  … 5 / 19

What Does the Android Sensor Architecture Provide? Application Sensor Manager SensorEvent Listener SensorEvent Listener Accelerometer Gyroscope Magnetometer … … enable/disable Change sampling rate Subscript sensor event 6 / 19

Sensor Event Listener Sensor Service Input Event Sensor Manger How Does Android Sensor Manager Work? Sensor Fusion Sensor Thread Event Queue Native SensorManger Sensor Thread KernelSystem Runtime FrameworkApplication 7 / 19

What Happens In a Real-Time Context? Accelerometer Data Gyroscope Data One application is listening on two sensors Accelerometer with higher priority Gyroscope with lower priority Kernel Application Unbound Delivery Time Android Framework 8 / 19

RT SensorManager Event-driven architecture Polling and processing thread Receiver-based priority inheritance Polling and processing inherit the highest priority of the receivers RT-Handler for delivery sensor events with to different receivers 9 / 19

RT-Handler RT SensorManager Polling Threads Processing Threads gyroscope Accelerometer Handler … gyroscope Accelerometer 10 / 19 Apps Accel Listener Gyroscope Listener P1P1 P2P2 P2P2 P1P1 P1P1 P1P1 P2P2 P2P2 P 1 > P 2

Evaluation on jPapabench 11 / 19

Porting jPapaBench into RTDroid Fly-By-Wired (FBW)SimulationAutopilot SensorManager TestPPMTask Handler TestPPMTask Handler SendDataTo Autopolit SendDataTo Autopolit CheckFailsafe TaskHandler CheckFailsafe TaskHandler CheckMega128 ValuesTaskHandler CheckMega128 ValuesTaskHandler SimulatorFlight ModelTaskHandler SimulatorFlight ModelTaskHandler SimulatorIR TaskHandler SimulatorIR TaskHandler SimulatorGPS TaskHandler SimulatorGPS TaskHandler Navigation TaskHandler Navigation TaskHandler Stablization TaskHandler Stablization TaskHandler AltitudeControl TaskHandler AltitudeControl TaskHandler … … Data injectionData subscription 12 / 19

Simulated workload: Memory intensive load: allocating a 2.5 MB integer array every 20ms Computation intensive load: tight loop performing a floating point multiplication every 20ms Client intensive load: 1 higher priority a listener with number of lower priority listeners Evaluation on jPapabench Measurement : The latency of the IR sensor data delivery Time cost from the time of sensor data buffered to the time of the sensor data delivered in IR Sensor reading task 13 / 19

RT Linux RTEMS  Soft Real-time Smartphone  ARM Cortex-A8 1000MHz  512 MB memory  Android on Linux 3.0 with real time patch  Hard Real-time Embedded  SPARC, Leon3, 50 MHz  8MB flash PROM  64MB SDRAM  RTEMS Evaluation Platforms 14 / 19

RTEMS Evaluation for Java Autopilot Base line performance on Nexus S Base line performance on LEON / 19

RTEMS Evaluation for Java Autopilot RT SensorManager stress tests on LEON / 19

Future Extensions to jPapabench 17 / 19 Flight dynamic model IR & GPS Connect jPapabench with physical simulator Drivers in kernel for RTDroid SensorManager jPapabench Application Simulator in Paparazzi Sensor Manager Kernel Driver

Future extensions to jPapabench PaparazzijPapabench 18 / 19

Real-time extension of Android manifest for off-line analysis and resource pre-allocation Programming model design with scoped memory Multi-application execution in partitioned system Alterative of Binder for inter-process communication Future Work on RTDroid 19 / 19 Thanks

Visit Us

Application: soft real-time fall detector Simulated workload: Memory intensive load: allocating a 2.5 MB integer array every 20ms Computation intensive load: tight loop performing a floating point multiplication every 20ms Evaluation for RT Sensor Architecture Measurement : the latency of the sensor data delivery Time cost from the time of sensor data buffered in kernel to the time of the sensor data delivered in application

RTEMS Memory stress test for the fall detection app on Nexus S Evaluation for RT Sensor Architecture