WO2011073965A1 - Navigation method using geographic location codes - Google Patents

Navigation method using geographic location codes Download PDF

Info

Publication number
WO2011073965A1
WO2011073965A1 PCT/IE2010/000070 IE2010000070W WO2011073965A1 WO 2011073965 A1 WO2011073965 A1 WO 2011073965A1 IE 2010000070 W IE2010000070 W IE 2010000070W WO 2011073965 A1 WO2011073965 A1 WO 2011073965A1
Authority
WO
WIPO (PCT)
Prior art keywords
navigation
code
processor
destination
generated
Prior art date
Application number
PCT/IE2010/000070
Other languages
French (fr)
Inventor
Gary E. Delaney
Original Assignee
Loc8 Code Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Loc8 Code Limited filed Critical Loc8 Code Limited
Publication of WO2011073965A1 publication Critical patent/WO2011073965A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management

Definitions

  • the invention relates to navigation, such as for logistics for efficient delivery of goods and services
  • the invention is directed towards providing a navigation method in which processors of devices and systems operate to achieve improved navigation for vehicles or pedestrians.
  • a navigation method performed by a processor and a portable navigation device, the method comprising the steps of: the processor generating a position oriented navigation code for a geographic destination according to its geographic co-ordinates, the code having a series of characters determined according to criteria and said code being predictable, the processor transmitting the navigation code to the portable navigation device and/or to a user via a human interface, the portable navigation device receiving the navigation code either directly from the processor or from the user, automatically testing the navigation code upon receiving it, in which said testing comprises applying rules to each of a plurality of character positions of the navigation code, the navigation device converting the navigation code to a machine-level geographic code, and the navigation device generating from said geographic code navigation outputs navigation to said destination.
  • the navigation code is also inputted to a user device, and the user device automatically tests the navigation code upon receiving.
  • the testing comprises generating a binary word from the character pattern, and validating the binary word.
  • the processor includes checker code characters in the navigation code for use in testing.
  • the portable navigation device automatically communicates with a destination device at the destination when it is in the proximity of the destination.
  • a wireless local communication protocol is used for hand-shaking and local communication at the destination.
  • the destination device is a smart meter.
  • the destination device generates a user output such as an audio or a visual output to indicate presence of the portable navigation device.
  • the navigation device is adapted to employ a fluxgate compass and tilt sensor to detect the orientation of the device in addition to its position and to generate a display of a property image from a database to confirm orientation towards to the correct destination.
  • said communication comprises transmitting a message to the destination device to indicate that the navigation device is in proximity.
  • the processor generates the code with a resolution sufficiently high so that the navigation code can be used to define different entrances or different locations around a single property.
  • the resolution is better than +/- 20m, and preferably better than +/-5m.
  • the step of generating the navigation code comprises:
  • initial characters of the grid references for the destination are used in the navigation code.
  • some grid reference characters are excluded according to rules as checker code or exemption rules can not resolve confusion with other characters.
  • said characters are I, O, U, and H.
  • the method comprises reducing some characters of the grid reference to Easting and Northing data.
  • At least some characters of said data are modified.
  • At least some characters of said data are divided and rounded.
  • At least some characters of said data are converted to symbols such as Base 27-31 symbols.
  • the symbols are determined from look-up tables.
  • the processor receives as an input geo-coordinates of the destination when generating the navigation code.
  • the processor receives as an input a map reference for the location when generating the navigation code.
  • the processor which generates the navigation code is a processor of a navigation server accessed via a wide area network.
  • the processor automatically populates certain character positions in the navigation codes with numbers only.
  • an initial character string of the navigation code represents in a human- readable format a geographical region.
  • characters of the navigation code are associated with each other so that groups of characters represent areas in a pattern which is discernable to users and can be memorised in a manner akin to conventional post codes.
  • the processor generates the code with an associated quality rating, and wherein the processor makes the quality rating available to external devices by network access so that said accessing device can determine the extent to which the code can be relied upon for navigation.
  • the processor generates the quality rating with any or all of the following levels:
  • the processor generates the code for a destination which is a temporary feature without a permanent man-made building.
  • the processor determines access key data describing how the destination may be accessed, and links said access key data with the navigation code.
  • the processor determines said access key data by automatically prompting the user for said data while the navigation code is being generated, and wherein the processor subsequently automatically checks for updates.
  • the processor when generating the navigation code, determines automatically according to a map if the code is for a property; and wherein the processor uses this information to detect if the destination is fraudulent or erroneous.
  • the processor interrogates coordinates of a point clicked on a map and examines if it is within the bounds of a polygon which is defmed as a property visible on the map and defined in a supporting map database, and if so the processor determines that the code is being generated for a genuine and pre-identified property, and if not the processor prompts the user to indicate if the code is for a property.
  • the invention provides a navigation device adapted to process a navigation code generated in a method as defmed above in any embodiment to provide navigation position data.
  • the invention provides a computer program product comprising software code for implementing a method as defined above in any embodiment when executing on a digital processor.
  • the invention provides a processor adapted to perform the processor operations' of a method as defined above in any embodiment.
  • the invention also provides an internet server comprising a processor as defined above. Detailed Description of the Invention
  • Fig. 1 is a flow diagram for navigation according to the invention
  • Fig. 2 shows a vehicle's and a personal device communication for navigation
  • Fig. 3 is a flow diagram for a method of automated generation of position oriented navigation ("PON") codes
  • Fig. 4 shows 90/85km letter codes used in the method, which would be adjusted as required for other territories;
  • Figs. 5, 6 and 7 are tables showing allocation of symbols to values in the method
  • Fig. 8 is a table showing validation codes used to help validate a navigation code.
  • Fig. 9 is a table of area codes.
  • a navigation method 100 comprises steps 110 to 118, at a high level.
  • a user accesses a navigation server and inputs an indication of position of his premises or other location down to the level of the access point. If there are multiple access points the additional ones can be added as part of "intelligent access key” information associated with the navigation code which will be developed. Alternatively, or in addition, an additional navigation code can be generated for an additional access point.
  • the navigation server automatically generates a position oriented navigation ("PON") code for each location, and this processing is expanded upon in Fig. 2. In Fig. 2 the navigation code is referred to as a "Loc8" code.
  • An advantageous aspect is that the navigation server generates and downloads to the user device an intelligent access key. This is a description of how to access the location of the navigation code.
  • the intelligent access key is generated by the server prompting the user for information as the navigation code is being generated in step 110. Subsequently, it automatically prompts the user at regular intervals to check if there are any updates, and hence the access keys remain up to date.
  • step 111 the navigation code is stored and it is downloaded to the user.
  • the navigation code is automatically tested, as described in more detail below.
  • An advantageous aspect of the invention is that the generated navigation code is automatically tested on every occasion at which it is received by a device or system. This helps to ensure integrity of the navigation system, allowing a wide range of devices or systems to handle the navigation codes. After validation, a quality indicator is also generated.
  • the user transmits the navigation code to a delivery company server as part of ordering a delivery.
  • the navigation code could alternatively be manually communicated by speech as it is user-friendly, akin to a conventional post code.
  • the delivery server transmits the code to a delivery van in step 114, the navigation device of which also automatically validates the navigation code.
  • the navigation device converts the code to a lat/long geographical code, and uses this format in step 116 to guide the driver.
  • steps 117 and 118 when the driver arrives at the destination property the van's navigation device communicates wirelessly with the user's device in the destination property and transmits a message to it to automatically announce arrival of the delivery. Of course, other messages could be communicated.
  • This navigation method allows:
  • navigation codes for properties which may be provided in the future.
  • the code would be used to navigate to the box but also to act as part of a necessary code to unlock the box to deliver or receive goods. For example, a person may order online using their navigation code, upon which the code and order reference is sent to the user.
  • the navigation device knows the navigation code and the order reference and the combination with handshaking between the navigation device and the user device unlocks it.
  • the user at a location gets their navigation code for their property and enters the code into a user device for a wireless or RFID broadcast with a house number.
  • the user device may be a PC or a dedicated user terminal, or a mobile phone, or a personal mobile device.
  • the user at the property orders a service and confirms that that service is awaited for delivery by means of a service code entered to his user device.
  • the user device generates a wireless or RFID broadcast by a narrow horizontal beam width directional antenna fixed to a window facing the main approach road.
  • the service supplier for example, courier, post, home goods delivery, food, home repair, taxi, emergency services enters the destination navigation code into their satellite navigation device ("SatNav", and which could be any GPS-enabled device such as a mobile phone) with a service code associated with delivery and house number - matching that entered by the user - both encrypted
  • SatNav satellite navigation device
  • the SatNav has a wireless/RFID capability (or equivalent)
  • the service provider navigates to within 20 metres approximately of the destination using the navigation code on the SatNav.
  • the SatNav allows navigation to the wireless/RFID Antenna with matched navigation and service codes using direction-finding and homing techniques augmented by SNR and phase homing techniques.
  • a combination of wireless/RFID and visual and audible clues including those related to virtual reality street view imagery using fluxgate compasses and motion sensors are used to positively identify and indicate for navigation the exact final destination or delivery point,
  • the wireless/RFID device is replaced by a transmitter/receiver which is located in a "smart meter" external to the property but which is connected to an internal device such as a PC inside the property and also supports communications with a mobile phone or similar personal device.
  • the navigation server maintains a database of location data; not only very specific points of access but also routing that can vary according to the mode of transport or a variety of factors such as time of day and type of transaction. This allows more convenient user access and processing of geographic data. It is effectively a signage facility to indicate routing and arrival to both the transporter and the destination client.
  • the database may be added to existing navigation devices including GPS-enabled handset phones as well as provided from a central database in realtime using "connected" internet technologies.
  • the user device will allow location and communication at final destination. A device that can speed this delivery and pickup will prove valuable. A more automated approach to the final part of a delivery journey will find favour with such companies.
  • the hardware solution has potential in other areas such as taxi, home food delivery, emergency response services or other road users.
  • a driver of an articulated truck delivering after working hours can encounter a destination in which he must approach using one route and enter by a different entrance.
  • This problem is solved by means of intelligent geographic and technology-based information included in the intelligent access keys. It is estimated that this approach can save about 30 mins for a large vehicle.
  • the invention achieves a digital address code to allow users find locations efficiently - saving time and fuel. It also provides local access information which can be very beneficial close to the destination location.
  • the navigation server automatically builds up a database with detailed points of interest and routing data to get to the points of interest for a variety of modes of transport and purpose; for example container lorries, cars, pedestrians, disabled access for normal access, delivery, out of hours, emergency access, alternative accesses if other routes closed.
  • the database is flexible to allow additional capability to be added later - relational links to allow coping with multiple site clients, for example.
  • the navigation server provides a mechanism to allow access to this database on the target vehicles, client premises, and central controllers.
  • Figs. 3 to 7 the steps 110 and 111 executed by the navigation server for generating a navigation code is illustrated. These are based on geo-coordinates, so that they have geo-spatial meaning rather than being notional or arbitrary in nature.
  • navigation code data for private properties is searchable if allowed by the owner, otherwise the data will be made available to parties such as emergency services only.
  • This navigation code system for the island of Ireland is directly mathematically related to the Irish Transverse Mercator Grid System (ITM), with parameters as published by OSI and OSNI, which is the official Grid system for both the Republic Of Ireland and Northern Ireland and, therefore, can be used in both sides of the island.
  • ITM Irish Transverse Mercator Grid System
  • the process is designed so that navigation to individual properties or features is possible with SatNav and other GPS enabled devices , unlike prior Post Code systems which only support navigation to broad areas and then only with the support of a street look-up database.
  • the position fidelity of the navigation code with respect to the ITM grid is estimated to be on average in the order of +/- 5 metres and its overall resolution capability is on average +/- 11.5 metre accuracy. More generally, the resolution should be within +/- 20m. 90/85 Km Grid Square Area Codes
  • the first letter of the navigation code is determined by reference to a 90/85 Km area codes superimposed on the Irish Transverse Mercator Grid as shown in the framed areas with letter codes in Fig. 4. Whilst letter coding can be applied to the full extent of the ITM grid, and this may be used in the future, this will initially only be implemented for Grid squares covering the landmass of Ireland. To allow for geography and demographics and to improve the resolution of the navigation code, the square areas are varied in dimensions and in this case are 90 km square on the west coast and 85 km square on the east coast where there is a more dense population.
  • the first 3 numbers of a six digit ITM Easting and Northing will determine the first letter of the Navigation code, e.g. take the ITM grid reference 579739.4E, 560998.5N.
  • the navigation server processor always adds 0.00001 to the Northing so that positions on a dividing line always fall into the square to the north. Eastings on the dividing line will always be taken to be in the square area to the East. From Fig. 4 and Fig. 5, this grid reference yields the letter "W" as the first letter of the navigation code.
  • the navigation, server processor is programmed to then take the full Easting and Northing with up to three decimal places if calculated to this accuracy. From the example above the processor now has the following:
  • the processor establishes how many metres each is into the identified square area - i.e. from west edge of the area in the case of the Easting and from south edge in the case of the northing.
  • the west edge is 510000 and with an Easting in this example of 579739 then 69739 is the number of meters into the square from the West.
  • the south edge is 506000, so with a Northing in this case of 560999 the number of metres into the square from the South is 54999.
  • the processor then takes each of the Easting and Northing separately and makes further calculations based on the separate character in Figs. 5 and 6 and considering the rules for exceptions contained in them.
  • Fig. 6 it shows that for Eastings it is Base 27 with no rules for exceptions.
  • Base 27 indicates that the rounded up Easting value is divided by 12.34567901 if the Square Area is 90km or 11.65980796 is the Square Area is 85km.
  • the Navigation code has 8 characters divided by 2 dashes as follows: 123-45-678
  • the processor processes the first 2 characters for the second Easting in position 6 of the code (the characters W8?-8?-4?? in this case) against the exceptions rules for the Northings as per the Northing Character Table as shown in Fig. 7.
  • both A and E are used in the Northing character set.
  • the processor assesses the Base number to be used. In this case it is 31. As the Base is 31 then the value by which the 5 digit Northing is to be divided by is:
  • the divider for the number of metres into the square from the south edge as calculated above is 9.36524454, and the resulting value is 5872.67. Discarding the decimal places, the resulting value is 5872.
  • Each Checker Code identifies whether each character in positions 2, 3, 6 & 7 of the code are letters or numbers.
  • the Checker Code also indicates the total number of Letters (and by deduction numbers) that are in any navigation code, (excluding the Checker Code itself).
  • the binary code reflected by the Checker Code indicates a 1 for those characters in positions 2, 3, 6 & 7 that are letters and a 0 for those that are numbers. This binary code is converted to Base 16 using the Checker Code characters as shown in Fig. 8.
  • Zone (I s 3 characters) element of the navigation code will be used to indicate general areas and can be used on a "SatNav" device as a quick destination to get on the road quickly in the right direction and to assist in quickly selecting the correct resources to respond to a service requirement
  • the Locality element of the code achieved by dropping the point unit values between the dashes, can be used in social networking so as not to define the user's exact location.
  • the 8, 6 and 3 character versions of the navigation code are preferably supported in software and "SatNav" devices for various purposes. Whilst entering a navigation code on software or on a “SatNav", the user can be asked to enter the last (8 th ) character (Checker Code) first, and then prompted with only letter or number keyboards to suit each position and error corrections prompted based on the information afforded by it. Where possible, as well as using the Checker Code, when a full navigation code is entered on a user device which contains map data, they should return the nearest Town/Townland/Area details to help identify if a gross error in entering the code has been made.
  • the navigation code is predictable, unambiguous, and can be validated for the following reasons: - It is always alphanumeric - with a minimum of two letters and two numbers in every navigation code including the Checker Code
  • the Checker Code indicates where the letters and numbers are in the code.
  • the navigation code is not meant to replace normal addresses or to cause them to be changed. Instead, it is to be used in addition to a normal address so that the address can be used as a gross error check in software and visually for the user.
  • the navigation codes are generated by a Web-based service on the navigation server there is high resolution mapping showing individual properties. In most cases a unique code for every property will be generated but in some minority cases adjacent properties may have the same code but in these cases the property name or number will be used to separate them.
  • various techniques may be used to generate a unique navigation code for very close buildings including calculating the code for any point within the land boundary of the property but not closer to a road which does not give access and normally along a Polyline through the property at right angles to the normal approach road.
  • a full address printed or written on a package t be delivered to the first navigation code calculated above may read as follows (but not normally):
  • GPS House is the property name or number;- to be used as a visual identifier
  • C indicates the navigation code is in Cork City or County, for tone example.
  • the examples here are for use of a navigation code on the island of Ireland. These can be localised for use in any territory with the grid system adjusted to UTM or local and the Square Area Codes being adjusted to reflect local conditions and the size of the territory.
  • Coding and mathematical calculations related to the navigation code calculation are included below, including the rules for calculating ITM coordinates from a navigation code. A fully worked example is also given below.
  • nOffset Math.floor((956000 - northing) / AreaKm); // row number from the top
  • AreaN 866000 - nOffset * AreaKm; // Northing of the South edge of the Area
  • AreaE 420000 + eOffset * AreaKm; // Easting of the West edge of the Area
  • e M ath. floor((easting- AreaE)/EDivisor) ;
  • NDivisor AreaKm/( 10.0 *NChars . length*NChars .length) ;
  • n Math. floor((northing- AreaN)/NDi visor) ;
  • n3 n%10
  • nl2 getBasecode(n/10,NChars); // see below
  • nl nl2.substr(0,l); // 1st value
  • n2 nl2.substr(l,l); // 2nd value
  • checker getChecksum(el2,nl2)
  • PONCode Zone+"-"+e3+n3+"-"+e2+n2+checker
  • nOffset Math.floor((956000 - 4 row number from the top
  • AreaN 866000 - nOffset * AreaKm 506000 Northing of the South edge of the Area
  • e Math.floor((easting- 5648 number of units from the West edge of the
  • e3 e%10 separate out e3 using modulus 10
  • e12 getBasecode(e/10,”ZYXWVTSR using base 27 compute e1 and e2 from the
  • v3 24 determine the low order base value v2 20 compute the high order base value e1 8 1 st value
  • NDivisor AreaKm/(10.0 * NChars.leng 9.365244537 the minimum unit accuracy for Northing in this th*NChars.length) area
  • n Math.floor((northing- 5872 number of units from the South edge to our
  • n3 n%10 2 separate out n3 using modulus 10
  • n12 getBasecode(n/10.NChars)
  • checker getChecksum(e1 +e2, finally compute a checker value
  • n1 is a letter
  • Navigation code W8L-82-4YK It will be appreciated that the invention allows vehicle route optimisation and load optimisation to minimise fuel and time costs in places where addresses are not detailed enough or where post codes define areas which are too broad.
  • the system uses high resolution Web mapping (OSI and OSNI for the island of Ireland) on a dedicated Web service it allows those creating a code to see and identify individual properties, property boundaries and related features and edit them if changes have occurred or are required. For example, a new navigation code and set of intelligent access key information can be generated for a new entrance for service vehicles created on an industrial site, or for a Safety RV point created on a construction site, or an RV point for emergency vehicles depending on site and weather conditions - in major emergency plans. Also, the system allows coding of non-permanent properties such as events, RV points, and temporary water distribution points. The invention is not limited to the embodiments described but may be varied in construction and detail.

Abstract

A user accesses (110) a navigation server and inputs an indication of position of his premises or other location down to the level of the access point. The navigation code is stored (111) and it is downloaded to the user. When the user loads it to his client system or device the navigation code is automatically tested (113). The generated navigation code is predictable and is automatically tested on every occasion at which it is received by a device or system. This helps to ensure integrity of the navigation system, allowing a wide range of devices or systems to handle the navigation codes. After validation, a quality indicator is also generated. The navigation device converts (115) the navigation code to a machine-level geographic code for use in generating onboard navigation instructions (116) for the driver. At the destination the navigation performs hand-shaking with a destination device (117) and there is communication to validate a delivery.

Description

NAVIGATION METHOD USING GEOGRAPHIC LOCATION CODES
Introduction The invention relates to navigation, such as for logistics for efficient delivery of goods and services
US 7,366,609 and US2006/003636364 describe navigation devices in which global positioning information is used.
The invention is directed towards providing a navigation method in which processors of devices and systems operate to achieve improved navigation for vehicles or pedestrians.
Summary of the Invention
According to the invention, there is provided a navigation method performed by a processor and a portable navigation device, the method comprising the steps of: the processor generating a position oriented navigation code for a geographic destination according to its geographic co-ordinates, the code having a series of characters determined according to criteria and said code being predictable, the processor transmitting the navigation code to the portable navigation device and/or to a user via a human interface, the portable navigation device receiving the navigation code either directly from the processor or from the user, automatically testing the navigation code upon receiving it, in which said testing comprises applying rules to each of a plurality of character positions of the navigation code, the navigation device converting the navigation code to a machine-level geographic code, and the navigation device generating from said geographic code navigation outputs navigation to said destination.
In one embodiment, the navigation code is also inputted to a user device, and the user device automatically tests the navigation code upon receiving.
In one embodiment, the testing comprises generating a binary word from the character pattern, and validating the binary word. In one embodiment, the processor includes checker code characters in the navigation code for use in testing.
In one embodiment, the portable navigation device automatically communicates with a destination device at the destination when it is in the proximity of the destination.
In one embodiment, a wireless local communication protocol is used for hand-shaking and local communication at the destination.
In one embodiment, the destination device is a smart meter.
In one embodiment, the destination device generates a user output such as an audio or a visual output to indicate presence of the portable navigation device.
In another embodiment, the navigation device is adapted to employ a fluxgate compass and tilt sensor to detect the orientation of the device in addition to its position and to generate a display of a property image from a database to confirm orientation towards to the correct destination.
In one embodiment, said communication comprises transmitting a message to the destination device to indicate that the navigation device is in proximity.
In one embodiment, the processor generates the code with a resolution sufficiently high so that the navigation code can be used to define different entrances or different locations around a single property. In one embodiment, the resolution is better than +/- 20m, and preferably better than +/-5m. In one embodiment, the step of generating the navigation code comprises:
receiving or storing latitude and longitude map data for the destination location, automatically associating the destination with grid references, and
processing the grid references with a geo-spatial algorithm to generate the navigation code.
In one embodiment, initial characters of the grid references for the destination are used in the navigation code.
In one embodiment, some grid reference characters are excluded according to rules as checker code or exemption rules can not resolve confusion with other characters.
In one embodiment, said characters are I, O, U, and H.
In one embodiment, the method comprises reducing some characters of the grid reference to Easting and Northing data.
In one embodiment, at least some characters of said data are modified.
In one embodiment, at least some characters of said data are divided and rounded.
In one embodiment, at least some characters of said data are converted to symbols such as Base 27-31 symbols.
In one embodiment, the symbols are determined from look-up tables.
In one embodiment, the processor receives as an input geo-coordinates of the destination when generating the navigation code.
In one embodiment, the processor receives as an input a map reference for the location when generating the navigation code. In one embodiment, the processor which generates the navigation code is a processor of a navigation server accessed via a wide area network.
In one embodiment, the processor automatically populates certain character positions in the navigation codes with numbers only.
In another embodiment, an initial character string of the navigation code represents in a human- readable format a geographical region. In one embodiment, characters of the navigation code are associated with each other so that groups of characters represent areas in a pattern which is discernable to users and can be memorised in a manner akin to conventional post codes.
In one embodiment, the processor generates the code with an associated quality rating, and wherein the processor makes the quality rating available to external devices by network access so that said accessing device can determine the extent to which the code can be relied upon for navigation.
In one embodiment, the processor generates the quality rating with any or all of the following levels:
(a) not generated on an authorised service, so quality unknown,
(b) generated on an authorised service, but not yet confirmed by person for whom it was generated,
(c) generated on an authorised service and confirmed by a person for whom it was generated, but untested by other users,
(d) generated on an authorised service, confirmed by person for whom it was generated, and in existence for a time period without adjustment,
(e) generated on an authorised service, confirmed by person for whom it was generated, and in existence for a time period without adjustment and without adverse reports by users, (f) generated on an authorised service, confirmed by person for whom it was generated, and in existence for a time period without adjustment, and no adverse reports by users, and positive reports by users. In one embodiment, the processor generates the code for a destination which is a temporary feature without a permanent man-made building.
In one embodiment, the processor determines access key data describing how the destination may be accessed, and links said access key data with the navigation code.
In one embodiment, the processor determines said access key data by automatically prompting the user for said data while the navigation code is being generated, and wherein the processor subsequently automatically checks for updates.
In one embodiment, the processor, when generating the navigation code, determines automatically according to a map if the code is for a property; and wherein the processor uses this information to detect if the destination is fraudulent or erroneous. In one embodiment, the processor interrogates coordinates of a point clicked on a map and examines if it is within the bounds of a polygon which is defmed as a property visible on the map and defined in a supporting map database, and if so the processor determines that the code is being generated for a genuine and pre-identified property, and if not the processor prompts the user to indicate if the code is for a property.
In another aspect, the invention provides a navigation device adapted to process a navigation code generated in a method as defmed above in any embodiment to provide navigation position data. In a further aspect, the invention provides a computer program product comprising software code for implementing a method as defined above in any embodiment when executing on a digital processor.
In a still further aspect, the invention provides a processor adapted to perform the processor operations' of a method as defined above in any embodiment.
The invention also provides an internet server comprising a processor as defined above. Detailed Description of the Invention
The invention will be more clearly understood from the following description of some embodiments thereof, given by way of example only with reference to the accompanying drawings in which:-
Fig. 1 is a flow diagram for navigation according to the invention,
Fig. 2 shows a vehicle's and a personal device communication for navigation;
Fig. 3 is a flow diagram for a method of automated generation of position oriented navigation ("PON") codes;
Fig. 4 shows 90/85km letter codes used in the method, which would be adjusted as required for other territories;
Figs. 5, 6 and 7 are tables showing allocation of symbols to values in the method;
Fig. 8 is a table showing validation codes used to help validate a navigation code; and
Fig. 9 is a table of area codes.
Description of the Embodiments ' Referring to Fig. 1 , a navigation method 100 comprises steps 110 to 118, at a high level.
In step 110 a user accesses a navigation server and inputs an indication of position of his premises or other location down to the level of the access point. If there are multiple access points the additional ones can be added as part of "intelligent access key" information associated with the navigation code which will be developed. Alternatively, or in addition, an additional navigation code can be generated for an additional access point. The navigation server automatically generates a position oriented navigation ("PON") code for each location, and this processing is expanded upon in Fig. 2. In Fig. 2 the navigation code is referred to as a "Loc8" code. An advantageous aspect is that the navigation server generates and downloads to the user device an intelligent access key. This is a description of how to access the location of the navigation code. It may for example specify that the access road is one-way, and/or where one may park to visit the destination, and/or permitted access times such as only 0700 hrs to 2000 hrs for a factory entrance. The intelligent access key is generated by the server prompting the user for information as the navigation code is being generated in step 110. Subsequently, it automatically prompts the user at regular intervals to check if there are any updates, and hence the access keys remain up to date.
In step 111 the navigation code is stored and it is downloaded to the user. When the user loads it to his client system or device the navigation code is automatically tested, as described in more detail below. An advantageous aspect of the invention is that the generated navigation code is automatically tested on every occasion at which it is received by a device or system. This helps to ensure integrity of the navigation system, allowing a wide range of devices or systems to handle the navigation codes. After validation, a quality indicator is also generated.
In step 112, the user transmits the navigation code to a delivery company server as part of ordering a delivery. The navigation code could alternatively be manually communicated by speech as it is user-friendly, akin to a conventional post code. The delivery server transmits the code to a delivery van in step 114, the navigation device of which also automatically validates the navigation code. In step 115 the navigation device converts the code to a lat/long geographical code, and uses this format in step 116 to guide the driver. As shown in steps 117 and 118, when the driver arrives at the destination property the van's navigation device communicates wirelessly with the user's device in the destination property and transmits a message to it to automatically announce arrival of the delivery. Of course, other messages could be communicated. This navigation method allows:
- Finding an exact destination without a need to see a property conventional address, make contact with the occupier, or ask for directions.
- Deposit into an external and secure store navigation codes for properties which may be provided in the future. The code would be used to navigate to the box but also to act as part of a necessary code to unlock the box to deliver or receive goods. For example, a person may order online using their navigation code, upon which the code and order reference is sent to the user. The navigation device knows the navigation code and the order reference and the combination with handshaking between the navigation device and the user device unlocks it.
Unambiguous identification of smart meters which will be provided for many properties in the future.
Property occupiers to identify who is approaching their door and that the service they have ordered has arrived.
Property occupiers who feel vulnerable can open their doors with confidence of knowing who is arriving.
Referring to Fig. 2, the following are the main steps upon arrival of the vehicle at the destination: a. The user at a location gets their navigation code for their property and enters the code into a user device for a wireless or RFID broadcast with a house number. The user device may be a PC or a dedicated user terminal, or a mobile phone, or a personal mobile device.
b. The user at the property orders a service and confirms that that service is awaited for delivery by means of a service code entered to his user device.
c. The user device generates a wireless or RFID broadcast by a narrow horizontal beam width directional antenna fixed to a window facing the main approach road.
d. The service supplier (for example, courier, post, home goods delivery, food, home repair, taxi, emergency services) enters the destination navigation code into their satellite navigation device ("SatNav", and which could be any GPS-enabled device such as a mobile phone) with a service code associated with delivery and house number - matching that entered by the user - both encrypted
e. The SatNav has a wireless/RFID capability (or equivalent)
f. The service provider navigates to within 20 metres approximately of the destination using the navigation code on the SatNav.
g. When within 20 metres of the destination the wireless/RFID user device in the destination property and the Satnav handshake on the basis of the navigation code and the service code.
h. The SatNav allows navigation to the wireless/RFID Antenna with matched navigation and service codes using direction-finding and homing techniques augmented by SNR and phase homing techniques. A combination of wireless/RFID and visual and audible clues including those related to virtual reality street view imagery using fluxgate compasses and motion sensors are used to positively identify and indicate for navigation the exact final destination or delivery point,
i. As a result of the handshaking the user wireless/RFID device in the property confirms that the service provider is arriving. An audible alert may also be sounded. Further extended capabilities including automatic door and "intelligent postbox" services can also be supported.
j. Logging of service details/times/codes can be maintained on the SatNav and "in-delivery point" devices.
In another embodiment the wireless/RFID device is replaced by a transmitter/receiver which is located in a "smart meter" external to the property but which is connected to an internal device such as a PC inside the property and also supports communications with a mobile phone or similar personal device.
Intelligent Access Keys and Wireless Navigation
The navigation server maintains a database of location data; not only very specific points of access but also routing that can vary according to the mode of transport or a variety of factors such as time of day and type of transaction. This allows more convenient user access and processing of geographic data. It is effectively a signage facility to indicate routing and arrival to both the transporter and the destination client.
The database may be added to existing navigation devices including GPS-enabled handset phones as well as provided from a central database in realtime using "connected" internet technologies. The user device will allow location and communication at final destination. A device that can speed this delivery and pickup will prove valuable. A more automated approach to the final part of a delivery journey will find favour with such companies. The hardware solution has potential in other areas such as taxi, home food delivery, emergency response services or other road users.
As an example of the benefit of the invention, a driver of an articulated truck delivering after working hours can encounter a destination in which he must approach using one route and enter by a different entrance. This problem is solved by means of intelligent geographic and technology-based information included in the intelligent access keys. It is estimated that this approach can save about 30 mins for a large vehicle.
In effect, the invention achieves a digital address code to allow users find locations efficiently - saving time and fuel. It also provides local access information which can be very beneficial close to the destination location.
The navigation server automatically builds up a database with detailed points of interest and routing data to get to the points of interest for a variety of modes of transport and purpose; for example container lorries, cars, pedestrians, disabled access for normal access, delivery, out of hours, emergency access, alternative accesses if other routes closed. The database is flexible to allow additional capability to be added later - relational links to allow coping with multiple site clients, for example. Also, the navigation server provides a mechanism to allow access to this database on the target vehicles, client premises, and central controllers.
Generating the Navigation code
Referring to Figs. 3 to 7 the steps 110 and 111 executed by the navigation server for generating a navigation code is illustrated. These are based on geo-coordinates, so that they have geo-spatial meaning rather than being notional or arbitrary in nature.
The generated navigation codes and associated data relating to commercial organisations are searchable by third parties to allow comprehensive navigation facilities. Navigation code data for private properties is searchable if allowed by the owner, otherwise the data will be made available to parties such as emergency services only.
This navigation code system for the island of Ireland is directly mathematically related to the Irish Transverse Mercator Grid System (ITM), with parameters as published by OSI and OSNI, which is the official Grid system for both the Republic Of Ireland and Northern Ireland and, therefore, can be used in both sides of the island.
The process is designed so that navigation to individual properties or features is possible with SatNav and other GPS enabled devices , unlike prior Post Code systems which only support navigation to broad areas and then only with the support of a street look-up database. The position fidelity of the navigation code with respect to the ITM grid is estimated to be on average in the order of +/- 5 metres and its overall resolution capability is on average +/- 11.5 metre accuracy. More generally, the resolution should be within +/- 20m. 90/85 Km Grid Square Area Codes
The first letter of the navigation code is determined by reference to a 90/85 Km area codes superimposed on the Irish Transverse Mercator Grid as shown in the framed areas with letter codes in Fig. 4. Whilst letter coding can be applied to the full extent of the ITM grid, and this may be used in the future, this will initially only be implemented for Grid squares covering the landmass of Ireland. To allow for geography and demographics and to improve the resolution of the navigation code, the square areas are varied in dimensions and in this case are 90 km square on the west coast and 85 km square on the east coast where there is a more dense population.
The coordinates of the corners of each of the square areas are defined in Fig. 5.
Therefore, the first 3 numbers of a six digit ITM Easting and Northing will determine the first letter of the Navigation code, e.g. take the ITM grid reference 579739.4E, 560998.5N. The navigation server processor always adds 0.00001 to the Northing so that positions on a dividing line always fall into the square to the north. Eastings on the dividing line will always be taken to be in the square area to the East. From Fig. 4 and Fig. 5, this grid reference yields the letter "W" as the first letter of the navigation code.
Once the first digit of the PON has been resolved, the navigation, server processor is programmed to then take the full Easting and Northing with up to three decimal places if calculated to this accuracy. From the example above the processor now has the following:
W 579739.4E 560998.50001N, and rounding these to whole numbers, W 579739E,
560999N
Now, the processor establishes how many metres each is into the identified square area - i.e. from west edge of the area in the case of the Easting and from south edge in the case of the northing. In square area W the west edge is 510000 and with an Easting in this example of 579739 then 69739 is the number of meters into the square from the West. In square W, the south edge is 506000, so with a Northing in this case of 560999 the number of metres into the square from the South is 54999. The processor then takes each of the Easting and Northing separately and makes further calculations based on the separate character in Figs. 5 and 6 and considering the rules for exceptions contained in them.
In Fig. 6, it shows that for Eastings it is Base 27 with no rules for exceptions. Base 27 indicates that the rounded up Easting value is divided by 12.34567901 if the Square Area is 90km or 11.65980796 is the Square Area is 85km. In the case of Area W, it is 90km square so the number of metres into the square from the East edge should be divided by 12.34567901. Therefore, from the calculation above it is 69739/12.34567901 = 5648.859. It discards the decimals (no rounding) in the answer and keeps whole numbers which in this case are 5648 (decimals discarded). The Navigation code has 8 characters divided by 2 dashes as follows: 123-45-678
Now it takes the last digit of the resulting value (referred to as a "Retained" value) and insert in position 4 (Unit Value) of the code as follows: W??-8?-?? Now it takes the remaining Easting value (564 in this case) and converts to Base 27 using the character Symbols in Table 2 below, giving the value "84" in this case and inserts into positions 2 and 6 of the Navigation code: W8?-8?-4??
The processor processes the first 2 characters for the second Easting in position 6 of the code (the characters W8?-8?-4?? in this case) against the exceptions rules for the Northings as per the Northing Character Table as shown in Fig. 7.
The Northings Exceptions rules as executed as follows:
- As the first 2 Eastings are both numbers, then both A and E are used in the Northing character set.
- No other exception rules apply in this case but, as an example, if the first 2 characters were "WW" then "W" would be removed from the Northing Character set. . _
Having processed the exceptions then the processor assesses the Base number to be used. In this case it is 31. As the Base is 31 then the value by which the 5 digit Northing is to be divided by is:
In the case of a 90 Km Area Square it would be 90000/31/31/10 = 9.36524454
In the case of a 85 Km Area Square it would be 85000/31/31/10 = 8.84495317
- In both cases if, for example, having applied the exceptions rules in Fig. 6, and the character set is reduced to 27 then replace 27 for 31 in the calculations above.
In this case as the Area Square is "W", then the divider for the number of metres into the square from the south edge as calculated above (54999 in this case) is 9.36524454, and the resulting value is 5872.67. Discarding the decimal places, the resulting value is 5872.
Now take the last digit of the result (Retained Value) and enter into the 5th position in the navigation code - the Northing Unit
W87-82-4??
- Leaving the value 587 in this case to be converted to a Base 31 value, resulting in the Base 31 values "LY" to be entered as the Northing values in positions 3 and 7 in the navigation code as follows: W8L-83-4Y?
- There is then one final element of the code to complete, i.e. the 8th character To improve the resolution of the code, letter characters that might be confused with numbers, especially when read from handwriting, are used. As a result a "Checker" code is added in the 8th position in the navigation code. Its function is to remove any ambiguity, and to assist in reducing the characters and characters types to be presented to the user at each position in the code, particularly when entering on small screen mobile devices.
The "Checker Codes" are shown in Fig. 8. Each Checker Code identifies whether each character in positions 2, 3, 6 & 7 of the code are letters or numbers.
Taking the fact that the character in the first position, the Area Code, is always a letter, the Checker Code also indicates the total number of Letters (and by deduction numbers) that are in any navigation code, (excluding the Checker Code itself).
The characters used in the Checker Code have the following additional benefits and purposes:
- They are unambiguous. - . Letters are used at the point where the number of letters change except in the very last case i.e. D, G, N, 9 for changes to 2, 3, 4 and 5 letters.
- Numbers are also used in the Checker Code to ensure that no "virtual" three-letter words can be created by the 0 which looks like O and 1 which looks like I if they occur in the last Northing value.
- Numbers are also used in the checker code to ensure that the last three characters are never all letters or the same letter repeated 3 times.
- A number is also used ("9") to ensure that even when only six characters of the code are used for various reasons, then the code is still guaranteed alphanumeric.
- The binary code reflected by the Checker Code indicates a 1 for those characters in positions 2, 3, 6 & 7 that are letters and a 0 for those that are numbers. This binary code is converted to Base 16 using the Checker Code characters as shown in Fig. 8.
- Whilst the full interpretation of the Checker Code is ideally achieved using software - key elements can be memorised to determine how many letters are in the full navigation code as follows:
i. A - there is only 1 letter and it is the Area Code - 1st Character (excluding Checker Code itself)
ii. Dl - all numbers or letters before represent 1 letter and all at or after represents 2 letters or more (excluding Checker Code itself)
iii. G3 - all numbers or letters before represent less than 3 letters and all at or after represents 3 letters or more (excluding checker Code itself)
iv. N6 - all numbers or letters before represent less than 4 letters and all at or after represents 4 Letters or more (excluding checker Code itself)
v. 9 - 5 letters - the maximum number of letters (excluding checker Code itself)
Given that the navigation code calculated so far in this case is: W8L-82-4Y?, then from Table 4 the Checker Code in the 8th position should be "K". K is between G3 and N6, therefore indicating 3 letters in the code excluding the Checker Code itself;- 1 in position 1, 1 in position 3 and 1 in position 7. Using the Checker Code, a handwritten number "8" in position 2 cannot be confused with the letter "B".
Therefore the final full Navigation code for ITM Grid Reference 579739.4E, 560998.5N is W8L-82-4YK. The elements of the navigation code can be described as shown below:
Area W 90/85km Square Area
Zone W8L 1 st 3 Characters
Locality W8L-4YK 1st 3 and Last 3 characters
Point 82 Numbers in Middle
Checker K Last Character
Full 8 Character navigation
PON W8L-82-4YK code
Table 1 The Zone (Is 3 characters) element of the navigation code will be used to indicate general areas and can be used on a "SatNav" device as a quick destination to get on the road quickly in the right direction and to assist in quickly selecting the correct resources to respond to a service requirement The Locality element of the code, achieved by dropping the point unit values between the dashes, can be used in social networking so as not to define the user's exact location.
Validation
The 8, 6 and 3 character versions of the navigation code are preferably supported in software and "SatNav" devices for various purposes. Whilst entering a navigation code on software or on a "SatNav", the user can be asked to enter the last (8th) character (Checker Code) first, and then prompted with only letter or number keyboards to suit each position and error corrections prompted based on the information afforded by it. Where possible, as well as using the Checker Code, when a full navigation code is entered on a user device which contains map data, they should return the nearest Town/Townland/Area details to help identify if a gross error in entering the code has been made.
The navigation code is predictable, unambiguous, and can be validated for the following reasons: - It is always alphanumeric - with a minimum of two letters and two numbers in every navigation code including the Checker Code
- The first character is always a letter - The unit values between the dashes are always numbers
- Letters 0,U, I, & H are never used as they can be confused with other letters and the Checker Code cannot resolve the ambiguity.
- C and G are not used in the same position in the code.
- V followed by V cannot occur thereby preventing confusion with W
- W and V are not used in sequence unless it is clear which comes first.
- A and E are only used when words cannot be spelt
- 1 and 0 are only used where virtual words can not occur if they are visually interpreted as l and O.
- The Checker Code indicates where the letters and numbers are in the code.
- T cannot follow the Area Code B so as to allow the code to work in conjunction with the Northern Ireland post code
Additional Features for the Invention
The navigation code is not meant to replace normal addresses or to cause them to be changed. Instead, it is to be used in addition to a normal address so that the address can be used as a gross error check in software and visually for the user.
Because the navigation codes are generated by a Web-based service on the navigation server there is high resolution mapping showing individual properties. In most cases a unique code for every property will be generated but in some minority cases adjacent properties may have the same code but in these cases the property name or number will be used to separate them. In the Web delivery service, various techniques may be used to generate a unique navigation code for very close buildings including calculating the code for any point within the land boundary of the property but not closer to a road which does not give access and normally along a Polyline through the property at right angles to the normal approach road.
However, to support future and advanced requirements of the navigation code and to aid further checking in applications the following additional characters may be added to the code in certain circumstances but not normally:
i. Property name or number
ii. City/county name in full or using the codes as shown in Fig. 9 which are the same as those used officially in the Republic of Ireland for vehicle license plates with similar for Northern Ireland added. - iii. An optional floor indicator for offices/apartments etc. as follows:
Ground Floor - G
Lower Ground - L
Basement - B
First Floor - 1
Second Floor - 2 etc
Apartment/Suite No.
Consequently, a full address printed or written on a package t be delivered to the first navigation code calculated above may read as follows (but not normally):
GPS Ireland, GPS House - C-W8L-82-4YK-G
- Where "GPS House" is the property name or number;- to be used as a visual identifier
- Where "C" indicates the navigation code is in Cork City or County, for tone example.
- Where "G" indicates that the address is on the ground floor of the property - if omitted the ground floor can be assumed
- The exact location of additional components can vary to satisfy specific requirements
The examples here are for use of a navigation code on the island of Ireland. These can be localised for use in any territory with the grid system adjusted to UTM or local and the Square Area Codes being adjusted to reflect local conditions and the size of the territory.
Coding and mathematical calculations related to the navigation code calculation are included below, including the rules for calculating ITM coordinates from a navigation code. A fully worked example is also given below.
Details of Calculations Associated with the Navigation Code for the Island of Ireland
Coding/Mathematical Calculations //To compute the navigation code from an easting and northing
//The format of the navigation code is Area el nl - e3 n3 - e2 n2 checker
//To ensure that Northings on the dividing line between areas are included in the Area to the north // add an amount which is below the accuracy of any entry (0.01 mm)
northing=northing + 0.00001 ;
//Eastings on the dividing line will always fall into the Area to the east //To start, find the Area and its size and the Easting and Northing of the bottom left corner //Areas to the west of 600,000m are 90Km square, while Areas to the east are 85Km square if (easting<600000) { // Is the Area on the West Coast?
AreaKm = 90000;
eOffset = Math.floor((easting - 420000) / AreaKm); // is it in column 1 or 2
nOffset = Math.floor((956000 - northing) / AreaKm); // row number from the top
AreaN = 866000 - nOffset * AreaKm; // Northing of the South edge of the Area
AreaE = 420000 + eOffset * AreaKm; // Easting of the West edge of the Area
}
else { //Area is on the East Coast
, AreaKm = 85000;
eOffset = Math.floor((easting - 600000) / AreaKm); //column 1 or 2 on West side nOffset = Math.floor((971000 - northing) / AreaKm); // row number from the top AreaN = 886000 - nOffset * AreaKm; // Northing of the South edge of the Area
AreaE = 600000 + eOffset * AreaKm; // Easting of the West edge of the Area eOffset = Offset + 2; // column 3 or 4 of the island
}
offset=eOffset+4*nOffset; // compute index of the table of Area codes
Area=" ABDEFGJKLMNPQRSTWYZ" .substr(offset, 1 ); // select the Area //Now find the easting codes el, e2 and e3
// el and e2 are base 27 and e3 is base 10
// so the minimum unit accuracy for Easting in the selected area is
EDivisor=AreaKm (10*27*27);
// giving us the number of units from the West edge of the Area to our required easting (rounded down)
e=M ath. floor((easting- AreaE)/EDivisor) ;
// separate out e3 using modulus 10
e3=e%10;
//using base 27 compute el and e2 from the Easting Character Table el2=getBasecode(e/10,"ZYXWVTSRQPNMLKJFDCB98765432"); // see subfunction below el=el2.substr(0,l); // 1st value
e2=el2.substr(l,l); // 2nd value // Now find the northing codes nl , n2 and n3
//.First apply the rules that may eliminate any characters from the Northing Character Table // These rules are based on the value of Area and the values of the first and second easting NChars=getNorthingLetters(Area + el2,"0123456789ABCDEFJKLMNPQRSTVWXYZ"); // using the length of the resulting Northing character set
// find the minimum unit accuracy for Northing in this area
NDivisor=AreaKm/( 10.0 *NChars . length*NChars .length) ;
// and calculate the number of units from the South edge to our required northing (rounded down)
n=Math. floor((northing- AreaN)/NDi visor) ;
// separate out n3 using modulus 10
n3=n%10;
// again using a base of the length of the resulting Northing character set
// compute the nl and n2 codes
nl2=getBasecode(n/10,NChars); // see below
nl=nl2.substr(0,l); // 1st value
n2=nl2.substr(l,l); // 2nd value
// finally compute a checker value which will uniquely identify which of the el nl e2 and n2 // are alphabetic or numeric. See the Checker table.
checker=getChecksum(el2,nl2);
// These values may now be combined to create
Zone= Ar ea+e 1 +N 1 ;
Locality=Zone+"-"+e2+n2+checker;
PONCode=Zone+"-"+e3+n3+"-"+e2+n2+checker;
// this function takes a decimal value 'x' and computes a value of base, the length of the character set 'ch' function getBasecode(x,ch){
v=Math.fIoor(x); // ensure our value is an integer
base=ch.length; // what is the base we are using
v3=v%base; // determine the low order base value
if(v<base)return ch. char At(0)+ch. char At(v3); // if the decimal value is below the base, return the '0' value and the low order value
v2=Math.floor(v/base)%base; // compute the high order base value
return ch. char At(v2)+ch. char At(v3); // return the combined codes
}
M===============_==_=====„_=
// function to compute a checker value based on el nl e2 n2 being numeric or alphabetic function getChecksum(easting,northing) {
v=0;
numbers="1234567890";
if (numbers. indexOf(northing.substr(l,l))=-l) v+=8; // n2 is a letter
if (numbers.indexOf(easting.substr(l,l))=-l) v+=4; // e2 is a letter
if (numbers.indexOf(northing.substr(0,l))=-l) v+=2; // nl is a letter
if (numbers.indexOf(easting.substr(0,l))=-l) v+=l ; // el is a letter
return "ADlG2346FJKN5789".charAt(v); // select the checker value - NOTE THE ORDER TO SUIT THE BINARY CALCULATION
}
//To compute the easting and northing from a Navigation code
//Follow the steps above in the reverse order.
// On completion, you have computed the bottom left corner of the small area of the Navigation code
// This area is approx 12m across and 10 m vertically, due to the accuracies of the coding system // therefore, to place the code in the centre of its area, add 6m to easting and 5m to the northing
Worked Example - -
Example of computing Navigation
code from ITM Easting and Northing
easting 579739.4
northing 560998.5 northing=northing + 0.00001
northing 560998.50001
if (easting<600000) TRUE Is the Area on the West Coast? AreaKm 90000 Size of Area
eOffset = Math.floor((easting - 1 column number ( 0 is first column)
420000) / AreaKm)
nOffset = Math.floor((956000 - 4 row number from the top
northing) / AreaKm)
AreaN = 866000 - nOffset * AreaKm 506000 Northing of the South edge of the Area
AreaE = 420000 + eOffset * AreaKm 510000 Easting of the West edge of the Area offset=eOffset+4*nOffset 17 compute index of the table of Area codes
Area=" W select the Area
ABDEFGJKLMNPQRSTWYZ".substr
(offset, 1 )
EDivisor=AreaKm/(10*27*27) 12.34567901 minimum unit accuracy for Easting in the selected area
e=Math.floor((easting- 5648 number of units from the West edge of the
AreaE)/EDivisor) Area
e3=e%10 separate out e3 using modulus 10 e12=getBasecode(e/10,"ZYXWVTSR using base 27 compute e1 and e2 from the
QPNMLKJFDCB98765432") Easting Character Table
x=e/10 564 ZYXWVTSRQPNMLKJFDCB98765432 base 27
v3 24 determine the low order base value v2 20 compute the high order base value e1 8 1 st value
e2 4 2nd value
NChars=getNorthingl_etters(Area + apply the rules to delete characters from the e12,"0123456789ABCDEFJKLMNP Northing Character Table
QRSTVWXYZ")
Area+e12 W84 No letters are deleted (A and E are kept as both Eastings are numeric)
Nchars 0123456789AB
CDEFJKLMNPQ
RSTVWXYZ
NDivisor=AreaKm/(10.0*NChars.leng 9.365244537 the minimum unit accuracy for Northing in this th*NChars.length) area
n=Math.floor((northing- 5872 number of units from the South edge to our
AreaN)/NDivisor) required northing
n3=n%10 2 separate out n3 using modulus 10 n12=getBasecode(n/10.NChars)
x=n/10 587
base 31 0123456789 ABCD E F J KL M N PQ RSTVWXYZ v3 29 determine the low order base value v2 18 compute the high order base value n1 L 1 st value
n2 Y 2nd value
checker=getChecksum(e1 +e2, finally compute a checker value
n1 +n2)
v 1234567890
if n1 is a letter
(numbers. indexOf(northing.substr(0,
1 ))==-1 ) v+=2
if 10 n2 is a letter
(numbers. indexOf(northing.substr(1 ,
1 ))==-1 ) v+=8
if 10 e1 is a letter
(numbers.indexOf(easting.substr(0,1 )
)==-1 ) v+=1
if 10 e2 is a letter
(numbers. indexOf(easting.substr(1 ,1 )
)==-1 ) v+=4
checker K AD1 G2346FJKN5789
Zone W8L
Locality W8L-4YK
Navigation code W8L-82-4YK It will be appreciated that the invention allows vehicle route optimisation and load optimisation to minimise fuel and time costs in places where addresses are not detailed enough or where post codes define areas which are too broad.
Also, because the system uses high resolution Web mapping (OSI and OSNI for the island of Ireland) on a dedicated Web service it allows those creating a code to see and identify individual properties, property boundaries and related features and edit them if changes have occurred or are required. For example, a new navigation code and set of intelligent access key information can be generated for a new entrance for service vehicles created on an industrial site, or for a Safety RV point created on a construction site, or an RV point for emergency vehicles depending on site and weather conditions - in major emergency plans. Also, the system allows coding of non-permanent properties such as events, RV points, and temporary water distribution points. The invention is not limited to the embodiments described but may be varied in construction and detail.

Claims

1. A navigation method performed by a processor and a portable navigation device, the method comprising the steps of: the processor generating a position oriented navigation code for a geographic destination according to its geographic co-ordinates, the code having a series of characters determined according to criteria and said code being predictable, the processor transmitting the navigation code to the portable navigation device and/or to a user via a human interface, the portable navigation device receiving the navigation code either directly from the processor or from the user, automatically testing the navigation code upon receiving it, in which said testing comprises applying rules to each of a plurality of character positions of the navigation code, the navigation device converting the navigation code to a machine-level geographic code, and the navigation device generating from said geographic code navigation outputs for navigation to said destination.
2. A method as claimed in claim 1, wherein the navigation code is also inputted to a user device, and the user device automatically tests the navigation code upon receiving.
3. A method as claimed in claims 1 or 2, wherein the testing comprises generating a binary word from the character pattern, and validating the binary word.
4. A method as claimed in any preceding claim, wherein the processor includes checker code characters in the navigation code for use in testing. A method as claimed in any preceding claim, wherein the portable navigation device automatically communicates with a destination device at the destination when it is in the proximity of the destination.
A method as claimed in claim 5, wherein a wireless local communication protocol is used for hand-shaking and local communication at the destination.
A method as claimed in claims 5 or 6, wherein the destination device is a smart meter.
A method as claimed in any of claims 5 to 7, wherein the destination device generates a user output such as an audio or a visual output to indicate presence of the portable navigation device.
A method as claimed in claim 8, wherein the navigation device is adapted to employ a fluxgate compass and tilt sensor to detect the orientation of the device in addition to its position and to generate a display of a property image from a database to confirm orientation towards to the correct destination.
A method as claimed in any of claims 5 to 9, wherein said communication comprises transmitting a message to the destination device to indicate that the navigation device is in proximity.
A method as claimed in any preceding claim, wherein the processor generates the code with a resolution sufficiently high so that the navigation code can be used to define different entrances or different locations around a single property.
A method as claimed in claim 11, wherein the resolution is better than +/- 20m, and preferably better than +/-5m.
A method as claimed in any preceding claim, wherein the step of generating the navigation code comprises:
receiving or storing latitude and longitude map data for the destination location, automatically associating the destination with grid references, and
processing the grid references with a geo-spatial algorithm to * generate the navigation code. A method as claimed in claim 13, wherein initial characters of the grid references for the destination are used in the navigation code.
A method as claimed in claim 13 or 14, wherein some grid reference characters are excluded according to rules as checker code or exemption rules can not resolve confusion with other characters.
A method as claimed in claim 15, wherein said characters are I, O, U, and H.
A method as claimed in any of claims 13 to 16, comprising reducing some characters of the grid reference to Easting and Northing data.
18. A method as claimed in claim 17, wherein at least some characters of said data are modified.
19. A method as claimed in claim 18, wherein at least some characters of said data are divided and rounded.
20. A method as claimed in any of claims 17 to 19, wherein at least some characters of said data are converted to symbols such as Base 27-31 symbols.
21. A method as claimed in claim 20, wherein the symbols are determined from look-up tables.
22. A method as claimed in any preceding claim, wherein the processor receives as an input geo-coordinates of the destination when generating the navigation code.
23. A method as claimed in any preceding claim, wherein the processor receives as an input a map reference for the location when generating the navigation code.
24. A method as claimed in any preceding claim, wherem the processor which generates the navigation code is a processor of a navigation server accessed via a wide area network.
25. A method as claimed in any preceding claim, wherein the processor automatically populates certain character positions in the navigation codes with numbers only.
26. A method as claimed in any preceding claim, wherein an initial character string of the navigation code represents in a human-readable format a geographical region.
27. A method as claimed in claim 26, the characters of the navigation code are associated with each other so that groups of characters represent areas in a pattern which is discernable to users and can be memorised in a manner akin to conventional post codes.
28. A method as claimed in any preceding claim, wherein the processor generates the code with an associated quality rating, and wherein the processor makes the quality rating available to external devices by network access so that said accessing device can determine the extent to which the code can be relied upon for navigation.
29. A method as claimed in claim 28, wherein the processor generates the quality rating with any or all of the following levels:
(a) not generated on an authorised service, so quality unknown,
(b) generated on an authorised service, but not yet confirmed by person for whom it was generated,
(c) generated on an authorised service and confirmed by a person for whom it was generated, but untested by other users,
(d) generated on an authorised service, confirmed by person for whom it was generated, and in existence for a time period without adjustment,
(e) generated on an authorised service, confirmed by person for whom it was generated, and in existence for a time period without adjustment and without adverse reports by users,
(f) generated on an authorised service, confirmed by person for whom it was generated, and in existence for a time period without adjustment, and no adverse reports by users, and positive reports by users.
30. A method as claimed in any preceding claim, wherein the processor generates the code for a destination which is a temporary feature without a permanent man-made building.
31. A method as claimed in any preceding claim, wherein the processor determines access key data describing how the destination may be accessed, and links said access key data with the navigation code.
32. A method as claimed in claim 31, wherein the processor determines said access key data by automatically prompting the user for said data while the navigation code is being generated, and wherein the processor subsequently automatically checks for updates.
33. A method as claimed in any preceding claim wherein the processor, when generating the navigation code, determines automatically according to a map if the code is for a property; and wherein the processor uses this information to detect if the destination is fraudulent or erroneous.
34. A method as claimed in claim 33, wherein the processor interrogates coordinates of a point clicked on a map and examines if it is within the bounds of a polygon which is defined as a property visible on the map and defined in a supporting map database, and if so the processor determines that the code is being generated for a genuine and pre- identified property, and if not the processor prompts the user to indicate if the code is for a property.
35. A navigation device adapted to process a navigation code generated in a method of any preceding claim to provide navigation position data.
36. A computer program product comprising software code for implementing a method of any of claims 1 to 34 when executing on a digital processor.
37. A processor adapted to perform the processor operations of a method as claimed in any of claims 1 to 34.
38. An internet server comprising a processor as claimed in claim 37.
PCT/IE2010/000070 2009-12-16 2010-12-16 Navigation method using geographic location codes WO2011073965A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US28210709P 2009-12-16 2009-12-16
US61/282,107 2009-12-16

Publications (1)

Publication Number Publication Date
WO2011073965A1 true WO2011073965A1 (en) 2011-06-23

Family

ID=43618086

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IE2010/000070 WO2011073965A1 (en) 2009-12-16 2010-12-16 Navigation method using geographic location codes

Country Status (1)

Country Link
WO (1) WO2011073965A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110208427A1 (en) * 2010-02-25 2011-08-25 Peter S. Brennan Location Identification Systems and Methods
WO2013057221A1 (en) 2011-10-18 2013-04-25 Tomtom International B.V. Methods and apparatus for identifying geographic locations
US8849304B2 (en) 2012-08-29 2014-09-30 Qualcomm Incorporated Providing location assistance information using data from smart meters
GB2513196A (en) * 2013-04-19 2014-10-22 What3Words Ltd A method and apparatus for identifying and communicating locations
EP2932193A4 (en) * 2012-12-12 2016-07-27 Merton G Hale Coding system for satellite navigation system
CN106814677A (en) * 2017-03-29 2017-06-09 深圳市翼动科技有限公司 A kind of unmanned delivery device of long-distance intelligent control
CN117278986A (en) * 2023-11-23 2023-12-22 浙江小遛信息科技有限公司 Data processing method and data processing equipment for sharing travel

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996007170A1 (en) * 1994-08-31 1996-03-07 Nac Geographic Products Inc. A geodetic coding system
US20030060970A1 (en) * 2001-09-27 2003-03-27 Siemens Information And Communication Mobile Llc Method and apparatus for defining location coordinates
US20050023524A1 (en) * 2003-07-31 2005-02-03 Microsoft Corporation Compact text encoding of latitude/longitude coordinates
US20050083176A1 (en) * 2003-10-20 2005-04-21 Shoichiro Yamada Delivery box system and reserving method and charging method therefor
US20060022841A1 (en) * 2004-07-28 2006-02-02 Steve Hoiness Mapping in mobile data collection systems, such as for utility meter reading and related applications
EP1705500A1 (en) * 2005-03-24 2006-09-27 Sap Ag Electronic location code
US20070088495A1 (en) * 2005-10-18 2007-04-19 Ibrahim Wael M System and method for identifying information for a fixed location
US7366609B2 (en) 2005-08-29 2008-04-29 Garmin Ltd. Navigation device with control feature limiting access to non-navigation application

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996007170A1 (en) * 1994-08-31 1996-03-07 Nac Geographic Products Inc. A geodetic coding system
US20030060970A1 (en) * 2001-09-27 2003-03-27 Siemens Information And Communication Mobile Llc Method and apparatus for defining location coordinates
US20050023524A1 (en) * 2003-07-31 2005-02-03 Microsoft Corporation Compact text encoding of latitude/longitude coordinates
US20050083176A1 (en) * 2003-10-20 2005-04-21 Shoichiro Yamada Delivery box system and reserving method and charging method therefor
US20060022841A1 (en) * 2004-07-28 2006-02-02 Steve Hoiness Mapping in mobile data collection systems, such as for utility meter reading and related applications
EP1705500A1 (en) * 2005-03-24 2006-09-27 Sap Ag Electronic location code
US7366609B2 (en) 2005-08-29 2008-04-29 Garmin Ltd. Navigation device with control feature limiting access to non-navigation application
US20070088495A1 (en) * 2005-10-18 2007-04-19 Ibrahim Wael M System and method for identifying information for a fixed location

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110208427A1 (en) * 2010-02-25 2011-08-25 Peter S. Brennan Location Identification Systems and Methods
WO2013057221A1 (en) 2011-10-18 2013-04-25 Tomtom International B.V. Methods and apparatus for identifying geographic locations
US8849304B2 (en) 2012-08-29 2014-09-30 Qualcomm Incorporated Providing location assistance information using data from smart meters
EP2932193A4 (en) * 2012-12-12 2016-07-27 Merton G Hale Coding system for satellite navigation system
GB2513196A (en) * 2013-04-19 2014-10-22 What3Words Ltd A method and apparatus for identifying and communicating locations
CN106814677A (en) * 2017-03-29 2017-06-09 深圳市翼动科技有限公司 A kind of unmanned delivery device of long-distance intelligent control
CN117278986A (en) * 2023-11-23 2023-12-22 浙江小遛信息科技有限公司 Data processing method and data processing equipment for sharing travel
CN117278986B (en) * 2023-11-23 2024-03-15 浙江小遛信息科技有限公司 Data processing method and data processing equipment for sharing travel

Similar Documents

Publication Publication Date Title
WO2011073965A1 (en) Navigation method using geographic location codes
US11276025B2 (en) Automated occupant tracking systems and methods
US9905100B2 (en) Remote initiation of interaction by a computing entity
CA3067519C (en) System and method for determining transit stop location
Tsui et al. Forecasting of Hong Kong airport's passenger throughput
US10129698B2 (en) Internal location address and automatic routing of intra-facility movement
EP3198535A1 (en) Methods and systems for creating and using a location identification grid
US11829927B2 (en) Remote initiation of interaction by a computing entity
US20220284532A1 (en) Global address system and method
JP2000205888A (en) Method and apparatus for acquiring position and orientation information
US20220179887A1 (en) Systems and methods for displaying and using discrete micro-location identifiers
US9373097B2 (en) Mobile access control system with geo-tagging
AU2018235372A1 (en) Global address system and method
IE20100783A1 (en) Position oriented navigation
Kotze Addressing the un-addressed: opportunities for Rural-Africa
KR20000000030A (en) Cemetery information system satellite land surveying system
AU2019318147A1 (en) Global address system and method
KR20070042843A (en) Control method of home-delivery system with internet
US20040019698A1 (en) Method and system of registering a geoname for a geolocation and matching attributes of the geolocation
JP4035813B2 (en) Moving body position recognition system
CN103162692A (en) Method and system for providing information
CA3023051A1 (en) Remote initiation of interaction by a computing entity
WO2014080186A2 (en) Postal code system and method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10801699

Country of ref document: EP

Kind code of ref document: A1

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10801699

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10801699

Country of ref document: EP

Kind code of ref document: A1