October 18, 2010 0
Location Based Services (LBS)
Při implementaci LBS je možné se vydat dvěma cestami:
- Parsování NMEA-0183 zpráv, pomocí kterých GPS komunikuje s jinými zařízeními
- Pokud cílové zařízení má Location API (JSR 179), je možné ho využít. Implementace aplikace pro Location API je velmi snadná - viz příklad.
- NMEA 0183 - Wikipedia, the free encyclopedia
- Stručný popis NMEA protokolu na Wikipedii
- NMEA data
- Popis NMEA řetězců používaných v GPS systémech při komuniokaci s jiným zařízením
- Handy Geocaching
- Projekt vašeho kolegy Davida Vávry - ve zdrojovém kódu je vidět práce s NMEA protoklem
- GPS Track
- Open source LBS projekt zalozeny na parsovani NMEA protkolu
- J2ME and Location-Based Services
- Článek o LBS a Location API od SUNu
- Real-Life Use of JSR 179: Location API for the J2ME™ Platform
- Přednáška o praktickém použití Loacation API a LBS
- JavaME Location API Example application with Source Code.
- Jednoduchá ukázková aplikace použití Location API + zdrojový kód
- JSR-179 Location API for J2ME v1.0.1
- Java Doc k Location API (online verze)
- JSR 179 Location API for J2ME™version 1.0.1 - HTML javadoc version
- JAVADOC pro Location API
- MIDP: Location API Example - Tourist Route
- Příklad použití Location API od Nokie
What Location-Based Services Do…
Location-based services answer three questions: Where am I? What's around me? How do I get there? They determine the location of the user by using one of several technologies for determining position, then use the location and other information to provide personalized applications and services. As an example, consider a wireless 911 emergency service that determines the caller's location automatically. Such a service would be extremely useful, especially to users who are far from home and don't know local landmarks. Traffic advisories, navigation help including maps and directions, and roadside assistance are natural location-based services. Other services can combine present location with information about personal preferences to help users find food, lodging, and entertainment to fit their tastes and pocketbooks.
Choose the Most Efficient Location Method That Meets Requirements
- Many applications request precise location fixes when they could easily make do with a general fix
- If zip code is used for looking up weather, for instance, don’t use battery power and time to get a GPS fix
- Geo-fencing in some areas can be done with cell site coordinates—saves battery life
NMEA 0183 (or NMEA for short) is a combined electrical and data specification for communication between marine electronic devices such as echo sounder, sonars, anemometer (wind speed and direction), gyrocompass, autopilot, GPS receivers and many other types of instruments. It has been defined by, and is controlled by, the U.S.-based National Marine Electronics Association.
The NMEA 0183 standard uses a simple ASCII, serial communications protocol that defines how data is transmitted in a "sentence" from one "talker" to one "listener" at a time. Through the use of intermediate expanders, a talker can have a unidirectional conversation with multiple listeners, and using multiplexers, multiple sensors can talk to a single computer port. Zdroj Wikipedia
GLL - Geographic Latitude and Longitude is a holdover from Loran data and some old units may not send the time and data active information if they are emulating Loran data. If a gps is emulating Loran data they may use the LC Loran prefix instead of GP.
$GPGLL,4916.45,N,12311.12,W,225444,A,*1DWhere: GLL Geographic position, Latitude and Longitude 4916.46,N Latitude 49 deg. 16.45 min. North 12311.12,W Longitude 123 deg. 11.12 min. West 225444 Fix taken at 22:54:44 UTC A Data Active or V (void) *iD checksum data.
Ukázka NMEA ASCI řetězců