Patent Publication Number: US-6664922-B1

Title: Method for distributing location-relevant information using a network

Description:
CROSS REFERENCE TO RELATED APPLICATION 
     This Application is a continuation-in-part application of U.S. patent application (the “patent application” Ser. No. 08/924,042, filed Aug. 28, 1997 now U.S. Pat. No. 5,959,577, entitled “Method and Structure for Distribution of Travel Information Using Network,” now U.S. Pat. No. 5,959,577 which is assigned to @Road Corporation, which is also the Assignee of the present application. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of Invention 
     This invention relates to a method for distributing location-relevant information to a mobile client based upon the position of the client. 
     2. Description of the Related Art 
     The global position system (“GPS”) is used for obtaining position information. A GPS receiver receives ranging signals from several GPS satellites, and triangulates these received ranging signals to obtain the measured position of the receiver. A more detailed discussion of a GPS receiver is found in U.S. patent application (“Copending Application”), Ser. No. 08/779,698, entitled “Structure of An Efficient Global Positioning System Receiver,” assigned to the present assignee. The Copending Application is hereby incorporated by reference. 
     One application of GPS is vehicle location. The Parent Application provides a method for vehicle location using both the GPS system and a data network, such as the Internet. Commercial activities have become an important part of the Internet. Users of the Internet can access information anywhere in the world with equal ease. However, because of the global nature of the Internet, the user of information obtained from the Internet filters out a large amount of that information to get to relevant information of local interest. 
     SUMMARY OF THE INVENTION 
     The present invention provides methods applicable to commercial activities between a mobile unit with a wireless link with a server on a data network, such as the Internet. According to one aspect of the present invention, a method is provided for distributing location-relevant information over a data network to a client includes: (a) providing a GPS position of the client to a server over the data network; (b) obtaining at the server the location-relevant information using the GPS position provided by the server; and (c) returning to the client the location-relevant information. In one embodiment, the client communicates over a wireless link with a gateway of the data network, which then acts as a proxy client for accessing the server. Under this method, the GPS position can be provided to the server by the client in conjunction with a query for information. Based on the supplied GPS position, the server can then select to return only that information relevant to the client from the non-location specific information responsive to the query, thereby relieving the client of the task of filtering for relevant information. In one implementation, the client uses an Internet browser application program. Location-relevant information includes advertising of local interest to said client, discount coupons accepted by businesses in the local vicinity of said client, and addresses of local points of interest. 
     According to another aspect of the present invention, a method is provided for conducting a business or financial transaction over a data network. The method includes (a) by a first party, attaching a GPS position of the first party to a digital instrument transmitted over the data network; and (b) by a second party, accepting the digital instrument to complete the transaction. The GPS position can be attached as a code word formed using the GPS position or embedding the GPS position. To ensure security, such a code word can be formed using an encryption process. Under such a method, the second party can use the GPS position received from the first party to authenticate the digital instrument, or to identify the first party first party, or to establish the location at which said transaction is deemed to have taken place, for legal and other purposes. Thus, the present invention allows a simple and efficient authentication, identification or signature scheme for business to be conducted on the Internet. 
    
    
     The present invention is better understood upon consideration of the detailed description below and the accompanying drawings. 
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 illustrates a vehicle locating system which includes a data network  27 . 
     FIG. 2 illustrates a data processing station  18  in a vehicle location system. 
     FIG. 3 illustrates a program flow in a mobile unit. 
     FIG. 4 illustrates a program flow in a data processing unit. 
     FIG. 5 is a block diagram of a mobile unit. 
     FIG. 6 is a block diagram of a data processing unit. 
     FIG. 7 represents one implementation of position table  33 . 
     FIG. 8 illustrates a pseudo-range table  40  for indicating the pseudo-ranges of a mobile unit over a period of time. 
     FIG. 9 represents one implementation of delta-pseudo-range table  39 , containing delta-pseudo-ranges obtained from various service areas. 
     FIG. 10 illustrates the logic flow of a differential correction process. 
     FIG. 11 illustrates a process for generating a time-limited key from a master key and a specified duration. 
     FIG. 12 illustrates one display in a mobile unit. 
     FIG. 13 illustrates one display in a mobile unit, specifically displaying a map with travel information overlaid thereon. 
     FIG. 14 shows a model of distributing location relevant information to a mobile unit according to one embodiment of the present invention. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     FIG. 1 illustrates a system of the present invention which includes a data network. As shown in FIG. 1, a vehicle locating system according to the present invention includes: GPS satellite constellation  8 , data network  27  with nodes  5 ,  10 ,  12  and  15 , data processing station  18 , monitor unit  22 , and mobile units  1  and  3 . Mobile unit  1  is a portable (e.g., handheld) device while mobile unit  3  is installed in a vehicle. Mobile units  1  and  3  each include a GPS receiver, a transmitter for transmitting messages to data network  27 , and a microprocessor. Each mobile unit can also be provided a data receiver for receiving messages from the data network. Mobile units may fall into different groups, each of which requires a different handling procedure. For example, moving companies can be grouped separately from taxi companies for management convenience. Monitor units perform system-wide or regional control and data-gathering functions. The following description uses mobile unit  1  as an example of the mobile units of the present invention. 
     The mobile unit of the present invention allows a user to report its position and to obtain travel-related information over a data network. Travel-related information includes information such as directions to a destination (e.g., a gas station, a hotel, or a restaurant), or traffic conditions in the immediate vicinities of concern. For example, using a GPS receiver, mobile unit  1  receives a positioning signal that contains code sequences from GPS satellite constellation  8  and converts the code sequences into pseudo-range information. When the operator of the mobile unit wishes to request travel-related information, a query is sent in an outbound data package, which includes the operator&#39;s query, the pseudo-ranges and a time-stamp indicating the time the pseudo-ranges were obtained. (In this detailed description, an outbound data package refers to a data package transmitted from a mobile unit.) A history showing the most recent positions of mobile unit  1  may also be included in the outbound data package. In this embodiment, data processing station  18  keeps track of the time since the last update. The outbound data package is then transmitted by mobile unit  1 &#39;s transmitter over wireless link  23  to a service connection  10  on data network  27 , which relays the outbound data package to data processing station  18 . Alternatively, instead of sending pseudo-ranges as described above, mobile unit  1  obtains a “measured” position by applying a triangulation technique on the pseudo-ranges. This measured position of mobile unit  1  is then included in an outbound data package. The outbound data package also includes a position update request or query, together with the pseudo-ranges or the measured position. Mobile unit  1  reports its position either automatically, according to a predetermined schedule, or upon a command manually entered by an operator into the mobile unit. Wireless communication between mobile unit  1  and data network  27  can be accomplished, for example, using a cellular digital packet data (CDPD) modem or via satellite. 
     FIG. 2 illustrates data processing station  18  of the present invention, including data process unit  38  which handles computation at data processing station  18 . If data processing station  18  receives an outbound data package that includes a measured position of the mobile unit (presumably the position of the vehicle), the measured position is entered into a position table  33  (FIG.  2 ). If the outbound data package includes pseudo-ranges, however, data processing station  18  obtains the measured position of the mobile unit for position table  33  by applying a triangulation technique on the pseudo-ranges. 
     Alternatively, data processing station  18  can also use pseudo-ranges in conjunction with differential correction information, or delta-pseudo-ranges. The delta-pseudo-ranges, which are obtained by data processing unit  38  from correction stations (e.g., correction stations  37 ) and stored in a delta-pseudo-range table (e.g., delta-pseudo-range table  39  of FIG.  2 ), are correction factors for the geographical area in which the mobile unit is currently located. Data processing unit  38  can connect to correction stations  37  via wired or wireless communication links, or via a data network, such as data network  27 . The position of a differential correction station is precisely known. Typically, a differential correction station serves an area 200 miles in diameter. In the present embodiment, a differential correction station in each of the vehicle locating service&#39;s service areas is desired. The delta-pseudo-ranges are used in conjunction with the pseudo-ranges received from satellite constellation  8  to provide a corrected measured position of the mobile unit. The corrected measured position is then stored in position table  33  (FIG.  2 ). 
     A differential correction station receives code sequences from GPS satellite constellation  8  (FIG. 1) to obtain a first set of pseudo-ranges based on the received code sequences. The differential correction station then calculates a second set of pseudo-ranges based on its known position and the relative positions of the satellites in satellite constellation  8 . Delta-pseudo-ranges are then computed using the two sets of pseudo-ranges. These delta-pseudo-ranges are provided to data processing unit  38 , and stored in delta-pseudo-range table  39  for computing corrected measured positions of the mobile units. Alternatively, correction to the measured position can also be achieved using positional corrections, rather than delta-pseudo-ranges. To obtain a positional correction, a differential correction station receives GPS positioning code sequences, and obtains, based on the received code sequences, a measured position of its own position expressed in terms of the longitude and latitude. This measured position (called a “fix”) is compared to the precisely known position of the differential correction station to obtain the positional correction expressed in a delta-longitude quantity and a delta-latitude quantity. To use these delta-longitude and delta-latitude quantities to find a corrected measured position of mobile unit  1 , the pseudo-range obtained by mobile unit  1  is first used to triangulate a measured position to obtain a raw position expressed in a raw longitude and a raw latitude. The corrected longitude for the mobile unit is this raw longitude plus the applicable delta-longitude obtained by the differential correction station in the vicinity. Likewise, the corrected latitude is the raw latitude of the mobile unit plus the delta-latitude computed by the differential correction station in the vicinity. 
     In addition to computing the corrected measured position, data processing station  18  searches a database  32  and associated area map storage  63  to process the operator&#39;s query received in the outbound data package. Database  32  maintains such travel-related information as maps, traffic situation in a particular area, positions of service stations and destinations of interest. Storage for database  32  can be implemented using any mass storage media, such as hard disks, RAMs, ROMS, CD-ROMS and magnetic tapes. For example, infrequently updated information (e.g., maps or destinations of interest) can be stored on CD-ROMs, while frequently updated information (e.g., current traffic conditions) can be stored on RAM. Data processing unit  38  accesses database  32 . 
     Position table  33  stores the last known measured positions of the mobile units in the system. The measured position stored in position table  33  can be used for compiling vehicle position maps by monitor unit  22  (FIG.  1 ). FIG. 7 represents one implementation of position table  33 . Position table  33  contains the measured position of several mobile units, identified respectively by an identification number  160 , at particular times  162 . The measured position of each mobile unit is represented by time-stamp  162 , a measured latitude value  165 , a measured longitude value  168 , and a velocity  170 . 
     Delta-pseudo-range table  39  stores the delta-pseudo-ranges of each service area. FIG. 9 represents one implementation of delta-pseudo-range table  39  used by data processing station  18  (FIG.  1 ). As shown in FIG. 9, delta-pseudo-range table  39  maintains the delta-pseudo-ranges  186  of each service area (indicated by identification  180 ) from each of a group of satellites at each of specified times  188 . Each value of the delta-pseudo-range data  186  indicate the delta-pseudo-range to a particular satellite. Area map storage  63  stores area maps with position markers indicating the mobile units and landmarks. The response to the query can be in text, graphical or audio form. If the query is for directions, for example, a map including the measured position or corrected measured position and the position of the destination is retrieved. Typically, a position marker is provided to identify the position of the requested destination. The map and a result of the database search (i.e., a response to the operator&#39;s query), are then packaged into an inbound data package, which is transmitted to mobile unit  1  through data network  27  via network connection  10  and wireless link  23 . (In this detailed description, an inbound data package refers to a data package received by a mobile unit or a monitor unit.) 
     Instead of computing the corrected measured position at data processing station  18 , a microprocessor in mobile unit  1  can also be used to compute a corrected measured position from pseudo-range information the mobile unit received from satellite constellation  8  and delta-pseudo-range information received from data processing station  18 . Under this arrangement, instead of the measured corrected position, data processing station  18  includes in the inbound data package the delta-pseudo-ranges for the current position of mobile unit  1 . In any event, upon receiving the inbound data package, mobile unit  1  displays on its screen the corrected measured position and the position of the destination, typically by overlaying the positions on the map received, along with the response to the query. For example, if the operator requests directions to a nearby gas station, a position marker identifying the gas station and a position marker identifying the mobile unit&#39;s current position are displayed on the map, together with the response to query (i.e., directions as to how to get to the gas station.) The response to the query can be a text description or a graphical representation of the directions placed next to or overlaying the map. Alternatively, instead of sending the map, the positions and the response to query in the inbound data package, data processing station  18  can provide in the inbound data package a picture file of the map, with the markers and the response to the query already embedded. Special markers can be used for indicating conditions of interest. For example, a mobile unit that has been stationary for a predetermined period of time can be marked by a special marker to signal monitor units of an exceptional condition. The picture file is then simply displayed by mobile unit  1 . 
     Data network  27  can be a wide area data network, such as the Internet, or a telephone network, including wired or wireless communications, or both. Data network  27  can also be accessed via a satellite link. For example, in FIG. 1, satellite  5  provides access to data network  27 , communicating with mobile unit  3  through a wireless communication channel  25 . Satellite  5  allows the present invention to be used in a remote area where other forms of telecommunication, such as a cellular phone system, are expensive to implement. In one embodiment, the inbound and outbound data packages are encrypted for security. One method of image encryption and decryption that can be used for this application is described in U.S. Pat. No. 5,541,993 by Eric Fan and Carey B. Fan, July 1996. This disclosure of U.S. Pat. No. 5,541,993 is hereby incorporated herein by reference. Service connection  10  can be a commercial transceiver station such as a cellular phone transceiver station. In another embodiment, service connection  10  is a dedicated transceiver station for handling communication related to the present invention. 
     In the embodiment shown in FIG. 1, another set of terminals (e.g., monitor unit  22 ) are provided in some applications to monitor the activities of the mobile units. For example, a monitor unit may send a request to data processing station  18  to obtain the measured position and speed of a specified mobile unit. This capability can be used, for example, by a trucking company to track the positions of its fleet of trucks for scheduling and maintenance purposes. Monitor unit  22  can be a fixed unit or a portable unit. A portable monitor unit  22  is equipped with a wireless transceiver for accessing data network  27  via service provider  20  or wireless network service connection  10 . Monitor unit  22  may also communicate with mobile unit  1  through data network  27  using a message exchange protocol. For example, monitor unit  22  may send a special command to mobile unit  1 , and mobile unit  1  may send a message addressed to monitor unit  22 . In one example the message communicated between mobile unit  1  and monitor unit  22  is in the form of an electronic mail message. Of course, communication between monitor unit  22  and mobile unit  1  can be encrypted for security purpose or to prevent unauthorized use. Monitor unit  22  also displays the elapsed time since last position update graphically (data collected by data processing unit). The elapsed time can be represented graphically as a color code, grades of shade, a flashing interval, or any suitable symbolic representation. 
     When the Internet is used as data network  27 , data processing station  18  is a node on the Internet and is assigned an Internet address. Monitor unit  22  can include a computer installed with a conventional web browser. The Internet address of data processing station  18  is used by the monitor unit for communicating with data processing unit  18 . 
     A land-based vehicle normally travels only a relatively limited distance during a short time period. On the other hand, an area map showing the location of the vehicle is only useful when the vicinity of the vehicle is also shown. Consequently, a vehicle is often located in the area covered by the same map over a time period of several position updates. This principle can be utilized to reduce the amount of data transmitted and thus improve the efficiency of the system. For example, a plugin program for a web browser can be installed in monitor unit  22 . During each location update, the plugin program downloads the new location of the vehicle and compares the new location with an area map stored in monitor unit  22 . If the new location of the vehicle is within the boundary of the area map, a new location marker representing the vehicle is overlaid on the area map. If the location of the vehicle is outside the boundary of the area map, a new area map is downloaded and the location of the vehicle is marked on the new area map. The plugin program can be downloaded over the Internet from the vehicle location service provider, or can be loaded directly from software storage media. 
     FIGS. 12 and 13 shows one implementation of mobile unit  1  adapted for allowing an operator to send a travel-related query. As shown in FIG. 12, mobile unit  1  includes liquid crystal display (LCD)  212 , transceiver/antenna assembly  208 , power switch  211 , a scroll key  213 , and an “enter” key  215 . Scroll key  213  and enter key  215 , in conjunction with a software-generated command menu  210  displayed on LCD  212 , allow the user to enter simple commands, such as the travel-related query described above. For example, as shown in FIG. 12, command menu  210  shows selections “gas station”, “food”, “hotel”, and “traffic”. By pressing scroll key  213 , an operator of mobile unit  1  causes a cursor  216  to step through the selections. When the operator presses enter key  215 , an outbound data package including the query or command is transmitted by transceiver/antenna assembly  208  to processing station  18 . In this embodiment, as shown in FIG. 13, the response from data station  18  is received in mobile unit  1  through transceiver/antenna assembly  208  and displayed on LCD  212 . In this instance, the query sent to data station  18  corresponds to the selection “gas station”. In FIG. 13, data processing station  18  returns to mobile unit  1 , in an inbound data package, a map which is displayed on LCD  212 , showing the vicinity of mobile unit  1 . Mobil unit  1 &#39;s position is indicated on LCD  212  by a marker  225 . The locations of several gas stations, indicated by markers  220  are also displayed. 
     FIG. 3 is a flow diagram showing the operation of mobile unit  1  (FIG.  1 ). At step  51 , one of four modes of operation is selected: periodic update mode  53 , route diversion triggered mode  62 , passive update mode  68 , minimum distance mode  66  and service mode  70 . Under periodic update mode  53 , mobile unit  1  periodically reports pseudo-ranges of its position to data processing station  18 , so as to update the measured position of mobile unit  1  stored at data station  18 . Under route diversion triggered mode  62 , mobile unit  1  reports its position only upon a diversion from a pre-programmed route or a diversion from a predetermined time schedule. Under update mode  68 , the position of mobile unit  1  is reported under an operator&#39;s control. Service mode  70  is not an operating mode, but is used to program mobile unit  1 . 
     Under periodic update mode  53 , at step  55 , mobile unit  1  waits for the next scheduled position update. At the time of a scheduled update, i.e., at step  58 , mobile unit  1  calls to establish network service connection  10  for accessing data network  27 , and transmits to data processing station  18  an outbound data package. Upon receiving the outbound data package, data processing station  18  responds to the operator&#39;s query by searching database  32 , updating a map retrieved from map storage  63 , and transmitting the map to mobile unit  1  an inbound data package. 
     Under route diversion triggered mode  62 , the measured position of mobile unit  1  is obtained at the mobile unit using pseudo-range data without differential correction. At step  65 , this measured position is compared with a pre-programmed route and a schedule. If the current position is a substantial deviation from the pre-programmed route or from the schedule, mobile unit  1  branches to step  55  to create a service connection  10  for performing the update described above at the next scheduled reporting time. 
     Under passive update mode  68 , a measured position update occurs when an operator issues an update request in an outbound data package. At step  69 , when an operator initiates an update request , mobile unit  1  branches to step  58  to create network service connection  10 . An outbound data package including the update request is transmitted via network service connection  10  to data processing station  18  over data network  27 . 
     Under minimum distance mode  66 , when the distance traveled since the last update exceeds a threshold value, a new update is issued. Step  67  compares the distance traveled since the last update with the threshold value. 
     Under service mode  70 , an operator of mobile unit  1  can effectuate two major functions: route programming function  74  and password update function  72 . In route programming function  74 , the operator of mobile unit  1  enters a new route to replace a pre-programmed route in mobile unit  1 . In this description, a “route” connotes not only a series of physical coordinate sets marking the path of a vehicle, but also the time at which the vehicle is scheduled to arrive at or depart from each set of physical coordinates. In this embodiment, to operate mobile unit  1 , an operator is first verified by supplying a password. The password can be modified under user password update mode  72 . At step  75 , the operator provides the current password for identification, and to obtain authorization to modify the password. Typically, mobile unit  1  requests the operator to enter the new password twice to ensure that the new password is correctly entered. At step  85 , the successfully entered new password is written into storage, thereby superseding the old password. 
     FIG. 4 illustrates a flow diagram of a data processing program used by data processing station  18  (FIG.  1 ). Beginning at step  90 , data processing station  18  receives either an outbound data package (step  100 ) or, a command from a monitor unit (step  122 ), such as monitor unit  22 . If the received outbound data package includes a position update request (step  101 ), the data processing program determines at step  102  whether a corrected measured position update is requested. If a corrected measured position update is requested (step  105 ), the data processing program obtains the pseudo-ranges from the outbound data package and entered into a pseudo-range table. An example of a pseudo-range table is provided in FIG.  8 . As shown in FIG. 8, pseudo-range table  40  includes one entry for each mobile unit. Each entry of pseudo-range table  40  includes an identification  172 , pseudo-ranges ( 175 ) of the mobile unit to  8  satellites (PR 1 -PR 8 ), and a time-stamp  178 , indicating the time at which the pseudo-ranges are taken. 
     FIG. 10 is a flow diagram of one implementation of a differential correction process  191 . As shown in FIG. 10, at step  190 , the pseudo-ranges of a mobile unit are either received from an outbound data package or retrieved from pseudo-range table  40  of FIG.  8 . At step  192 , all delta-pseudo-ranges from delta-pseudo-range table  39  are examined to find the delta-pseudo-ranges from a differential correction station in the mobile unit&#39;s service area, and which have a time-stamp closest to the time-stamp of the pseudo-ranges of the mobile unit sending the query. At step  195 , the corrected pseudo-ranges for the mobile unit are obtained by adding to the pseudo-ranges of the mobile unit corresponding delta-pseudo-ranges. The corrected measured position of the mobile unit is then calculated at step  198  using the corrected pseudo-ranges. At step  199 , if it is decided that a corrected position is desired, the corrected position is provided at step  200 . If it is decided at step  199 , on the other hand, that a distance to a known position is desired, then the distance is calculated at step  193 , and is provided as output at step  194 . 
     Returning to FIG. 4, at step  120 , data processing program retrieves from delta-pseudo-range table  39  a set of delta-pseudo-ranges for the mobile unit, taken at the same time and in the same service area the pseudo-ranges of the requesting mobile unit were taken. At step  108 , the data processing program computes the corrected measured position using the pseudo-range and delta-pseudo-range information obtained at steps  101  and  120 . If a corrected measured position is not requested, steps  105  and  108  are skipped, and the data processing program enters the measured position of the mobile unit into position table  33 . 
     At step  111 , the data processing program links in database  32  the reporting mobile unit&#39;s updated measured position entry in position table  33  with the measured position entries of other mobile units in the reporting mobile unit&#39;s group. At step  112 , in this embodiment, the measured positions of the mobile units in one linked group are associated with (or “overlaid on”) a digital map, so that the positions and the identification of all vehicles of that group can be represented by position markers and text on the map. Such a map allows a manager of a group of vehicles to conveniently monitor the activities of the vehicles. At step  115 , the updated position of the mobile unit and the newly created associations among the mobile units and the digital map are replaced in database  32 . The data processing program then returns to step  90  to receive the next outbound data package or command. 
     As mentioned above, an outbound data package can contain a query for a database search, e.g. a request for directions to a nearby restaurant. When such a query is identified (step  92 ), database  32  is searched for formulating a response at step  94 . To formulate the response, the data processing program uses the measured position of the requesting mobile unit and other relevant positional information. The response is returned in an inbound data package to the requesting mobile unit at step  96 . 
     The data processing program can also receive a request from monitor unit  22 . Typically, such a request is provided with an authentication key over data network  27  (FIG.  1 ). At step  123 , the authentication key, hence the identity of the requesting monitor unit, is verified. The authentication key allows the requesting monitor unit access to the records of a specific mobile unit or a specific group of mobile units. To enhance security, authentication keys can be made time-limited, i.e., each authentication key is valid only for a specified duration. FIG. 11 shows a process for making a time-limited key. As shown in FIG. 11, using a mixing function represented by reference numeral  208 , a master key  202  (which identifies the owner) is mixed with a value representing a time duration  203 . The resulting value  205  serves as a time-limited authentication key over the specified time duration. Security is enhanced, since forging a valid time-limited authentication key requires both knowledge of the master key and the value representing the time duration for which the key is valid. 
     At step  125 , if the verification is successful, the data processing program responds to the request. In one embodiment, a digital map (e.g., the one created above at step  112 ) providing the positions of a group of vehicles is returned at step  126  to the requesting monitor unit. 
     FIG. 5 is a block diagram of a mobile unit, such as mobile unit  1 . As shown in FIG. 5, mobile unit  1  has three functional sections: GPS receiving section  131 , control section  133 , and communication section  144 . GPS receiving section  131  includes GPS antenna  130  for receiving and providing GPS ranging signals to receiving circuit  132 , which processes the received GPS ranging signals to obtain a pseudo-range to each of the satellites within mobile unit  1 &#39;s line of sight. Control section  133  includes a microprocessor  135 , input device  140 , display device  142 , and memory device  138 . Input device  140  is an optional feature which allows commands and requests to be entered. Input device  140  can be a keyboard, a mouse, a track ball, a pressure sensitive display panel, or any combination of these and other input devices. Display device  142  is also an optional device, which is used to provide visual responses to entered commands and requests, and to display relevant information (e.g. query response from data processing unit  18 , or a command from monitor unit  22 ). The pseudo-ranges from GPS receiving section  131  are provided to control section  133 , where the pseudo-ranges are combined with an update request or a query in an outbound data package for data processing station  18 . The outbound data packages are transmitted to data processing station  18  by wireless transceiver section  144 . Wireless transceiver section  144  includes a wireless modem circuit  146  with an antenna  145  or, alternatively, a wireless telephone network interface  148 . Wireless modem circuit  146  receives an outbound data package from control section  133  for transmission to data network  27  through modem antenna  145  and a wireless network service connection, such as service connection  10  (FIG.  1 ). Alternatively, wireless modem circuit  146  provides the outbound data package to data network  27  over wireless telephone network interface  148  via service connection  10 . Depending on the application, control section  133  may or may not be programmed for receiving an inbound data package from wireless transceiver  144 . For example, if mobile unit  1  is used only for reporting position, control section  133  need not be programmed to receive inbound data packages. 
     FIG. 6 is a block diagram of a data processing unit, e.g. data processing unit  38  of FIG.  2 . Data processing unit  38  includes a network interface  150  for interfacing data processing unit  38  with data network  27 , a data processing computer  152  for providing the computational power for processing operator query and performing position update requests, and a memory system  155 . A data router  151  can be provided between network interface  150  for connecting data processing computer  152  to a local area network. 
     The present invention is applicable to a wide variety of services. For example, a courier service company may provide a mobile unit to each of its delivery persons. A delivery person may use the mobile unit to obtain directions to a destination. A time-limited key may be issued to a customer, who can then use the time-limited key to track the delivery of his/her package through data processing station  18 . In this instance, the customer plays the role of monitor unit  22  described above. As described above, monitor unit  22  may access data processing station  18  through the Internet. With the time-limited key, the customer can obtain the present position of the package, monitor the performance of the courier company, and estimate the expected arrival time of the package at the destination. Further, the customer may also send additional or alternative instructions to the delivery person (e.g., he/she may instruct the delivery person to abort the delivery, or to re-route the package to a new destination). The time-limited key issued to the customer expires when the package is delivered, or when a certain amount of time has passed. 
     The present invention allows even small companies with limited resources to have the benefits of a vehicle locating system, even when the vehicles tracked are few and scattered over a large geographical area. Since a data network, such as the Internet, is used in the present invention, the hardware investment for such use is minimal, as compared to prior art vehicle location systems. 
     As another example, a vehicle rental company may install mobile units on its vehicle fleet. The speeds and measured positions of these vehicles can thus be monitored using a monitor unit. In yet another example, a metropolitan bus company may install mobile units on its buses, and set the mobile units to route diversion triggered mode  62  discussed in conjunction with FIG. 3 above. When a bus is not running according schedule, or deviates from a designated route, the mobile unit signals a dispatcher immediately. Timely remedial measures can thus be carried out. 
     In another application, pseudo-ranges or measured position information transmitted from mobile units are used to calculate the speeds at which the vehicles travel. This information is compiled into database  32  at data processing station  18 , and made available for access through monitor units, such as monitor  22 . Such information allows shipping companies to route their vehicles away from traffic congestions and diversions. Radio stations or television stations can access this database from which to report traffic conditions. The information can also be used by municipal authorities in studying traffic patterns of selected vicinities to assist in planning new infrastructures. 
     When the Internet is used as data network  27  (FIG.  1 ), the necessary hardware and software for implementing a monitor unit are readily available. Most computers having ability to access the Internet, together with a standard web browser, can be used to access data processing station  18  to perform the functions of the monitor units described above. Since a monitor unit can receive a map from data processing station  18 , such as the map displayed on LCD  212  in FIG. 13, which can be displayed using conventional graphics software, the monitor unit is not required to be equipped with any special map software or a map database. Because the cost of communication on Internet is inexpensive, a vehicle monitoring system according to the present invention can be deployed on a world-wide basis at minimum cost. With increased bandwidth in data network  27 , the present invention can also be used in aircrafts, ships and other vessels for navigational purposes. 
     Services based on the position of a mobile unit can be easily provided in the system described above. Mobile unit  1  can request for information to be supplied based on its position. Alternatively, useful information can be supplied by data processing station  18  or another server to mobile unit  1  according to mobile unit  1 &#39;s position. FIG. 14 shows a model for distributing location-relevant information to a mobile unit. 
     As shown in FIG. 14, a “field client”  1401 , such as mobile unit  1 , capable of receiving ranging signals from the GPS system, communicates with a network gateway (e.g., wireless network service connection  10 ) to access over the Internet ( 1403 ) to a server  1404  (e.g., data processing station  18 ). Using the methods discussed above, the position of field client  1401  is communicated to server  1404 . Based on this position, server  1404  can provide field client  1401  with information relevant to field client  1401 &#39;s position, either upon request by field client  1401  or on server  1404 &#39;s own initiative. Such location-relevant information includes advertising of businesses local to field client  1404 &#39;s position, discount coupons to be used at local businesses, schedule of events of local interest, tourist information (e.g., locations of tourist attractions, gas stations, hotels, restaurants etc.) and other information of local interest. In addition, even on a global inquiry of a merchandise or a service, server  1404  can provide client  1401  responsive information relevant to the client  1401 &#39;s location. For example, a request for a hair dresser should return a list of hair dressers within local reach and not across the continent. 
     Further, the position of client  1401  can also be used as authentication or identification information of legal significance. For example, client  1401 &#39;s position—e.g., the GPS position of client  1401 &#39;s regular business office—can be attached to a digital document to authenticate client  1401  in a financial or business transaction, or to establish the location at which a financial or a business transaction is deemed to have taken place for legal or other purposes. For security purposes, client  1401 &#39;s GPS position can be encrypted or embedded in a code number to prevent counterfeits. 
     Although the present invention is described using the above examples, the scope of the invention is not limited by these examples. Numerous variations and modifications are possible within the scope defined by the following claims.