US20110118938A1 - Vehicle control system - Google Patents

Vehicle control system Download PDF

Info

Publication number
US20110118938A1
US20110118938A1 US12/947,620 US94762010A US2011118938A1 US 20110118938 A1 US20110118938 A1 US 20110118938A1 US 94762010 A US94762010 A US 94762010A US 2011118938 A1 US2011118938 A1 US 2011118938A1
Authority
US
United States
Prior art keywords
vehicle
control system
spatial
data
control
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US12/947,620
Inventor
Andrew John Macdonald
David Robert Reeve
Campbell Robert Morrison
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hemisphere GPS LLC USA
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to US12/947,620 priority Critical patent/US20110118938A1/en
Assigned to BEELINE TECHNOLOGIES PTY LTD reassignment BEELINE TECHNOLOGIES PTY LTD ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MACDONALD, ANDREW JOHN, MORRISON, CAMPBELL ROBERT, REEVE, DAVID ROBERT
Assigned to HEMISPHERE GPS LLC reassignment HEMISPHERE GPS LLC NUNC PRO TUNC ASSIGNMENT (SEE DOCUMENT FOR DETAILS). Assignors: BEELINE TECHNOLOGIES PTY LTD.
Publication of US20110118938A1 publication Critical patent/US20110118938A1/en
Priority to US13/573,682 priority patent/US8768558B2/en
Priority to US15/196,824 priority patent/USRE48527E1/en
Abandoned legal-status Critical Current

Links

Images

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/10Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration
    • G01C21/12Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning
    • G01C21/16Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 by using measurements of speed or acceleration executed aboard the object being navigated; Dead reckoning by integrating acceleration or speed, i.e. inertial navigation
    • G01C21/183Compensation of inertial measurements, e.g. for temperature effects
    • G01C21/188Compensation of inertial measurements, e.g. for temperature effects for accumulated errors, e.g. by coupling inertial systems with absolute positioning systems
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01BSOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
    • A01B69/00Steering of agricultural machines or implements; Guiding agricultural machines or implements on a desired track
    • A01B69/007Steering or guiding of agricultural vehicles, e.g. steering of the tractor to keep the plough in the furrow
    • A01B69/008Steering or guiding of agricultural vehicles, e.g. steering of the tractor to keep the plough in the furrow automatic
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01BSOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
    • A01B79/00Methods for working soil
    • A01B79/005Precision agriculture
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/86Combinations of lidar systems with systems other than lidar, radar or sonar, e.g. with direction finders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/03Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0252Radio frequency fingerprinting
    • G01S5/02521Radio frequency fingerprinting using a radio-map
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0255Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0259Control of position or course in two dimensions specially adapted to land vehicles using magnetic or electromagnetic means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector

Definitions

  • the present invention relates to a control system for controlling the direction of travel of a vehicle, and in particular to a control system having an embedded spatial database.
  • the control system of the present invention may also be used to control other aspects of a vehicle's motion, such as speed or acceleration.
  • the present control system may be used to control yet other aspects of the vehicle's operation, such as the application of agricultural chemicals at desired locations (including at desired application rates), or the engagement and/or mode of operation of agricultural implements (e.g. ploughs, harvesters etc) at desired locations, etc.
  • a number of control systems have previously been devised for controlling the steering of agricultural vehicles. These systems are generally used on vehicles such as tractors (including tractors with towed tools or other implements), harvesters, headers and the like which operate in large fields. These vehicles generally move along predetermined trajectories (“paths”) throughout the field. In general, a wayline is entered into the control system and subsequent paths are calculated based on the wayline. If the vehicle deviates from the path as it moves, the controller causes the vehicle to steer back towards and onto the path as described below.
  • the vehicle uses various means such as signals produced by GPS (global positioning system) or INS (inertial navigation system) to identify if the vehicle deviates from the desired path trajectory. If the vehicle deviates, the extent of the deviation (i.e. the difference between the actual curvature of the vehicle's trajectory and the desired curvature, its actual compass heading compared with the desired compass heading, and the distance the vehicle is displaced laterally from the desired path) is expressed in the form of an error, and this error is fed back into the control system and used to steer the vehicle back onto the desired path.
  • GPS global positioning system
  • INS inertial navigation system
  • a problem with previous vehicle control systems is that they are inherently “one-dimensional” or “linear” in nature. This means that, at a fundamental level, the controller operates by “knowing” the path that the vehicle is required to traverse, and “knowing” where the vehicle is located on that path (i.e. how far along the path the vehicle has moved) at a given time. However, the controller does not “know” where the vehicle is actually located in space. This is despite the fact that the controller may often progressively receive information containing the vehicle's spatial location, for example from the GPS/INS signals. In current controllers, the GPS/INS signals are used primarily to determine when the vehicle deviates from the path (i.e. to calculate the error) rather than for the primary purpose of determining the vehicle's actual position in space. Hence, at a fundamental level, the controller only “knows” the geometry of the path and how far the vehicle has moved along the path.
  • one form of common path trajectory that agricultural vehicles are often required to traverse in fields is made up of a number of (usually parallel) path segments or “swaths” (these are sometimes also referred to as “rows”).
  • swaths path segments
  • the vehicle typically moves along one swath, harvesting or ploughing as it goes, and it then turns around and moves back along an adjacent parallel swath, harvesting or ploughing in the opposite direction.
  • the adjacent swath will generally be spaced from the first swath sufficiently closely that no part of the field or crop is missed between the swaths, but also sufficiently apart so that there is not an unnecessary overlap region (i.e.
  • the distance between the mid-lines of each respective swath is determined with reference to the width of the vehicle (i.e. the width of the plough, harvester or possibly the tool being towed by the vehicle).
  • the first swath will often be used as a reference swath or “wayline”.
  • the geometry of the wayline in space will be entered into the control system along with the vehicle or implement width, and this is used to calculate the required spacing (and hence trajectory) for each of the adjacent parallel swaths.
  • the controller is only able to control the steering of the vehicle as it proceeds along each of the swaths. It is much harder to control the steering of the vehicle as it turns around between one swath and the next.
  • the “one-dimensional” or “linear” nature of existing control systems also causes other difficulties.
  • One example is in relation to obstacle avoidance.
  • the positions of obstacles e.g. fences, trees, immovable rocks, creeks etc
  • the spatial location may be known according to global latitude and longitude coordinates (e.g. as provided by GPS), or alternatively the location may be known relative to a fixed point of known location (this is generally a point in or near the field used to define the origin of a coordinate system for the field).
  • GPS global latitude and longitude coordinates
  • the location may be known relative to a fixed point of known location (this is generally a point in or near the field used to define the origin of a coordinate system for the field).
  • the control system itself is therefore unable to recognise whether the location of the obstacle coincides with the trajectory of the path, and hence whether there may be a collision.
  • one of the modules would be a collision detection module for calculating the geometry and trajectory of a section of the path a short distance ahead of the vehicle in terms of “real world” spatial coordinates and for determining whether any of the points along that section of path will coincide with the location of an obstacle.
  • the collision detection module identifies that the section of path is likely to pass through an obstacle (meaning that there would be a collision if the vehicle continued along that path)
  • a further module may be required to determine an alternative trajectory for (at least) the section of the path proximate the obstacle. Yet a further module may then be required to determine how best to steer the vehicle from the alternative trajectory back onto the original path after the vehicle has moved past the obstacle.
  • This multi-modular control system structure is complicated and can lead to computational inefficiencies because the different modules may each perform many of the same geometric calculations for their own respective purposes, separately from one another, leading to “doubling up” and unnecessary computation.
  • control of the vehicle generally passes from one module to another as described above, but determining when one module should take over from another creates significant difficulties in terms of both system implementation and maintenance
  • Another problem associated with the “one-dimensional” nature of existing control systems is their inherent inflexibility and unadaptability. For example, in practice, if the vehicle deviates from the desired path for some reason, it may be preferable for subsequent paths (swaths) to also include a similarly shaped deviation so that the paths remain substantially parallel along their length (or tangentially parallel and consistently spaced in the case of curved sections of path). If the vehicle is, for example, a harvester or a plough, then keeping the paths parallel in this way may help to prevent portions of the field from being missed, or from being harvested/ploughed multiple times (by passing over the same portion of field on multiple passes).
  • the control system does not know where the vehicle is actually located in space, and therefore it cannot recognise that the beginning of the next swath is actually located nearby—it simply does not know where the next swath is (or indeed where the current swath is in space). Therefore, current control systems cannot easily recognise when it would be better to change paths (at least without intervention from the vehicle's driver), as this example illustrates. Nor is the current “one-dimensional” structure inherently adapted to enable the control systems to automatically (i.e. autonomously without assistance from the driver) determine and guide the vehicle along an efficient trajectory between swaths.
  • the present invention resides in a vehicle control system having a controller and a spatial database adapted to provide spatial data to the controller at control speed.
  • the invention resides in a control system for controlling a vehicle within a region to be traversed, the control system comprising
  • a controller adapted to receive spatial data from the spatial database at control speed
  • control system being adapted to receive spatial data from the controller and/or an external source
  • the controller using the spatial data for controlling the vehicle.
  • a control system for steering a vehicle within a region to be traversed, the control system comprising
  • a controller adapted to receive spatial data from the spatial database at control speed
  • the controller being adapted to control the steering of the vehicle
  • the spatial database being adapted to receive updated spatial data from the controller and/or an external source
  • the region to be traversed by the vehicle will generally be the field that is to be ploughed, harvested, etc, and the invention will be described generally with reference to agricultural vehicles operating in fields.
  • the region to be traversed by the vehicle may take a range of other forms in different applications.
  • the region to be traversed by the vehicle might comprise roadways located in a particular geographical area.
  • the region could comprise the vehicle navigable regions of the mine. In underground mining, this could include the various levels of the mine located vertically above and below one another at different relative levels (depths).
  • control system of the present invention could be applied to vehicles that operate on airport tarmacs, in which case the region to be traversed by the vehicle might be the tarmac, or a portion thereof. From these examples, the person skilled in the art will appreciate the breadth of other applications that are possible.
  • the control system of the present invention includes a spatial database that contains spatial data.
  • the spatial database may also be adapted to receive spatial data including updated spatial data, and to provide spatial data to other components of the control system.
  • data may be characterised as “spatial” if it has some relationship or association with “real world” geographical location, or if it is stored somehow with reference to geographical location.
  • Some illustrative examples of the kinds of spatial data that may be stored within the database include (but are not limited to) coordinate points describing the location of an object (e.g. a rock or tree) in terms of the object's “real world” geographical location in a field, the coordinate points for a geographical location itself, information regarding a “state” of the vehicle (e.g.
  • the spatial database is an electronic database stored in a memory device, such as, for example, a RAM, as discussed in more detail below.
  • Spatial data may be stored within the database according to any convenient coordinate system, including (but not limited to) cartesian (or projected) coordinates, polar coordinates, cylindrical coordinates, spherical coordinates, latitude/longitude/altitude etc.
  • the coordinate system may also be “global” in the sense of the location references provided by GPS, or “local” coordinates such as those defined with respect to a local origin and reference orientation.
  • the coordinates may or may not take into account the curvature caused by the Earth's overall spherical shape.
  • Cartesian (x,y or x,y,z) coordinates or latitude/longitude/altitude will be used most frequently because of the way these inherently lend themselves to describing geographical location, and because of the ease with which these coordinate systems can be implemented digitally.
  • Particularly representative embodiments may utilise the WGS84 datum which is consistent with the current GPS.
  • GPS global positioning system
  • SBAS Session Based Augmentation Systems
  • WAAS Wide Area Augmentation System
  • ETNS European Space Agency's “European Geostationary Navigation Overlay Service”
  • MFTS Multi-Functional Transportation Satellite
  • GASs Global System Based Augmentation Systems
  • SBASs Satellite Based Augmentation Systems
  • the controller (which controls the vehicle) receives spatial data from the spatial database.
  • the data received by the controller from the database forms at least part of the control inputs that the controller operates on to control the vehicle (i.e. the spatial data forms at least part of the inputs that drive the controller).
  • the fact that the controller operates directly on information that is inherently associated with “real world” geographic location represents a change in thinking compared with existing vehicle control systems.
  • the control system of the present invention “thinks” directly in terms of spatial location.
  • control parameters are defined in geographic space rather than the space of an abstract vector. Consequently, the controller of the present invention may be considered to be inherently “multi-dimensional” or “spatial” in nature, as opposed to “one-dimensional” or “linear” like the existing control systems described in the background section above.
  • control system including the controller
  • the controller may be implemented using equipment that provides memory and a central processing unit to run the one or more algorithms required to control the vehicle.
  • the controller (and hence the control algorithm(s)) used in the present invention may take any form suitable for controlling the steering of a vehicle.
  • closed loop or feedback type control will be used at least in relation to some signal streams (i.e. in relation to at least some of the vehicle variables being controlled by the controller).
  • open loop control may also be used, as may feed-forward control structures wherein the spatial data received by the controller from the spatial database is fed forward to form part of the control outputs used to control the vehicle.
  • the control structure may incorporate combinations of proportional, integral and differential control, or a series of such (possibly nested) control loops.
  • any form of suitable control and/or controller may be used.
  • the control system may also incorporate conventional signal processing and transmitting equipment, for example, for suitably filtering incoming spatial data signals, and for transmitting control signals from the controller to the vehicle's steering system to steer the vehicle.
  • the person skilled in the art will appreciate that any suitable electric, mechanical, pneumatic or hydraulic actuators, or combinations thereof, may be used with the present invention.
  • the actuators may be linked with the vehicle's steering and drive systems to control the steering, acceleration, deceleration etc of the vehicle in response to control signals produced by the controller.
  • Associated equipment such as amplifiers and power sources may also be provided as required to amplify the control signals, and to power the actuators.
  • a wide range of power sources may be used including batteries, generators, pumps etc depending on the nature of the actuator(s) and the signals to be amplified.
  • the spatial database used to store the spatial data and to provide the spatial data to the controller may be different to other forms of databases used in other areas.
  • databases often contain the vast amounts of information (in this case “information” is not used in its “spatial” sense) and the information is generally stored in complex hierarchical structures.
  • these databases may be considered to be “multi-levelled” in that an initial query may return only relatively superficial level information, but this may in turn allow the user to interrogate the database more deeply to obtain more specific, linked or related information.
  • control speed means that the database is able to provide the information at a rate of the same order as the speed at which the controller repeats successive cycles of the control algorithm (i.e. at a rate of the same order as the “clock speed” of the controller).
  • the database will be adapted to provide the data to the controller, and perhaps also receive data from the controller and/or external sources, at every successive cycle of the control algorithm (i.e. at the controller's clock speed).
  • the database may be adapted to provide (and perhaps receive) data at less than, but close to, the controller's clock speed (for example, at every second or third successive cycle of the control algorithm), provided that the rate is fast enough to provide the controller with sufficiently up-to-date spatial information to achieve adequate vehicle control performance.
  • the database may be adapted to provide data at a rate of the same order as one of those controller clock speeds. In any event, the database should provide data to the controller at a rate commensurate with the control loop bandwidth.
  • the database may be adapted to provide data to the controller at a rate of between 1 Hz and 100 Hz.
  • rates between 1 Hz and 20 Hz will almost always be sufficient, and even rates between 3 Hz and 12 Hz may be sufficient for vehicles moving at significantly less than 60 km/hr.
  • the necessary or achievable rates may vary depending on the level of control precision and performance required in different applications, the speed at which the vehicle in question moves, and the capabilities of the available equipment used to implement the control system.
  • the spatial database used in the present invention can provide spatial data to the controller at control speed, and therefore forms part of the system's overall configuration
  • the spatial database may be considered to be “embedded” within the control system, rather than external to it. This is particularly so in embodiments where feedback type control is used, and the spatial database forms part of the system's overall closed loop structure (i.e. in embodiments where the spatial database forms part of the loop).
  • the form of the database should allow the required rapid database access and response times.
  • the database and all of the data that it contains will be loaded into the control system's memory (i.e. loaded into RAM). This way, the data will be directly accessible by the controller's CPU (central processing unit), rather than requiring a query to be sent to a remote disk or storage device containing the data, the response to which would then need to be loaded into RAM before being accessible by the CPU.
  • the database could be located on a separate disk or other storage device, particularly if the device is capable of retrieving data in response to a query with sufficient speed such as, for example, a disk device with RAM read/write cache.
  • the amount of memory required to store the spatial data relating to a particular field to be traversed by the vehicle may be in the order of megabytes.
  • this may correspond to approximately 4 MB of memory required to store the coordinates of each point.
  • Some algorithms which could be used to arrange the spatial data within the database include the algorithms commonly referred to by the names “Grid-indexing”, “Quadtree” or “R-tree”.
  • data may be arranged within the database using a form of algorithm that will be referred to as a “spatial hash-key” algorithm.
  • a spatial hash-key algorithm maps physical locations (based on their “real world” coordinates) into one-dimensional “hash-keys”.
  • the “hash-key” for each location is a string of characters that can be stored in the database's hash table and retrieved in response to a query.
  • Properties of the spatial hash-key algorithm may include:
  • the algorithm should operate using whatever coordinate system the control system uses to represent the region,
  • the algorithm should be adapted for digital implementation (hence, it should be adapted to operate using integer or floating-point numbers, preferably with 64-bit “double” precision or better)
  • This unprocessed data may be fed directly back into the controller, or the respective streams of incoming data (possibly relating to disparate variables) may be filtered using a Kalman filter or some other similar digital signal processing technique to obtain a statistically optimised estimate of the state of the vehicle and its proximate surroundings as it travels. This optimised estimate of the vehicle's state at a particular location may then be fed into the controller.
  • the use of statistically optimised estimates and data may help to improve control performance.
  • the invention resides in a closed loop vehicle control system comprising
  • a controller adapted to receive spatial data from the spatial database at control speed, the controller controlling the steering of the vehicle,
  • the invention resides in a method for controlling a vehicle comprising
  • the invention resides in a vehicle control system comprising
  • a controller adapted to receive spatial data from the spatial database
  • the controller using the spatial data from the spatial database to control the steering of the vehicle.
  • FIG. 1 schematically represents the difference between the vehicle's actual spatial location and what is “seen” by existing forms of “one-dimensional” controllers such as those described in the background section above,
  • FIG. 2 is a pictorial representation of an agricultural vehicle having a control system in accordance with one particular embodiment of the present invention
  • FIG. 3 illustrates the physical meaning of certain parameters controlled by some versions of the present control system, namely the “cross-track error”, the “heading error” and the “curvature error”,
  • FIG. 4 is a schematic “block-diagram” representation of an overall control system structure that may be used in representative embodiments of the present invention
  • FIG. 5 is a schematic representation of the “controller” block that may be used in representative embodiments such as that shown in FIG. 4 ,
  • FIG. 6 is a further schematic “block-diagram” representation of an overall control system structure that may be used with alternative representative embodiments of the invention which incorporate additional features not shown in FIG. 4 .
  • FIG. 7 is a block diagram representation of the state space representation used in the digital implementation of certain aspects of the control system.
  • FIG. 8 shows an example trajectory of an agricultural vehicle, and the coordinates corresponding to different points along the trajectory using a simplified integer based coordinate system.
  • FIG. 9 shows a similar example trajectory of an agricultural vehicle to that shown in FIG. 8 , except that the coordinate system is similar in format to the WGS84 coordinate used by current GPS.
  • FIG. 10 illustrates the way in which numbers are represented in the IEEE 754 standard double-precision floating-point format
  • FIG. 11 is a “flow-diagram” illustrating the way a particularly preferred spatial hash algorithm may be used to generate hash keys for the coordinates in FIG. 9 .
  • FIG. 1 The inherent “linear” nature of existing control systems is illustrated schematically in FIG. 1 . Whilst the “real world” spatial geometry of the respective swaths shown on the left in FIG. 1 may have been calculated, nevertheless from the control system's point of view at any given time the controller only “knows” that the vehicle is on the nth swath and that it has been moving along that swath for a known amount of time with known speed. Hence, at a fundamental level, the controller does not inherently know where the vehicle is located in space. This is represented graphically in FIG. 1 .
  • FIG. 2 shows an agricultural vehicle 1 having a control system in accordance with one embodiment of the present invention.
  • the agricultural vehicle 1 is a tractor towing an implement 2 .
  • the implement 2 could be a plough, harvester, seed sower, leveller, agricultural chemical applicator/dispenser or any other kind of agricultural implement.
  • the embodiment of the invention shown in FIG. 2 could equally be applied on other kinds of vehicles operating in other areas, for example cars, mine-trucks, airport tarmac vehicles, etc.
  • the components of the control system in the particular embodiment shown in FIG. 2 include a main control unit 3 , a GPS antenna 4 and actuators 5 .
  • the main control unit 3 houses the spatial database and also the electronic hardware used to implement the controller.
  • the main control unit 3 may be an industrial computer (for example an industrial PC) capable of running other applications in addition to the vehicle control system.
  • the main control unit 3 may be a purpose-built unit containing only the hardware required to run the controller, the spatial database and the other components of the vehicle control system.
  • the main control unit 3 receives GPS signals from the GPS antenna 4 , and it uses these (typically in combination with feedback and/or other external spatial data signals) to generate a control signal for steering the vehicle.
  • the control signal will typically be made up of a number of components or streams of data relating to the different parameters of the vehicle being controlled, for example the vehicle's “cross-track error”, “heading error”, “curvature error”, etc. These parameters will be described further below.
  • the control signal is amplified using suitable signal amplifiers (not shown) to create a signal that is sufficiently strong to drive the actuators 5 .
  • the actuators 5 are interconnected with the vehicle's steering mechanism (not shown) such that the actuators operate to steer the vehicle as directed by the control signal.
  • further actuators may also be provided which are interconnected with the vehicle's accelerator and/or braking mechanisms, and the control signal may incorporate components or signal streams relating to the vehicle's forward progress (i.e. its forward speed, acceleration, deceleration etc).
  • the component(s) of the control signal relating to the vehicle's forward progress may also be amplified by amplifiers (not shown) sufficiently to cause the actuators which are interconnected with the accelerator/braking mechanism to control the vehicle's acceleration/deceleration in response to the control signal.
  • the vehicle 1 may also be optionally provided with one or more visual sensors 6 , one or more inertial sensors 7 and a user terminal 8 .
  • One form of visual sensor 6 that may be used may operate by receiving images of the ground beneath the vehicle, preferably in rapid succession, and correlating the data pertaining to respective successive images to obtain information relating to the vehicle's motion.
  • Other forms of visual sensor may also be used including LIDAR (Light Detection and Ranging) or sensors which operate using machine vision and/or image analysis.
  • the one or more inertial sensors 7 will typically include at least one gyroscope (e.g.
  • the inertial sensors 7 could also comprise a number of sensors and components (such as accelerometers, tilt sensors and the like) which together form a sophisticated inertial navigation system (INS).
  • the vehicle may be further provided with additional sensors (not shown) such as sensors which receive information regarding the location of the vehicle relative to a fixed point of known location in or near the field, magnetometers, ultrasonic range and direction finding and the like. The data generated by these additional sensors may be fed into the database and used by the control system to control the vehicle as described below.
  • the user terminal 8 may comprise a full computer keyboard and separate screen to enable the user to utilise the full functionality of the computer.
  • the terminal 8 may comprise, for example, a single combined unit having a display and such controls as may be necessary for the user to operate the vehicle's control system. Any kind of controls known by those skilled in this area to be suitable may be used on the main control unit, including keypads, joysticks, touch screens and the like.
  • the user terminal 8 is positioned in the vehicle cabin so that it can be operated by the driver as the vehicle moves.
  • the present control system could also be operated by wireless remote control, meaning that the user terminal 8 could alternatively be totally separate from the vehicle and could operate the vehicle's control system from a remote location.
  • a single remote user terminal 8 may be used to wirelessly interface with the control systems of multiple vehicles (possibly simultaneously) so that the user can control multiple moving vehicles from the one remote terminal.
  • the “cross-track error” is the lateral difference between the vehicle's actual position, and its desired position. This is illustrated by the “ ⁇ ” bracket in FIG. 3 .
  • the “heading error” is the difference between the vehicle's actual instantaneous direction of motion h (i.e. its actual compass heading), and its desired instantaneous direction of motion H.
  • the heading error is given by:
  • curvature error is the difference between the actual instantaneous radius of curvature r of the vehicle's motion and the desired instantaneous radius of curvature R.
  • the curvature error is given by:
  • a vehicle control system in accordance with one particular embodiment of the invention comprises:
  • actuators to control (steer) the vehicle.
  • the desired path trajectory for the vehicle is first entered into the control system by the user via the user terminal 8 .
  • the task path generator interprets this user-defined path definition and converts it into a series of points of sufficient spatial density to adequately represent the desired path to the requisite level of precision.
  • the task path generator typically also defines the vehicle's desired trajectory along the user-defined path, for example, by generating a desired vehicle position, a desired heading H and a desired instantaneous radius of curvature R for each point on the path. This information is then loaded into the spatial database.
  • This and other spatial information is stored within the database in representative embodiments, and in particular the way in which pieces of data are given memory allocations according to their spatial location, is described further below.
  • the control system progressively receives updated information regarding spatial location from the external spatial data sources.
  • the external spatial data sources will typically include GPS. However, a range of other spatial data sources may also be used in addition to, or in substitute for GPS. For example, the inertial navigation systems (INS), visual navigation systems etc described above may also be used as external data sources in the present control system.
  • INS inertial navigation systems
  • visual navigation systems etc described above may also be used as external data sources in the present control system.
  • the spatial data collected by the external spatial data sources actually pertains to the specific location of the external spatial data receivers, not necessarily the vehicle/implement reference location itself (which is what is controlled by the control system).
  • the reference location is on the vehicle 1 and is indicated by the intersection (i.e. the origin) of the roll, pitch and yaw axes. In other embodiments, the reference location may be located elsewhere on the vehicle, or on the implement 2 etc. In any event, to illustrate this point, it will be seen that the GPS antenna 4 in FIG. 2 is located on the roof of the vehicle some distance from the vehicle's reference point.
  • the spatial data collected by the GPS antenna actually relates to the instantaneous location of the vehicle's roof, not the location of the vehicle's reference point.
  • the spatial data collected by the visual sensor 6 actually pertains to the particular location of the visual sensor (slightly out in front of the vehicle in FIG. 2 ).
  • changes in the vehicle's attitude will also influence the spatial position readings received by the different receivers. For example, if one of the vehicle's wheels passes over, or is pushed sideways by a bump, this may cause the vehicle to rotate about at least one (and possibly two or three) of the axes shown in FIG. 2 . This will in turn change the relative position of the spatial data receiver(s) such as GPS antenna 4 with respect to the reference location on the vehicle or implement. This can be used (typically in combination with other sources of external spatial data or “feedback” data) to determine the orientation of the vehicle. The orientation of the vehicle may be considered to be the relative orientation of the vehicle's axes in space.
  • a vehicle attitude compensation module is provided. This is shown in FIG. 4 .
  • the vehicle attitude compensation module converts all readings taken by the various spatial data receivers (which relate to the different specific locations of the receivers) into readings pertaining to the spatial location and orientation of the vehicle's reference point. This data pertaining to the spatial location and orientation of the vehicle's reference point is then fed into the spatial database.
  • the one or more external spatial data sources will progressively receive updated data readings in rapid succession (e.g. in “real time” or as close as possible to it). These readings are then converted by the vehicle attitude compensation module and fed into the spatial database. The readings may also be filtered as described above. Therefore, whilst each reading from each spatial data source is received, converted (ideally filtered) and entered into the spatial database individually, nevertheless the rapid successive way in which these readings (possibly from multiple “parallel” data sources) are received, converted and entered effectively creates a “stream” of incoming spatial data pertaining to the vehicle's continuously changing instantaneous location and orientation. In order to provide sufficient bandwidth, successive readings from each external spatial data source should be received and converted with a frequency of the same order as the clock speed (or at least one of the clock speeds) of the controller, typically 3 Hz-12 Hz or higher.
  • the position error generator next receives information from the spatial database.
  • the information it receives from the database includes:
  • This information is based on spatial data progressively received from the external spatial data sources as described above, and typically also on data received through feedback.
  • the position error generator uses this information to calculate an instantaneous “error term” for the vehicle.
  • the “error term” incorporates the vehicle's instantaneous cross-track error, heading error and curvature error (as described above).
  • the error term is then fed into the controller.
  • the controller is shown in greater detail in FIG. 5 .
  • the controller incorporates a cross-track error PID controller, a heading error PID controller and a curvature error PID controller.
  • the PID controllers used with the present invention are of a conventional form that will be well understood by those skilled in this area and need not be described in detail.
  • the output from the cross-track error, heading error and curvature error PID controllers then passes through a curvature demand signal integrator.
  • the output from the PID controllers is therefore integrated in order to generate a curvature demand signal.
  • This curvature demand signal is thus the “control signal” which is amplified by amplifiers (not shown) before proceeding to drive the actuators as required.
  • the signal obtained by integrating the output from the PID controllers is amplified and sent to the actuators in the form of a curvature demand to change the vehicle's steering angle and hence steer the vehicle back onto the desired path.
  • the change in vehicle pose etc caused by the control driven change in steering angle is registered via the updated information received through the external data sources (GPS etc) and the vehicle's new position, heading and instantaneous radius of curvature are re-entered into the spatial database to complete control system's overall closed loop control structure.
  • the arrows extending from the actuators/steering mechanism to the external data sources in FIG. 4 are dashed rather than solid lines.
  • FIG. 6 there is shown a slightly more elaborate embodiment of the control system.
  • the embodiment shown in FIG. 6 is generally the same as that shown in FIG. 4 , except that the embodiment in FIG. 6 incorporates an optimising filter and an external obstacle detection input.
  • the optimising filter can operate to statistically optimise at least some of the spatial data contained in the spatial data base.
  • the filter will generally operate as an “observer”, meaning that it does not form part of the control loop. Rather, the filter will typically reside outside the control loop and it will generally operate by taking data directly from the database and returning optimise data directly into the database, as shown in FIG. 6 .
  • the filter will take the updated “feedback” data that re-enters the database from the control loop (described above) together with the updated spatial data obtained from the external spatial data sources (after it has been processed by the vehicle attitude compensation module) and it will then use these disparate streams of data to calculate a statistically optimised updated estimate of, for example, the vehicle's instantaneous position, heading and radius of curvature.
  • the filter will typically comprise a Kalman filter.
  • the external obstacle detection input may comprise any form of vision based, sound based or other obstacle detection means, and the obstacle detection data may be converted by the vehicle attitude compensation module (just like the other sources of external data discussed above) and then fed into the spatial database.
  • the control system incorporates obstacle detection, it is then necessary for the task path generator to be able to receive updated information from the spatial database. This is so that if an obstacle is detected on the desired path, an alternative path that avoids the obstacle can be calculated by the task path generator and re-entered into the database.
  • the ability of the task path generator to also receive data from the spatial database is indicated by the additional arrow from the spatial database to the task path generator in FIG. 6 .
  • FIGS. 4-6 graphically represent the operation of the control system. However, it is also useful to consider the way in which the vehicle's parameters and dynamics are represented for the purposes of implementing the control system. Those skilled in the art will recognise that a range of methods may be used for this purpose. However, it is considered that one method is to represent the parameters and dynamics in “state space” form.
  • states In state space representations, the variables or parameters used to mathematically model the motion of the vehicle, or aspects of its operation, are referred to as “states” x i .
  • the states may include the vehicle's position (x,y), velocity
  • X ( t ) [ x 1 ( t ) x 2 ( t ) x 3 ( t ) x 4 ( t ) . . . x n ( t )] T
  • n is the number of states.
  • the mathematical model used to model the vehicle's motion and aspects of its operation will comprise a series of differential equations.
  • the number of equations will be the same as the number of states.
  • the differential equations will be linear in terms of the states, whereas in other situations the equations may be nonlinear in which case they must generally be “linearised” about a point in the “state space”. Linearisation techniques that may be used to do this will be well known to those skilled in this area.
  • ⁇ ⁇ t ⁇ ( X _ ⁇ ( t ) ) A ⁇ X _ ⁇ ( t ) + B ⁇ U _ ⁇ ( t ) + E ⁇ w _ ⁇ ( t )
  • A is an n ⁇ n matrix linking the state time derivatives to the states themselves
  • U(t) is an m ⁇ 1 matrix containing the external “forcing” inputs in the mathematical model
  • n the number of inputs
  • Ew(t) is a quantity (represented by an n ⁇ 1 vector) called the “process noise”.
  • the process noise represents errors in the model and vehicle dynamics which exist in the actual vehicle but which are not accounted for in the model.
  • Ew(t) represents an unknown quantity, its contents are not known. However, for reasons that will be understood by those skilled in this area, in order to allow statistically optimised signal processing and state estimation Ew(t) is generally assumed to be Gaussian, white, have zero mean and to act directly on the state derivatives. It is also assumed that the process noise element associated with each individual state is uncorrelated with the process noise element of the other states.
  • the quantities that are desired to be known about the vehicle are the outputs y 1 from the model.
  • Each of the outputs generated by the linear (or linearised) model comprises a linear combination of the states x, and inputs u i , and so the outputs can be defined by the “output” or “measurement” equation:
  • C is a j ⁇ n matrix linking the outputs to the states
  • D is a j ⁇ m matrix linking the outputs to the inputs
  • j is the number of outputs
  • Mv(t) is a quantity (represented by an n ⁇ 1 vector) called the “measurement noise”.
  • the measurement noise represents errors and noise that invariably exist in measurements taken from the actual vehicle.
  • Mv(t) is assumed to be Gaussian, white, have zero mean, to act directly on the state derivatives and to be uncorrelated with the process noise or itself.
  • both the state equation and the measurement equation defined above are continuous functions of time.
  • continuous time functions do not often lend themselves to easy digital implementation (such as will generally be required in implementing the present invention) because digital control systems generally operate as recursively repeating algorithms. Therefore, for the purpose of implementing the equations digitally, the continuous time equations may be converted into the following recursive discrete time equations by making the substitutions set out below and noting that (according to the principle of superposition) the overall response of a linear system is the sum of the free (unforced) response of that system and the responses of that system due to forcing/driving inputs.
  • the recursive discrete time equations are:
  • F is a transition matrix which governs the free response of the system. F is given by:
  • GU.sub.k+1 is the forced response of the system, i.e. the system's response due to the driving inputs. It is defined by the convolution integral as follows:
  • the quantity Lw.sub.k+1 is the (forced) response of the system due to the random “error” inputs that make up the process noise.
  • this quantity may be defined as:
  • a “Kalman Filter” operates as a “predictor-corrector” algorithm.
  • the algorithm operates by first using the mathematical model to “predict” the value of each of the states at time step k+1 based on the known inputs at time step k+1 and the known value of the states from the previous time step k. It then “corrects” the predicted value using actual measurements taken from the vehicle at time step k+1 and the optimised statistical properties of the model.
  • the Kalman Filter comprises the following equations each of which is computed in the following order for each time step:
  • k means the value of the quantity in question at time step k+1 given information from time step k.
  • k+1 means the value of the quantity at time step k+1 given updated information from time step k+1.
  • P is the co-variance in the difference between the estimated and actual value of X.
  • Q is the co-variance in the process noise.
  • K is the “Kalman gain” which is a matrix of computed coefficients used to optimally “correct” the initial state estimate.
  • R is the co-variance in the measurement noise.
  • [0139] is a vector containing measurement values taken from the actual vehicle.
  • innovation is a quantity called the “innovation” which is the difference between the measured values actually taken from the vehicle and values for the corresponding quantities estimated by the model.
  • the hash table typically operates as a form of index allowing the computer (in this case the control system CPU) to “look up” a particular piece of data in the database (i.e. to look up the location of that piece of data in memory).
  • pieces of data pertaining to particular locations along the vehicle's path are assigned different hash keys based on the spatial location to which they relate.
  • the hash table then lists a corresponding memory location for each hash key.
  • the CPU is able to “look up” data pertaining to a particular location by looking up the hash key for that location in the hash table which then gives the corresponding location for the particular piece of data in memory.
  • the hash keys for different pieces of spatial data can be assigned in such a way that “locality” is maintained. In other words, points which are close to each other in the real world should be given closely related indices in the hash table (i.e. closely related hash keys).
  • the spatial hash algorithm used to generate hash keys for different spatial locations in representative embodiments of the present invention may be most easily explained by way of a series of examples.
  • FIG. 8 the successive points which define the path are described by a simplified integer based (X,Y) coordinate system.
  • X,Y the vehicle moves in the X direction along the entire length of the first swath from (0,0) to (4,0), before moving up in the Y direction to then move back along the second swath in the opposite direction from (4,1) to (0,1), etc.
  • the hash table must operate by listing the hash key for each particular spatial location together with the corresponding memory location for data pertaining to that spatial location. Therefore, the hash table is inherently one-dimensional, and yet it must be used to link hash keys to corresponding memory allocations for data that inherently pertains to two-dimensional space.
  • the prefix “0x” indicates that the numbers in question are expressed in hexadecimal format. This is a conventional notation.
  • Hash Keys Generated by Concatenating the X and Y Coordinates (X, Y) Hash key (X, Y) Hash key coor- (hexa- Hash key coor- (hexa- Hash key dinates decimal) (decimal) dinates decimal) (decimal) (0, 0) 0 ⁇ 0 0 (3, 2) 0 ⁇ 302 770 (1, 0) 0 ⁇ 100 256 (4, 2) 0 ⁇ 402 1026 (2, 0) 0 ⁇ 200 512 (0, 3) 0 ⁇ 3 3
  • bitwise interleaving a technique which shall hereinafter be referred to as “bitwise interleaving”.
  • the first step in this technique is to represent the (X,Y) coordinates in binary form.
  • the point (X,Y) may be re-written in 8-bit binary array notation as (X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 , Y 1 Y 2 Y 3 Y 4 Y 5 Y 6 Y 7 Y 8 ).
  • the successive bits from the X and Y binary coordinates are alternatingly “interleaved” to give the following 16-bit binary hash key X 1 Y 1 X 2 Y 2 X 3 Y 3 X 4 Y 4 X 5 Y 5 X 6 Y 6 X 7 YX 8 Y 8 .
  • the hash keys generated using this method for each point on the vehicle path in FIG. 8 are given in Table 3 below.
  • Hash Keys Generated by “Bitwise Interleaving” the X and Y Coordinates (X, Y) (X, Y) Hash key (X, Y) Hash key coor- (hexa- Hash key coor- (hexa- Hash key dinates decimal) (decimal) dinates decimal) (decimal) (0, 0) 0 ⁇ 0 0 (3, 2) 0 ⁇ e 14 (1, 0) 0 ⁇ 2 2 (4, 2) 0 ⁇ 24 36 (2, 0) 0 ⁇ 8 8 (0, 3) 0 ⁇ 5 5 (3, 0) 0 ⁇ a 10 (1, 3) 0 ⁇ 6 7 (4, 0) 0 ⁇ 20 32 (2, 3) 0 ⁇ d 13 (0, 1) 0 ⁇ 1 1 (3, 3) 0 ⁇ f 15 (1, 1) 0 ⁇ 3 3 (4, 3) 0 ⁇ 25 37 (2, 1) 0 ⁇ 9 9 (0, 4) 0
  • decimal number 3 may be written as 11 in binary notation.
  • decimal number 4 is written as 100 in binary. Therefore, the location (3,4) may be rewritten in 8-bit binary array notation as (00000011,00000100). Bitwise interleaving these binary coordinates then gives the single 16-bit binary hash key 0000000000011010, which can equivalently be written as the hexadecimal number 0x1a or the decimal number 26.
  • hash keys by “bitwise interleaving” the X and Y coordinates leads to unique hash keys (in this example) for each spatial location.
  • the hash keys generated in this way satisfy the requirement that points which are close together in the real world are assigned closely related hash keys. For example, consider again the points (0,0) and (1,0). The hash keys now assigned to these points by “bitwise interleaving” (when written in decimal notation) are 0 and 2 respectively. Furthermore, the point (0,1) which is also nearby is also assigned the closely related hash key 1. Conversely, points which are separated by a considerable distance in the real world are given considerably differing hash keys, for example, the hash key for (4,3) is 37.
  • GPS and other similar systems which describe spatial location typically do so using IEEE double-precision floating-point numbers (not simple integers). For instance, GPS supplies coordinates in the form of (X,Y) coordinates where X corresponds to longitude, and Y corresponds to latitude. Both X and Y are given in units of decimal degrees.
  • FIG. 9 shows an example vehicle path similar to that shown in FIG. 8 , except that the coordinates used to describe the points along the path in FIG. 9 correspond to a “realistic” coordinate system such as that used by current GPS.
  • a “realistic” coordinate system such as that used by current GPS.
  • a double-precision floating-point number represented in accordance with the IEEE 754 standard comprises a string of 64 binary characters (64 bits) as shown in FIG. 10 .
  • the number is represented in three parts, namely the sign, the exponent and the mantissa.
  • the sign comprises one bit. If the sign bit is 1 then the number is negative, and conversely if the sign bit is 0 then the number is positive.
  • the exponent comprises eleven binary characters, and hence can range from 00000000000 to 11111111111. However, because of the need to represent numbers that are both greater and smaller than one, it is necessary to be able to represent both large positive and large negative values for the exponent.
  • step 3 the binary coordinate representations (and all other numbers which are generated or used by the algorithm in binary form) have been written in the alternative hexadecimal notation for ease of reference and to save space in FIG. 11 .
  • step 4 the binary representations of the two coordinates are split into their respective exponent (11 bits) and mantissa (52 bits) portions.
  • step 4 the binary representations of the two coordinates are split into their respective exponent (11 bits) and mantissa (52 bits) portions.
  • the resulting exponents are then adjusted by a selected offset.
  • the size of the offset is selected depending on the desired “granularity” of the resulting fix-point number. In the particular example shown in step 6 ) of FIG. 11 , the offset is 37, however those skilled in the art will appreciate this number can be varied to suit.
  • the next step is to “resurrect” the leading “1” and the binary point which implicitly exist in the mantissa but which are left off when the mantissa is actually written (see above). Hence, the leading “1” and the binary point are simply prepended to the mantissa of each of the coordinates. This is step 7 ) in FIG. 11 .
  • the mantissa for each coordinate is then right-shifted by the number of bits in the corresponding exponent.
  • the exponents for each coordinate are then prepended to their corresponding mantissas forming a single character string for each coordinate.
  • the resultant bit fields for each coordinate are bitwise interleaved to obtain a single hash key corresponding to the original coordinates.
  • the resultant hash key is 32-bits in length. However, the length of the resultant hash key may vary depending on, for example whether the high-order byte is discarded, etc.

Abstract

A vehicle control system having a controller and a spatial database adapted to provide spatial data to the controller at control speed. The spatial data provided from the spatial database to the controller can be any kind of data or information that has some relationship or association with “real world” geographical location, or if it is stored somehow with reference to geographical location. The spatial data received by the controller from the database forms at least part of the control inputs that the controller operates on to control the vehicle. The fact that the controller operates directly on information that is inherently associated with “real world” geographic location represents a change in thinking compared with existing vehicle control systems. In particular, it means that the control system of the present invention “thinks” directly in terms of spatial location. A vehicle control system in accordance with one particular embodiment of the invention comprises a task path generator, a spatial database, at least one external spatial data receiver, a vehicle attitude compensation module, a position error generator, a controller, and actuators to control the vehicle.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This application is a continuation of and claims the benefit of U.S. patent application Ser. No. 11/620,388, filed Jan. 5, 2007, entitled “Vehicle Control System,” now U.S. Pat. No. 7,835,832, issued Nov. 16, 2010, which is incorporated herein by reference.
  • FIELD OF THE INVENTION
  • The present invention relates to a control system for controlling the direction of travel of a vehicle, and in particular to a control system having an embedded spatial database. The control system of the present invention may also be used to control other aspects of a vehicle's motion, such as speed or acceleration. Furthermore, in the case of agricultural vehicles and the like, the present control system may be used to control yet other aspects of the vehicle's operation, such as the application of agricultural chemicals at desired locations (including at desired application rates), or the engagement and/or mode of operation of agricultural implements (e.g. ploughs, harvesters etc) at desired locations, etc.
  • For convenience, the invention will be described mainly with reference to agricultural vehicles and like moving agricultural machinery. However, it will be clearly understood that the invention is not limited to agricultural applications and it may equally be applied to vehicles and other moving machinery in other areas.
  • BACKGROUND
  • A number of control systems have previously been devised for controlling the steering of agricultural vehicles. These systems are generally used on vehicles such as tractors (including tractors with towed tools or other implements), harvesters, headers and the like which operate in large fields. These vehicles generally move along predetermined trajectories (“paths”) throughout the field. In general, a wayline is entered into the control system and subsequent paths are calculated based on the wayline. If the vehicle deviates from the path as it moves, the controller causes the vehicle to steer back towards and onto the path as described below.
  • As the vehicle moves along the predetermined path trajectory, it uses various means such as signals produced by GPS (global positioning system) or INS (inertial navigation system) to identify if the vehicle deviates from the desired path trajectory. If the vehicle deviates, the extent of the deviation (i.e. the difference between the actual curvature of the vehicle's trajectory and the desired curvature, its actual compass heading compared with the desired compass heading, and the distance the vehicle is displaced laterally from the desired path) is expressed in the form of an error, and this error is fed back into the control system and used to steer the vehicle back onto the desired path.
  • A problem with previous vehicle control systems is that they are inherently “one-dimensional” or “linear” in nature. This means that, at a fundamental level, the controller operates by “knowing” the path that the vehicle is required to traverse, and “knowing” where the vehicle is located on that path (i.e. how far along the path the vehicle has moved) at a given time. However, the controller does not “know” where the vehicle is actually located in space. This is despite the fact that the controller may often progressively receive information containing the vehicle's spatial location, for example from the GPS/INS signals. In current controllers, the GPS/INS signals are used primarily to determine when the vehicle deviates from the path (i.e. to calculate the error) rather than for the primary purpose of determining the vehicle's actual position in space. Hence, at a fundamental level, the controller only “knows” the geometry of the path and how far the vehicle has moved along the path.
  • Therefore, with current controllers, if it is desired to know the actual spatial position of the vehicle, this must be calculated from the known geometry of the path and the known distance the vehicle has moved along that path. This calculation can be computationally expensive and difficult to implement in practice, particularly for curved, piecewise, broken or other complex path trajectories.
  • By way of example, it will be appreciated that one form of common path trajectory that agricultural vehicles are often required to traverse in fields is made up of a number of (usually parallel) path segments or “swaths” (these are sometimes also referred to as “rows”). Thus, the vehicle typically moves along one swath, harvesting or ploughing as it goes, and it then turns around and moves back along an adjacent parallel swath, harvesting or ploughing in the opposite direction. The adjacent swath will generally be spaced from the first swath sufficiently closely that no part of the field or crop is missed between the swaths, but also sufficiently apart so that there is not an unnecessary overlap region (i.e. a region between the swaths that gets ploughed or harvested on both passes). In general, the distance between the mid-lines of each respective swath is determined with reference to the width of the vehicle (i.e. the width of the plough, harvester or possibly the tool being towed by the vehicle).
  • In cases where paths comprising a series of parallel swaths are used, the first swath will often be used as a reference swath or “wayline”. In general, the geometry of the wayline in space will be entered into the control system along with the vehicle or implement width, and this is used to calculate the required spacing (and hence trajectory) for each of the adjacent parallel swaths. However, with most existing control systems, the controller is only able to control the steering of the vehicle as it proceeds along each of the swaths. It is much harder to control the steering of the vehicle as it turns around between one swath and the next. Therefore, whilst the spatial geometry of the respective swaths may have been calculated, from the control system's point of view at any given time it only “knows” that it is on the nth swath (numbered from the wayline) and that it has been moving along that swath for a known amount of time with known speed (i.e. it knows that the vehicle is a certain distance along the nth swath). However, at a fundamental level, the control system does not inherently know where the vehicle is consequently located in space or the spatial relationship between each swath. A graphical representation of the difference between the vehicle's actual spatial location and what the control system “sees” is given in FIG. 1.
  • The “one-dimensional” or “linear” nature of existing control systems also causes other difficulties. One example is in relation to obstacle avoidance. In most agricultural applications, the positions of obstacles (e.g. fences, trees, immovable rocks, creeks etc) are known according to their “real-world” spatial location. The spatial location may be known according to global latitude and longitude coordinates (e.g. as provided by GPS), or alternatively the location may be known relative to a fixed point of known location (this is generally a point in or near the field used to define the origin of a coordinate system for the field). However, as current control systems only recognise where the vehicle is located along the path, not where the vehicle is actually located in space, the control system itself is therefore unable to recognise whether the location of the obstacle coincides with the trajectory of the path, and hence whether there may be a collision.
  • Consequently, with current control systems, it may be necessary for a number of separate modules to be provided, in addition to the primary control module, if automatic obstacle avoidance (i.e. obstacle avoidance without the need for intervention by the driver of the vehicle) is to be achieved. In these cases, one of the modules would be a collision detection module for calculating the geometry and trajectory of a section of the path a short distance ahead of the vehicle in terms of “real world” spatial coordinates and for determining whether any of the points along that section of path will coincide with the location of an obstacle. If the collision detection module identifies that the section of path is likely to pass through an obstacle (meaning that there would be a collision if the vehicle continued along that path), then a further module may be required to determine an alternative trajectory for (at least) the section of the path proximate the obstacle. Yet a further module may then be required to determine how best to steer the vehicle from the alternative trajectory back onto the original path after the vehicle has moved past the obstacle. This multi-modular control system structure is complicated and can lead to computational inefficiencies because the different modules may each perform many of the same geometric calculations for their own respective purposes, separately from one another, leading to “doubling up” and unnecessary computation. Also, with this modular control system structure, control of the vehicle generally passes from one module to another as described above, but determining when one module should take over from another creates significant difficulties in terms of both system implementation and maintenance
  • Another problem associated with the “one-dimensional” nature of existing control systems is their inherent inflexibility and unadaptability. For example, in practice, if the vehicle deviates from the desired path for some reason, it may be preferable for subsequent paths (swaths) to also include a similarly shaped deviation so that the paths remain substantially parallel along their length (or tangentially parallel and consistently spaced in the case of curved sections of path). If the vehicle is, for example, a harvester or a plough, then keeping the paths parallel in this way may help to prevent portions of the field from being missed, or from being harvested/ploughed multiple times (by passing over the same portion of field on multiple passes). Even with the modular control system structures described above, it is often difficult to determine the geometry of the deviated path portion in terms of “real world” coordinates, and even if this can be done, it is also difficult to adjust subsequent path geometries to correspond to the deviation from the predetermined path trajectory that was originally entered.
  • As a further example of the inherent inflexibility and unadaptability of current “one-dimensional” control systems, it is illustrative to consider the situation where an obstacle is located near the end of one swath such that it would be quicker and more efficient to simply move on to an adjacent swath located nearby rather than wasting time trying to go around the obstacle to finish the first swath before moving on to the adjacent swath. Current “one-dimensional” control systems are not able to recognise that it would be more efficient to move on. This is because the control system only knows where the vehicle is along its current path (e.g. close to the end of the swath), and if a modular control systems is used, that module may also recognise that it is approaching the obstacle. The control system does not know where the vehicle is actually located in space, and therefore it cannot recognise that the beginning of the next swath is actually located nearby—it simply does not know where the next swath is (or indeed where the current swath is in space). Therefore, current control systems cannot easily recognise when it would be better to change paths (at least without intervention from the vehicle's driver), as this example illustrates. Nor is the current “one-dimensional” structure inherently adapted to enable the control systems to automatically (i.e. autonomously without assistance from the driver) determine and guide the vehicle along an efficient trajectory between swaths.
  • It will be clearly appreciated that any reference herein to background material or a prior publication is not to be understood as an admission that any background material, prior publication or combination thereof forms part of the common general knowledge in the field, or is otherwise admissible prior art, whether in Australia or any other country.
  • DESCRIPTION OF THE INVENTION
  • It is an objective of the present invention to provide a vehicle control system having an embedded spatial database that may at least partially ameliorate one or more of the above-mentioned difficulties, or which may provide a useful or commercial alternative to existing control systems.
  • Accordingly, in a first broad form the present invention resides in a vehicle control system having a controller and a spatial database adapted to provide spatial data to the controller at control speed.
  • In another broad form, the invention resides in a control system for controlling a vehicle within a region to be traversed, the control system comprising
  • a spatial database containing spatial data,
  • a controller adapted to receive spatial data from the spatial database at control speed,
  • the control system being adapted to receive spatial data from the controller and/or an external source,
  • the controller using the spatial data for controlling the vehicle.
  • In a further broad form, a control system is provided for steering a vehicle within a region to be traversed, the control system comprising
  • a spatial database containing spatial data,
  • a controller adapted to receive spatial data from the spatial database at control speed,
  • the controller being adapted to control the steering of the vehicle,
  • the spatial database being adapted to receive updated spatial data from the controller and/or an external source,
  • the updated spatial data relating to the vehicle and/or an implement associated with and proximate the vehicle and/or at least a portion of the region proximate the vehicle.
  • In agricultural applications, the region to be traversed by the vehicle will generally be the field that is to be ploughed, harvested, etc, and the invention will be described generally with reference to agricultural vehicles operating in fields. However, no limitation is meant in this regard, and the region to be traversed by the vehicle may take a range of other forms in different applications. For example, in automotive applications the region to be traversed by the vehicle might comprise roadways located in a particular geographical area. Alternatively, in mining applications the region could comprise the vehicle navigable regions of the mine. In underground mining, this could include the various levels of the mine located vertically above and below one another at different relative levels (depths). Furthermore, the control system of the present invention could be applied to vehicles that operate on airport tarmacs, in which case the region to be traversed by the vehicle might be the tarmac, or a portion thereof. From these examples, the person skilled in the art will appreciate the breadth of other applications that are possible.
  • The control system of the present invention includes a spatial database that contains spatial data. The spatial database may also be adapted to receive spatial data including updated spatial data, and to provide spatial data to other components of the control system. In general, data may be characterised as “spatial” if it has some relationship or association with “real world” geographical location, or if it is stored somehow with reference to geographical location. Some illustrative examples of the kinds of spatial data that may be stored within the database include (but are not limited to) coordinate points describing the location of an object (e.g. a rock or tree) in terms of the object's “real world” geographical location in a field, the coordinate points for a geographical location itself, information regarding a “state” of the vehicle (e.g. its speed, “pose” (position and orientation) or even fuel level) at a particular geographical location, a time when the vehicle was at a particular geographical location, or a command to the vehicle to change its trajectory or mode of equipment (e.g. plough) operation if or when it reaches a certain geographical location. These examples illustrate that any data or information that has an association with geographical location, or which is stored with reference to geographical location, can constitute “spatial data”. For the remainder of this specification, the terms “spatial data” and “spatial information” will be used interchangeably. References simply to “data” or “information” will generally also carry a similar meaning, and references simply to the “database” will be to the spatial database, unless the context requires otherwise. Typically, the spatial database is an electronic database stored in a memory device, such as, for example, a RAM, as discussed in more detail below.
  • Spatial data may be stored within the database according to any convenient coordinate system, including (but not limited to) cartesian (or projected) coordinates, polar coordinates, cylindrical coordinates, spherical coordinates, latitude/longitude/altitude etc. The coordinate system may also be “global” in the sense of the location references provided by GPS, or “local” coordinates such as those defined with respect to a local origin and reference orientation. The coordinates may or may not take into account the curvature caused by the Earth's overall spherical shape. Hence, there is no limitation as to the coordinate system that may be used with the present invention, although it is envisaged that Cartesian (x,y or x,y,z) coordinates or latitude/longitude/altitude will be used most frequently because of the way these inherently lend themselves to describing geographical location, and because of the ease with which these coordinate systems can be implemented digitally. Particularly representative embodiments may utilise the WGS84 datum which is consistent with the current GPS.
  • Those skilled in the art will know that GPS (global positioning system) is the name of the satellite based navigation system originally developed by the United States Department of Defense. GPS is now used in a wide range of applications. A number of systems also exist for increasing the accuracy of the location readings obtained using GPS receivers. Some of these systems operated by taking supplementary readings from additional satellites and using these supplementary readings to “correct” the original GPS location readings. These systems are commonly referred to as “Satellite Based Augmentation Systems” (SBAS) and some examples of SBASs are:
  • The United States'“Wide Area Augmentation System” (WAAS),
  • The European Space Agency's “European Geostationary Navigation Overlay Service” (EGNOS), and
  • The Japanese' “Multi-Functional Transportation Satellite” (MFTS).
  • A number of “Ground Based Augmentation Systems” (GBASs) also exist which help to increase the accuracy of GPS location readings by taking additional readings from beacons located at known locations on the ground. It will be understood that, throughout this specification, all references to GPS include GPS when augmented by supplementary systems such as SBASs, GBASs and the like.
  • It is explained above that the controller (which controls the vehicle) receives spatial data from the spatial database. In this way, the data received by the controller from the database forms at least part of the control inputs that the controller operates on to control the vehicle (i.e. the spatial data forms at least part of the inputs that drive the controller). The fact that the controller operates directly on information that is inherently associated with “real world” geographic location represents a change in thinking compared with existing vehicle control systems. In particular, it means that the control system of the present invention “thinks” directly in terms of spatial location. Put another way, in the control system of the present invention, control parameters are defined in geographic space rather than the space of an abstract vector. Consequently, the controller of the present invention may be considered to be inherently “multi-dimensional” or “spatial” in nature, as opposed to “one-dimensional” or “linear” like the existing control systems described in the background section above.
  • It is envisaged that at least some (and probably most) of the components of the control system, including the controller, will typically be implemented using commercially available equipment and a generally conventional control architecture. For instance, the controller may be implemented using equipment that provides memory and a central processing unit to run the one or more algorithms required to control the vehicle. Likewise, the controller (and hence the control algorithm(s)) used in the present invention may take any form suitable for controlling the steering of a vehicle. Typically, closed loop or feedback type control will be used at least in relation to some signal streams (i.e. in relation to at least some of the vehicle variables being controlled by the controller). However, open loop control may also be used, as may feed-forward control structures wherein the spatial data received by the controller from the spatial database is fed forward to form part of the control outputs used to control the vehicle. Where feedback type control is used, the control structure may incorporate combinations of proportional, integral and differential control, or a series of such (possibly nested) control loops. However, no particular limitation is meant in this regard and the person skilled in the art will appreciate that any form of suitable control and/or controller may be used.
  • The control system may also incorporate conventional signal processing and transmitting equipment, for example, for suitably filtering incoming spatial data signals, and for transmitting control signals from the controller to the vehicle's steering system to steer the vehicle. The person skilled in the art will appreciate that any suitable electric, mechanical, pneumatic or hydraulic actuators, or combinations thereof, may be used with the present invention. The actuators may be linked with the vehicle's steering and drive systems to control the steering, acceleration, deceleration etc of the vehicle in response to control signals produced by the controller. Associated equipment such as amplifiers and power sources may also be provided as required to amplify the control signals, and to power the actuators. A wide range of power sources may be used including batteries, generators, pumps etc depending on the nature of the actuator(s) and the signals to be amplified.
  • Whilst the present control system may operate using a conventional form of controller and using at least some commercially available equipment, the spatial database used to store the spatial data and to provide the spatial data to the controller may be different to other forms of databases used in other areas. In other areas (including non-control related applications such as those where data storage is the principal objective), databases often contain the vast amounts of information (in this case “information” is not used in its “spatial” sense) and the information is generally stored in complex hierarchical structures. Conceptually, these databases may be considered to be “multi-levelled” in that an initial query may return only relatively superficial level information, but this may in turn allow the user to interrogate the database more deeply to obtain more specific, linked or related information. This complex structure means that these kinds of databases can take considerable time (many seconds, minutes or even longer) to generate the appropriate output in response to a query. Those skilled in the art will appreciate that databases such as these, which take a relatively long time to return information in response to a query, may not be suitable for use in control systems such as the present which require low latencies between variable inputs and control outputs to thereby enable real-time control to be provided.
  • The spatial database used in the present invention will suitably be adapted to provide the data to the controller at control speed. In this sense, “control speed” means that the database is able to provide the information at a rate of the same order as the speed at which the controller repeats successive cycles of the control algorithm (i.e. at a rate of the same order as the “clock speed” of the controller). Ideally, the database will be adapted to provide the data to the controller, and perhaps also receive data from the controller and/or external sources, at every successive cycle of the control algorithm (i.e. at the controller's clock speed). However, in some embodiments it may be sufficient for the database to be adapted to provide (and perhaps receive) data at less than, but close to, the controller's clock speed (for example, at every second or third successive cycle of the control algorithm), provided that the rate is fast enough to provide the controller with sufficiently up-to-date spatial information to achieve adequate vehicle control performance. In cases where the controller operates at different clock speeds for different data signal streams, the database may be adapted to provide data at a rate of the same order as one of those controller clock speeds. In any event, the database should provide data to the controller at a rate commensurate with the control loop bandwidth.
  • In practice, it is envisaged that the database may be adapted to provide data to the controller at a rate of between 1 Hz and 100 Hz. Given the speeds that vehicles such as agricultural vehicles typically move at (generally less than 60 km/hr or 37.3 miles/hr), rates between 1 Hz and 20 Hz will almost always be sufficient, and even rates between 3 Hz and 12 Hz may be sufficient for vehicles moving at significantly less than 60 km/hr. Nevertheless, those skilled in the art will recognise that the necessary or achievable rates may vary depending on the level of control precision and performance required in different applications, the speed at which the vehicle in question moves, and the capabilities of the available equipment used to implement the control system.
  • Those skilled in the art will appreciate that because the spatial database used in the present invention can provide spatial data to the controller at control speed, and therefore forms part of the system's overall configuration, the spatial database may be considered to be “embedded” within the control system, rather than external to it. This is particularly so in embodiments where feedback type control is used, and the spatial database forms part of the system's overall closed loop structure (i.e. in embodiments where the spatial database forms part of the loop).
  • In order for the database to be able to provide (and, if desired, also receive) data at the required rates, the form of the database should allow the required rapid database access and response times. Ideally, the database and all of the data that it contains will be loaded into the control system's memory (i.e. loaded into RAM). This way, the data will be directly accessible by the controller's CPU (central processing unit), rather than requiring a query to be sent to a remote disk or storage device containing the data, the response to which would then need to be loaded into RAM before being accessible by the CPU. However, it is possible that the database could be located on a separate disk or other storage device, particularly if the device is capable of retrieving data in response to a query with sufficient speed such as, for example, a disk device with RAM read/write cache.
  • It is envisaged that the amount of memory required to store the spatial data relating to a particular field to be traversed by the vehicle may be in the order of megabytes. By way of example (given for illustrative purposes only), consider a straight wayline that is 1 km long and which has 500 parallel swaths of corresponding length. If the database is designed to incorporate information pertaining to locations every 2 m along each of the 500 swaths, this corresponds to 501.times.500=250,500 locations. When the data is structured within the database in the manner described further below, this may correspond to approximately 4 MB of memory required to store the coordinates of each point. However, it is also envisaged that as the nature and complexity of the data required to be stored in the database increases, the required amount of memory may increase to hundreds of megabytes or gigabytes. Devices which provide this amount of memory are (or are at least becoming) commercially available.
  • The speed of the database may be assisted by the way in which the data is arranged (i.e. stored) within the database. A wide range of methods and algorithms are known for arranging data (i.e. for assigning appropriate “indices” and the corresponding memory allocations to individual items of data) within databases, and the particular method chosen depends on the nature of the data, and the way and speed with which the database is to respond to a query. For the complex hierarchical “multi-levelled” databases described above, the data should be arranged so as to enable the database to collate and deliver all relevant information relating to a complex query. However, as explained above, the requirement for those databases to be able to process complex queries leads to potentially long lag times which may be undesirable in the context of vehicle control applications. Therefore, the spatial database used in the present invention can store data in a “single-level” or “flat” structure according to the geographical location that particular items of data relate to.
  • Some algorithms which could be used to arrange the spatial data within the database include the algorithms commonly referred to by the names “Grid-indexing”, “Quadtree” or “R-tree”. However, in other embodiments of the invention data may be arranged within the database using a form of algorithm that will be referred to as a “spatial hash-key” algorithm. A spatial hash-key algorithm maps physical locations (based on their “real world” coordinates) into one-dimensional “hash-keys”. The “hash-key” for each location is a string of characters that can be stored in the database's hash table and retrieved in response to a query.
  • Properties of the spatial hash-key algorithm may include:
  • points which are close to each other in the real world should have closely related hash keys (i.e. the algorithm should maintain “locality”), the algorithm should operate using whatever coordinate system the control system uses to represent the region,
  • the algorithm should be adapted for digital implementation (hence, it should be adapted to operate using integer or floating-point numbers, preferably with 64-bit “double” precision or better)
  • the algorithm should be fast to compute.
  • It is explained above that the control system of the present invention, and ideally the spatial database, may be adapted to receive updated data from the controller and/or an external source. The spatial database can be adapted to receive the updated information at control speed. Data received from the controller may include or may be used to generate, for example, estimates of the vehicle's predicted state (i.e. its speed, position, orientation etc) at an upcoming location based on its current instantaneous state at a particular location. The external sources may include GPS, INS, or any other inertial, visual or other system used for obtaining information relating to the state of the vehicle or other aspects of the region (such as obstacles close to the vehicle). Data received in this way may be (at least initially) recorded in its unprocessed or “raw” form in the database. This unprocessed data may be fed directly back into the controller, or the respective streams of incoming data (possibly relating to disparate variables) may be filtered using a Kalman filter or some other similar digital signal processing technique to obtain a statistically optimised estimate of the state of the vehicle and its proximate surroundings as it travels. This optimised estimate of the vehicle's state at a particular location may then be fed into the controller. The use of statistically optimised estimates and data may help to improve control performance.
  • According to a further broad form, the invention resides in a closed loop vehicle control system comprising
  • a spatial database,
  • a controller adapted to receive spatial data from the spatial database at control speed, the controller controlling the steering of the vehicle,
  • wherein updated spatial data is fed back into the control system.
  • In yet another broad form, the invention resides in a method for controlling a vehicle comprising
  • entering spatial data relating to a region to be traversed by the vehicle into a spatial database,
  • providing spatial data from the spatial database to a controller at control speed to control the vehicle as the vehicle traverses the region, and
  • entering updated spatial data into the spatial database as the vehicle traverses the region.
  • In yet a further broad form, the invention resides in a vehicle control system comprising
  • a spatial database,
  • a controller adapted to receive spatial data from the spatial database,
  • the controller using the spatial data from the spatial database to control the steering of the vehicle.
  • It will be appreciated that all preferred features and aspects of the invention described with particular reference to one or other broad form of the invention, may also apply equally to all other forms of the invention, unless the context dictates otherwise.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Certain embodiments, aspects and features of the invention will now be described and explained by way of example and with reference to the drawings. However, it will be clearly appreciated that these descriptions and examples are provided to assist in understanding the invention only, and the invention is not limited to or by any of the embodiments, aspects or features described or exemplified.
  • FIG. 1 schematically represents the difference between the vehicle's actual spatial location and what is “seen” by existing forms of “one-dimensional” controllers such as those described in the background section above,
  • FIG. 2 is a pictorial representation of an agricultural vehicle having a control system in accordance with one particular embodiment of the present invention,
  • FIG. 3 illustrates the physical meaning of certain parameters controlled by some versions of the present control system, namely the “cross-track error”, the “heading error” and the “curvature error”,
  • FIG. 4 is a schematic “block-diagram” representation of an overall control system structure that may be used in representative embodiments of the present invention,
  • FIG. 5 is a schematic representation of the “controller” block that may be used in representative embodiments such as that shown in FIG. 4,
  • FIG. 6 is a further schematic “block-diagram” representation of an overall control system structure that may be used with alternative representative embodiments of the invention which incorporate additional features not shown in FIG. 4.
  • FIG. 7 is a block diagram representation of the state space representation used in the digital implementation of certain aspects of the control system.
  • FIG. 8 shows an example trajectory of an agricultural vehicle, and the coordinates corresponding to different points along the trajectory using a simplified integer based coordinate system.
  • FIG. 9 shows a similar example trajectory of an agricultural vehicle to that shown in FIG. 8, except that the coordinate system is similar in format to the WGS84 coordinate used by current GPS.
  • FIG. 10 illustrates the way in which numbers are represented in the IEEE 754 standard double-precision floating-point format, and
  • FIG. 11 is a “flow-diagram” illustrating the way a particularly preferred spatial hash algorithm may be used to generate hash keys for the coordinates in FIG. 9.
  • BEST MODE
  • As described in the background section above, one of the problems with existing vehicle control systems is that they are inherently “one-dimensional” or “linear” in nature. The inherent “linear” nature of existing control systems is illustrated schematically in FIG. 1. Whilst the “real world” spatial geometry of the respective swaths shown on the left in FIG. 1 may have been calculated, nevertheless from the control system's point of view at any given time the controller only “knows” that the vehicle is on the nth swath and that it has been moving along that swath for a known amount of time with known speed. Hence, at a fundamental level, the controller does not inherently know where the vehicle is located in space. This is represented graphically in FIG. 1.
  • Next, FIG. 2 shows an agricultural vehicle 1 having a control system in accordance with one embodiment of the present invention. In FIG. 2, the agricultural vehicle 1 is a tractor towing an implement 2. The implement 2 could be a plough, harvester, seed sower, leveller, agricultural chemical applicator/dispenser or any other kind of agricultural implement. Furthermore, the embodiment of the invention shown in FIG. 2 could equally be applied on other kinds of vehicles operating in other areas, for example cars, mine-trucks, airport tarmac vehicles, etc.
  • The components of the control system in the particular embodiment shown in FIG. 2 include a main control unit 3, a GPS antenna 4 and actuators 5. The main control unit 3 houses the spatial database and also the electronic hardware used to implement the controller. The main control unit 3 may be an industrial computer (for example an industrial PC) capable of running other applications in addition to the vehicle control system. Alternatively, the main control unit 3 may be a purpose-built unit containing only the hardware required to run the controller, the spatial database and the other components of the vehicle control system.
  • The main control unit 3 receives GPS signals from the GPS antenna 4, and it uses these (typically in combination with feedback and/or other external spatial data signals) to generate a control signal for steering the vehicle. The control signal will typically be made up of a number of components or streams of data relating to the different parameters of the vehicle being controlled, for example the vehicle's “cross-track error”, “heading error”, “curvature error”, etc. These parameters will be described further below. The control signal is amplified using suitable signal amplifiers (not shown) to create a signal that is sufficiently strong to drive the actuators 5. The actuators 5 are interconnected with the vehicle's steering mechanism (not shown) such that the actuators operate to steer the vehicle as directed by the control signal.
  • In some embodiments, further actuators (not shown) may also be provided which are interconnected with the vehicle's accelerator and/or braking mechanisms, and the control signal may incorporate components or signal streams relating to the vehicle's forward progress (i.e. its forward speed, acceleration, deceleration etc). In these embodiments, the component(s) of the control signal relating to the vehicle's forward progress may also be amplified by amplifiers (not shown) sufficiently to cause the actuators which are interconnected with the accelerator/braking mechanism to control the vehicle's acceleration/deceleration in response to the control signal.
  • The vehicle 1 may also be optionally provided with one or more visual sensors 6, one or more inertial sensors 7 and a user terminal 8. One form of visual sensor 6 that may be used may operate by receiving images of the ground beneath the vehicle, preferably in rapid succession, and correlating the data pertaining to respective successive images to obtain information relating to the vehicle's motion. Other forms of visual sensor may also be used including LIDAR (Light Detection and Ranging) or sensors which operate using machine vision and/or image analysis. If present, the one or more inertial sensors 7 will typically include at least one gyroscope (e.g. a rate gyroscope), although the inertial sensors 7 could also comprise a number of sensors and components (such as accelerometers, tilt sensors and the like) which together form a sophisticated inertial navigation system (INS). The vehicle may be further provided with additional sensors (not shown) such as sensors which receive information regarding the location of the vehicle relative to a fixed point of known location in or near the field, magnetometers, ultrasonic range and direction finding and the like. The data generated by these additional sensors may be fed into the database and used by the control system to control the vehicle as described below.
  • In embodiments where the main control unit 3 comprises an industrial PC or the like, the user terminal 8 may comprise a full computer keyboard and separate screen to enable the user to utilise the full functionality of the computer. However, in embodiments where the main control unit is a purpose-built unit containing only hardware relating to the vehicle's control system, the terminal 8 may comprise, for example, a single combined unit having a display and such controls as may be necessary for the user to operate the vehicle's control system. Any kind of controls known by those skilled in this area to be suitable may be used on the main control unit, including keypads, joysticks, touch screens and the like.
  • In FIG. 2, the user terminal 8 is positioned in the vehicle cabin so that it can be operated by the driver as the vehicle moves. However, those skilled in the art will recognise that the present control system could also be operated by wireless remote control, meaning that the user terminal 8 could alternatively be totally separate from the vehicle and could operate the vehicle's control system from a remote location. It is also envisaged that a single remote user terminal 8 may be used to wirelessly interface with the control systems of multiple vehicles (possibly simultaneously) so that the user can control multiple moving vehicles from the one remote terminal.
  • In order to control the steering of the vehicle, there are three parameters that should be controlled. These are the “cross-track error”, the “heading error” and the “curvature error”. The physical meaning of these parameters can be understood with reference to FIG. 3. The “cross-track error” is the lateral difference between the vehicle's actual position, and its desired position. This is illustrated by the “{” bracket in FIG. 3. The “heading error” is the difference between the vehicle's actual instantaneous direction of motion h (i.e. its actual compass heading), and its desired instantaneous direction of motion H. The heading error is given by:

  • Heading Error=H−h
  • Those skilled in the art will recognise that both h and H are inherently directional quantities.
  • Finally, the “curvature error” is the difference between the actual instantaneous radius of curvature r of the vehicle's motion and the desired instantaneous radius of curvature R. The curvature error is given by:

  • Curvature Error=1/R− 1/r
  • It will also be clearly appreciated that there may be many other vehicle variables or parameters which also need to be controlled if, for example, acceleration/deceleration or the vehicle's mode of equipment operation are also to be controlled.
  • Referring next to FIG. 4, it can be seen that a vehicle control system in accordance with one particular embodiment of the invention comprises:
  • a task path generator,
  • a spatial database,
  • at least one external spatial data source,
  • a vehicle attitude compensation module,
  • a position error generator,
  • a controller, and
  • actuators to control (steer) the vehicle.
  • In the overall operation of the control system, the desired path trajectory for the vehicle is first entered into the control system by the user via the user terminal 8. The task path generator then interprets this user-defined path definition and converts it into a series of points of sufficient spatial density to adequately represent the desired path to the requisite level of precision. The task path generator typically also defines the vehicle's desired trajectory along the user-defined path, for example, by generating a desired vehicle position, a desired heading H and a desired instantaneous radius of curvature R for each point on the path. This information is then loaded into the spatial database. The way in which this and other spatial information is stored within the database in representative embodiments, and in particular the way in which pieces of data are given memory allocations according to their spatial location, is described further below.
  • As the vehicle moves along the user-defined path, it will invariably experience various perturbations in its position and orientation due to, for example, bumps, potholes, subsidence beneath the vehicle's wheels, vehicle wheel-spin, over/under-steer etc. Those skilled in this area will recognise that a huge range of other similar factors can also influence the instantaneous position and orientation of the vehicle as it moves. One of the purposes of the present control system is to automatically correct for these perturbations in position and orientation to maintain the vehicle on the desired path (or as close to it as possible).
  • As the vehicle moves, the control system progressively receives updated information regarding spatial location from the external spatial data sources. The external spatial data sources will typically include GPS. However, a range of other spatial data sources may also be used in addition to, or in substitute for GPS. For example, the inertial navigation systems (INS), visual navigation systems etc described above may also be used as external data sources in the present control system.
  • Those skilled in the art will recognise that the spatial data collected by the external spatial data sources actually pertains to the specific location of the external spatial data receivers, not necessarily the vehicle/implement reference location itself (which is what is controlled by the control system). In FIG. 2, the reference location is on the vehicle 1 and is indicated by the intersection (i.e. the origin) of the roll, pitch and yaw axes. In other embodiments, the reference location may be located elsewhere on the vehicle, or on the implement 2 etc. In any event, to illustrate this point, it will be seen that the GPS antenna 4 in FIG. 2 is located on the roof of the vehicle some distance from the vehicle's reference point. Therefore, the spatial data collected by the GPS antenna actually relates to the instantaneous location of the vehicle's roof, not the location of the vehicle's reference point. Likewise, the spatial data collected by the visual sensor 6 actually pertains to the particular location of the visual sensor (slightly out in front of the vehicle in FIG. 2).
  • In addition to this, changes in the vehicle's attitude will also influence the spatial position readings received by the different receivers. For example, if one of the vehicle's wheels passes over, or is pushed sideways by a bump, this may cause the vehicle to rotate about at least one (and possibly two or three) of the axes shown in FIG. 2. This will in turn change the relative position of the spatial data receiver(s) such as GPS antenna 4 with respect to the reference location on the vehicle or implement. This can be used (typically in combination with other sources of external spatial data or “feedback” data) to determine the orientation of the vehicle. The orientation of the vehicle may be considered to be the relative orientation of the vehicle's axes in space.
  • In order to compensate for the difference in position between the vehicle's reference point and the location of the spatial data receiver(s), and also to account for changes in the vehicle's orientation, a vehicle attitude compensation module is provided. This is shown in FIG. 4. The vehicle attitude compensation module converts all readings taken by the various spatial data receivers (which relate to the different specific locations of the receivers) into readings pertaining to the spatial location and orientation of the vehicle's reference point. This data pertaining to the spatial location and orientation of the vehicle's reference point is then fed into the spatial database.
  • Those skilled in the art will recognise that the one or more external spatial data sources will progressively receive updated data readings in rapid succession (e.g. in “real time” or as close as possible to it). These readings are then converted by the vehicle attitude compensation module and fed into the spatial database. The readings may also be filtered as described above. Therefore, whilst each reading from each spatial data source is received, converted (ideally filtered) and entered into the spatial database individually, nevertheless the rapid successive way in which these readings (possibly from multiple “parallel” data sources) are received, converted and entered effectively creates a “stream” of incoming spatial data pertaining to the vehicle's continuously changing instantaneous location and orientation. In order to provide sufficient bandwidth, successive readings from each external spatial data source should be received and converted with a frequency of the same order as the clock speed (or at least one of the clock speeds) of the controller, typically 3 Hz-12 Hz or higher.
  • Referring again to FIG. 4, the position error generator next receives information from the spatial database. The information it receives from the database includes:
  • the vehicle's desired position, heading H and instantaneous radius of curvature R. It will be recalled that this information is originally generated by the task path generator and then entered into the spatial database, based on the user-defined path trajectory.
  • And the vehicle's actual position, heading h and instantaneous radius of curvature r.
  • This information is based on spatial data progressively received from the external spatial data sources as described above, and typically also on data received through feedback.
  • The position error generator then uses this information to calculate an instantaneous “error term” for the vehicle. The “error term” incorporates the vehicle's instantaneous cross-track error, heading error and curvature error (as described above). The error term is then fed into the controller. The controller is shown in greater detail in FIG. 5.
  • From FIG. 5 it can be seen that the controller incorporates a cross-track error PID controller, a heading error PID controller and a curvature error PID controller. The PID controllers used with the present invention are of a conventional form that will be well understood by those skilled in this area and need not be described in detail. The output from the cross-track error, heading error and curvature error PID controllers then passes through a curvature demand signal integrator. The output from the PID controllers is therefore integrated in order to generate a curvature demand signal. This curvature demand signal is thus the “control signal” which is amplified by amplifiers (not shown) before proceeding to drive the actuators as required. In other words, the signal obtained by integrating the output from the PID controllers is amplified and sent to the actuators in the form of a curvature demand to change the vehicle's steering angle and hence steer the vehicle back onto the desired path. Finally, the change in vehicle pose etc caused by the control driven change in steering angle is registered via the updated information received through the external data sources (GPS etc) and the vehicle's new position, heading and instantaneous radius of curvature are re-entered into the spatial database to complete control system's overall closed loop control structure. It will be noted that the arrows extending from the actuators/steering mechanism to the external data sources in FIG. 4 are dashed rather than solid lines. This is to indicate that, whilst there is no actual control signal or other data flow from the actuators/steering mechanism to the external data sources, there is nevertheless a causal link between the change in vehicle pose etc caused by the control driven change in steering angle and the updated information received through the external data sources.
  • In FIG. 6, there is shown a slightly more elaborate embodiment of the control system.
  • The embodiment shown in FIG. 6 is generally the same as that shown in FIG. 4, except that the embodiment in FIG. 6 incorporates an optimising filter and an external obstacle detection input. The optimising filter can operate to statistically optimise at least some of the spatial data contained in the spatial data base. Also, the filter will generally operate as an “observer”, meaning that it does not form part of the control loop. Rather, the filter will typically reside outside the control loop and it will generally operate by taking data directly from the database and returning optimise data directly into the database, as shown in FIG. 6. More specifically, the filter will take the updated “feedback” data that re-enters the database from the control loop (described above) together with the updated spatial data obtained from the external spatial data sources (after it has been processed by the vehicle attitude compensation module) and it will then use these disparate streams of data to calculate a statistically optimised updated estimate of, for example, the vehicle's instantaneous position, heading and radius of curvature. The filter will typically comprise a Kalman filter.
  • The external obstacle detection input may comprise any form of vision based, sound based or other obstacle detection means, and the obstacle detection data may be converted by the vehicle attitude compensation module (just like the other sources of external data discussed above) and then fed into the spatial database. Where the control system incorporates obstacle detection, it is then necessary for the task path generator to be able to receive updated information from the spatial database. This is so that if an obstacle is detected on the desired path, an alternative path that avoids the obstacle can be calculated by the task path generator and re-entered into the database. The ability of the task path generator to also receive data from the spatial database is indicated by the additional arrow from the spatial database to the task path generator in FIG. 6.
  • FIGS. 4-6 graphically represent the operation of the control system. However, it is also useful to consider the way in which the vehicle's parameters and dynamics are represented for the purposes of implementing the control system. Those skilled in the art will recognise that a range of methods may be used for this purpose. However, it is considered that one method is to represent the parameters and dynamics in “state space” form.
  • In state space representations, the variables or parameters used to mathematically model the motion of the vehicle, or aspects of its operation, are referred to as “states” xi. In the present case, the states may include the vehicle's position (x,y), velocity
  • ( x t , y t )
  • heading h, radius of curvature r etc. Hence the states may include xi=x, x2=y, x3=h, x4=h,
  • x 5 = x t = dx 1 t , x 6 = y t = x 2 t
  • Etc. However, it will be appreciated that the choice of states is never unique, and the meaning and implications of this will be well understood by those skilled in the art.
  • The values for the individual states at a given time are represented as the individual entries in an n×1 “state vector”:

  • X(t)=[x 1(t)x 2(t)x 3(t)x 4(t) . . . x n(t)]T
  • where n is the number of states.
  • In general, the mathematical model used to model the vehicle's motion and aspects of its operation will comprise a series of differential equations. The number of equations will be the same as the number of states. In some cases, the differential equations will be linear in terms of the states, whereas in other situations the equations may be nonlinear in which case they must generally be “linearised” about a point in the “state space”. Linearisation techniques that may be used to do this will be well known to those skilled in this area.
  • Next, by noting that any jth order linear differential equations can be re-written equivalently as a set j first order linear differential equations, the linear (or linearised) equations that represent the model can be expressed using the following “state” equation:
  • t ( X _ ( t ) ) = A X _ ( t ) + B U _ ( t ) + E w _ ( t )
  • where:
  • A is an n×n matrix linking the state time derivatives to the states themselves,
  • U(t) is an m×1 matrix containing the external “forcing” inputs in the mathematical model,
  • B is an n×m matrix linking the state derivatives to the inputs,
  • m is the number of inputs,
  • Ew(t) is a quantity (represented by an n×1 vector) called the “process noise”.
  • The process noise represents errors in the model and vehicle dynamics which exist in the actual vehicle but which are not accounted for in the model. As Ew(t) represents an unknown quantity, its contents are not known. However, for reasons that will be understood by those skilled in this area, in order to allow statistically optimised signal processing and state estimation Ew(t) is generally assumed to be Gaussian, white, have zero mean and to act directly on the state derivatives. It is also assumed that the process noise element associated with each individual state is uncorrelated with the process noise element of the other states.
  • The quantities that are desired to be known about the vehicle (the real values for which are generally also measured from the vehicle itself, if possible) are the outputs y1 from the model. Each of the outputs generated by the linear (or linearised) model comprises a linear combination of the states x, and inputs ui, and so the outputs can be defined by the “output” or “measurement” equation:

  • Y(t)=CX(t)+DU(t)Mv(t)
  • Where C is a j×n matrix linking the outputs to the states,
  • D is a j×m matrix linking the outputs to the inputs,
  • j is the number of outputs, and
  • Mv(t) is a quantity (represented by an n×1 vector) called the “measurement noise”.
  • The measurement noise represents errors and noise that invariably exist in measurements taken from the actual vehicle. Like Ew(t) above, Mv(t) is assumed to be Gaussian, white, have zero mean, to act directly on the state derivatives and to be uncorrelated with the process noise or itself.
  • Next, it will be noted that both the state equation and the measurement equation defined above are continuous functions of time. However, continuous time functions do not often lend themselves to easy digital implementation (such as will generally be required in implementing the present invention) because digital control systems generally operate as recursively repeating algorithms. Therefore, for the purpose of implementing the equations digitally, the continuous time equations may be converted into the following recursive discrete time equations by making the substitutions set out below and noting that (according to the principle of superposition) the overall response of a linear system is the sum of the free (unforced) response of that system and the responses of that system due to forcing/driving inputs. The recursive discrete time equations are:

  • X k+1= FX k+ GU k+1+ Lw k+1

  • Y k+1= ZX k+ JU k+1+ Nv k+1
  • where k+1 is the time step occurring immediately after time step k,
  • Z=C, J=D and Nv is the discrete time analog of the continuous time measurement noise Mv(t).
  • F is a transition matrix which governs the free response of the system. F is given by:

  • F=eAδ
  • GU.sub.k+1 is the forced response of the system, i.e. the system's response due to the driving inputs. It is defined by the convolution integral as follows:

  • GU k+1=0 Δt e A(Δt−τ)dt
  • Similarly, the quantity Lw.sub.k+1 is the (forced) response of the system due to the random “error” inputs that make up the process noise. Hence, conceptually this quantity may be defined as:

  • Lw k+1=0 Δt e A(Δt−τ)dt E w(t k+1+τ)dt
  • However, as noted above, the quantity Ew(t) is not deterministic and so the integral defining Lw.sub.k+1 cannot be performed (even numerically). It is for this reason that it is preferable to use statistical filtering techniquτes such as a “Kalman Filter” to statistically optimise the states estimated by the mathematical model.
  • In general, a “Kalman Filter” operates as a “predictor-corrector” algorithm. Hence, the algorithm operates by first using the mathematical model to “predict” the value of each of the states at time step k+1 based on the known inputs at time step k+1 and the known value of the states from the previous time step k. It then “corrects” the predicted value using actual measurements taken from the vehicle at time step k+1 and the optimised statistical properties of the model. In summary, the Kalman Filter comprises the following equations each of which is computed in the following order for each time step:
  • X _ k + 1 k = F X _ k k + G U _ k + 1 P k + 1 k = FP k k F T + Q K k + 1 = P k + 1 k Z T ( ZP k + 1 k Z T + R ) - 1 Y _ k + 1 = Z X _ k + 1 k + J U _ k + 1 v _ k + 1 = Y _ ^ k + 1 - Y _ k + 1 } predictor X _ k + 1 k + 1 = X _ k + 1 k + K k + 1 v k + 1 P k + 1 k + 1 = ( I - K k + 1 Z ) P k + 1 k } corrector
  • where the notation k+1|k means the value of the quantity in question at time step k+1 given information from time step k. Similarly, k+1|k+1 means the value of the quantity at time step k+1 given updated information from time step k+1. [0135]P is the co-variance in the difference between the estimated and actual value of X. [0136]Q is the co-variance in the process noise. [0137]K is the “Kalman gain” which is a matrix of computed coefficients used to optimally “correct” the initial state estimate. [0138]R is the co-variance in the measurement noise. [0139] is a vector containing measurement values taken from the actual vehicle.
  • is a quantity called the “innovation” which is the difference between the measured values actually taken from the vehicle and values for the corresponding quantities estimated by the model.
  • The operation of the discrete time state space equations outlined above, including the Kalman gain and the overall feedback closed loop control structure, are represented graphically in FIG. 7.
  • In relation to the spatial database, it is mentioned above that a wide range of methods are known for arranging data within databases. One commonly used technique is to provide a “hash table”. The hash table typically operates as a form of index allowing the computer (in this case the control system CPU) to “look up” a particular piece of data in the database (i.e. to look up the location of that piece of data in memory). In the context of the present invention, pieces of data pertaining to particular locations along the vehicle's path are assigned different hash keys based on the spatial location to which they relate. The hash table then lists a corresponding memory location for each hash key. Thus, the CPU is able to “look up” data pertaining to a particular location by looking up the hash key for that location in the hash table which then gives the corresponding location for the particular piece of data in memory. In order to increase the speed with which these queries can be carried out, the hash keys for different pieces of spatial data can be assigned in such a way that “locality” is maintained. In other words, points which are close to each other in the real world should be given closely related indices in the hash table (i.e. closely related hash keys).
  • The spatial hash algorithm used to generate hash keys for different spatial locations in representative embodiments of the present invention may be most easily explained by way of a series of examples. To begin, it is useful to consider the hypothetical vehicle path trajectory shown in FIG. 8. In FIG. 8, the successive points which define the path are described by a simplified integer based (X,Y) coordinate system. Hence, in FIG. 8, the vehicle moves in the X direction along the entire length of the first swath from (0,0) to (4,0), before moving up in the Y direction to then move back along the second swath in the opposite direction from (4,1) to (0,1), etc.
  • As outlined above, in the present invention all data is stored within the spatial database with reference to spatial location. Therefore, it is necessary to assign indices or “hash keys” to each piece of data based on the spatial location to which each said piece of data relates. However, it will be recalled that the hash table must operate by listing the hash key for each particular spatial location together with the corresponding memory location for data pertaining to that spatial location. Therefore, the hash table is inherently one-dimensional, and yet it must be used to link hash keys to corresponding memory allocations for data that inherently pertains to two-dimensional space.
  • One simple way of overcoming this problem would be to simply assign hash keys to each spatial location based only on, say, the Y coordinate at each location. The hash keys generated in this way for each point on the vehicle path in FIG. 8 are given in Table 1 below.
  • TABLE 1
    Spatial Hash Key Generated Using Only the Y Coordinate
    (X, Y) Hash key (X, Y) Hash key
    coor- (hexa- Hash key coor- (hexa- Hash key
    dinates decimal) (decimal) dinates decimal) (decimal)
    (0, 0) 0 × 0 0 (3, 2) 0 × 2 2
    (1, 0) 0 × 0 0 (4, 2) 0 × 2 2
    (2, 0) 0 × 0 0 (0, 3) 0 × 3 3
    (3, 0) 0 × 0 0 (1, 3) 0 × 3 3
    (4, 0) 0 × 0 0 (2, 3) 0 × 3 3
    (0, 1) 0 × 1 1 (3, 3) 0 × 3 3
    (1, 1) 0 × 1 1 (4, 3) 0 × 3 3
    (2, 1) 0 × 1 1 (0, 4) 0 × 4 4
    (3, 1) 0 × 1 1 (1, 4) 0 × 4 4
    (4, 1) 0 × 1 1 (2, 4) 0 × 4 4
    (0, 2) 0 × 2 2 (3, 4) 0 × 4 4
    (1, 2) 0 × 2 2 (4, 4) 0 × 4 4
    (2, 2) 0 × 2 2
  • The prefix “0x” indicates that the numbers in question are expressed in hexadecimal format. This is a conventional notation.
  • Those skilled in the art will recognise that the above method for generating hash keys is far from optimal because there are five distinct spatial locations assigned to each different hash key. Furthermore, in many instances, this method assigns the same hash key to spatial locations which are physically remote from each other. For instance, the point (0,1) is distant from the point (4,1), and yet both locations are assigned the same hash key. An identically ineffective result would be obtained by generating a hash key based on only the X coordinate.
  • An alternative method would be to generate hash keys by concatenating the X and Y coordinates for each location. The hash keys generated using this method for each point on the vehicle path in FIG. 8 are given in Table 2 below.
  • TABLE 2
    Hash Keys Generated by Concatenating the X and Y Coordinates
    (X, Y) Hash key (X, Y) Hash key
    coor- (hexa- Hash key coor- (hexa- Hash key
    dinates decimal) (decimal) dinates decimal) (decimal)
    (0, 0) 0 × 0  0 (3, 2) 0 × 302 770
    (1, 0) 0 × 100 256 (4, 2) 0 × 402 1026
    (2, 0) 0 × 200 512 (0, 3) 0 × 3  3
  • In order to understand how the numbers listed in Table 2 above were arrived at, it is necessary to recognise that in the digital implementation of the present control system, all coordinates will be represented in binary. For the purposes of the present example which relates to the simplified integer based coordinate system in FIG. 8, a simplified 8-bit binary representation has been used.
  • Hence, to illustrate the operation of the spatial hash key algorithm used to generate the numbers in Table 2, consider the point (3,3). Those skilled in the art will understand that the decimal number 3 may be written as 11 in binary notation. Therefore, the location (3,3) may be rewritten in 8-bit binary array notation as (00000011,00000011). Concatenating these binary coordinates then gives the single 16-bit binary hash key 0000001100000011 which can equivalently be written as the hexadecimal number 0x303 or the decimal number 771. The process of converting between decimal, binary and hexadecimal representations should be well known to those skilled in the art and need not be explained.
  • It will be noted from Table 2 above that concatenating the X and Y coordinates leads to unique hash keys (in this example) for each spatial location. However, the hash keys generated in this way are still somewhat sub-optimal because points which are located close to each other are often assigned vastly differing hash keys. For example, consider the points (0,0) and (1,0). These are adjacent point in the “real world”. However, the hash keys assigned to these points using this method (written in decimal notation) are 0 and 256 respectively. In contrast, the point (0,4) is much further away from (0,0) and yet it is assigned the much closer hash key 4. Therefore, this algorithm does not maintain “locality”, and an alternative algorithm would be preferable.
  • Yet a further method for generating hash keys is to use a technique which shall hereinafter be referred to as “bitwise interleaving”. As for the previous example, the first step in this technique is to represent the (X,Y) coordinates in binary form. Hence, using the 8-bit binary array representation discussed above, the point (X,Y) may be re-written in 8-bit binary array notation as (X1X2X3X4X5X6X7X8, Y1Y2Y3Y4Y5Y6Y7Y8). Next, rather than concatenating the X and Y coordinates to arrive at a single 16-bit binary hash key, the successive bits from the X and Y binary coordinates are alternatingly “interleaved” to give the following 16-bit binary hash key X1Y1X2Y2X3Y3X4Y4X5Y5X6Y6X7YX8Y8. The hash keys generated using this method for each point on the vehicle path in FIG. 8 are given in Table 3 below.
  • TABLE 3
    Hash Keys Generated by “Bitwise Interleaving” the
    X and Y Coordinates (X, Y)
    (X, Y) Hash key (X, Y) Hash key
    coor- (hexa- Hash key coor- (hexa- Hash key
    dinates decimal) (decimal) dinates decimal) (decimal)
    (0, 0) 0 × 0 0 (3, 2) 0 × e 14
    (1, 0) 0 × 2 2 (4, 2)  0 × 24 36
    (2, 0) 0 × 8 8 (0, 3) 0 × 5 5
    (3, 0) 0 × a 10 (1, 3) 0 × 6 7
    (4, 0)  0 × 20 32 (2, 3) 0 × d 13
    (0, 1) 0 × 1 1 (3, 3) 0 × f 15
    (1, 1) 0 × 3 3 (4, 3)  0 × 25 37
    (2, 1) 0 × 9 9 (0, 4)  0 × 10 16
    (3, 1) 0 × b 11 (1, 4)  0 × 12 18
    (4, 1)  0 × 21 33 (2, 4)  0 × 18 24
    (0, 2) 0 × 4 4 (3, 4)  0 × 1a 26
    (1, 2) 0 × 6 6 (4, 4)  0 × 30 48
    (2, 2) 0 × e 12
  • To further illustrate the operation of the spatial hash algorithm used to generate the numbers in Table 3, consider the point (3,4). As noted above, the decimal number 3 may be written as 11 in binary notation. Similarly, decimal number 4 is written as 100 in binary. Therefore, the location (3,4) may be rewritten in 8-bit binary array notation as (00000011,00000100). Bitwise interleaving these binary coordinates then gives the single 16-bit binary hash key 0000000000011010, which can equivalently be written as the hexadecimal number 0x1a or the decimal number 26.
  • From Table 3 it will be seen that generating hash keys by “bitwise interleaving” the X and Y coordinates leads to unique hash keys (in this example) for each spatial location. Also, the hash keys generated in this way satisfy the requirement that points which are close together in the real world are assigned closely related hash keys. For example, consider again the points (0,0) and (1,0). The hash keys now assigned to these points by “bitwise interleaving” (when written in decimal notation) are 0 and 2 respectively. Furthermore, the point (0,1) which is also nearby is also assigned the closely related hash key 1. Conversely, points which are separated by a considerable distance in the real world are given considerably differing hash keys, for example, the hash key for (4,3) is 37.
  • From the example described with reference to Table 3, it can be seen that generating hash keys by “bitwise interleaving” the binary X and Y coordinates preserves “locality”. This example therefore conceptually illustrates the operation of the bitwise interleaving spatial hash algorithm that may be used with representative embodiments of the present invention. However, the above example is based on the simplified integer based coordinate system shown in FIG. 8. In order to understand the actual algorithm that may be used in the implementation of the present control system, it is necessary to take into account certain other complexities. These complexities include:
  • The fact that GPS and other similar systems which describe spatial location typically do so using IEEE double-precision floating-point numbers (not simple integers). For instance, GPS supplies coordinates in the form of (X,Y) coordinates where X corresponds to longitude, and Y corresponds to latitude. Both X and Y are given in units of decimal degrees.
  • the fact that certain spatial locations have negative coordinate values when described using GPS and other similar coordinate systems. For example, using the WGS84 datum used by current GPS, the coordinates (153.00341,−27.47988) correspond to a location in Queensland, Australia (the negative latitude value indicates southern hemisphere).
  • Complexities inherent in representing numbers in accordance with the IEEE double-precision floating-point numbers standard.
  • FIG. 9 shows an example vehicle path similar to that shown in FIG. 8, except that the coordinates used to describe the points along the path in FIG. 9 correspond to a “realistic” coordinate system such as that used by current GPS. In order to understand the implementation of the bitwise interleaving spatial hash algorithm when applied to these realistic coordinates, it is necessary to first appreciate certain aspects regarding the way numbers are represented using the standard IEEE double-precision floating-point number format.
  • A double-precision floating-point number represented in accordance with the IEEE 754 standard comprises a string of 64 binary characters (64 bits) as shown in FIG. 10. The number is represented in three parts, namely the sign, the exponent and the mantissa. The sign comprises one bit. If the sign bit is 1 then the number is negative, and conversely if the sign bit is 0 then the number is positive. The exponent comprises eleven binary characters, and hence can range from 00000000000 to 11111111111. However, because of the need to represent numbers that are both greater and smaller than one, it is necessary to be able to represent both large positive and large negative values for the exponent. However, it is not desirable to use one of the exponent bits to represent the sign of the exponent because this would leave fewer bits available to represent the exponent's actual value and would therefore greatly limit the size of the numbers that could be represented. Therefore, in the IEEE standard 64 bit format, the true value of the exponent is given by the binary number actually written by the eleven exponent bits minus an implied exponent bias.
  • Hence, Actual exponent value=written exponent value−exponent bais
  • The exponent bias is 0x3ff=1023. Consequently, the maximum true exponent value that can be represented (written in decimal notation) is 1023, and the minimum true exponent value that can be represented is −1022.
  • Finally, the remaining 52 bits form the mantissa. However, as all non-zero numbers must necessarily have a leading “1” when written in binary notation, an implicit “1” followed by a binary point is assumed to exist at the front of the mantissa. In other words, the leading “1” and the binary point which must necessarily exist for all non-zero binary numbers is simply omitted from the actual written mantissa in the IEEE 64-bit standard format. This is so that an additional bit may be used to represent the number with greater precision. However, when interpreting numbers which are represented in accordance with the IEEE standard, it is important to remember that this leading “1” and the binary point implicitly exist even though they are not written.
  • Bearing in mind these issues, it is possible to understand the actual spatial hash algorithm used in representative implementations of the present control system. A “worked” example illustrating the operation of the spatial hash algorithm to generate a hash key based on the coordinate (153.0000°, −27.0000° is given in the form of a flow diagram in FIG. 11. The points are initially expressed in terms of decimal degrees as this is the format in which they are delivered from, for example, GPS.
  • From FIG. 11 it can be seen that in order to implement the algorithm the X and Y coordinates are separated. The next step is to “normalise” the signs of the respective coordinates (in this case only the Y coordinate needs to be normalized). The reason for normalising the signs of the coordinate is because, when calculating a spatial hash key, it is more convenient to eliminate negative sign bits from the coordinates. In the case of the latitude coordinate, those skilled in this area will recognise that latitude is conventionally written as a number in the range (−90°≦latitude≦90°). Therefore, by simply adding 90° to the value of the latitude coordinate, the spatial hash algorithm can operate with values in the equivalent “un-signed” or “normalised” latitude range (0°≦latitude≦180°). Those skilled in the art will appreciate that the longitude coordinates can also be normalised to fall within the range (0° longitude≦360.degree.), although that is not necessary in this example.
  • After normalising the coordinates, the next step is to convert the respective coordinates from their representations in decimal degrees into binary IEEE double-precision floating-point number format. This is shown as step 3) in FIG. 11. However, it will be noted that the binary coordinate representations (and all other numbers which are generated or used by the algorithm in binary form) have been written in the alternative hexadecimal notation for ease of reference and to save space in FIG. 11.
  • Next, the binary representations of the two coordinates are split into their respective exponent (11 bits) and mantissa (52 bits) portions. This is step 4) in FIG. 11. Then, in order to determine the correct (“true”) value of the exponent, the exponent for each of the coordinate is “de-biased” by subtracting the implicit exponent bias (0x3ff=1023) as described above. This is step 5).
  • After de-biasing the exponents, the resulting exponents are then adjusted by a selected offset. The size of the offset is selected depending on the desired “granularity” of the resulting fix-point number. In the particular example shown in step 6) of FIG. 11, the offset is 37, however those skilled in the art will appreciate this number can be varied to suit.
  • After adjusting the exponent, the next step is to “resurrect” the leading “1” and the binary point which implicitly exist in the mantissa but which are left off when the mantissa is actually written (see above). Hence, the leading “1” and the binary point are simply prepended to the mantissa of each of the coordinates. This is step 7) in FIG. 11.
  • The mantissa for each coordinate is then right-shifted by the number of bits in the corresponding exponent. The exponents for each coordinate are then prepended to their corresponding mantissas forming a single character string for each coordinate. There is then an optional step of discarding the high-order byte for each of the two bit fields. This may be done simply to save memory if required, but is not necessary. Finally, the resultant bit fields for each coordinate are bitwise interleaved to obtain a single hash key corresponding to the original coordinates. In the example shown in FIG. 11, the resultant hash key is 32-bits in length. However, the length of the resultant hash key may vary depending on, for example whether the high-order byte is discarded, etc.
  • Those skilled in the art will recognise that various other alterations and modifications may be made to the particular embodiments, aspects and features of the invention described without departing from the spirit and scope of the invention.

Claims (29)

1. A control system as claimed in claim 1, wherein data is arranged within the database in accordance with a hash table which relates the memory allocations for the different items of spatial data within the database to corresponding indices.
2. A control system as claimed in claim 30, wherein the indices for the different items of data are determined according to the spatial location to which the respective items of data pertain.
3. A control system as claimed in claim 31, wherein a spatial hash key algorithm is used to generate the indices.
4. A control system as claimed in claim 32, wherein the spatial hash key algorithm operates so that data pertaining to spatial locations which are close to each other receive closely related indices.
5. A control system as claimed in claim 33, wherein the spatial hash key algorithm uses bitwise interleaving.
6. A control system as claimed in claim 34, wherein the spatial hash key algorithm uses double-precision floating-point numbers.
7. A control system as claimed in claim 1, wherein the control system is adapted to receive data from at least one external source.
8. A control system as claimed in claim 36, wherein the control system is adapted to receive data from at least one external source at control speed.
9. A control system as claimed in claim 36, wherein the data received from the at least one external source is used to generate estimates of the vehicle's pose.
10. A control system as claimed in claim 36, wherein the at least one external data source includes GPS.
11. A control system as claimed in claim 39 wherein the GPS is supplemented by a SBAS.
12. A control system as claimed in claim 36, wherein the at least one external data source includes an INS.
13. A control system as claimed in claim 41 wherein the INS includes one or more rate gyros, accelerometers or a combination of both.
14. A control system as claimed in claim 39, wherein the GPS is supplemented by a GBAS.
15. A control system as claimed in claim 36, wherein the at least one external data source includes machine vision and/or image analysis.
16. A control system as claimed in claim 36, wherein the at least one external data source includes LIDAR.
17. A control system as claimed in claim 36, wherein the at least one external data source includes a magnetometer.
18. A control system as claimed in claim 36, wherein the at least one external data source includes a tilt sensor.
19. A control system as claimed in claim 36, wherein the at least one external data source includes ultrasonic range and direction finding.
20. A control system as claimed in claim 36, wherein a filter is used to obtain a statistically optimised estimate of the state of the vehicle.
21. A control system as claimed in claim 48, wherein the filter utilises the data from the one or more external data sources to obtain the optimised estimate.
22. A control system as claimed in claim 49, wherein the filter is a Kalman filter.
23. A control system as claimed in claim 1, including means for interpreting a user-defined path and converting the said user-defined path into a plurality of points representing the user-defined path.
24. A control system as claimed in claim 51, including means for generating a desired position, heading and instantaneous radius of curvature for the vehicle at each point on the user-defined path.
25. A control system as claimed in claim 52, wherein the points representing the user-defined path and the desired position, heading and instantaneous radius of curvature for the vehicle are entered into the spatial database.
26. A control system as claimed in claim 53, including means for calculating an error term relating to the difference between the vehicle's actual position, heading and instantaneous radius of curvature and the vehicle's desired position, heading and instantaneous radius of curvature.
27. A control system as claimed in claim 54, wherein the controller uses the error term to generate a control signal for controlling the vehicle.
28. A method for controlling a vehicle comprising entering spatial data relating to a region to be traversed by the vehicle into a spatial database, providing spatial data from the spatial database to a controller at control speed to control the vehicle as the vehicle traverses the region, and entering updated spatial data into the spatial database as the vehicle traverses the region.
29. A method for controlling spatial data from the spatial database to a controller at control speed to control the vehicle as the vehicle traverses the region, and updated spatial data being received into the spatial database as the vehicle traverses the region.
US12/947,620 2007-01-05 2010-11-16 Vehicle control system Abandoned US20110118938A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/947,620 US20110118938A1 (en) 2007-01-05 2010-11-16 Vehicle control system
US13/573,682 US8768558B2 (en) 2007-01-05 2012-10-03 Optical tracking vehicle control system and method
US15/196,824 USRE48527E1 (en) 2007-01-05 2016-06-29 Optical tracking vehicle control system and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/620,388 US7835832B2 (en) 2007-01-05 2007-01-05 Vehicle control system
US12/947,620 US20110118938A1 (en) 2007-01-05 2010-11-16 Vehicle control system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/620,388 Continuation US7835832B2 (en) 2007-01-05 2007-01-05 Vehicle control system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/504,779 Continuation-In-Part US8311696B2 (en) 2007-01-05 2009-07-17 Optical tracking vehicle control system and method

Publications (1)

Publication Number Publication Date
US20110118938A1 true US20110118938A1 (en) 2011-05-19

Family

ID=39588075

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/620,388 Active 2028-09-11 US7835832B2 (en) 2007-01-05 2007-01-05 Vehicle control system
US12/947,620 Abandoned US20110118938A1 (en) 2007-01-05 2010-11-16 Vehicle control system

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/620,388 Active 2028-09-11 US7835832B2 (en) 2007-01-05 2007-01-05 Vehicle control system

Country Status (6)

Country Link
US (2) US7835832B2 (en)
EP (1) EP2114751B1 (en)
AU (1) AU2008203618B2 (en)
BR (1) BRPI0806495A2 (en)
CA (1) CA2674398C (en)
WO (1) WO2008080193A1 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8583326B2 (en) 2010-02-09 2013-11-12 Agjunction Llc GNSS contour guidance path selection
US20140074340A1 (en) * 2012-09-10 2014-03-13 Trimble Navigation Limited Agricultural autopilot steering compensation
CN103955223A (en) * 2014-04-10 2014-07-30 北京控制工程研究所 Posture and path coupling control method for deep space exploration soft landing process
WO2015026470A1 (en) 2013-08-20 2015-02-26 Deere & Company Sound feedback system for vehicles
US20170124509A1 (en) * 2015-10-28 2017-05-04 International Business Machines Corporation Entity location management using vehicle logistics information
US9754192B2 (en) 2014-06-30 2017-09-05 Microsoft Technology Licensing, Llc Object detection utilizing geometric information fused with image data
US20190061817A1 (en) * 2017-08-31 2019-02-28 Ford Global Technologies, Llc Adaptive steering control for robustness to errors in estimated or user-supplied trailer parameters
USRE48527E1 (en) 2007-01-05 2021-04-20 Agjunction Llc Optical tracking vehicle control system and method
US11167792B2 (en) * 2015-11-19 2021-11-09 Agjunction Llc Single-mode implement steering
US11180189B2 (en) * 2015-11-19 2021-11-23 Agjunction Llc Automated reverse implement parking
US20220039309A1 (en) * 2019-07-05 2022-02-10 Deere & Company Apparatus and methods for vehicle steering to follow a curved path
US20220304227A1 (en) * 2021-03-25 2022-09-29 Trimble Inc. Velocity control for improving cross track error of implement-equipped machines
US11914379B2 (en) 2020-12-23 2024-02-27 Deere & Company Methods and apparatus to generate a path plan

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9002565B2 (en) 2003-03-20 2015-04-07 Agjunction Llc GNSS and optical guidance and machine control
US8634993B2 (en) 2003-03-20 2014-01-21 Agjunction Llc GNSS based control for dispensing material from vehicle
US7860628B2 (en) * 2005-06-09 2010-12-28 Trimble Navigation Limited System for guiding a farm implement between swaths
US7844378B2 (en) 2006-10-05 2010-11-30 Trimble Navigation Limited Farm apparatus having implement sidehill drift compensation
NL1032663C2 (en) * 2006-10-11 2008-04-14 Maasland Nv System for delimiting an area.
US8768558B2 (en) * 2007-01-05 2014-07-01 Agjunction Llc Optical tracking vehicle control system and method
US8060299B2 (en) * 2007-02-28 2011-11-15 Caterpillar Inc. Machine with automated steering system
US8160765B2 (en) * 2008-03-03 2012-04-17 Cnh America Llc Method and system for coordinated vehicle control with wireless communication
US8190364B2 (en) * 2008-06-30 2012-05-29 Deere & Company System and method for providing towed implement compensation
US8116977B2 (en) * 2008-10-02 2012-02-14 Trimble Navigation Limited Automatic control of passive, towed implements
US8112201B2 (en) * 2008-10-02 2012-02-07 Trimble Navigation Limited Automatic control of passive, towed implements
US8082099B2 (en) * 2009-01-09 2011-12-20 Universal Avionics Systems Corporation Aircraft navigation using the global positioning system and an attitude and heading reference system
US8386129B2 (en) 2009-01-17 2013-02-26 Hemipshere GPS, LLC Raster-based contour swathing for guidance and variable-rate chemical application
US20110224873A1 (en) * 2009-09-17 2011-09-15 Reeve David R Vehicle assembly controller with automaton framework and control method
DE102009045661A1 (en) * 2009-10-14 2011-04-21 Robert Bosch Gmbh Method for determining at least one passable area in the environment of a motor vehicle that is relevant in particular for the vehicle guidance
US20110153169A1 (en) * 2009-12-18 2011-06-23 Agco Corporation Sensor-Based Implement Motion Interlock System
BE1019422A3 (en) * 2010-07-14 2012-07-03 Cnh Belgium Nv METHOD AND APPARATUS FOR PREDICTIVE CONTROL OF AN AGRICULTURAL VEHICLE SYSTEM.
US8803735B2 (en) 2010-11-19 2014-08-12 Agjunction Llc Portable base station network for local differential GNSS corrections
GB2492602A (en) * 2010-12-06 2013-01-09 Agco Corp Automatic determination of tire height for improving vehicle guidance performance
US20120253609A1 (en) * 2011-03-31 2012-10-04 Caterpillar Inc. Proportional control using state space based scheduling
US8677112B2 (en) * 2011-04-29 2014-03-18 Sap Ag Automatic notification based on generic storage framework
US8589013B2 (en) 2011-10-25 2013-11-19 Jaybridge Robotics, Inc. Method and system for dynamically positioning a vehicle relative to another vehicle in motion
US9265204B2 (en) * 2011-12-19 2016-02-23 Younis Technologies, Inc. Remotely sensing and adapting irrigation system
EP3656197A1 (en) 2011-12-28 2020-05-27 Husqvarna Ab Yard maintenance vehicle obstacle avoidance/notification system
US9020757B2 (en) * 2012-05-11 2015-04-28 Trimble Navigation Limited Path planning autopilot
US8781685B2 (en) 2012-07-17 2014-07-15 Agjunction Llc System and method for integrating automatic electrical steering with GNSS guidance
US9802597B2 (en) 2013-03-11 2017-10-31 Cummins Intellectual Properties, Inc. System and method of vehicle transient torque management
US9945957B2 (en) 2013-03-14 2018-04-17 Agjunction Llc Machine control system and method
US9781915B2 (en) 2013-03-14 2017-10-10 Agjunction Llc Implement and boom height control system and method
US9211809B2 (en) * 2013-03-15 2015-12-15 General Electric Company System and method of vehicle system control based on a vehicle reference speed
US20140309836A1 (en) * 2013-04-16 2014-10-16 Neya Systems, Llc Position Estimation and Vehicle Control in Autonomous Multi-Vehicle Convoys
CN103869823B (en) * 2013-07-12 2016-06-29 北京航空航天大学 Mars landing device jet thrust device and moment of mass multiplex control system
US8989985B2 (en) * 2013-08-14 2015-03-24 Thales Canada Inc. Vehicle-based positioning system and method of using the same
US9188986B2 (en) 2013-10-01 2015-11-17 Jaybridge Robotics, Inc. Computer-implemented method and system for dynamically positioning a vehicle relative to another vehicle in motion for on-the-fly offloading operations
US9733643B2 (en) 2013-12-20 2017-08-15 Agjunction Llc Hydraulic interrupter safety system and method
GB201322771D0 (en) * 2013-12-20 2014-02-05 Agco Int Gmbh Agricultural implement mounting
US9459097B2 (en) * 2014-03-12 2016-10-04 John S Davey Tilt sensing apparatus, system and method for using same
CN107635630B (en) 2015-04-17 2019-11-15 特拉克赛卡斯公司 The stable direction system downloaded using Automatic parameter for model vehicle
US9975056B2 (en) * 2015-04-17 2018-05-22 Traxxas Lp Steering stabilizing apparatus for a model vehicle
BR102016008666B1 (en) 2015-05-12 2022-10-11 Autonomous Solutions, Inc. CONTROL SYSTEM FOR A BASE STATION, METHOD FOR CONTROLLING AN AGRICULTURAL VEHICLE AND AUTONOMOUS AGRICULTURAL SYSTEM
US9964648B2 (en) * 2015-06-16 2018-05-08 Insero LLC Guidiance system and method based on dead reckoning positioning and heading augmented by GNSS and predictive path selection
CN105203129B (en) * 2015-10-13 2019-05-07 上海华测导航技术股份有限公司 A kind of inertial nevigation apparatus Initial Alignment Method
US10241215B2 (en) 2015-11-19 2019-03-26 Agjunction Llc Sensor alignment calibration
US10845375B2 (en) 2016-02-19 2020-11-24 Agjunction Llc Thermal stabilization of inertial measurement units
EP3443429B1 (en) 2016-04-12 2020-12-02 Agjunction LLC Line acquisition path generation using curvature profiles
CN105857389A (en) * 2016-04-29 2016-08-17 百度在线网络技术(北京)有限公司 Steering control method and device for driverless car
CA3033278A1 (en) 2016-10-03 2018-04-12 Agjunction Llc Using optical sensors to resolve vehicle heading issues
CA3035842A1 (en) 2016-10-17 2018-04-26 Agjunction Llc An actuator for turning a steering wheel in automatic steering systems
US10822017B2 (en) 2016-10-17 2020-11-03 Agjunction Llc Integrated auto-steer system for vehicle
CN106627753A (en) * 2016-12-21 2017-05-10 上海华测导航技术股份有限公司 Agricultural machinery automatic driving tillage control system guided by Beidou navigation system and control method
CN106647756A (en) * 2016-12-21 2017-05-10 上海华测导航技术股份有限公司 Beidou farm machinery automatic navigation driving control system
AU2018211071B2 (en) * 2017-01-19 2023-06-15 Agjunction Llc Low cost implement positioning
EP3573876B1 (en) 2017-01-25 2023-01-11 AgJunction LLC Integrated auto-steer system for vehicle
BR112019027751A2 (en) 2017-06-22 2020-07-07 Agjunction Llc control system, method for driving a vehicle and computing device
WO2019089853A1 (en) 2017-10-31 2019-05-09 Agjunction Llc Three-dimensional terrain mapping
US10838432B2 (en) * 2018-01-26 2020-11-17 Cnh Industrial Canada, Ltd. System and method for monitoring frame levelness of an agricultural implement
US20180164822A1 (en) * 2018-02-09 2018-06-14 GM Global Technology Operations LLC Systems and methods for autonomous vehicle motion planning
US10976745B2 (en) * 2018-02-09 2021-04-13 GM Global Technology Operations LLC Systems and methods for autonomous vehicle path follower correction
US10875543B2 (en) * 2018-02-12 2020-12-29 Ford Global Technologies, Llc Controller input compensation
US11686582B2 (en) 2018-03-22 2023-06-27 Arriver Software Llc Sensor plausibility using GPS road information
US11167743B2 (en) * 2018-04-03 2021-11-09 AgJunction, LLC Automatic pitch mounting compensation in an automatic steering system
WO2020056197A1 (en) 2018-09-14 2020-03-19 Agjunction Llc Integrated gnss and steering for agricultural guidance systems
EP3849296A1 (en) 2018-09-14 2021-07-21 AgJunction LLC Using non-real-time computers for agricultural guidance systems
US11367279B1 (en) * 2019-04-19 2022-06-21 David R. Wilmot Sensors, sod harvester with the sensors and methods for steering or guiding sod harvesters
WO2021021245A1 (en) 2019-07-31 2021-02-04 Agjunction Llc Integrated vehicle guidance and steering system
US11279356B2 (en) * 2019-09-23 2022-03-22 Robert Bosch Gmbh Vehicle dynamics control system utilizing heading error and derivative
CN117292562B (en) * 2023-11-23 2024-02-20 山东理工大学 Signal control time period division method based on intersection accurate flow direction identification

Citations (105)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3727710A (en) * 1971-05-13 1973-04-17 Gen Motors Corp Steer control for a track-laying vehicle
US4132272A (en) * 1977-06-30 1979-01-02 International Harvester Company Tractor hitch position control system
US4637474A (en) * 1974-11-05 1987-01-20 Leonard Willie B Tractor and towed implement with elevation control system for implement including pressure responsive valve actuator
US4739448A (en) * 1984-06-25 1988-04-19 Magnavox Government And Industrial Electronics Company Microwave multiport multilayered integrated circuit chip carrier
US4802545A (en) * 1986-10-15 1989-02-07 J. I. Case Company Steering control system for articulated vehicle
US4812991A (en) * 1986-05-01 1989-03-14 Magnavox Govt. And Industrial Electronics Company Method for precision dynamic differential positioning
US4813991A (en) * 1988-05-20 1989-03-21 Thomson Consumer Electronics, Inc. Universal stem mold for manufacturing a molded glass stem
US4894662A (en) * 1982-03-01 1990-01-16 Western Atlas International, Inc. Method and system for determining position on a moving platform, such as a ship, using signals from GPS satellites
US4916577A (en) * 1988-12-20 1990-04-10 Grumman Aerospace Corporation Method of mounting removable modules
US4918607A (en) * 1988-09-09 1990-04-17 Caterpillar Industrial Inc. Vehicle guidance system
US5100229A (en) * 1990-08-17 1992-03-31 Spatial Positioning Systems, Inc. Spatial positioning system
US5177489A (en) * 1989-09-26 1993-01-05 Magnavox Electronic Systems Company Pseudolite-aided method for precision kinematic positioning
US5185610A (en) * 1990-08-20 1993-02-09 Texas Instruments Incorporated GPS system and method for deriving pointing or attitude from a single GPS receiver
US5191351A (en) * 1989-12-29 1993-03-02 Texas Instruments Incorporated Folded broadband antenna with a symmetrical pattern
US5202829A (en) * 1991-06-10 1993-04-13 Trimble Navigation Limited Exploration system and method for high-accuracy and high-confidence level relative position and velocity determinations
US5293170A (en) * 1991-04-10 1994-03-08 Ashtech Inc. Global positioning system receiver digital processing technique
US5294970A (en) * 1990-12-31 1994-03-15 Spatial Positioning Systems, Inc. Spatial positioning system
US5296861A (en) * 1992-11-13 1994-03-22 Trimble Navigation Limited Method and apparatus for maximum likelihood estimation direct integer search in differential carrier phase attitude determination systems
US5390207A (en) * 1990-11-28 1995-02-14 Novatel Communications Ltd. Pseudorandom noise ranging receiver which compensates for multipath distortion by dynamically adjusting the time delay spacing between early and late correlators
US5390125A (en) * 1990-02-05 1995-02-14 Caterpillar Inc. Vehicle position determination system and method
US5390124A (en) * 1992-12-01 1995-02-14 Caterpillar Inc. Method and apparatus for improving the accuracy of position estimates in a satellite based navigation system
US5490073A (en) * 1993-04-05 1996-02-06 Caterpillar Inc. Differential system and method for a satellite based navigation
US5491636A (en) * 1994-04-19 1996-02-13 Glen E. Robertson Anchorless boat positioning employing global positioning system
US5495257A (en) * 1994-07-19 1996-02-27 Trimble Navigation Limited Inverse differential corrections for SATPS mobile stations
US5504482A (en) * 1993-06-11 1996-04-02 Rockwell International Corporation Automobile navigation guidance, control and safety system
US5511623A (en) * 1994-09-12 1996-04-30 Orthman Manufacturing, Inc. Quick hitch guidance device
US5592382A (en) * 1995-03-10 1997-01-07 Rockwell International Corporation Directional steering and navigation indicator
US5596328A (en) * 1994-08-23 1997-01-21 Honeywell Inc. Fail-safe/fail-operational differential GPS ground station system
US5600670A (en) * 1994-12-21 1997-02-04 Trimble Navigation, Ltd. Dynamic channel allocation for GPS receivers
US5604506A (en) * 1994-12-13 1997-02-18 Trimble Navigation Limited Dual frequency vertical antenna
US5608393A (en) * 1995-03-07 1997-03-04 Honeywell Inc. Differential ground station repeater
US5610522A (en) * 1993-09-30 1997-03-11 Commissariat A L'energie Atomique Open magnetic structure including pole pieces forming a V-shape threbetween for high homogeneity in an NMR device
US5610616A (en) * 1994-08-23 1997-03-11 Honeywell Inc. Differential GPS ground station system
US5610845A (en) * 1994-08-30 1997-03-11 United Technologies Corporation Multi-parameter air data sensing technique
US5612883A (en) * 1990-02-05 1997-03-18 Caterpillar Inc. System and method for detecting obstacles in the path of a vehicle
US5617100A (en) * 1994-04-07 1997-04-01 Matsushita Electric Industrial Co., Ltd. Accurate position measuring system
US5617317A (en) * 1995-01-24 1997-04-01 Honeywell Inc. True north heading estimator utilizing GPS output information and inertial sensor system output information
US5621646A (en) * 1995-01-17 1997-04-15 Stanford University Wide area differential GPS reference system and method
US5706015A (en) * 1995-03-20 1998-01-06 Fuba Automotive Gmbh Flat-top antenna apparatus including at least one mobile radio antenna and a GPS antenna
US5717593A (en) * 1995-09-01 1998-02-10 Gvili; Michael E. Lane guidance system
US5725230A (en) * 1996-06-17 1998-03-10 Walkup; Joseph L. Self steering tandem hitch
US5731786A (en) * 1994-12-29 1998-03-24 Trimble Navigation Limited Compaction of SATPS information for subsequent signal processing
US5739785A (en) * 1993-03-04 1998-04-14 Trimble Navigation Limited Location and generation of high accuracy survey control marks using satellites
US5864318A (en) * 1996-04-26 1999-01-26 Dorne & Margolin, Inc. Composite antenna for cellular and gps communications
US5864315A (en) * 1997-04-07 1999-01-26 General Electric Company Very low power high accuracy time and frequency circuits in GPS based tracking units
US5875408A (en) * 1995-07-17 1999-02-23 Imra America, Inc. Automated vehicle guidance system and method for automatically guiding a vehicle
US5877725A (en) * 1997-03-06 1999-03-02 Trimble Navigation Limited Wide augmentation system retrofit receiver
US5890091A (en) * 1994-02-18 1999-03-30 Trimble Navigation Ltd. Centimeter accurate global positioning system receiver for on-the-fly real-time kinematic measurement and control
US6014608A (en) * 1996-11-04 2000-01-11 Samsung Electronics Co., Ltd. Navigator apparatus informing or peripheral situation of the vehicle and method for controlling the same
US6014101A (en) * 1996-02-26 2000-01-11 Trimble Navigation Limited Post-processing of inverse DGPS corrections
US6018313A (en) * 1995-09-01 2000-01-25 Tilmar Konle System for determining the location of mobile objects
US6023239A (en) * 1997-10-08 2000-02-08 Arinc, Inc. Method and system for a differential global navigation satellite system aircraft landing ground station
US6052647A (en) * 1997-06-20 2000-04-18 Stanford University Method and system for automatic control of vehicles based on carrier phase differential GPS
US6055477A (en) * 1995-03-31 2000-04-25 Trimble Navigation Ltd. Use of an altitude sensor to augment availability of GPS location fixes
US6191733B1 (en) * 1999-06-01 2001-02-20 Modular Mining Systems, Inc. Two-antenna positioning system for surface-mine equipment
US6191730B1 (en) * 1997-12-15 2001-02-20 Trimble Navigation Limited Two-channel fast-sequencing high-dynamics GPS navigation receiver
US6198430B1 (en) * 1999-03-26 2001-03-06 Rockwell Collins, Inc. Enhanced differential GNSS carrier-smoothed code processing using dual frequency measurements
US6198992B1 (en) * 1997-10-10 2001-03-06 Trimble Navigation Limited Override for guidance control system
US6199000B1 (en) * 1998-07-15 2001-03-06 Trimble Navigation Limited Methods and apparatus for precision agriculture operations utilizing real time kinematic global positioning system systems
US6205401B1 (en) * 1995-09-19 2001-03-20 Litef Gmbh Navigation system for a vehicle, especially a land craft
US6215828B1 (en) * 1996-02-10 2001-04-10 Telefonaktiebolaget Lm Ericsson (Publ) Signal transformation method and apparatus
US6336066B1 (en) * 1998-09-29 2002-01-01 Pellenc S.A. Process for using localized agricultural data to optimize the cultivation of perennial plants
US6345231B2 (en) * 1998-07-10 2002-02-05 Claas Selbstfahrende Erntemaschinen Gmbh Method and apparatus for position determining
US6356602B1 (en) * 1998-05-04 2002-03-12 Trimble Navigation Limited RF integrated circuit for downconverting a GPS signal
US6377889B1 (en) * 2000-10-13 2002-04-23 Trimble Navigation Limited Non-linear method of guiding to arbitrary curves with adaptive feedback
US6380888B1 (en) * 2000-11-13 2002-04-30 The United States Of America As Represented By The Secretary Of The Navy Self-contained, self-surveying differential GPS base station and method of operating same
US20020067849A1 (en) * 2000-12-06 2002-06-06 Xerox Corporation Adaptive tree-based lookup for non-separably divided color tables
US20020171427A1 (en) * 2001-04-24 2002-11-21 The United States Of America Represented By The Secretary Of The Navy Magnetic anomaly sensing system and methods for maneuverable sensing platforms
US20030014171A1 (en) * 2001-07-16 2003-01-16 Xinghan Ma Harvester with intelligent hybrid control system
US6515619B1 (en) * 1998-07-30 2003-02-04 Mckay, Jr. Nicholas D. Object location system
US6516271B2 (en) * 2001-06-29 2003-02-04 The Regents Of The University Of California Method and apparatus for ultra precise GPS-based mapping of seeds or vegetation during planting
US6539303B2 (en) * 2000-12-08 2003-03-25 Mcclure John A. GPS derived swathing guidance system
US6542077B2 (en) * 1993-06-08 2003-04-01 Raymond Anthony Joao Monitoring apparatus for a vehicle and/or a premises
US6549835B2 (en) * 2000-09-28 2003-04-15 Nissan Motor Co., Ltd. Apparatus for and method of steering vehicle
US20040006426A1 (en) * 2002-07-03 2004-01-08 Armstrong Ray G. Vehicle locating system
US6686878B1 (en) * 2000-02-22 2004-02-03 Trimble Navigation Limited GPS weather data recording system for use with the application of chemicals to agricultural fields
US6688403B2 (en) * 2001-03-22 2004-02-10 Deere & Company Control system for a vehicle/implement hitch
US20040039514A1 (en) * 2002-04-05 2004-02-26 Steichen John Carl Method and apparatus for controlling a gas-emitting process and related devices
US6703973B1 (en) * 1998-08-19 2004-03-09 Trimble Navigation, Ltd. Guiding vehicle in adjacent swaths across terrain via satellite navigation and tilt measurement
US6711501B2 (en) * 2000-12-08 2004-03-23 Satloc, Llc Vehicle navigation system and method for swathing applications
US6865484B2 (en) * 2001-04-11 2005-03-08 Mitsui & Co., Ltd. Satellite position measurement system
US6865465B2 (en) * 2002-05-06 2005-03-08 Csi Wireless, Inc. Method and system for implement steering for agricultural vehicles
US6990399B2 (en) * 2002-10-31 2006-01-24 Cnh America Llc Agricultural utility vehicle and method of controlling same
US20060031664A1 (en) * 2004-08-04 2006-02-09 National Instruments Corporation Method and system for loading and updating firmware in an embedded device
US7006032B2 (en) * 2004-01-15 2006-02-28 Honeywell International, Inc. Integrated traffic surveillance apparatus
US20060103573A1 (en) * 2004-11-12 2006-05-18 Geier George J Frequency error tracking in satellite positioning system receivers
US20060290779A1 (en) * 2005-01-18 2006-12-28 Reverte Carlos F Autonomous inspector mobile platform
US7162348B2 (en) * 2002-12-11 2007-01-09 Hemisphere Gps Llc Articulated equipment position control system and method
US7191061B2 (en) * 2003-04-17 2007-03-13 Battelle Energy Alliance, Llc Auto-steering apparatus and method
US20070194984A1 (en) * 2006-02-21 2007-08-23 Honeywell International Inc. System and method for detecting false navigation signals
US20070193798A1 (en) * 2005-10-21 2007-08-23 James Allard Systems and methods for obstacle avoidance
US20070247361A1 (en) * 2006-04-21 2007-10-25 Broadcom Corporation, A California Corporation Communication system with assisted GPS and SBAS
US7324915B2 (en) * 2005-07-14 2008-01-29 Biosense Webster, Inc. Data transmission to a position sensor
US7479900B2 (en) * 2003-05-28 2009-01-20 Legalview Assets, Limited Notification systems and methods that consider traffic flow predicament data
US7505848B2 (en) * 2003-03-31 2009-03-17 Deere & Company Path planner and method for planning a contour path of a vehicle
US20100013703A1 (en) * 2006-05-25 2010-01-21 The Boeing Company Gps gyro calibration
US20100026569A1 (en) * 2008-07-31 2010-02-04 Honeywell International Inc. Method and apparatus for location detection using gps and wifi/wimax
US20100030470A1 (en) * 2008-07-02 2010-02-04 O2Micro, Inc. Global positioning system and dead reckoning (gps&dr) integrated navigation system
US20100039318A1 (en) * 2006-11-06 2010-02-18 Marcin Michal Kmiecik Arrangement for and method of two dimensional and three dimensional precision location and orientation determination
US20100039316A1 (en) * 2008-02-25 2010-02-18 Sirf Technology, Inc. System and Method for Operating a GPS Device in a Micro Power Mode
US20100039320A1 (en) * 2008-08-14 2010-02-18 Boyer Pete A Hybrid GNSS and TDOA Wireless Location System
US20100039321A1 (en) * 2008-08-15 2010-02-18 Charles Abraham Method and system for calibrating group delay errors in a combined gps and glonass receiver
US20100060518A1 (en) * 2008-09-11 2010-03-11 Bar-Sever Yoaz E Method and apparatus for autonomous, in-receiver prediction of gnss ephemerides
US20100063649A1 (en) * 2008-09-10 2010-03-11 National Chiao Tung University Intelligent driving assistant systems
US7689354B2 (en) * 2003-03-20 2010-03-30 Hemisphere Gps Llc Adaptive guidance system and method

Family Cites Families (244)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3585537A (en) 1969-02-10 1971-06-15 Bell Telephone Labor Inc Electric wave filters
US3596228A (en) 1969-05-29 1971-07-27 Ibm Fluid actuated contactor
US3899028A (en) 1972-03-30 1975-08-12 Systron Donner Corp Angular position sensing and control system, apparatus and method
US3815272A (en) 1973-01-03 1974-06-11 G Marleau Collapsible, triangular net assembly
FR2280985B1 (en) 1974-08-01 1977-01-07 Lignes Telegraph Telephon WIDE BAND MINIATURIZED ANTENNA
US4170776A (en) 1977-12-21 1979-10-09 Nasa System for near real-time crustal deformation monitoring
US4180133A (en) 1978-01-12 1979-12-25 Iowa State University Research Foundation, Inc. Guidance system for towed vehicles
DE2942557C2 (en) 1979-10-22 1983-01-27 Siemens AG, 1000 Berlin und 8000 München Directional antenna arrangement or directional antenna for a jammer
JPS639141Y2 (en) 1980-10-22 1988-03-18
US4769700A (en) 1981-11-20 1988-09-06 Diffracto Ltd. Robot tractors
US4667203A (en) 1982-03-01 1987-05-19 Aero Service Div, Western Geophysical Method and system for determining position using signals from satellites
US4453614A (en) 1982-03-19 1984-06-12 Deere & Company Steering arrangement for an off-highway articulated vehicle
US4689556A (en) 1984-10-12 1987-08-25 Daymarc Corporation Broad band contactor assembly for testing integrated circuit devices
US4785463A (en) 1985-09-03 1988-11-15 Motorola, Inc. Digital global positioning system receiver
US4710775A (en) 1985-09-30 1987-12-01 The Boeing Company Parasitically coupled, complementary slot-dipole antenna element
US4714435A (en) 1985-11-14 1987-12-22 Molex Incorporated Connection for flexible apparatus
US4751512A (en) 1986-01-21 1988-06-14 Oceanonics, Inc. Differential navigation system for remote mobile users
US4694264A (en) 1986-03-05 1987-09-15 The United States Of America As Represented By The United States Department Of Energy Radio frequency coaxial feedthrough device
US4858132A (en) 1987-09-11 1989-08-15 Ndc Technologies, Inc. Optical navigation system for an automatic guided vehicle, and method
US4864320A (en) 1988-05-06 1989-09-05 Ball Corporation Monopole/L-shaped parasitic elements for circularly/elliptically polarized wave transceiving
US5031704A (en) 1988-05-10 1991-07-16 Fleischer Manufacturing, Inc. Guidance control apparatus for agricultural implement
US5165109A (en) 1989-01-19 1992-11-17 Trimble Navigation Microwave communication antenna
US4963889A (en) 1989-09-26 1990-10-16 Magnavox Government And Industrial Electronics Company Method and apparatus for precision attitude determination and kinematic positioning
US5173715A (en) 1989-12-04 1992-12-22 Trimble Navigation Antenna with curved dipole elements
US5156219A (en) 1990-06-04 1992-10-20 A.I.L., Inc. Positioning apparatus for drawn implement
US5155493A (en) 1990-08-28 1992-10-13 The United States Of America As Represented By The Secretary Of The Air Force Tape type microstrip patch antenna
US5155490A (en) 1990-10-15 1992-10-13 Gps Technology Corp. Geodetic surveying system using multiple GPS base stations
US5152347A (en) 1991-04-05 1992-10-06 Deere & Company Interface system for a towed implement
US5148179A (en) 1991-06-27 1992-09-15 Trimble Navigation Differential position determination using satellites
WO1993002905A1 (en) 1991-07-30 1993-02-18 Aura Systems, Inc. Variable gain servo assist
US5365447A (en) 1991-09-20 1994-11-15 Dennis Arthur R GPS and satelite navigation system
US5239669A (en) 1992-02-04 1993-08-24 Trimble Navigation Limited Coupler for eliminating a hardwire connection between a handheld global positioning system (GPS) receiver and a stationary remote antenna
US5323322A (en) 1992-03-05 1994-06-21 Trimble Navigation Limited Networked differential GPS system
US5255756A (en) 1992-04-22 1993-10-26 Progressive Farm Products, Inc. Caddy with guidance system for agricultural implements
US5343209A (en) 1992-05-07 1994-08-30 Sennott James W Navigation receiver with coupled signal-tracking channels
US5919242A (en) 1992-05-14 1999-07-06 Agri-Line Innovations, Inc. Method and apparatus for prescription application of products to an agricultural field
JP2904241B2 (en) 1992-07-01 1999-06-14 ケイディディ株式会社 Transmission method of differential data signal
US5268695A (en) 1992-10-06 1993-12-07 Trimble Navigation Limited Differential phase measurement through antenna multiplexing
US5361212A (en) 1992-11-02 1994-11-01 Honeywell Inc. Differential GPS landing assistance system
US5359332A (en) 1992-12-31 1994-10-25 Trimble Navigation Limited Determination of phase ambiguities in satellite ranges
US5523761A (en) 1993-01-12 1996-06-04 Trimble Navigation Limited Differential GPS smart antenna device
US5471217A (en) 1993-02-01 1995-11-28 Magnavox Electronic Systems Company Method and apparatus for smoothing code measurements in a global positioning system receiver
US5444453A (en) 1993-02-02 1995-08-22 Ball Corporation Microstrip antenna structure having an air gap and method of constructing same
US5311149A (en) 1993-03-12 1994-05-10 Trimble Navigation Limited Integrated phase locked loop local oscillator
US5392863A (en) 1993-03-19 1995-02-28 Richard Fixemer Guidance system for an agricultural implement
US5548293A (en) 1993-03-24 1996-08-20 Leland Stanford Junior University System and method for generating attitude determinations using GPS
US5583513A (en) 1993-03-24 1996-12-10 Board Of Trustees Of The Leland Stanford Junior University System and method for generating precise code based and carrier phase position determinations
US5334987A (en) 1993-04-01 1994-08-02 Spectra-Physics Laserplane, Inc. Agricultural aircraft control system using the global positioning system
US5477228A (en) 1993-04-13 1995-12-19 Differential Corrections Inc. Differential global positioning system using radio data system
US5416712A (en) 1993-05-28 1995-05-16 Trimble Navigation Limited Position and velocity estimation system for adaptive weighting of GPS and dead-reckoning information
US5534875A (en) 1993-06-18 1996-07-09 Adroit Systems, Inc. Attitude determining system for use with global positioning system
DE69430029T2 (en) 1993-08-07 2002-10-17 Aisin Aw Co navigation system
US5369589A (en) 1993-09-15 1994-11-29 Trimble Navigation Limited Plural information display for navigation
US5521610A (en) 1993-09-17 1996-05-28 Trimble Navigation Limited Curved dipole antenna with center-post amplifier
WO1995018432A1 (en) 1993-12-30 1995-07-06 Concord, Inc. Field navigation system
US5477458A (en) 1994-01-03 1995-12-19 Trimble Navigation Limited Network for carrier phase differential GPS corrections
US5546093A (en) 1994-01-04 1996-08-13 Caterpillar Inc. System and method for providing navigation signals to an earthmoving or construction machine
US5568152A (en) 1994-02-04 1996-10-22 Trimble Navigation Limited Integrated image transfer for remote target location
JPH07230315A (en) 1994-02-16 1995-08-29 Fuji Heavy Ind Ltd Traveling controller for autonomously traveling vehicle
FI942218A0 (en) 1994-05-13 1994-05-13 Modulaire Oy Automatic storage system Foer obemannat fordon
US5680140A (en) 1994-07-19 1997-10-21 Trimble Navigation Limited Post-processing of inverse differential corrections for SATPS mobile stations
US5451964A (en) 1994-07-29 1995-09-19 Del Norte Technology, Inc. Method and system for resolving double difference GPS carrier phase integer ambiguity utilizing decentralized Kalman filters
US5442363A (en) 1994-08-04 1995-08-15 U.S. Army Corps Of Engineers As Represented By The Secretary Of The Army Kinematic global positioning system of an on-the-fly apparatus for centimeter-level positioning for static or moving applications
US5568162A (en) 1994-08-08 1996-10-22 Trimble Navigation Limited GPS navigation and differential-correction beacon antenna combination
US6061390A (en) 1994-09-02 2000-05-09 California Institute Of Technology P-code enhanced method for processing encrypted GPS signals without knowledge of the encryption code
US5543804A (en) 1994-09-13 1996-08-06 Litton Systems, Inc. Navagation apparatus with improved attitude determination
US5589835A (en) 1994-12-20 1996-12-31 Trimble Navigation Limited Differential GPS receiver system linked by infrared signals
US5854987A (en) 1995-02-22 1998-12-29 Honda Giken Kogyo Kabushiki Kaisha Vehicle steering control system using navigation system
US5578813A (en) 1995-03-02 1996-11-26 Allen; Ross R. Freehand image scanning device which compensates for non-linear movement
US5638077A (en) 1995-05-04 1997-06-10 Rockwell International Corporation Differential GPS for fleet base stations with vector processing mechanization
US5561432A (en) 1995-05-12 1996-10-01 Trimble Navigation Out of plane antenna vector system and method
US6236907B1 (en) 1995-05-30 2001-05-22 Ag-Chem Equipment Co., Inc. System and method for creating agricultural decision and application maps for automated agricultural machines
US5953367A (en) 1995-08-09 1999-09-14 Magellan Corporation Spread spectrum receiver using a pseudo-random noise code for ranging applications in a way that reduces errors when a multipath signal is present
US5862501A (en) * 1995-08-18 1999-01-19 Trimble Navigation Limited Guidance control system for movable machinery
US5673491A (en) 1995-10-20 1997-10-07 Brenna; Douglas J. Crane level indicator device
JP3171119B2 (en) 1995-12-04 2001-05-28 トヨタ自動車株式会社 Automatic driving control device for vehicles
US5812961A (en) 1995-12-28 1998-09-22 Trimble Navigation Limited Method and reciever using a low earth orbiting satellite signal to augment the global positioning system
US5928309A (en) 1996-02-05 1999-07-27 Korver; Kelvin Navigation/guidance system for a land-based vehicle
US5828336A (en) 1996-03-29 1998-10-27 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Robust real-time wide-area differential GPS navigation
FR2748571B1 (en) 1996-05-09 1998-08-07 Europ Agence Spatiale RECEIVER DEVICE FOR A NAVIGATION SYSTEM IN PARTICULAR BY SATELLITE
US5948044A (en) 1996-05-20 1999-09-07 Harris Corporation Hybrid GPS/inertially aided platform stabilization system
US5935183A (en) 1996-05-20 1999-08-10 Caterpillar Inc. Method and system for determining the relationship between a laser plane and an external coordinate system
DE19624719A1 (en) 1996-06-21 1998-01-02 Claas Ohg System for determining the position of mobile objects, in particular vehicles
US6057800A (en) 1996-06-28 2000-05-02 State University Of New York RDOP surface for GPS relative positioning
DE19629618A1 (en) 1996-07-23 1998-01-29 Claas Ohg Route planning system for agricultural work vehicles
US5810095A (en) 1996-07-25 1998-09-22 Case Corporation System for controlling the position of an implement attached to a work vehicle
AUPO135296A0 (en) 1996-08-01 1996-08-22 Great Western Corporation Pty Ltd Agricultural cultivator
US5929721A (en) 1996-08-06 1999-07-27 Motorola Inc. Ceramic filter with integrated harmonic response suppression using orthogonally oriented low-pass filter
US5926079A (en) 1996-12-05 1999-07-20 Motorola Inc. Ceramic waveguide filter with extracted pole
US5757316A (en) 1997-02-01 1998-05-26 Litton Systems, Inc. Attitude determination utilizing an inertial measurement unit and a plurality of satellite transmitters
US5777578A (en) 1997-02-10 1998-07-07 National Science Council Global positioning system (GPS) Compass
US5914685A (en) 1997-04-25 1999-06-22 Magellan Corporation Relative position measuring techniques using both GPS and GLONASS carrier phase measurements
US5987383C1 (en) 1997-04-28 2006-06-13 Trimble Navigation Ltd Form line following guidance system
US5912798A (en) 1997-07-02 1999-06-15 Landsten Chu Dielectric ceramic filter
US5936573A (en) 1997-07-07 1999-08-10 Trimble Navigation Limited Real-time kinematic integrity estimator and monitor
US5940026A (en) 1997-07-21 1999-08-17 Rockwell Science Center, Inc. Azimuth determination for GPS/INS systems via GPS null steering antenna
US5917448A (en) 1997-08-07 1999-06-29 Rockwell Science Center, Inc. Attitude determination system with sequencing antenna inputs
US6061632A (en) 1997-08-18 2000-05-09 Trimble Navigation Limited Receiver with seamless correction capacity
US5943008A (en) 1997-09-23 1999-08-24 Rockwell Science Center, Inc. Single global positioning system receiver capable of attitude determination
US5927603A (en) 1997-09-30 1999-07-27 J. R. Simplot Company Closed loop control system, sensing apparatus and fluid application system for a precision irrigation device
US6233511B1 (en) 1997-11-26 2001-05-15 Case Corporation Electronic control for a two-axis work implement
US5918558A (en) 1997-12-01 1999-07-06 Case Corporation Dual-pump, flow-isolated hydraulic circuit for an agricultural tractor
US5945917A (en) 1997-12-18 1999-08-31 Rockwell International Swathing guidance display
US5969670A (en) 1998-01-22 1999-10-19 Trimble Navigation Limited Inexpensive monitoring technique for achieving high level integrity monitoring for differential GPS
US6314348B1 (en) 1998-02-11 2001-11-06 Trimble Navigation Limited Correction control for guidance control system
US6100842A (en) 1998-02-20 2000-08-08 Trimble Navigation Limited Chained location determination system
US6081171A (en) 1998-04-08 2000-06-27 Nokia Mobile Phones Limited Monolithic filters utilizing thin film bulk acoustic wave devices and minimum passive components for controlling the shape and width of a passband response
US6144335A (en) 1998-04-14 2000-11-07 Trimble Navigation Limited Automated differential correction processing of field data in a global positional system
AUPP375498A0 (en) 1998-05-29 1998-06-18 Small, David A method for creating a network positioning system (NPS)
US5933110A (en) 1998-07-13 1999-08-03 Arinc, Inc. Vessel attitude determination system and method
US6307505B1 (en) 1998-07-22 2001-10-23 Trimble Navigation Limited Apparatus and method for coupling data to a position determination device
US5949371A (en) 1998-07-27 1999-09-07 Trimble Navigation Limited Laser based reflectors for GPS positioning augmentation
US6313788B1 (en) 1998-08-14 2001-11-06 Seagull Technology, Inc. Method and apparatus for reliable inter-antenna baseline determination
US6230097B1 (en) 1998-08-31 2001-05-08 Trimble Navigation Limited Accurate vehicle navigation
US6256583B1 (en) 1998-09-16 2001-07-03 Rockwell Collins, Inc. GPS attitude determination system and method using optimal search space identification for integer cycle ambiguity resolution
US6253160B1 (en) 1999-01-15 2001-06-26 Trimble Navigation Ltd. Method and apparatus for calibrating a tool positioning mechanism on a mobile machine
US6236916B1 (en) 1999-03-29 2001-05-22 Caterpillar Inc. Autoguidance system and method for an agricultural machine
US6453237B1 (en) 1999-04-23 2002-09-17 Global Locate, Inc. Method and apparatus for locating and providing services to mobile devices
DE19919321A1 (en) 1999-04-28 2000-11-02 Deere & Co Steering system and harvesting machine
US6325684B1 (en) 1999-06-11 2001-12-04 Johnson Outdoors, Inc., Trolling motor steering control
US6236924B1 (en) 1999-06-21 2001-05-22 Caterpillar Inc. System and method for planning the operations of an agricultural machine in a field
US6275758B1 (en) 1999-06-29 2001-08-14 Caterpillar Inc. Method and apparatus for determining a cross slope of a surface
US6266595B1 (en) 1999-08-12 2001-07-24 Martin W. Greatline Method and apparatus for prescription application of products to an agricultural field
US6292132B1 (en) 1999-08-13 2001-09-18 Daimlerchrysler Ag System and method for improved accuracy in locating and maintaining positions using GPS
US6076612A (en) 1999-08-31 2000-06-20 Case Corporation Transition from position to draft mode controlled by hitch position command and feedback
US6285320B1 (en) 1999-09-03 2001-09-04 Sikorsky Aircraft Corporation Apparatus and method for mapping surfaces of an object
US6062317A (en) 1999-09-03 2000-05-16 Caterpillar Inc. Method and apparatus for controlling the direction of travel of an earthworking machine
IL132191A (en) 1999-10-03 2008-04-13 Azimuth Technologies Ltd Method for calibrating and verifying the attitude of a compass
US6611755B1 (en) 1999-12-19 2003-08-26 Trimble Navigation Ltd. Vehicle tracking, communication and fleet management system
ATE276564T1 (en) * 2000-03-14 2004-10-15 Siemens Ag ROUTE PLANNING SYSTEM
US6469663B1 (en) 2000-03-21 2002-10-22 Csi Wireless Inc. Method and system for GPS and WAAS carrier phase measurements for relative positioning
US6418031B1 (en) 2000-05-01 2002-07-09 International Business Machines Corporation Method and means for decoupling a printed circuit board
GB0011493D0 (en) 2000-05-13 2000-06-28 Koninkl Philips Electronics Nv Method and apparatus for code phase tracking
US6819269B2 (en) 2000-05-17 2004-11-16 Omega Patents, L.L.C. Vehicle tracker including battery monitoring feature and related methods
US6259398B1 (en) 2000-05-19 2001-07-10 Sri International Multi-valued variable ambiguity resolution for satellite navigation signal carrier wave path length determination
US6421003B1 (en) 2000-05-19 2002-07-16 Sri International Attitude determination using multiple baselines in a navigational positioning system
AU775676B2 (en) 2000-06-01 2004-08-12 Furuno Electric Company, Limited System for determining the heading and/or attitude of a body
WO2001095162A1 (en) * 2000-06-05 2001-12-13 Ag-Chem Equipment Company, Inc. System and method for creating demo application maps for site-specific farming
US6397147B1 (en) 2000-06-06 2002-05-28 Csi Wireless Inc. Relative GPS positioning using a single GPS receiver with internally generated differential correction terms
GB0014719D0 (en) 2000-06-16 2000-08-09 Koninkl Philips Electronics Nv A method of providing an estimate of a location
US6445983B1 (en) 2000-07-07 2002-09-03 Case Corporation Sensor-fusion navigator for automated guidance of off-road vehicles
JP4446569B2 (en) 2000-07-24 2010-04-07 古野電気株式会社 Carrier phase relative positioning device
US6631916B1 (en) 2000-07-28 2003-10-14 Merle E. Miller Guidance system for pull-type equipment
US6931233B1 (en) 2000-08-31 2005-08-16 Sirf Technology, Inc. GPS RF front end IC with programmable frequency synthesizer for use in wireless phones
US6643576B1 (en) 2000-11-15 2003-11-04 Integrinautics Corporation Rapid adjustment of trajectories for land vehicles
US6553311B2 (en) 2000-12-08 2003-04-22 Trimble Navigation Limited Navigational off- line and off-heading indication system and method
US6577952B2 (en) 2001-01-08 2003-06-10 Motorola, Inc. Position and heading error-correction method and apparatus for vehicle navigation systems
EP1358503A4 (en) * 2001-02-05 2004-05-26 Clark Cohen Low cost system and method for making dual band gps measurements
US6442463B1 (en) * 2001-02-09 2002-08-27 The Board Of Trustees Of The University Of Illinois Fuzzy steering controller
US6754584B2 (en) 2001-02-28 2004-06-22 Enpoint, Llc Attitude measurement using a single GPS receiver with two closely-spaced antennas
US6445990B1 (en) 2001-03-19 2002-09-03 Caterpillar Inc. Method and apparatus for controlling straight line travel of a tracked machine
GB2379112B (en) 2001-03-28 2003-10-15 Comm Res Lab Method for acquiring azimuth information
US6721638B2 (en) 2001-05-07 2004-04-13 Rapistan Systems Advertising Corp. AGV position and heading controller
US6732024B2 (en) 2001-05-07 2004-05-04 The Board Of Trustees Of The Leland Stanford Junior University Method and apparatus for vehicle control, navigation and positioning
US6622091B2 (en) 2001-05-11 2003-09-16 Fibersense Technology Corporation Method and system for calibrating an IG/GP navigational system
US6434462B1 (en) 2001-06-28 2002-08-13 Deere & Company GPS control of a tractor-towed implement
US6900992B2 (en) 2001-09-18 2005-05-31 Intel Corporation Printed circuit board routing and power delivery for high frequency integrated circuits
US6587761B2 (en) 2001-10-23 2003-07-01 The Aerospace Corporation Unambiguous integer cycle attitude determination method
US6985811B2 (en) 2001-10-30 2006-01-10 Sirf Technology, Inc. Method and apparatus for real time clock (RTC) brownout detection
JP4116792B2 (en) 2001-12-19 2008-07-09 古野電気株式会社 Carrier phase relative positioning device
US6671587B2 (en) 2002-02-05 2003-12-30 Ford Motor Company Vehicle dynamics measuring apparatus and method using multiple GPS antennas
JP2003232845A (en) 2002-02-12 2003-08-22 Furuno Electric Co Ltd Detection device of azimuth and attitude of moving body
DE10224939B4 (en) 2002-05-31 2009-01-08 Deere & Company, Moline Driving-axle trailer
US6822314B2 (en) 2002-06-12 2004-11-23 Intersil Americas Inc. Base for a NPN bipolar transistor
US6657875B1 (en) 2002-07-16 2003-12-02 Fairchild Semiconductor Corporation Highly efficient step-down/step-up and step-up/step-down charge pump
JP2005535886A (en) 2002-08-13 2005-11-24 ディーアールエス コミュニケーションズ カンパニー,エルエルシー Method and system for determining the relative position of a network mobile communication device
PL375314A1 (en) 2002-08-13 2005-11-28 Drs Communications Company, Llc Method and system for determining absolute positions of mobile communications devices using remotely generated positioning information
JP2004125580A (en) 2002-10-02 2004-04-22 Hitachi Constr Mach Co Ltd Position measuring system of working machine
KR100506058B1 (en) 2002-11-28 2005-08-05 매그나칩 반도체 유한회사 Phase Locked Loop having Voltage Controlled Oscillator dividing frequency
US7142956B2 (en) 2004-03-19 2006-11-28 Hemisphere Gps Llc Automatic steering system and method
US7437230B2 (en) 2003-03-20 2008-10-14 Hemisphere Gps Llc Satellite based vehicle guidance control in straight and contour modes
US8271194B2 (en) 2004-03-19 2012-09-18 Hemisphere Gps Llc Method and system using GNSS phase measurements for relative positioning
US20040212533A1 (en) 2003-04-23 2004-10-28 Whitehead Michael L. Method and system for satellite based phase measurements for relative positioning of fixed or slow moving points in close proximity
US8138970B2 (en) 2003-03-20 2012-03-20 Hemisphere Gps Llc GNSS-based tracking of fixed or slow-moving structures
US7027918B2 (en) 2003-04-07 2006-04-11 Novariant, Inc. Satellite navigation system using multiple antennas
US7292186B2 (en) 2003-04-23 2007-11-06 Csi Wireless Inc. Method and system for synchronizing multiple tracking devices for a geo-location system
US6744404B1 (en) 2003-07-09 2004-06-01 Csi Wireless Inc. Unbiased code phase estimator for mitigating multipath in GPS
EP1678519A2 (en) 2003-10-06 2006-07-12 Sirf Technology, Inc. A system and method for augmenting a satellite-based navigation solution
US20050225955A1 (en) 2004-04-09 2005-10-13 Hewlett-Packard Development Company, L.P. Multi-layer printed circuit boards
EP1591847A1 (en) 2004-04-27 2005-11-02 Abb Research Ltd. Scheduling of industrial production processes
CA2566604C (en) 2004-05-17 2013-06-25 Csi Wireless Inc. Satellite based vehicle guidance control in straight and contour modes
US7248211B2 (en) 2004-07-26 2007-07-24 Navcom Technology Inc. Moving reference receiver for RTK navigation
US7271766B2 (en) 2004-07-30 2007-09-18 Novariant, Inc. Satellite and local system position determination
US7315278B1 (en) 2004-07-30 2008-01-01 Novariant, Inc. Multiple frequency antenna structures and methods for receiving navigation or ranging signals
US7089099B2 (en) 2004-07-30 2006-08-08 Automotive Technologies International, Inc. Sensor assemblies
US7395769B2 (en) 2004-10-21 2008-07-08 Jensen Layton W Individual row rate control of farm implements to adjust the volume of crop inputs across wide implements in irregularly shaped or contour areas of chemical application, planting or seeding
FR2881008B1 (en) 2005-01-20 2007-04-20 Thales Sa SATELLITE POSITIONING RECEIVER WITH IMPROVED INTEGRITY AND CONTINUITY
US20060167600A1 (en) 2005-01-27 2006-07-27 Raven Industries, Inc. Architecturally partitioned automatic steering system and method
US7451030B2 (en) 2005-02-04 2008-11-11 Novariant, Inc. System and method for interactive selection and determination of agricultural vehicle guide paths offset from each other with varying curvature along their length
ATE374447T1 (en) 2005-02-25 2007-10-15 Nemerix Sa HALF BIN LINEAR FREQUENCY DISCRIMINATOR
US7738606B2 (en) 2005-03-24 2010-06-15 Novatel Inc. System and method for making correlation measurements utilizing pulse shape measurements
US7428259B2 (en) 2005-05-06 2008-09-23 Sirf Technology Holdings, Inc. Efficient and flexible GPS receiver baseband architecture
EP1724605A1 (en) 2005-05-18 2006-11-22 Leica Geosystems AG Method of determining position for a satellite based positioning system
US7639181B2 (en) 2005-07-01 2009-12-29 Sirf Technology Holdings, Inc. Method and device for tracking weak global navigation satellite system (GNSS) signals
US7522100B2 (en) 2005-07-01 2009-04-21 Sirf Technology Holdings, Inc. Method and device for acquiring weak global navigation satellite system (GNSS) signals
US7571029B2 (en) * 2005-10-04 2009-08-04 Gm Global Technology Operations, Inc. Method and apparatus for reporting road conditions
US7388539B2 (en) 2005-10-19 2008-06-17 Hemisphere Gps Inc. Carrier track loop for GNSS derived attitude
ATE453125T1 (en) 2005-11-03 2010-01-15 Qualcomm Inc MULTI-BAND RECEIVER FOR NAVIGATION SATELLITE SIGNALS (GNSS)
US7742518B2 (en) 2005-11-28 2010-06-22 Honeywell International Inc. Discriminator function for GPS code alignment
JP4647486B2 (en) 2005-12-27 2011-03-09 京セラ株式会社 Transceiver circuit
US7619559B2 (en) 2006-03-15 2009-11-17 The Boeing Company Method and system for all-in-view coherent GPS signal PRN codes acquisition and navigation solution determination
US7688261B2 (en) 2006-03-15 2010-03-30 The Boeing Company Global position system (GPS) user receiver and geometric surface processing for all-in-view coherent GPS signal PRN codes acquisition and navigation solution
FR2898998B1 (en) 2006-03-21 2008-07-25 Thales Sa METHOD AND DEVICE FOR FAST CORRELATION CALCULATION
FI118394B (en) 2006-05-26 2007-10-31 Savcor One Oy A system and method for locating a GPS device
US8000381B2 (en) 2007-02-27 2011-08-16 Hemisphere Gps Llc Unbiased code phase discriminator
ES2360769B1 (en) 2007-04-30 2012-05-08 Navento Technologies, S.L PROCEDURE AND SYSTEM OF LOCALIZATION AND DEVICE PORT�? TIL LOCALIZABLE.
EP2077453A1 (en) 2008-01-01 2009-07-08 SMA Solar Technology AG Evaluation method
KR20090076171A (en) 2008-01-07 2009-07-13 삼성전자주식회사 The method for estimating position and the apparatus thereof
US20090177395A1 (en) 2008-01-07 2009-07-09 David Stelpstra Navigation device and method
US7994971B2 (en) 2008-01-09 2011-08-09 Mayflower Communications Company, Inc. GPS-based measurement of roll rate and roll angle of spinning platforms
JP2011515725A (en) 2008-02-05 2011-05-19 ソニー エリクソン モバイル コミュニケーションズ, エービー Communication terminal including graphical bookmark manager
WO2009126587A1 (en) 2008-04-08 2009-10-15 Hemisphere Gps Llc Gnss-based mobile communication system and method
US20090259397A1 (en) 2008-04-10 2009-10-15 Richard Stanton Navigation system with touchpad remote
US8195357B2 (en) 2008-04-16 2012-06-05 GM Global Technology Operations LLC In-vehicle sensor-based calibration algorithm for yaw rate sensor calibration
US20090262974A1 (en) 2008-04-18 2009-10-22 Erik Lithopoulos System and method for obtaining georeferenced mapping data
TWI375012B (en) 2008-04-22 2012-10-21 En Min Jow Storage device with navigation function
US8725327B2 (en) 2008-04-22 2014-05-13 Exelis Inc. Navigation system and method of obtaining accurate navigational information in signal challenging environments
US8260552B2 (en) 2008-04-30 2012-09-04 Honeywell International Inc. Systems and methods for determining location information using dual filters
US8634785B2 (en) 2008-05-01 2014-01-21 Qualcomm Incorporated Radio frequency (RF) signal multiplexing
US20090273513A1 (en) 2008-05-01 2009-11-05 Skytraq Technology Inc. Method of dynamically optimizing the update rate of gps output data
US7606567B1 (en) 2008-05-01 2009-10-20 Daniel A. Katz Channel allocation for burst transmission to a diversity of satellites
JP2011521238A (en) 2008-05-22 2011-07-21 ノヴァテル インコーポレイテッド GNSS receiver using convenient communication signals and support information to shorten initial positioning time
US8244411B2 (en) 2008-05-27 2012-08-14 Baker David A Orientation-based wireless sensing apparatus
US8035559B2 (en) 2008-05-30 2011-10-11 O2 Micro, Inc Global positioning system receiver
US7671794B2 (en) 2008-06-02 2010-03-02 Enpoint, Llc Attitude estimation using intentional translation of a global navigation satellite system (GNSS) antenna
US7940210B2 (en) 2008-06-26 2011-05-10 Honeywell International Inc. Integrity of differential GPS corrections in navigation devices using military type GPS receivers
US8112201B2 (en) 2008-10-02 2012-02-07 Trimble Navigation Limited Automatic control of passive, towed implements
US8031111B2 (en) 2008-10-03 2011-10-04 Trimble Navigation Limited Compact transmission of GPS information using compressed measurement record format
US8860609B2 (en) 2008-10-23 2014-10-14 Texas Instruments Incorporated Loosely-coupled integration of global navigation satellite system and inertial navigation system
JP4709886B2 (en) 2008-10-24 2011-06-29 株式会社エヌ・ティ・ティ・ドコモ POSITIONING CONTROL DEVICE AND POSITIONING CONTROL METHOD
JP4780174B2 (en) 2008-10-24 2011-09-28 日本ビクター株式会社 Angular velocity sensor correction device, angular velocity calculation device, angular velocity sensor correction method, angular velocity calculation method
US7928905B2 (en) 2008-10-26 2011-04-19 Mitac International Corp. Method of using road signs to augment global positioning system (GPS) coordinate data for calculating a current position of a personal navigation device
US20100106414A1 (en) 2008-10-27 2010-04-29 John Whitehead Method of performing routing with artificial intelligence
US8836576B2 (en) 2008-10-27 2014-09-16 Mediatek Inc. Power saving method adaptable in GNSS device
US20100111372A1 (en) 2008-11-03 2010-05-06 Microsoft Corporation Determining user similarities based on location histories
KR101677756B1 (en) 2008-11-03 2016-11-18 삼성전자주식회사 Method and apparatus for setting up automatic optimized gps reception period and map contents
US7855683B2 (en) 2008-11-04 2010-12-21 At&T Intellectual Property I, L.P. Methods and apparatuses for GPS coordinates extrapolation when GPS signals are not available
US8412456B2 (en) 2008-11-06 2013-04-02 Texas Instruments Incorporated Loosely-coupled integration of global navigation satellite system and inertial navigation system: speed scale-factor and heading bias calibration
US8447517B2 (en) 2008-11-06 2013-05-21 Texas Instruments Incorporated Tightly-coupled GNSS/IMU integration filter having speed scale-factor and heading bias calibration
US7948434B2 (en) 2008-11-13 2011-05-24 Broadcom Corporation Method and system for maintaining a GNSS receiver in a hot-start state
US8159391B2 (en) 2008-11-13 2012-04-17 Ecole Polytechnique Federale De Lausanne (Epfl) Method to secure GNSS based locations in a device having GNSS receiver
US9048905B2 (en) 2008-11-14 2015-06-02 Mediatek Inc. Method and system for RF transmitting and receiving beamforming with location or GPS guidance
US20100124210A1 (en) 2008-11-14 2010-05-20 Ralink Technology Corporation Method and system for rf transmitting and receiving beamforming with gps guidance
US7994977B2 (en) 2008-12-02 2011-08-09 Sirf Technology Inc. Method and apparatus for a GPS receiver capable or reception of GPS signals and binary offset carrier signals

Patent Citations (106)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3727710A (en) * 1971-05-13 1973-04-17 Gen Motors Corp Steer control for a track-laying vehicle
US4637474A (en) * 1974-11-05 1987-01-20 Leonard Willie B Tractor and towed implement with elevation control system for implement including pressure responsive valve actuator
US4132272A (en) * 1977-06-30 1979-01-02 International Harvester Company Tractor hitch position control system
US4894662A (en) * 1982-03-01 1990-01-16 Western Atlas International, Inc. Method and system for determining position on a moving platform, such as a ship, using signals from GPS satellites
US4739448A (en) * 1984-06-25 1988-04-19 Magnavox Government And Industrial Electronics Company Microwave multiport multilayered integrated circuit chip carrier
US4812991A (en) * 1986-05-01 1989-03-14 Magnavox Govt. And Industrial Electronics Company Method for precision dynamic differential positioning
US4802545A (en) * 1986-10-15 1989-02-07 J. I. Case Company Steering control system for articulated vehicle
US4813991A (en) * 1988-05-20 1989-03-21 Thomson Consumer Electronics, Inc. Universal stem mold for manufacturing a molded glass stem
US4918607A (en) * 1988-09-09 1990-04-17 Caterpillar Industrial Inc. Vehicle guidance system
US4916577A (en) * 1988-12-20 1990-04-10 Grumman Aerospace Corporation Method of mounting removable modules
US5177489A (en) * 1989-09-26 1993-01-05 Magnavox Electronic Systems Company Pseudolite-aided method for precision kinematic positioning
US5191351A (en) * 1989-12-29 1993-03-02 Texas Instruments Incorporated Folded broadband antenna with a symmetrical pattern
US5615116A (en) * 1990-02-05 1997-03-25 Caterpillar Inc. Apparatus and method for autonomous vehicle navigation using path data
US5612883A (en) * 1990-02-05 1997-03-18 Caterpillar Inc. System and method for detecting obstacles in the path of a vehicle
US5390125A (en) * 1990-02-05 1995-02-14 Caterpillar Inc. Vehicle position determination system and method
US5100229A (en) * 1990-08-17 1992-03-31 Spatial Positioning Systems, Inc. Spatial positioning system
US5185610A (en) * 1990-08-20 1993-02-09 Texas Instruments Incorporated GPS system and method for deriving pointing or attitude from a single GPS receiver
US5390207A (en) * 1990-11-28 1995-02-14 Novatel Communications Ltd. Pseudorandom noise ranging receiver which compensates for multipath distortion by dynamically adjusting the time delay spacing between early and late correlators
US5294970A (en) * 1990-12-31 1994-03-15 Spatial Positioning Systems, Inc. Spatial positioning system
US5293170A (en) * 1991-04-10 1994-03-08 Ashtech Inc. Global positioning system receiver digital processing technique
US5202829A (en) * 1991-06-10 1993-04-13 Trimble Navigation Limited Exploration system and method for high-accuracy and high-confidence level relative position and velocity determinations
US5296861A (en) * 1992-11-13 1994-03-22 Trimble Navigation Limited Method and apparatus for maximum likelihood estimation direct integer search in differential carrier phase attitude determination systems
US5390124A (en) * 1992-12-01 1995-02-14 Caterpillar Inc. Method and apparatus for improving the accuracy of position estimates in a satellite based navigation system
US5739785A (en) * 1993-03-04 1998-04-14 Trimble Navigation Limited Location and generation of high accuracy survey control marks using satellites
US5490073A (en) * 1993-04-05 1996-02-06 Caterpillar Inc. Differential system and method for a satellite based navigation
US6542077B2 (en) * 1993-06-08 2003-04-01 Raymond Anthony Joao Monitoring apparatus for a vehicle and/or a premises
US5504482A (en) * 1993-06-11 1996-04-02 Rockwell International Corporation Automobile navigation guidance, control and safety system
US5610522A (en) * 1993-09-30 1997-03-11 Commissariat A L'energie Atomique Open magnetic structure including pole pieces forming a V-shape threbetween for high homogeneity in an NMR device
US5890091A (en) * 1994-02-18 1999-03-30 Trimble Navigation Ltd. Centimeter accurate global positioning system receiver for on-the-fly real-time kinematic measurement and control
US5617100A (en) * 1994-04-07 1997-04-01 Matsushita Electric Industrial Co., Ltd. Accurate position measuring system
US5491636A (en) * 1994-04-19 1996-02-13 Glen E. Robertson Anchorless boat positioning employing global positioning system
US5495257A (en) * 1994-07-19 1996-02-27 Trimble Navigation Limited Inverse differential corrections for SATPS mobile stations
US5596328A (en) * 1994-08-23 1997-01-21 Honeywell Inc. Fail-safe/fail-operational differential GPS ground station system
US5610616A (en) * 1994-08-23 1997-03-11 Honeywell Inc. Differential GPS ground station system
US5610845A (en) * 1994-08-30 1997-03-11 United Technologies Corporation Multi-parameter air data sensing technique
US5511623A (en) * 1994-09-12 1996-04-30 Orthman Manufacturing, Inc. Quick hitch guidance device
US5604506A (en) * 1994-12-13 1997-02-18 Trimble Navigation Limited Dual frequency vertical antenna
US5600670A (en) * 1994-12-21 1997-02-04 Trimble Navigation, Ltd. Dynamic channel allocation for GPS receivers
US5731786A (en) * 1994-12-29 1998-03-24 Trimble Navigation Limited Compaction of SATPS information for subsequent signal processing
US5621646A (en) * 1995-01-17 1997-04-15 Stanford University Wide area differential GPS reference system and method
US5617317A (en) * 1995-01-24 1997-04-01 Honeywell Inc. True north heading estimator utilizing GPS output information and inertial sensor system output information
US5608393A (en) * 1995-03-07 1997-03-04 Honeywell Inc. Differential ground station repeater
US5592382A (en) * 1995-03-10 1997-01-07 Rockwell International Corporation Directional steering and navigation indicator
US5706015A (en) * 1995-03-20 1998-01-06 Fuba Automotive Gmbh Flat-top antenna apparatus including at least one mobile radio antenna and a GPS antenna
US6055477A (en) * 1995-03-31 2000-04-25 Trimble Navigation Ltd. Use of an altitude sensor to augment availability of GPS location fixes
US5875408A (en) * 1995-07-17 1999-02-23 Imra America, Inc. Automated vehicle guidance system and method for automatically guiding a vehicle
US5717593A (en) * 1995-09-01 1998-02-10 Gvili; Michael E. Lane guidance system
US6018313A (en) * 1995-09-01 2000-01-25 Tilmar Konle System for determining the location of mobile objects
US6205401B1 (en) * 1995-09-19 2001-03-20 Litef Gmbh Navigation system for a vehicle, especially a land craft
US6215828B1 (en) * 1996-02-10 2001-04-10 Telefonaktiebolaget Lm Ericsson (Publ) Signal transformation method and apparatus
US6014101A (en) * 1996-02-26 2000-01-11 Trimble Navigation Limited Post-processing of inverse DGPS corrections
US5864318A (en) * 1996-04-26 1999-01-26 Dorne & Margolin, Inc. Composite antenna for cellular and gps communications
US5725230A (en) * 1996-06-17 1998-03-10 Walkup; Joseph L. Self steering tandem hitch
US6014608A (en) * 1996-11-04 2000-01-11 Samsung Electronics Co., Ltd. Navigator apparatus informing or peripheral situation of the vehicle and method for controlling the same
US5877725A (en) * 1997-03-06 1999-03-02 Trimble Navigation Limited Wide augmentation system retrofit receiver
US5864315A (en) * 1997-04-07 1999-01-26 General Electric Company Very low power high accuracy time and frequency circuits in GPS based tracking units
US6052647A (en) * 1997-06-20 2000-04-18 Stanford University Method and system for automatic control of vehicles based on carrier phase differential GPS
US6023239A (en) * 1997-10-08 2000-02-08 Arinc, Inc. Method and system for a differential global navigation satellite system aircraft landing ground station
US6198992B1 (en) * 1997-10-10 2001-03-06 Trimble Navigation Limited Override for guidance control system
US6191730B1 (en) * 1997-12-15 2001-02-20 Trimble Navigation Limited Two-channel fast-sequencing high-dynamics GPS navigation receiver
US6356602B1 (en) * 1998-05-04 2002-03-12 Trimble Navigation Limited RF integrated circuit for downconverting a GPS signal
US6345231B2 (en) * 1998-07-10 2002-02-05 Claas Selbstfahrende Erntemaschinen Gmbh Method and apparatus for position determining
US6199000B1 (en) * 1998-07-15 2001-03-06 Trimble Navigation Limited Methods and apparatus for precision agriculture operations utilizing real time kinematic global positioning system systems
US6515619B1 (en) * 1998-07-30 2003-02-04 Mckay, Jr. Nicholas D. Object location system
US6703973B1 (en) * 1998-08-19 2004-03-09 Trimble Navigation, Ltd. Guiding vehicle in adjacent swaths across terrain via satellite navigation and tilt measurement
US6336066B1 (en) * 1998-09-29 2002-01-01 Pellenc S.A. Process for using localized agricultural data to optimize the cultivation of perennial plants
US6198430B1 (en) * 1999-03-26 2001-03-06 Rockwell Collins, Inc. Enhanced differential GNSS carrier-smoothed code processing using dual frequency measurements
US6191733B1 (en) * 1999-06-01 2001-02-20 Modular Mining Systems, Inc. Two-antenna positioning system for surface-mine equipment
US6686878B1 (en) * 2000-02-22 2004-02-03 Trimble Navigation Limited GPS weather data recording system for use with the application of chemicals to agricultural fields
US6549835B2 (en) * 2000-09-28 2003-04-15 Nissan Motor Co., Ltd. Apparatus for and method of steering vehicle
US6377889B1 (en) * 2000-10-13 2002-04-23 Trimble Navigation Limited Non-linear method of guiding to arbitrary curves with adaptive feedback
US6380888B1 (en) * 2000-11-13 2002-04-30 The United States Of America As Represented By The Secretary Of The Navy Self-contained, self-surveying differential GPS base station and method of operating same
US20020067849A1 (en) * 2000-12-06 2002-06-06 Xerox Corporation Adaptive tree-based lookup for non-separably divided color tables
US6539303B2 (en) * 2000-12-08 2003-03-25 Mcclure John A. GPS derived swathing guidance system
US6711501B2 (en) * 2000-12-08 2004-03-23 Satloc, Llc Vehicle navigation system and method for swathing applications
US6688403B2 (en) * 2001-03-22 2004-02-10 Deere & Company Control system for a vehicle/implement hitch
US6865484B2 (en) * 2001-04-11 2005-03-08 Mitsui & Co., Ltd. Satellite position measurement system
US20020171427A1 (en) * 2001-04-24 2002-11-21 The United States Of America Represented By The Secretary Of The Navy Magnetic anomaly sensing system and methods for maneuverable sensing platforms
US6516271B2 (en) * 2001-06-29 2003-02-04 The Regents Of The University Of California Method and apparatus for ultra precise GPS-based mapping of seeds or vegetation during planting
US20030014171A1 (en) * 2001-07-16 2003-01-16 Xinghan Ma Harvester with intelligent hybrid control system
US20040039514A1 (en) * 2002-04-05 2004-02-26 Steichen John Carl Method and apparatus for controlling a gas-emitting process and related devices
US6865465B2 (en) * 2002-05-06 2005-03-08 Csi Wireless, Inc. Method and system for implement steering for agricultural vehicles
US20040006426A1 (en) * 2002-07-03 2004-01-08 Armstrong Ray G. Vehicle locating system
US6990399B2 (en) * 2002-10-31 2006-01-24 Cnh America Llc Agricultural utility vehicle and method of controlling same
US7162348B2 (en) * 2002-12-11 2007-01-09 Hemisphere Gps Llc Articulated equipment position control system and method
US7689354B2 (en) * 2003-03-20 2010-03-30 Hemisphere Gps Llc Adaptive guidance system and method
US7505848B2 (en) * 2003-03-31 2009-03-17 Deere & Company Path planner and method for planning a contour path of a vehicle
US7191061B2 (en) * 2003-04-17 2007-03-13 Battelle Energy Alliance, Llc Auto-steering apparatus and method
US7479900B2 (en) * 2003-05-28 2009-01-20 Legalview Assets, Limited Notification systems and methods that consider traffic flow predicament data
US7006032B2 (en) * 2004-01-15 2006-02-28 Honeywell International, Inc. Integrated traffic surveillance apparatus
US20060031664A1 (en) * 2004-08-04 2006-02-09 National Instruments Corporation Method and system for loading and updating firmware in an embedded device
US20060103573A1 (en) * 2004-11-12 2006-05-18 Geier George J Frequency error tracking in satellite positioning system receivers
US20060290779A1 (en) * 2005-01-18 2006-12-28 Reverte Carlos F Autonomous inspector mobile platform
US7324915B2 (en) * 2005-07-14 2008-01-29 Biosense Webster, Inc. Data transmission to a position sensor
US20070193798A1 (en) * 2005-10-21 2007-08-23 James Allard Systems and methods for obstacle avoidance
US20070194984A1 (en) * 2006-02-21 2007-08-23 Honeywell International Inc. System and method for detecting false navigation signals
US20070247361A1 (en) * 2006-04-21 2007-10-25 Broadcom Corporation, A California Corporation Communication system with assisted GPS and SBAS
US20100013703A1 (en) * 2006-05-25 2010-01-21 The Boeing Company Gps gyro calibration
US20100039318A1 (en) * 2006-11-06 2010-02-18 Marcin Michal Kmiecik Arrangement for and method of two dimensional and three dimensional precision location and orientation determination
US20100039316A1 (en) * 2008-02-25 2010-02-18 Sirf Technology, Inc. System and Method for Operating a GPS Device in a Micro Power Mode
US20100030470A1 (en) * 2008-07-02 2010-02-04 O2Micro, Inc. Global positioning system and dead reckoning (gps&dr) integrated navigation system
US20100026569A1 (en) * 2008-07-31 2010-02-04 Honeywell International Inc. Method and apparatus for location detection using gps and wifi/wimax
US20100039320A1 (en) * 2008-08-14 2010-02-18 Boyer Pete A Hybrid GNSS and TDOA Wireless Location System
US20100039321A1 (en) * 2008-08-15 2010-02-18 Charles Abraham Method and system for calibrating group delay errors in a combined gps and glonass receiver
US20100063649A1 (en) * 2008-09-10 2010-03-11 National Chiao Tung University Intelligent driving assistant systems
US20100060518A1 (en) * 2008-09-11 2010-03-11 Bar-Sever Yoaz E Method and apparatus for autonomous, in-receiver prediction of gnss ephemerides

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE48527E1 (en) 2007-01-05 2021-04-20 Agjunction Llc Optical tracking vehicle control system and method
US8583326B2 (en) 2010-02-09 2013-11-12 Agjunction Llc GNSS contour guidance path selection
US20140074340A1 (en) * 2012-09-10 2014-03-13 Trimble Navigation Limited Agricultural autopilot steering compensation
US9778659B2 (en) * 2012-09-10 2017-10-03 Trimble Inc. Agricultural autopilot steering compensation
EP3036593A1 (en) * 2013-08-20 2016-06-29 Deere & Company Sound feedback system for vehicles
US9438991B2 (en) 2013-08-20 2016-09-06 Deere & Company Sound feedback system for vehicles
CN105474114B (en) * 2013-08-20 2021-04-27 迪尔公司 Sound feedback system for vehicle
EP3036593A4 (en) * 2013-08-20 2017-06-07 Deere & Company Sound feedback system for vehicles
CN105474114A (en) * 2013-08-20 2016-04-06 迪尔公司 Sound feedback system for vehicles
WO2015026470A1 (en) 2013-08-20 2015-02-26 Deere & Company Sound feedback system for vehicles
CN103955223A (en) * 2014-04-10 2014-07-30 北京控制工程研究所 Posture and path coupling control method for deep space exploration soft landing process
US9754192B2 (en) 2014-06-30 2017-09-05 Microsoft Technology Licensing, Llc Object detection utilizing geometric information fused with image data
US20170124509A1 (en) * 2015-10-28 2017-05-04 International Business Machines Corporation Entity location management using vehicle logistics information
US11167792B2 (en) * 2015-11-19 2021-11-09 Agjunction Llc Single-mode implement steering
US11180189B2 (en) * 2015-11-19 2021-11-23 Agjunction Llc Automated reverse implement parking
US10604184B2 (en) * 2017-08-31 2020-03-31 Ford Global Technologies, Llc Adaptive steering control for robustness to errors in estimated or user-supplied trailer parameters
US20190061817A1 (en) * 2017-08-31 2019-02-28 Ford Global Technologies, Llc Adaptive steering control for robustness to errors in estimated or user-supplied trailer parameters
US20220039309A1 (en) * 2019-07-05 2022-02-10 Deere & Company Apparatus and methods for vehicle steering to follow a curved path
US11778936B2 (en) * 2019-07-05 2023-10-10 Deere & Company Apparatus and methods for vehicle steering to follow a curved path
US11914379B2 (en) 2020-12-23 2024-02-27 Deere & Company Methods and apparatus to generate a path plan
US20220304227A1 (en) * 2021-03-25 2022-09-29 Trimble Inc. Velocity control for improving cross track error of implement-equipped machines

Also Published As

Publication number Publication date
EP2114751A1 (en) 2009-11-11
AU2008203618B2 (en) 2013-07-11
AU2008203618A1 (en) 2008-07-10
CA2674398A1 (en) 2008-07-10
US20080167770A1 (en) 2008-07-10
BRPI0806495A2 (en) 2014-04-22
WO2008080193A1 (en) 2008-07-10
EP2114751B1 (en) 2020-04-15
CA2674398C (en) 2012-05-29
US7835832B2 (en) 2010-11-16
EP2114751A4 (en) 2012-02-22

Similar Documents

Publication Publication Date Title
EP2114751B1 (en) A vehicle control system
US8768558B2 (en) Optical tracking vehicle control system and method
US11393216B2 (en) Method of computer vision based localisation and navigation and system for performing the same
EP3878256B1 (en) Method and system for estimating surface roughness of ground for an off-road vehicle to control steering
JP3560959B2 (en) Method and system for generating a following path of a vehicle
EP3878255B1 (en) Method and system for estimating surface roughness of ground for an off-road vehicle to control steering
US6463374B1 (en) Form line following guidance system
US11685381B2 (en) Method and system for estimating surface roughness of ground for an off-road vehicle to control ground speed
EP3874929B1 (en) Method and system for estimating surface roughness of ground for an off-road vehicle to control an implement
EP3874928A1 (en) Method and system for estimating surface roughness of ground for an off-road vehicle to control an implement
Miller et al. Sensitivity analysis of a tightly-coupled GPS/INS system for autonomous navigation
AU2020336151A1 (en) System and method of control for autonomous or remote-controlled vehicle platform
USRE48527E1 (en) Optical tracking vehicle control system and method
Miller et al. Tightly-coupled GPS/INS system design for autonomous urban navigation
Stombaugh Automatic guidance of agricultural vehicles at higher speeds
Mäkelä Outdoor navigation of mobile robots
Cordesses et al. GPS-based control of a land vehicle
Chemhengcharoen et al. Development of a prototype of autonomous vehicle for agriculture applications
Kiriy A Localization System for Autonomous Golf Course Mowers.
王昊 Development of Robot Vehicles Adaptable to Changing Ground Conditions and Their Work Management System
Cerrato Gps-based autonomous navigation of unmanned ground vehicles in precision agriculture applications
Πετρόπουλος State estimation for automated vehicles
Toth et al. The TerraMax OSU/Oshkosh Team at the DARPA Grand Challenge
MacLeod Agricultural vehicle positioning and its integration with a large-scale land information system
MOWERS Evgeni Kiriy

Legal Events

Date Code Title Description
AS Assignment

Owner name: BEELINE TECHNOLOGIES PTY LTD, AUSTRALIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:MACDONALD, ANDREW JOHN;REEVE, DAVID ROBERT;MORRISON, CAMPBELL ROBERT;REEL/FRAME:026023/0434

Effective date: 20070404

AS Assignment

Owner name: HEMISPHERE GPS LLC, CANADA

Free format text: NUNC PRO TUNC ASSIGNMENT;ASSIGNOR:BEELINE TECHNOLOGIES PTY LTD.;REEL/FRAME:026032/0915

Effective date: 20080421

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION