CS378 - Mobile Computing Sensing and Sensors. Sensors "I should have paid more attention in Physics 41" Most devices have built in sensors to measure.

Slides:



Advertisements
Similar presentations
Android Application Development Tutorial. Topics Lecture 4 Overview Overview of Sensors Programming Tutorial 1: Tracking location with GPS and Google.
Advertisements

Programming with Android: System Services Luca Bedogni Marco Di Felice Dipartimento di Scienze dell’Informazione Università di Bologna.
TouchDevelop Chapter 5-7 Chapter 5 Audio Chapter 6 Camera, Graphics and Video Chapter 7 Sensors Mengfei Ren.
Slide Ruler. ? X 5" On today’s menu...  What happened with Gravity  Noise  The tool today  Fundamental Limitations  Magical Christmas Land  (Where.
Mobile Handset Sensors. Outline Overview GPS Other Sensors 2.
Sensors.  Hardware devices that take measurements of the physical environment  Some examples  3-axis Accelerometer  3-axis Magnetic field sensor 
REAL-TIME SOFTWARE SYSTEMS DEVELOPMENT Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
Real-Time Sensing on Android Reliable Mobile Systems Group Fiji Systems Inc. Yin Yan, Shaun Cosgrove, Ethan Blanton, Steven Y. Ko, Lukasz Ziarek
Introduction to Smartphone Sensors
Android sensors.
The Accelerometer and Gyroscope
Applications can seamlessly adapt to the users environment using environmental and motion/activity sensors.
CS378 - Mobile Computing Sensing and Sensors. Sensors "I should have paid more attention in Physics 41" Most devices have built in sensors to measure.
Phone guide for people over 65. Not Smart Phones.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
Android Sensors & Async Callbacks Jules White Bradley Dept. of Electrical and Computer Engineering Virginia Tech
Mobile Application Development Selected Topics – CPIT 490
Lecture # 9 Hardware Sensor. Topics 2  SensorManger & Sensor  SensorEvent & SensorEventListener  Example Application.
1 Localization and Sensing Nilanjan Banerjee Mobile Systems Programming (Acknowledgement: Jules White) University of Arkansas Fayetteville, AR
Sensing. Possible sensors on devices – Documented in SensorEvent class Accelerometer (m/s 2 ) – acceleration in x, y, z axes Magnetic Field (micro Tesla)
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
Doodlz App Android How to Program © by Pearson Education, Inc. All Rights Reserved.
1 CMSC 628: Introduction to Mobile Computing Nilanjan Banerjee Introduction to Mobile Computing University of Maryland Baltimore County
Sensors – Part I SE 395/595.
CS378 - Mobile Computing Sensing and Sensors Part 2.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
Mobile Device Development Camera and Sensors Dr.YingLiang Ma.
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.
Explorations of Pressure and Variations of Pressure First, what is pressure?  Can you think of examples of pressure?
The ambient light sensor in a smart phone is what measures how bright the light is. It’s the phones software that adjusts the brightness in the display.
Sensors Nasrullah Khan Niazi. Using Device Sensors The Android SDK provides access to raw data from sensors on the device.The sensors,and their precision.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
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.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
CS378 - Mobile Computing Sensing and Sensors Part 2.
Lecture 4: Sensors Topics: Motion, Position, and Environmental Sensors Date: Feb 11, 2016.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
The sensors guide fingerprint sensors rate monitor gyroscope camera
CPE 490/590 – Smartphone Development
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
CHAPTER 8 Sensors and Camera. Chapter objectives: Understand Motion Sensors, Environmental Sensors and Positional Sensors Learn how to acquire measurement.
CS371m - Mobile Computing Sensing and Sensors.
The Doodlz app enables you to paint by dragging one or more fingers across the screen. The app provides options for setting the drawing color.
Android Android Sensors Android Sensors: – Accelerometer – Gravity sensor – Linear Acceleration sensor – Magnetic Field sensor – Orientation.
Mobile phone sensors. Sensors Sensors gyroscope The gyroscope is a sensor that can provide orientation information as well. This sensor can tell how.
Sensors in Android.
Vijay Kumar Kolagani Dr. Yingcai Xiao
Lecture 4: Sensors Topics: Motion, Position, and Environmental Sensors
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
Lecture 4: Sensors Topics: Motion, Position, and Environmental Sensors.
Walk n’ Play Group #8 - Team Murali Krishna Goli Viswanath Patimalla
Sensors, maps and fragments:
Goal : Develop a software that converts arm movements into messages
Vijay Kumar Kolagani Dr. Yingcai Xiao
CS499 – Mobile Application Development
App Inventor You are going to use App Inventor to make an application for your phone Smart Phone ‘s can hold many entertaining apps due to the amount of.
Mobile Handset Sensors
CS371m - Mobile Computing Sensing and Sensors.
Vijay Kumar Kolagani Dr. Yingcai Xiao
Inertial Measurement Units
Android Topics Sensors Accelerometer and the Coordinate System
Android Programming Tutorial
Lecture 4: Sensors Topics: Motion, Position, and Environmental Sensors.
Android Intents & Sensors
Mobile Programming Sensors in Android.
CIS 694/EEC 693 Android Sensor Programming
Presentation transcript:

CS378 - Mobile Computing Sensing and Sensors

Sensors "I should have paid more attention in Physics 41" Most devices have built in sensors to measure and monitor – motion – orientation (aka position) – environmental conditions sensors deliver raw data to applications 2

Sensor Framework Determine which sensors are available on a device. Determine an individual sensor's capabilities, such as its maximum range, manufacturer, power requirements, and resolution. Acquire raw sensor data and define the minimum rate at which you acquire sensor data. Register and unregister sensor event listeners that monitor sensor changes. 3

Using Sensors - Basics Obtain the SensorManager object create a SensorEventListener for SensorEvents – logic that responds to sensor event – various amounts of data from sensor depending on type of sensor Register the sensor listener with a Sensor via the SensorManager 4

Using Sensors registerListener(SensorEventListener, Sensor, int rate) rate is just a hint SENSOR_DELAY_NORMAL, SENSOR_DELAY_UI, SENSOR_DELAY_GAME, or SENSOR_DELAY_FASTEST, or time in microseconds (millionths of a second) 5

SensorEventListener Interface with two methods: – void onAccuracyChanged (Sensor sensor, int accuracy) – void onSensorChanged (SensorEvent event) Sensor values have changed this is the key method to override – don't hold onto the event part of pool and the values may be altered soon 6

Listing Sensors on a Device to Log 7

Types of Sensors - Dev Phone - Older accelerometer, linear acceleration, magnetic field, orientation, light, proximity, gyroscope, gravity 8

Sensor Capabilities - Dev Phones - Older 9

Types of Sensors - Dev Phone - Newer 10

Sensor Capabilities - Dev Phone - Newer 11

Simple Sensor Example App that shows linear acceleration options to display current … or maximum, disregarding direction Linear Layout TextViews for x, y, and z Buttons to switch between max or current and to reset max 12

Sensor Coordinate System For most motion sensors: +x to the right +y up +z out of front face relative to device 13

Sensor Coordinate System App that displays max acceleration along each axis Hold phone straight up and down and move to ground 14

Sensor Coordinate System Repeat but hold… then sideways phone flat 15

Getting Sensor Data registerListener – sensorEventListener – Sensor -> obtain via SensorManager – rate of updates, a hint only, or microseconds (not much effect) returns true if successful 16

SensorEventListener 17

Display Max 18 Recall, max range of linear acceleration on dev phone is gravity = a baseball pitcher throwing a fastball reaches 350 m/s 2 or more (various "physics of baseball" articles)

Display Current Lots of jitter Attempt to zero out??? 19

Types of Sensors Not every device has every kind of sensor Constants from Sensor class Three main classes of sensors: – motion – environmental – position 20

Types of Sensors TYPE_ACCELEROMETER – hardware – acceleration force in m/s 2 – x, y, z axis – includes gravity 21

Types of Sensors TYPE_AMBIENT_TEMPERATURE – hardware – "room" temperature in degrees Celsius – no such sensor on dev phones TYPE_GRAVITY – software or hardware – just gravity – if phone at rest same as TYPE_ACCELEROMETER 22

Types of Sensors TYPE_GYROSCOPE – hardware – measure device's rate of rotation in radians / second around 3 axis TYPE_LIGHT – hardware – light level in lx, – lux is SI measure illuminance in luminous flux per unit area 23

Types of Sensors TYPE_LINEAR_ACCELERATION – software or hardware – measure acceleration force applied to device in three axes excluding the force of gravity TYPE_MAGNETC_FIELD – hardware – ambient geomagnetic field in all three axes – uT micro Teslas 24

Types of Sensors TYPE_ORIENTATION [deprecated] – software – measure of degrees of rotation a device makes around all three axes TYPE_PRESSURE – hardware – ambient air pressure in hPa or mbar – force per unit area – 1 Pascal = 1 Newton per square meter – hecto Pascals (100 Pascals) – milli bar - 1 mbar = 1hecto Pascal 25

Types of Sensors TYPE_PROXIMITY – hardware – proximity of an object in cm relative to the view screen of a device – most just binary (see range, resolution) – typically used to determine if handset is being held to person's ear during a call TYPE_RELATIVE_HUMIDITY – ambient humidity in percent ( 0 to 100) 26

Types of Sensors TYPE_ROTATION_VECTOR (ABSOLUTE) – hardware or software – orientation of device, three elements of the device's rotation vector TYPE_TEMPERATURE – hardware – temperature of the device in degrees Celsius 27

Availability of Sensors 28

Sensor Capabilities Various methods in Sensor class to get capabilities of Sensor minDelay (in microseconds) power consumption in mA (microAmps) maxRange resolution 29

Accelerometer - Includes Gravity Sensor. TYPE_ACCELEROMETER Device flat on table g ~= 9.81 m/s 2 30

Linear Acceleration At rest of table Recall units are m/s 2 31

Zeroing out Take average of first multiple (several hundred) events and average – shorter time = more error Potential error – should be 0 at rest Results: 32

Rate of Events 1000 events SensorManager.SENSOR_DELAY_UI – times in seconds: 21, 21, 21 – 21 seconds / 1000 events SensorManager.SENSOR_DELAY_FASTEST – times in seconds: 21, 21, 21 Recall delay of 20,000 micro seconds 2x10 4 x 1x10 3 = 2x10 7 = 20 seconds 33