Automated location tracking_using_bluetooth

44
Automated Location Tracking Using Bluetooth Submitted by Uday Ananth Akhila Athresh Abhijeet Yatgiri

Transcript of Automated location tracking_using_bluetooth

Page 1: Automated location tracking_using_bluetooth

Automated Location Tracking Using Bluetooth

Submitted by Uday Ananth

Akhila AthreshAbhijeet Yatgiri

Page 2: Automated location tracking_using_bluetooth

Abstract

• Location Tracking is crucial in providing visibility of mobile nodes.

• Better Control, higher productivity

• Traditional Tracking – Global Positioning System(GPS)

• Alternate Tracking for smaller geography -Bluetooth

Page 3: Automated location tracking_using_bluetooth

Objective

• To track human location in signal sensitive area using Bluetooth.

• Constantly monitor the location

• Provide consistent information regarding user whereabouts.

• Support duplex communication between mobile nodes and server

Page 4: Automated location tracking_using_bluetooth

System Requirements

Page 5: Automated location tracking_using_bluetooth

Hardware Requirements(per node basis)

• Intel Core2Duo e8200 (2.66 GHz) (Lower end processors can be used as well)

• 2GB RAM DDR2 (A minimum of 512 MB required)

• Intel dp35dp Chipset

• LAN (Ethernet) Card

• Silicon Cambridge Bluetooth Radio (Dongle)

• Bluetooth Enabled Cellular Phones.

Page 6: Automated location tracking_using_bluetooth

Software Requirements

• Operating System: Fedora 12

• Development Platform: NetBeans IDE 6.8

• Libraries Used

– Java SE 6 v18

– Bluecove GPL 2.1 (JSR -82)

Page 7: Automated location tracking_using_bluetooth

– Java Database Connectivity (JDBC)

– Jakarta Commons Net

• Backend: MYSQL Server

• Network Communication: vsftpd

Page 8: Automated location tracking_using_bluetooth

DESIGN

Page 9: Automated location tracking_using_bluetooth

Client Server Design

Page 10: Automated location tracking_using_bluetooth

University CampusSERVER ROOM192.168.1.1

LAB 1192.168.1.2

LIBRARY192.168.1.3

LAB 2192.168.1.4

OFFICE192.168.1.5

LAB 3192.168.1.6

A4:67:B5:89:00:F5 (Registered User A )

B6:88:C8:34:07:66 (Registered User B)

Page 11: Automated location tracking_using_bluetooth

Client Functionality

• Sweep a small geographical subarea

• Detect mobile devices within this sub area and send

their MAC addresses to server via FTP

• Receive data from server

• Push the data to the mobile device

Page 12: Automated location tracking_using_bluetooth

Server Functionality

• Register Bluetooth enabled phones

• Create, Maintain Databases

• Receive MAC addresses of mobile nodes from Client nodes.

• Determine which user is in which area using the above information

• Send and receive data to mobile nodes via intermediate client nodes

Page 13: Automated location tracking_using_bluetooth

Software Design

User Interface

DatabaseBluetooth Radio Device Discovery

Page 14: Automated location tracking_using_bluetooth

Bluetooth

Page 15: Automated location tracking_using_bluetooth

Bluetooth

• Open Specification, Wireless Standard

• Short range radio technology(2.4 Ghz) for ad hoc communication of voice and data transfer

• Creation of PANs

• Range: 10 m for low end, 100 m high end Bluetooth devices

Page 16: Automated location tracking_using_bluetooth

Bluetooth Stack

Page 17: Automated location tracking_using_bluetooth

• Radio layer : lowest layer, controls transceiver's requirements and signals

• Baseband : physical RF links b/w devices, channel processing, timing, channel access control.

• Link Manager: Link control, Baseband packet size, Authentication.

Page 18: Automated location tracking_using_bluetooth

• HCI : command interface for the below layers, can access hardware status, control registers

• L2CAP : abstracts uppers layers from the lower layers

• SDP : Protocol for querying, searching services

Page 19: Automated location tracking_using_bluetooth

• RFCOMM : Serial port emulator

• OBEX : Similar to HTTP but used in low end devices. Pushing data to mobile nodes.

Page 20: Automated location tracking_using_bluetooth

Device Discovery

• A Bluetooth device dynamically detects other Bluetooth devices in it’s vicinity –Device Discovery (Inquiry)

• It should also be able to detect services that are running on these detected devices –Service Discovery

• Devices can be set to ‘general’ mode , ‘non- discoverable’ mode or ‘limited’ mode.

• When issued an inquiry only discoverable devices respond back to the initiator with a 6 byte address

Page 21: Automated location tracking_using_bluetooth

Service Discovery

Page 22: Automated location tracking_using_bluetooth

• A Bluetooth Server is one that’s running JABWT application and can provide services to Client via Bluetooth

• The Bluetooth Stack provides Services Discovery Database (SDDB) : Contains all the services provided by server and accessible by client via Service Discovery Protocol (SDP) query

Page 23: Automated location tracking_using_bluetooth

• List of all the services provided are stored as Services Records and are indexed using unique identifiers.

• Server has to register all the services it can provide.

Page 24: Automated location tracking_using_bluetooth

JAVA

Page 25: Automated location tracking_using_bluetooth

• Java provides a standardized and portable interface.

• Maintains a clean memory with automatic garbage collection.

• Capable of providing a simplistic User Interface.

• Scalable by including external upgrades and packages.

Page 26: Automated location tracking_using_bluetooth

FRONT END

• Java Swings has been used to design the User Interface(UI) for this application

• Swing is a set of classes that provides more powerful and flexible components than those provided by traditional AWT .

• Several additional components like tabbed panes, trees ,tables etc are provided in Swings.

Page 27: Automated location tracking_using_bluetooth
Page 28: Automated location tracking_using_bluetooth

Java

Bluetooth

JSR-82

Page 29: Automated location tracking_using_bluetooth

JSR 82

• Provides an interface to the Bluetooth host controller.

• Interfaces the Bluetooth Stack and Application Program.

• Supports the use of custom built stacks following the JSR-82 specifications

Page 30: Automated location tracking_using_bluetooth

Java

Databases

(MySQL)

J2EE

BACK END

Page 31: Automated location tracking_using_bluetooth

area areanameaname attlist

area att macbroadcastfilefilename

nodesip area mac url usn name

reglistfilenameuploadfile

usn mac sendfilenamesendfiletemp

mac phone

area mactlist

DATABASES

Page 32: Automated location tracking_using_bluetooth

J2EE

• Provides access to Database Backend of the Application.

• Provides Connectors to link up with specific vendors.

• Simplifies connectivity by using a Type 4 Connector.

• Provides a substantial Stack Trace to diagnose errors.

Page 33: Automated location tracking_using_bluetooth

CODE MODULES

Page 34: Automated location tracking_using_bluetooth

Updates

UpdateDB

Register User

Services Search

Clear Files

Server Startup

THE SERVER

Page 35: Automated location tracking_using_bluetooth

Server.java

Updates.java

Clearfiles.java

ServerStartup.java

InitialDB.java

RegisterUser.java

SearchUser.java

PassMessage.java

OpenMessage.java

RegUser.java

ServicesSearch.java

RemoteDeviceDetails.java

ServicesSearch.java

RemoteDeviceDetails.java

newClient.java

BroadcastMessages.java

UpdateDB.javaUpdateMessages.java

Page 36: Automated location tracking_using_bluetooth

Updates

OBEX Put Server

Device Discovery

System Sleep

OBEX Transfers

Messages

THE CLIENT

Page 37: Automated location tracking_using_bluetooth

Client.java

Updates.java

PushServer.java

CheckDown.java

RemoteDeviceDiscovery.java

Broadcastfile.java

SearchUser.java

PushFile.java

ObexPutServer.java

ObexBroadcast.java

ObexTrial.java

Page 38: Automated location tracking_using_bluetooth

Future Aspects

Page 39: Automated location tracking_using_bluetooth

• Provide an option of Scalability with high powered Bluetooth Radios.

• Integration of Real time and IP Traffic.

• Triangulation facilities through an isometric layout of the network.

• Integration with security and automation services.

Page 40: Automated location tracking_using_bluetooth

Limitations

Page 41: Automated location tracking_using_bluetooth

• The range of low powered Bluetooth radios are limited to 10 meters.

• Overlapping of Radio coverage can lead to ambiguity.

• Latency and overhead involved using Bluetooth is higher than traditional networks.

• Tight coupling of the Bluetooth protocol stack with the governing application prevents optimization.

Page 42: Automated location tracking_using_bluetooth

Foot Notes

Page 43: Automated location tracking_using_bluetooth

• Simplistic location monitoring system.

• Automated discovery of devices.

• Royalty free radio band.

• Integrated messaging system.

Page 44: Automated location tracking_using_bluetooth

• Bluetooth SIG, Bluetooth Qualification Program

• Jim Keogh, J2EE – The Complete Reference• Herbert Schildt, Java 2 - The Complete

Reference• Kumar, C B., P. J. Kline and T. J. Thompson.

Bluetooth Application Programming with the Java APIs

References