smartbike epsiae
DESCRIPTION
smartBike is a prototype of an adaptive navigation system which is especially designed for e-bikes. Contextinformation like the current battery status or the drivers fitness level have an effect on the route finding. One of the key functionalities is that the system provides additional routes to the user if the bike runs out of battery. In that case, he simply gets redirected towards the closest charging station. (c) 2012, Christoph Kieslich, Alexander Lenz, Michael Schöllhammer, Manuel Lindorfer - University of Applied Sciences Upper Austria Campus Hagenberg - Department Mobile ComputingTRANSCRIPT
smartBike
Internet Services
smartBikeAn adaptive navigation system for e-bikes
EPSIAE Green ICT
smartBike
Overview
• Big Picture
• Motivation
• System Architecture
• Server
• Client
• Context Framework
• Sensor Technology
• Future Work
smartBike
Big Picture
• Android Navigation App for E-Bikes
• Personal routing
– Age
– Weight
– Fitnesslevel, …
• Adaptive routing
– Current batterylevel has an influence on the routing algorithm
– Redirection over nearby charging stations
smartBike
Motivation
• Increase cruising reach
• CO2 awareness
– Show the users how many CO2 they have saved
– Create footprints, graphs
• Motivate people to go by bicycle
smartBike
System architecture
smartBike
Internet Services
smartBikeAn adaptive navigation system for e-bikes
Routing Server
smartBike
Server
• PostgreSQL-Database
• ASP.NET Webservice
– Communication via SOAP - XML
ASP.NET Webservice
NpgSQL
SOAP
PostgreSQL DB
smartBike
Why PostgreSQL?
• Open Source DBMS
• PostGIS
– Geospatial querys on a object-relational database
– PostgreSQL-Server as a backend GIS
smartBike
pgRouting
• Open Source Routing Library
• Adds routing functionalities to an exisiting PostGIS/PostgreSQL database
– Calculation of shortest paths (Dijkstra, A*)
– Travelling Salesman Problem (TSP)
smartBike
OSM-Import
• Osm2po
– Java-based command line tool
– Produces routable SQL files
– Integrated web tool
smartBike
Route calculation
• Client requests a new route with a list of GPS-Coordinates (lat/lon) and
an unique user id
• Server mapps coordinates on valid positions
• Calculation of the euclidean distance between the positions
• Nearest-Neighbour-Heuristic is used to find the cheapest connection of all locations
• Route is stored to the database and transmitted to the user
smartBike
Internet Services
smartBikeAn adaptive navigation system for e-bikes
Android App (Client)
smartBike
Client
• Android App
• Navigation mode
• Communicates with the server via SOAP
• Context Framework provides sensor values (pressure, energy, heading…)
• Shows nearby charging stations
smartBike
Client Librarys
• mapsforge
– Mapview
– Offline Maps
– OpenStreetMap Mapmaterial
• kSoap
– RPC for Client Server Communication
smartBike
Functions
• Map
– Fully offline mode
– Vector maps, use less space
• Navigation
– User types in there start / endposition
– Server calculates cheapest route
– Client presents the route
– Shows sensorvalues from the arduino
smartBike
Client Design
smartBike
Internet Services
smartBikeAn adaptive navigation system for e-bikes
Android Context Framework
smartBike
Context Awareness
• Context
– is any information that can be used to characterize the situation of an entity. An
entity is a person, place, or object that is considered relevant to the interaction
between a user and an application, including the user and applications themselves.[Anind K. Dey and Gregory D. Abowd]
– Location, Time, Movement, Volumne …
• Context is calculated from sensor values
smartBike
Android Context Service
• interface to offer context information to applications
Application 1
Context Service
… Application N
Context Aggregators
Hardware Sensors
smartBike
Implementation
• Hardware Sensors
– On Android device and Arduino board
• Context Aggregators
– Combine the output of sensors and context aggregators
– Offer context information
Hardware Sensors
GPS
Context Aggregators
Running
Acc Lightsensor
Driving Moving
…
…
smartBike
Architecture
• Framework
– Context Aggregator:
• Input
– Calibration or filters
• Output
– Context is published
– New Context Aggregators can be implemented and
used by interested applications
• Combined to get better and better context information
Moving
Input
Output
AccGPS
smartBike
Tasks
• Processes the raw Arduino sensor values
– Altitude changes
– Distance
– Velocity
– Compass
• Offers context information to Green Route Android Application
– To adapt the route according to the new context
– Show information to user
smartBike
Internet Services
smartBikeAn adaptive navigation system for e-bikes
Sensor Technology
smartBike
Sensor System
• Aim: designing and developing a prototype of a µC-based Sensorsystem
including all relevant sensors for an E-bike Navigation Application
• Calculate all Sensor-Data periodically
• Wireless Transmission of the data to an Android-device
• Android Service as a receiver of the sensor-data
• -> Possibility to save energy with an alternate calculation of the position by
turning off the GPS-receiver partly
smartBike
Architecture
smartBike
Amarino
• Android meets Arduino
• Toolkit (Android-Lib + Arduino-Lib) to ease the BT-Communication between
Android-Devices and Arduino µC Boards
• It includes a simple frame based communication protocol
smartBike
HW-Prototyp – Circuit Layout
smartBike
Prototyp
smartBike
Summary
• Adaptive navigation system for E-bikes
• Trying to convince people to go by bike
• Using sensors to gather context information and present it to user
smartBike
Future Work
• Improve Adaptive Routing
– Taking personal data into account
• Apply navigation functionality
• Calculation of CO2 footprint
• Visualization of following statistics
– Calorie consumption
– Altitude, elevation, speed
smartBike
Internet Services
smartBikeAn adaptive navigation system for e-bikes
Thanks for your attention!