US20230413713A1 - Using non-real-time computers for agricultural guidance systems - Google Patents
Using non-real-time computers for agricultural guidance systems Download PDFInfo
- Publication number
- US20230413713A1 US20230413713A1 US18/465,725 US202318465725A US2023413713A1 US 20230413713 A1 US20230413713 A1 US 20230413713A1 US 202318465725 A US202318465725 A US 202318465725A US 2023413713 A1 US2023413713 A1 US 2023413713A1
- Authority
- US
- United States
- Prior art keywords
- computing device
- steering
- geo
- waypoints
- program
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 claims description 20
- 238000000034 method Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000000737 periodic effect Effects 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims description 3
- 230000015654 memory Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000009313 farming Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003306 harvesting Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01B—SOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
- A01B69/00—Steering of agricultural machines or implements; Guiding agricultural machines or implements on a desired track
- A01B69/007—Steering or guiding of agricultural vehicles, e.g. steering of the tractor to keep the plough in the furrow
- A01B69/008—Steering or guiding of agricultural vehicles, e.g. steering of the tractor to keep the plough in the furrow automatic
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01B—SOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
- A01B79/00—Methods for working soil
- A01B79/005—Precision agriculture
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D15/00—Steering not otherwise provided for
- B62D15/02—Steering position indicators ; Steering position determination; Steering aids
- B62D15/025—Active steering aids, e.g. helping the driver by actively influencing the steering system after environment evaluation
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/0011—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
- G05D1/0016—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement characterised by the operator's input device
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/0011—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement
- G05D1/0044—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot associated with a remote control arrangement by providing the operator with a computer generated representation of the environment of the vehicle, e.g. virtual reality, maps
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0219—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/0278—Control 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
- G06F5/065—Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/021—Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D2201/00—Application
- G05D2201/02—Control of position of land vehicles
- G05D2201/0201—Agriculture or harvesting machine
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A40/00—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production
- Y02A40/10—Adaptation technologies in agriculture, forestry, livestock or agroalimentary production in agriculture
Definitions
- GNSS global navigation satellite systems
- inertial measurement sensors computers to guide a tractor through a field following carefully defined paths to improve crop yield, reduce operator fatigue, comply to environmental regulations, and reduce cost.
- the cost of these systems limits their application to only the largest farms with the economies of large scale required to purchase them.
- a precision steering computer installed on a tractor uses waypoints generated by the operators hand-held smart-device to navigate around a field.
- the smart-device may be used as the primary interface for the operator and is one component of an entire precision agriculture guidance system. Batched, time ordered waypoints generated by the smart-device represent a list of coordinates for steering the tractor.
- the precision agricultural guidance system may be used with any vehicle to perform any type of agricultural or non-agricultural operation.
- the precision agricultural guidance system may be used on a combine to harvest a crop in a field or may be used with construction machinery on construction sites, such as when building a road.
- the waypoints are consumed and discarded by the real-time steering computer in the order received from the non-real-time smart device.
- the path planned by the operator is generated by the smart device and the progress and status of the tractor are displayed on the same smart-device.
- Waypoints consisting of time ordered geo-location coordinates along the operator defined path, are generated on the smart-device in advance of a tractor arriving at those locations. These waypoints are created in large batches a minute or more before the precision steering computer on the tractor needs them to stay on the commanded path. Batch waypoint generation conform well with the computing architecture of non-real-time devices such as smart-devices, laptops, and desktop computers and can be sent to the real-time computer within the precision steering system using a wired connection or a wireless technology such as Bluetooth or WiFi.
- Batched waypoints are stored in the precision steering computer in the order they are used for steering the vehicle along a predetermined path.
- the steering computer can continue to pull future waypoints from the queued waypoint list ensuring the next waypoint is available. If the waypoint queue is depleted prior to the users smart-device providing the next batch of waypoints, the steering computer can notify the user to stop the tractor.
- the division of computing between the real time domain of the steering computer and the non-real-time domain of the smart device is facilitated by way of the queue of waypoints are stored and transmitted as batches representing many minutes of future tractor travel.
- FIG. 1 illustrates a guidance steering system that steers a tractor with a non-deterministic, non-real-time guidance computer.
- FIG. 2 illustrates operations of the precision guidance system shown in FIG. 1 .
- FIG. 3 shows an example computer system used in the guidance system.
- FIG. 1 shows a precision guidance system 100 used for steering a tractor 101 .
- a steering computer 103 changes the attitude of tractor 101 by sending commands to a steering actuator 102 to turn a steering wheel of tractor 101 or to regulate a hydraulic steering actuator.
- Steering controller software 104 operated by steering computer 103 uses inputs from an inertial measurement unit (IMU) 110 and a global navigation satellite system (GNSS) 111 to compute a steering correction based on a computed error in the location of tractor 101 versus a current waypoint command from a waypoint queue 105 .
- IMU inertial measurement unit
- GNSS global navigation satellite system
- Steering computer 103 is known to those skilled in the art and are therefore not described in further detail.
- One example steering computer is sold by AgJunction, Inc., 9105 E. Del Camino Dr. #115 Scottsdale, AZ USA 85258.
- a tractor operator 109 uses a smart device 106 to plan a route for tractor 101 through a field.
- Smart device 106 may be a smart phone, tablet computer, laptop computer, or any other portable or handheld device.
- the tractor operator 109 uses path planner software 108 operating in smart device 106 when prepare the path for automatically steering tractor 101 .
- Path planning software such as chart plotters, are known to those skilled in the art and are therefore not described in further detail.
- the output of path planner 108 is a time ordered series of waypoints 114 stored in an output waypoint queue 107 of smart device 106 .
- Smart device 106 transmits waypoints 114 in output waypoint queue 107 via wireless or wired communication channel to a receiving input waypoint queue 105 in steering computer 105 .
- waypoints 114 may be transmitted via a WiFi or Bluetooth wireless connection or via a universal serial bus (USB) wired connection.
- USB universal serial bus
- smart device 106 may send waypoints 114 in batches to steering computer 103 .
- Steering controller 104 consumes received waypoints 114 from local input waypoint queue 105 as tractor 101 travels over the commanded location within each waypoint 114 .
- steering controller 104 steers from a current location to a next waypoint 114 in waypoint queue 105 .
- steering controller 104 steers to a next subsequently stored waypoint 114 in waypoint queue 105 .
- FIG. 2 shows an overall process 200 for computing, communicating, and executing steering operations based on a series of waypoints 114 .
- tractor operator 109 in operation 201 initiates automatic steering process 200 where smart device 106 generates waypoints 114 and steering computer 103 generates steering commands based on waypoints 114 .
- path planner 108 in smart device 106 uses a previously defined path through a field defined by tractor operator 109 to generate a time series of waypoints 114 .
- smart device 106 may include a user interface 112 with a display and keyboard or touch screen input.
- Path planner 108 may display an electronic map of a field on user interface 112 .
- Operator 109 then may select points on the electronic map to create a field path for tractor 101 .
- Path planner 108 may generate a set of waypoints 114 that each include a latitude, longitude, and a time identifier indicating the order waypoints 114 were selected by operator 109 .
- smart device 106 pushes waypoints 114 into waypoint queue 107 prior to transmission. Smart device 106 then transmits a group or batch of the waypoints 114 for the field path to waypoint queue 105 in steering computer 103 .
- smart device 106 enters a loop waiting for waypoint queue 107 in smart device 106 to be empty 204 which indicates the last waypoints 114 of the path have been transmitted by smart device 106 to steering computer 103 .
- smart device 106 in operation 205 queries steering computer 103 for the status of waypoint queue 105 . If input queue 105 in steering computer 103 is full, or steering computer 103 is busy, smart device 106 will hold-off transmitting additional waypoints 114 and wait before querying steering computer 103 again.
- This buffering protocol allows use of a low-cost shallow buffer depth for waypoint queue 105 in steering computer 103 .
- smart device 106 may receive a message back from steering computer 103 indicating steering computer 103 is ready to receive more waypoints.
- Smart device 106 in operation 206 then bundles a next number of waypoints from output queue 107 into a batch appropriate to the size of memory used as waypoint input queue 105 .
- Smart device 106 in operation 207 then transmits the batch of waypoints 114 to queue 105 in steering computer 103 prior to returning to operation 204 .
- Smart device 208 starts operation 208 after the last waypoint 114 is transmitted from waypoint queue 107 to waypoint input queue 105 in the steering computer 103 .
- Smart device 106 then continuously queries steering computer 103 in operation 208 waiting for tractor 101 to reach the last waypoint.
- smart device 106 in operation 209 may display a message on user interface display 112 indicating tractor 101 has reached the end of the selected path.
- precision steering system 100 includes a first navigation computing device 106 configured to generate a time series of geo-location waypoints 114 for a path.
- Second steering computing device 103 includes input buffer 105 configured to receive the geo-location waypoints from first navigation computing device 106 .
- Second computing device 103 is configured to generate steering commands for steering vehicle 101 based on waypoints 114 received by input buffer 105 .
- First navigation computing device 106 may be a non-real-time computer configured to run path planning software on a best-effort schedule and second computer 103 may be a real-time computer running steering control software at a periodic rate.
- first navigation computing device 106 may operate on a handheld smart device and the second steering computing device 103 may operate on a dedicated vehicle steering control system coupled to steering actuator 102 that steers vehicle 101 based on the steering commands.
- First navigation computing device 106 may transmit geo-location waypoints 114 to input buffer 105 on second computer 103 over a wireless network. In another example, first navigation computing device 106 may transmit geo-location waypoints 114 in batches to input buffer 105 in second computer 103 .
- second steering computing device 106 uses input buffer 105 as a First-In-First-Out (FIFO) queue for processing geo-location waypoints 114 .
- second steering computing device 103 is configured to send status messages to first navigation computing device 106 indicating when the First-In-First-Out queue is ready to accept additional geo-location waypoints 114 .
- first navigation computing device 106 includes output buffer 107 for storing the geo-location waypoints 114 .
- First navigation computing device 106 also may operate output buffer 107 as a First-In-First-Out (FIFO) queue first buffering geo-location waypoints 114 and then transmitting the buffered geo-location waypoints 114 to second steering computing device 103 .
- FIFO First-In-First-Out
- path planner 108 repeatedly sends queries to steering controller 104 to check for available space in queue 105 . Additional batches of waypoints 114 are sent to queue 105 based on the available space. For example, second steering computing device 103 may send a first message to first navigation computing device 106 indicating input buffer 105 is approaching capacity for storing the geo-location waypoints 114 . The message may cause first navigation computing device 106 to stop sending additional geo-location waypoints 114 until receiving a second continue transmitting message from second steering computing device 103 .
- second steering computing device 103 is configured to send a message to first navigation computing device 106 indicating a current capacity of input buffer 105 .
- First navigation computing device 106 may decide to send additional geo-location waypoints 114 to second steering computing device 103 based on the current capacity of input buffer 105 .
- first navigation computing device 106 is configured to encode geo-location waypoints 114 transmitted to second steering computing device 103 to reduce transmission errors.
- first navigation computing device 106 may use orthogonal frequency-division multiplexing (OFDM) to overcome errors in mobile communication channels.
- OFDM orthogonal frequency-division multiplexing
- a first program such as path planner 108 , generates a time series of future geo-location waypoints 114 for a selected vehicle path and transmits waypoints 114 over a communication channel to an asynchronous buffer 105 .
- a second program such as steering controller 104 , generates steering commands for steering vehicle 101 based on the geo-location waypoints 114 in buffer 105 .
- a same computing device 106 or 103 runs first program 108 and second program 104 .
- first computing device 106 runs first program 108 and second computing device 103 operating asynchronously from first computing device 106 runs second program 104 .
- first program 108 and second program 104 run on separate processor cores in a same physical central processing unit.
- first program 108 and second program 104 run on a same processing device 106 or 103 controlled by a time partitioned operating system. In yet another example, first program 108 and second program 104 may run on a same processing device 106 or 103 . An operating system running on the processing device 106 or 103 may asynchronously generate target waypoints 114 with first program 108 and the steering commands with second program 104 .
- Utilizing smart device 208 in conjunction with steering computer 103 provides many technical computing advantages. For example, a large amount of memory storage can be offloaded onto start device 106 . Further, the computational and memory requirements for operating electronic maps, chart plotters/path planners, and display and user input interfaces can all be offloaded to smart device 106 or to cloud based services accessed by smart device 106 . In addition, any wireless communication hardware or software needed to communicate with a central server or cloud based services that may provide electronic maps and path planning software can also be offloaded to smart device 106 and/or the cloud based service.
- Precision agriculture guidance system 100 lowers the cost of precision agriculture to improve yield, reduce fatigue, and lower ecological impact of farming. It enables a commodity processing platform such as a smart-phone or tablet to act as the user interface and path planning element of an agricultural guidance system. It maintains the safety capabilities of existing systems while adding flexibility to use lower cost, non-proprietary hardware for the user interface, path planning, logging, diagnostics, and connectivity functions. These advantages also include the ability to scale a single guidance system into a larger coordinated fleet without requiring expensive on-premises computing or communications hardware.
- FIG. 3 shows a computing device 1000 that may be used for implementing or operating steering computer 103 or smart device 106 used in precision guidance system 100 discussed above.
- the computing device 1000 may operate in the capacity of a server or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment.
- computing device 1000 may be a personal computer (PC), a tablet, a Personal Digital Assistant (PDA), a cellular telephone, a smart phone, a web appliance, central processing unit, programmable logic device, or any other machine or device capable of executing instructions 1006 (sequential or otherwise) that specify actions to be taken by that machine.
- PC personal computer
- PDA Personal Digital Assistant
- computing device 1000 may include any collection of devices or circuitry that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the operations discussed above.
- Computing device 1000 may be part of an integrated control system or system manager, or may be provided as a portable electronic device configured to interface with a networked system either locally or remotely via wireless transmission.
- Processors 1004 may comprise a central processing unit (CPU), a graphics processing unit (GPU), programmable logic devices, dedicated processor systems, micro controllers, or microprocessors that may perform some or all of the operations described above. Processors 1004 may also include, but may not be limited to, an analog processor, a digital processor, a microprocessor, multi-core processor, processor array, network processor, etc.
- CPU central processing unit
- GPU graphics processing unit
- programmable logic devices dedicated processor systems
- micro controllers microprocessors that may perform some or all of the operations described above.
- Processors 1004 may also include, but may not be limited to, an analog processor, a digital processor, a microprocessor, multi-core processor, processor array, network processor, etc.
- Processors 1004 may execute instructions or “code” 1006 stored in any one of memories 1008 , 1010 , or 1020 .
- the memories may store data as well. Instructions 1006 and data can also be transmitted or received over a network 1014 via a network interface device 1012 utilizing any one of a number of well-known transfer protocols.
- Memories 1008 , 1010 , and 1020 may be integrated together with processing device 1000 , for example RAM or FLASH memory disposed within an integrated circuit microprocessor or the like.
- the memory may comprise an independent device, such as an external disk drive, storage array, or any other storage devices used in database systems.
- the memory and processing devices may be operatively coupled together, or in communication with each other, for example by an I/O port, network connection, etc. such that the processing device may read a file stored on the memory.
- Some memory may be “read only” by design (ROM) by virtue of permission settings, or not.
- Other examples of memory may include, but may be not limited to, WORM, EPROM, EEPROM, FLASH, etc. which may be implemented in solid state semiconductor devices.
- Other memories may comprise moving parts, such a conventional rotating disk drive. All such memories may be “machine-readable” in that they may be readable by a processing device.
- Computer-readable storage medium may include all of the foregoing types of memory, as well as new technologies that may arise in the future, as long as they may be capable of storing digital information in the nature of a computer program or other data, at least temporarily, in such a manner that the stored information may be “read” by an appropriate processing device.
- the term “computer-readable” may not be limited to the historical usage of “computer” to imply a complete mainframe, mini-computer, desktop, wireless device, or even a laptop computer. Rather, “computer-readable” may comprise storage medium that may be readable by a processor, processing device, or any computing system. Such media may be any available media that may be locally and/or remotely accessible by a computer or processor, and may include volatile and non-volatile media, and removable and non-removable media.
- Computing device 1000 can further include a video display 1016 , such as a liquid crystal display (LCD) or a cathode ray tube (CRT) and a user interface 1018 , such as a keyboard, mouse, touch screen, etc. All of the components of computing device 1000 may be connected together via a bus 1002 and/or network.
- a video display 1016 such as a liquid crystal display (LCD) or a cathode ray tube (CRT)
- a user interface 1018 such as a keyboard, mouse, touch screen, etc. All of the components of computing device 1000 may be connected together via a bus 1002 and/or network.
- Computing device 1000 may include any combination of sensors 1022 including, but not limited to, GSP, IMU, video camera, LIDAR, and radar.
- Computing device 100 also may include a wireless transceiver 1024 for wirelessly transmitting and receiving commands to and from other computing devices.
Abstract
A precision steering computer installed on a tractor uses waypoints generated by a hand-held smart-device to steer a tractor. The smart-device is the operators primary interface and is a component of the entire precision agriculture guidance system. The batched, time ordered waypoints represent a list of coordinates for steering the tractor. As the tractor is automatically steered in the field, the waypoints are consumed and discarded by the real-time steering computer in the order they are received from the non-real-time smart device. A planned path is generated by the tractor operator on the smart device and the tractors progress and status are displayed on the same smart-device.
Description
- The present application is a continuation application of U.S. patent application Ser. No. 16/570,358, filed on Sep. 13, 2019 which claims priority to U.S. Provisional Patent Application Ser. No. 62/731,698, filed on Sep. 14, 2018, which are all incorporated by reference in their entirety.
- Precision agriculture uses technologies such as global navigation satellite systems (GNSS), inertial measurement sensors, and computers to guide a tractor through a field following carefully defined paths to improve crop yield, reduce operator fatigue, comply to environmental regulations, and reduce cost. The cost of these systems limits their application to only the largest farms with the economies of large scale required to purchase them.
- Reducing the cost of precision agriculture technologies can be accomplished by leveraging common smart devices such as smart-phones and tablet computers. The primary barrier to using these devices is their inherent non-determinism where disruptions to wireless communications, application processor time allocation, and multitasking can block the steering and guidance software. Disruptions to timely operation complicate smart device integration into larger systems.
- The disclosure that follows solves this and other problems.
- In one example, a precision steering computer installed on a tractor uses waypoints generated by the operators hand-held smart-device to navigate around a field. The smart-device may be used as the primary interface for the operator and is one component of an entire precision agriculture guidance system. Batched, time ordered waypoints generated by the smart-device represent a list of coordinates for steering the tractor.
- The explanation below uses the example of a tractor plowing a field. However, it should be understood that the precision agricultural guidance system may be used with any vehicle to perform any type of agricultural or non-agricultural operation. For example, the precision agricultural guidance system may be used on a combine to harvest a crop in a field or may be used with construction machinery on construction sites, such as when building a road.
- As the vehicle moves over the field, the waypoints are consumed and discarded by the real-time steering computer in the order received from the non-real-time smart device. The path planned by the operator is generated by the smart device and the progress and status of the tractor are displayed on the same smart-device.
- Waypoints, consisting of time ordered geo-location coordinates along the operator defined path, are generated on the smart-device in advance of a tractor arriving at those locations. These waypoints are created in large batches a minute or more before the precision steering computer on the tractor needs them to stay on the commanded path. Batch waypoint generation conform well with the computing architecture of non-real-time devices such as smart-devices, laptops, and desktop computers and can be sent to the real-time computer within the precision steering system using a wired connection or a wireless technology such as Bluetooth or WiFi.
- Batched waypoints are stored in the precision steering computer in the order they are used for steering the vehicle along a predetermined path. In the event of a service interruption with the users smart-device or a communication failure between the smart-device and the steering computer, the steering computer can continue to pull future waypoints from the queued waypoint list ensuring the next waypoint is available. If the waypoint queue is depleted prior to the users smart-device providing the next batch of waypoints, the steering computer can notify the user to stop the tractor.
- The division of computing between the real time domain of the steering computer and the non-real-time domain of the smart device is facilitated by way of the queue of waypoints are stored and transmitted as batches representing many minutes of future tractor travel.
- While this summary describes a specific instance with a smart device generates an entire planned path of waypoints, it should be apparent that any source of waypoints could be used either onboard the tractor or remotely. Removing the non-real-time planning activities from the real-time steering system enables the use of internet-based control including remote operation as well as fully autonomous control from internet software-as-a-service or cloud computing sources.
- Additional aspects and advantages will be apparent from the following detailed description of preferred embodiments, which proceeds with reference to the accompanying drawings.
-
FIG. 1 illustrates a guidance steering system that steers a tractor with a non-deterministic, non-real-time guidance computer. -
FIG. 2 illustrates operations of the precision guidance system shown inFIG. 1 . -
FIG. 3 shows an example computer system used in the guidance system. -
FIG. 1 shows aprecision guidance system 100 used for steering atractor 101. Asteering computer 103 changes the attitude oftractor 101 by sending commands to asteering actuator 102 to turn a steering wheel oftractor 101 or to regulate a hydraulic steering actuator.Steering controller software 104 operated bysteering computer 103 uses inputs from an inertial measurement unit (IMU) 110 and a global navigation satellite system (GNSS) 111 to compute a steering correction based on a computed error in the location oftractor 101 versus a current waypoint command from awaypoint queue 105.Steering computer 103 is known to those skilled in the art and are therefore not described in further detail. One example steering computer is sold by AgJunction, Inc., 9105 E. Del Camino Dr. #115 Scottsdale, AZ USA 85258. - A
tractor operator 109 uses asmart device 106 to plan a route fortractor 101 through a field.Smart device 106 may be a smart phone, tablet computer, laptop computer, or any other portable or handheld device. Thetractor operator 109 usespath planner software 108 operating insmart device 106 when prepare the path for automatically steeringtractor 101. Path planning software, such as chart plotters, are known to those skilled in the art and are therefore not described in further detail. - The output of
path planner 108 is a time ordered series ofwaypoints 114 stored in anoutput waypoint queue 107 ofsmart device 106.Smart device 106 transmitswaypoints 114 inoutput waypoint queue 107 via wireless or wired communication channel to a receivinginput waypoint queue 105 insteering computer 105. For example,waypoints 114 may be transmitted via a WiFi or Bluetooth wireless connection or via a universal serial bus (USB) wired connection. - To facilitate efficient data transfers,
smart device 106 may sendwaypoints 114 in batches to steeringcomputer 103.Steering controller 104 consumes receivedwaypoints 114 from localinput waypoint queue 105 astractor 101 travels over the commanded location within eachwaypoint 114. For example,steering controller 104 steers from a current location to anext waypoint 114 inwaypoint queue 105. After reaching thenext waypoint 114,steering controller 104 steers to a next subsequentlystored waypoint 114 inwaypoint queue 105. -
FIG. 2 shows anoverall process 200 for computing, communicating, and executing steering operations based on a series ofwaypoints 114. Referring toFIGS. 1 and 2 ,tractor operator 109 inoperation 201 initiatesautomatic steering process 200 wheresmart device 106 generateswaypoints 114 andsteering computer 103 generates steering commands based onwaypoints 114. - In
operation 202,path planner 108 insmart device 106 uses a previously defined path through a field defined bytractor operator 109 to generate a time series ofwaypoints 114. For example,smart device 106 may include auser interface 112 with a display and keyboard or touch screen input.Path planner 108 may display an electronic map of a field onuser interface 112.Operator 109 then may select points on the electronic map to create a field path fortractor 101.Path planner 108 may generate a set ofwaypoints 114 that each include a latitude, longitude, and a time identifier indicating theorder waypoints 114 were selected byoperator 109. - In
operation 203,smart device 106 pusheswaypoints 114 intowaypoint queue 107 prior to transmission.Smart device 106 then transmits a group or batch of thewaypoints 114 for the field path towaypoint queue 105 insteering computer 103. - In
operation 204,smart device 106 enters a loop waiting forwaypoint queue 107 insmart device 106 to be empty 204 which indicates thelast waypoints 114 of the path have been transmitted bysmart device 106 to steeringcomputer 103. - Prior to transmitting
waypoints 114 to steeringcomputer 103,smart device 106 inoperation 205queries steering computer 103 for the status ofwaypoint queue 105. Ifinput queue 105 insteering computer 103 is full, orsteering computer 103 is busy,smart device 106 will hold-off transmittingadditional waypoints 114 and wait before queryingsteering computer 103 again. This buffering protocol allows use of a low-cost shallow buffer depth forwaypoint queue 105 insteering computer 103. - In
operation 205,smart device 106 may receive a message back fromsteering computer 103 indicatingsteering computer 103 is ready to receive more waypoints.Smart device 106 inoperation 206 then bundles a next number of waypoints fromoutput queue 107 into a batch appropriate to the size of memory used aswaypoint input queue 105.Smart device 106 inoperation 207 then transmits the batch ofwaypoints 114 to queue 105 in steeringcomputer 103 prior to returning tooperation 204. -
Smart device 208 startsoperation 208 after thelast waypoint 114 is transmitted fromwaypoint queue 107 to waypointinput queue 105 in thesteering computer 103.Smart device 106 then continuously queries steeringcomputer 103 inoperation 208 waiting fortractor 101 to reach the last waypoint. Whensmart device 208 receives a message back from steeringcomputer 103 indicating the last waypoint has been reached,smart device 106 inoperation 209 may display a message onuser interface display 112 indicatingtractor 101 has reached the end of the selected path. - As mentioned above,
precision steering system 100 includes a firstnavigation computing device 106 configured to generate a time series of geo-location waypoints 114 for a path. Secondsteering computing device 103 includesinput buffer 105 configured to receive the geo-location waypoints from firstnavigation computing device 106.Second computing device 103 is configured to generate steering commands for steeringvehicle 101 based onwaypoints 114 received byinput buffer 105. - First
navigation computing device 106 may be a non-real-time computer configured to run path planning software on a best-effort schedule andsecond computer 103 may be a real-time computer running steering control software at a periodic rate. In one example, firstnavigation computing device 106 may operate on a handheld smart device and the secondsteering computing device 103 may operate on a dedicated vehicle steering control system coupled to steeringactuator 102 that steersvehicle 101 based on the steering commands. - First
navigation computing device 106 may transmit geo-location waypoints 114 to inputbuffer 105 onsecond computer 103 over a wireless network. In another example, firstnavigation computing device 106 may transmit geo-location waypoints 114 in batches to inputbuffer 105 insecond computer 103. - In one example, second
steering computing device 106 usesinput buffer 105 as a First-In-First-Out (FIFO) queue for processing geo-location waypoints 114. In another example, secondsteering computing device 103 is configured to send status messages to firstnavigation computing device 106 indicating when the First-In-First-Out queue is ready to accept additional geo-location waypoints 114. - In one example, first
navigation computing device 106 includesoutput buffer 107 for storing the geo-location waypoints 114. Firstnavigation computing device 106 also may operateoutput buffer 107 as a First-In-First-Out (FIFO) queue first buffering geo-location waypoints 114 and then transmitting the buffered geo-location waypoints 114 to secondsteering computing device 103. - In one example,
path planner 108 repeatedly sends queries to steeringcontroller 104 to check for available space inqueue 105. Additional batches ofwaypoints 114 are sent to queue 105 based on the available space. For example, secondsteering computing device 103 may send a first message to firstnavigation computing device 106 indicatinginput buffer 105 is approaching capacity for storing the geo-location waypoints 114. The message may cause firstnavigation computing device 106 to stop sending additional geo-location waypoints 114 until receiving a second continue transmitting message from secondsteering computing device 103. - In another example, second
steering computing device 103 is configured to send a message to firstnavigation computing device 106 indicating a current capacity ofinput buffer 105. Firstnavigation computing device 106 may decide to send additional geo-location waypoints 114 to secondsteering computing device 103 based on the current capacity ofinput buffer 105. In one example, firstnavigation computing device 106 is configured to encode geo-location waypoints 114 transmitted to secondsteering computing device 103 to reduce transmission errors. For example, firstnavigation computing device 106 may use orthogonal frequency-division multiplexing (OFDM) to overcome errors in mobile communication channels. - As also explained above, a first program, such as
path planner 108, generates a time series of future geo-location waypoints 114 for a selected vehicle path and transmitswaypoints 114 over a communication channel to anasynchronous buffer 105. A second program, such assteering controller 104, generates steering commands for steeringvehicle 101 based on the geo-location waypoints 114 inbuffer 105. - In another embodiment, a
same computing device first program 108 andsecond program 104. In another example,first computing device 106 runsfirst program 108 andsecond computing device 103 operating asynchronously fromfirst computing device 106 runssecond program 104. In one example,first program 108 andsecond program 104 run on separate processor cores in a same physical central processing unit. - In another example,
first program 108 andsecond program 104 run on asame processing device first program 108 andsecond program 104 may run on asame processing device processing device target waypoints 114 withfirst program 108 and the steering commands withsecond program 104. - Utilizing
smart device 208 in conjunction with steeringcomputer 103 provides many technical computing advantages. For example, a large amount of memory storage can be offloaded ontostart device 106. Further, the computational and memory requirements for operating electronic maps, chart plotters/path planners, and display and user input interfaces can all be offloaded tosmart device 106 or to cloud based services accessed bysmart device 106. In addition, any wireless communication hardware or software needed to communicate with a central server or cloud based services that may provide electronic maps and path planning software can also be offloaded tosmart device 106 and/or the cloud based service. - Precision
agriculture guidance system 100 lowers the cost of precision agriculture to improve yield, reduce fatigue, and lower ecological impact of farming. It enables a commodity processing platform such as a smart-phone or tablet to act as the user interface and path planning element of an agricultural guidance system. It maintains the safety capabilities of existing systems while adding flexibility to use lower cost, non-proprietary hardware for the user interface, path planning, logging, diagnostics, and connectivity functions. These advantages also include the ability to scale a single guidance system into a larger coordinated fleet without requiring expensive on-premises computing or communications hardware. -
FIG. 3 shows acomputing device 1000 that may be used for implementing or operatingsteering computer 103 orsmart device 106 used inprecision guidance system 100 discussed above. Thecomputing device 1000 may operate in the capacity of a server or a client machine in a server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network environment. In other examples,computing device 1000 may be a personal computer (PC), a tablet, a Personal Digital Assistant (PDA), a cellular telephone, a smart phone, a web appliance, central processing unit, programmable logic device, or any other machine or device capable of executing instructions 1006 (sequential or otherwise) that specify actions to be taken by that machine. - While only a
single computing device 1000 is shown, thecomputing device 1000 may include any collection of devices or circuitry that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the operations discussed above.Computing device 1000 may be part of an integrated control system or system manager, or may be provided as a portable electronic device configured to interface with a networked system either locally or remotely via wireless transmission. -
Processors 1004 may comprise a central processing unit (CPU), a graphics processing unit (GPU), programmable logic devices, dedicated processor systems, micro controllers, or microprocessors that may perform some or all of the operations described above.Processors 1004 may also include, but may not be limited to, an analog processor, a digital processor, a microprocessor, multi-core processor, processor array, network processor, etc. - Some of the operations described above may be implemented in software and other operations may be implemented in hardware. One or more of the operations, processes, or methods described herein may be performed by an apparatus, device, or system similar to those as described herein and with reference to the illustrated figures.
-
Processors 1004 may execute instructions or “code” 1006 stored in any one ofmemories Instructions 1006 and data can also be transmitted or received over anetwork 1014 via anetwork interface device 1012 utilizing any one of a number of well-known transfer protocols. -
Memories processing device 1000, for example RAM or FLASH memory disposed within an integrated circuit microprocessor or the like. In other examples, the memory may comprise an independent device, such as an external disk drive, storage array, or any other storage devices used in database systems. The memory and processing devices may be operatively coupled together, or in communication with each other, for example by an I/O port, network connection, etc. such that the processing device may read a file stored on the memory. - Some memory may be “read only” by design (ROM) by virtue of permission settings, or not. Other examples of memory may include, but may be not limited to, WORM, EPROM, EEPROM, FLASH, etc. which may be implemented in solid state semiconductor devices. Other memories may comprise moving parts, such a conventional rotating disk drive. All such memories may be “machine-readable” in that they may be readable by a processing device.
- “Computer-readable storage medium” (or alternatively, “machine-readable storage medium”) may include all of the foregoing types of memory, as well as new technologies that may arise in the future, as long as they may be capable of storing digital information in the nature of a computer program or other data, at least temporarily, in such a manner that the stored information may be “read” by an appropriate processing device. The term “computer-readable” may not be limited to the historical usage of “computer” to imply a complete mainframe, mini-computer, desktop, wireless device, or even a laptop computer. Rather, “computer-readable” may comprise storage medium that may be readable by a processor, processing device, or any computing system. Such media may be any available media that may be locally and/or remotely accessible by a computer or processor, and may include volatile and non-volatile media, and removable and non-removable media.
-
Computing device 1000 can further include avideo display 1016, such as a liquid crystal display (LCD) or a cathode ray tube (CRT) and auser interface 1018, such as a keyboard, mouse, touch screen, etc. All of the components ofcomputing device 1000 may be connected together via abus 1002 and/or network. -
Computing device 1000 may include any combination ofsensors 1022 including, but not limited to, GSP, IMU, video camera, LIDAR, and radar.Computing device 100 also may include awireless transceiver 1024 for wirelessly transmitting and receiving commands to and from other computing devices. - For the sake of convenience, operations may be described as various interconnected or coupled functional blocks or diagrams. However, there may be cases where these functional blocks or diagrams may be equivalently aggregated into a single logic device, program or operation with unclear boundaries. Having described and illustrated the principles of a preferred embodiment, it should be apparent that the embodiments may be modified in arrangement and detail without departing from such principles.
- Having described and illustrated the principles of a preferred embodiment, it should be apparent that the embodiments may be modified in arrangement and detail without departing from such principles. Claim is made to all modifications and variation coming within the spirit and scope of the following claims.
Claims (20)
1. A system, comprising:
a first navigation computing device configured to generate, in a non-real-time domain, a batch of a plurality of geo-location waypoints for a path; and
a second steering computing device including an input buffer configured to accumulate the geo-location waypoints from the first navigation computing device, wherein the second steering computing device is configured to consume the accumulated geo-location waypoints from the input buffer and generate, at a periodic rate in a real time domain, steering commands for steering a vehicle based, at least in part, on the accumulated geo-location waypoints.
2. The system of claim 1 , wherein the first navigation computing device operates on a handheld smart device and the second steering computing device operates on a dedicated vehicle steering control system coupled to a steering actuator that steers the vehicle based on the steering commands.
3. The system of claim 1 , wherein the first navigation computing device transmits the geo-location waypoints to the input buffer in the second steering computing device over a wireless network.
4. The system of claim 1 , wherein the first navigation computing device transmits a sub-batch of at least two or more of the geo-location waypoints to the input buffer in the second steering computing device.
5. The system of claim 1 , wherein the second steering computing device uses the input buffer as a First-In-First-Out queue for processing the geo-location waypoints.
6. The system of claim 5 , wherein the second steering computing device is configured to send status messages to the first navigation computing device indicating when the First-In-First-Out queue is ready to accept additional geo-location waypoints.
7. The system of claim 5 , wherein the first navigation computing device includes an output buffer for storing the geo-location waypoints, wherein the first navigation computing device is configured to operate the output buffer as a First-In-First-Out queue first buffering the geo-location waypoints and then transmitting the buffered geo-location waypoints to the input buffer in the second steering computing device.
8. The system of claim 1 , wherein the second steering computing device is configured to send a first message to the first navigation computing device indicating the input buffer is approaching capacity for storing the geo-location waypoints, wherein the first message causes the first navigation computing device to stop sending additional geo-location waypoints until receiving a second continue transmitting message from the second steering computing device.
9. The system of claim 1 , wherein the second steering computing device is configured to send a message to the first navigation computing device indicating a current capacity of the input buffer, wherein the first navigation computing device decides to send additional geo-location waypoints to the second steering computing device based on the current capacity of the input buffer.
10. The system of claim 1 , wherein the first navigation computing device is configured to encode the geo-location waypoints transmitted to the second steering computing device to reduce transmission errors.
11. A method for steering a vehicle, comprising:
using a first program to:
generate, in a non-real-time domain, a batch of a plurality of future geo-location waypoints for a selected vehicle path; and
transmit the waypoints over a communication channel to an input buffer that is configured to accumulate the future geo-location waypoints; and
using a second program to consume the accumulated geo-location waypoints from the input buffer and generate, at a periodic rate in a real time domain, steering commands for steering the vehicle based, at least in part, on the accumulated geo-location waypoints.
12. The method of claim 11 , wherein a same computing device runs the first program and the second program.
13. The method of claim 11 , wherein a first computing device runs the first program and a second computing device operating asynchronously from the first computing device runs the second program.
14. The method of claim 11 , including wirelessly transmitting the geo-location waypoints over the communication channel from the first computing device to the input buffer operating with the second computing device.
15. The method of claim 11 , wherein the first and second program run on separate processor cores in a same physical central processing unit.
16. The method of claim 11 , wherein the first and second program run on a same processing device controlled by a time partitioned operating system.
17. The method of claim 11 , wherein the first and second program run on a same processing device and an operating system running on the processing device asynchronously generates the target waypoints with the first program and the steering commands with the second program.
18. One or more non-transitory computer-readable media (NTCRM) comprising instructions that, upon execution of the instructions by one or more processors of one or more electronic devices, are to cause the one or more processors to:
generate, by a first program in a non-real-time domain, a batch of a plurality of future geo-location waypoints for a selected vehicle path;
transmit, by the first program, at least two or more of the waypoints over a communication channel to an asynchronous buffer that is configured to accumulate the future geo-location waypoints; and
use a second program to consume the accumulated geo-location waypoints from the asynchronous buffer and generate, at a periodic rate in a real time domain, steering commands for steering the vehicle based, at least in part, on the accumulated geo-location waypoints.
19. The one or more NTCRM of claim 11 , wherein the instructions are to cause a same electronic device of the one or more electronic devices to run the first program and the second program.
20. The one or more NTCRM of claim 11 , wherein the instructions are to cause a first electronic device of the one or more electronic devices to run the first program, and a second electronic device of the one or more electronic devices to run the second program, wherein the second electronic devices is to operate asynchronously from the first electronic device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/465,725 US20230413713A1 (en) | 2018-09-14 | 2023-09-12 | Using non-real-time computers for agricultural guidance systems |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862731698P | 2018-09-14 | 2018-09-14 | |
US16/570,358 US11800827B2 (en) | 2018-09-14 | 2019-09-13 | Using non-real-time computers for agricultural guidance systems |
US18/465,725 US20230413713A1 (en) | 2018-09-14 | 2023-09-12 | Using non-real-time computers for agricultural guidance systems |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/570,358 Continuation US11800827B2 (en) | 2018-09-14 | 2019-09-13 | Using non-real-time computers for agricultural guidance systems |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230413713A1 true US20230413713A1 (en) | 2023-12-28 |
Family
ID=68104743
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/570,358 Active 2040-10-11 US11800827B2 (en) | 2018-09-14 | 2019-09-13 | Using non-real-time computers for agricultural guidance systems |
US16/938,821 Active US10986767B2 (en) | 2018-09-14 | 2020-07-24 | Using smart-phones and other hand-held mobile devices in precision agriculture |
US18/465,725 Pending US20230413713A1 (en) | 2018-09-14 | 2023-09-12 | Using non-real-time computers for agricultural guidance systems |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/570,358 Active 2040-10-11 US11800827B2 (en) | 2018-09-14 | 2019-09-13 | Using non-real-time computers for agricultural guidance systems |
US16/938,821 Active US10986767B2 (en) | 2018-09-14 | 2020-07-24 | Using smart-phones and other hand-held mobile devices in precision agriculture |
Country Status (5)
Country | Link |
---|---|
US (3) | US11800827B2 (en) |
EP (1) | EP3849296A1 (en) |
AU (1) | AU2019338528A1 (en) |
CA (1) | CA3107440A1 (en) |
WO (1) | WO2020056283A1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11800827B2 (en) | 2018-09-14 | 2023-10-31 | Agjunction Llc | Using non-real-time computers for agricultural guidance systems |
JP2022109037A (en) * | 2021-01-14 | 2022-07-27 | トヨタ自動車株式会社 | Center, management method, and management program |
CN114460990B (en) * | 2022-01-24 | 2023-05-23 | 苏州纽克斯电源技术股份有限公司 | Control method, device, equipment and storage medium for plant growth environment |
Family Cites Families (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5663879A (en) | 1987-11-20 | 1997-09-02 | North American Philips Corporation | Method and apparatus for smooth control of a vehicle with automatic recovery for interference |
US5390125A (en) | 1990-02-05 | 1995-02-14 | Caterpillar Inc. | Vehicle position determination system and method |
US5194851A (en) | 1991-02-21 | 1993-03-16 | Case Corporation | Steering controller |
FI942218A0 (en) | 1994-05-13 | 1994-05-13 | Modulaire Oy | Automatic storage system Foer obemannat fordon |
US6070673A (en) | 1996-11-22 | 2000-06-06 | Case Corporation | Location based tractor control |
EP0968577B1 (en) | 1997-03-21 | 2009-09-23 | The Board of Trustees of The Leland S. Stanford Junior University | A system using leo satellites for centimeter-level navigation |
US6052647A (en) | 1997-06-20 | 2000-04-18 | Stanford University | Method and system for automatic control of vehicles based on carrier phase differential GPS |
DE19943410B4 (en) | 1998-09-11 | 2011-08-18 | Honda Giken Kogyo K.K. | Steering control system for a vehicle |
AUPP679598A0 (en) | 1998-10-27 | 1998-11-19 | Agsystems Pty Ltd | A vehicle navigation apparatus |
US6611738B2 (en) | 1999-07-12 | 2003-08-26 | Bryan J. Ruffner | Multifunctional mobile appliance |
US6445983B1 (en) | 2000-07-07 | 2002-09-03 | Case Corporation | Sensor-fusion navigator for automated guidance of off-road vehicles |
US6377889B1 (en) | 2000-10-13 | 2002-04-23 | Trimble Navigation Limited | Non-linear method of guiding to arbitrary curves with adaptive feedback |
US6711501B2 (en) | 2000-12-08 | 2004-03-23 | Satloc, Llc | Vehicle navigation system and method for swathing applications |
US6539303B2 (en) | 2000-12-08 | 2003-03-25 | Mcclure John A. | GPS derived swathing guidance system |
US6819780B2 (en) | 2001-02-02 | 2004-11-16 | Cnh America Llc | Method and apparatus for automatically steering a vehicle in an agricultural field using a plurality of fuzzy logic membership functions |
AUPR430301A0 (en) | 2001-04-09 | 2001-05-17 | Agsystems Pty Ltd | Soil-cultivation implement control apparatus and method |
AUPR733701A0 (en) | 2001-08-29 | 2001-09-20 | Beeline Technologies | Apparatus and method for assisted navigation of a land vehicle |
US6865465B2 (en) | 2002-05-06 | 2005-03-08 | Csi Wireless, Inc. | Method and system for implement steering for agricultural vehicles |
US7689354B2 (en) | 2003-03-20 | 2010-03-30 | Hemisphere Gps Llc | Adaptive guidance system and method |
US7437230B2 (en) | 2003-03-20 | 2008-10-14 | Hemisphere Gps Llc | Satellite based vehicle guidance control in straight and contour modes |
US7142956B2 (en) | 2004-03-19 | 2006-11-28 | Hemisphere Gps Llc | Automatic steering system and method |
US7400956B1 (en) | 2003-03-20 | 2008-07-15 | Hemisphere Gps Inc. | Satellite position and heading sensor for vehicle steering control |
US7885745B2 (en) | 2002-12-11 | 2011-02-08 | Hemisphere Gps Llc | GNSS control system and method |
US7162348B2 (en) | 2002-12-11 | 2007-01-09 | Hemisphere Gps Llc | Articulated equipment position control system and method |
US8634993B2 (en) | 2003-03-20 | 2014-01-21 | Agjunction Llc | GNSS based control for dispensing material from vehicle |
US8639416B2 (en) | 2003-03-20 | 2014-01-28 | Agjunction Llc | GNSS guidance and machine control |
US8190337B2 (en) | 2003-03-20 | 2012-05-29 | Hemisphere GPS, LLC | Satellite based vehicle guidance control in straight and contour modes |
US9002565B2 (en) | 2003-03-20 | 2015-04-07 | Agjunction Llc | GNSS and optical guidance and machine control |
US8594879B2 (en) | 2003-03-20 | 2013-11-26 | Agjunction Llc | GNSS guidance and machine control |
US8214111B2 (en) | 2005-07-19 | 2012-07-03 | Hemisphere Gps Llc | Adaptive machine control system and method |
US6789014B1 (en) | 2003-05-09 | 2004-09-07 | Deere & Company | Direct modification of DGPS information with inertial measurement data |
US8583315B2 (en) | 2004-03-19 | 2013-11-12 | Agjunction Llc | Multi-antenna GNSS control system and method |
JP4317216B2 (en) * | 2004-10-29 | 2009-08-19 | 日本電信電話株式会社 | Packet communication network and packet communication method |
JP4472510B2 (en) | 2004-12-22 | 2010-06-02 | アルパイン株式会社 | Car navigation system |
US20060167600A1 (en) | 2005-01-27 | 2006-07-27 | Raven Industries, Inc. | Architecturally partitioned automatic steering system and method |
WO2008013568A2 (en) * | 2005-12-30 | 2008-01-31 | Irobot Corporation | Autonomous mobile robot |
US8768558B2 (en) | 2007-01-05 | 2014-07-01 | Agjunction Llc | Optical tracking vehicle control system and method |
US7835832B2 (en) | 2007-01-05 | 2010-11-16 | Hemisphere Gps Llc | Vehicle control system |
US8311696B2 (en) | 2009-07-17 | 2012-11-13 | Hemisphere Gps Llc | Optical tracking vehicle control system and method |
EP2115994A4 (en) * | 2007-01-15 | 2010-04-28 | Research In Motion Ltd | Fragmenting large packets in the presence of high priority packets |
US9002566B2 (en) | 2008-02-10 | 2015-04-07 | AgJunction, LLC | Visual, GNSS and gyro autosteering control |
US8873671B2 (en) * | 2008-03-26 | 2014-10-28 | Qualcomm Incorporated | Method and system for LLR buffer reduction in a wireless communication modem |
WO2009126587A1 (en) | 2008-04-08 | 2009-10-15 | Hemisphere Gps Llc | Gnss-based mobile communication system and method |
US8386129B2 (en) | 2009-01-17 | 2013-02-26 | Hemipshere GPS, LLC | Raster-based contour swathing for guidance and variable-rate chemical application |
US8560227B2 (en) | 2009-04-17 | 2013-10-15 | Alpine Electronics, Inc. | Route planning apparatus and method for navigation system |
US8126620B2 (en) | 2009-04-28 | 2012-02-28 | Cnh America Llc | Grain transfer control system and method |
US8401704B2 (en) | 2009-07-22 | 2013-03-19 | Hemisphere GPS, LLC | GNSS control system and method for irrigation and related applications |
AU2010295227B2 (en) * | 2009-09-15 | 2015-02-05 | Technological Resources Pty. Limited | A system and method for autonomous navigation of a tracked or skid-steer vehicle |
WO2011032205A1 (en) | 2009-09-16 | 2011-03-24 | Power & Data Corporation Pty Ltd | Methods, systems and devices for facilitating data access |
US8649930B2 (en) | 2009-09-17 | 2014-02-11 | Agjunction Llc | GNSS integrated multi-sensor control system and method |
US8548649B2 (en) | 2009-10-19 | 2013-10-01 | Agjunction Llc | GNSS optimized aircraft control system and method |
US9173337B2 (en) | 2009-10-19 | 2015-11-03 | Efc Systems, Inc. | GNSS optimized control system and method |
US8521372B2 (en) | 2010-05-28 | 2013-08-27 | Agjunction Llc | System and method for collecting and processing agricultural field data |
US8583326B2 (en) | 2010-02-09 | 2013-11-12 | Agjunction Llc | GNSS contour guidance path selection |
US8489291B2 (en) | 2010-07-12 | 2013-07-16 | Hemisphere Gps Llc | System and method for collecting soil samples |
US8803735B2 (en) | 2010-11-19 | 2014-08-12 | Agjunction Llc | Portable base station network for local differential GNSS corrections |
US9269200B2 (en) | 2010-12-30 | 2016-02-23 | Agco Corporation | Real-time evaluation of machine performance for fleet management |
WO2012112205A1 (en) * | 2011-02-18 | 2012-08-23 | Cnh America Llc | System and method for trajectory control of a transport vehicle used with a harvester |
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 |
US8781685B2 (en) | 2012-07-17 | 2014-07-15 | Agjunction Llc | System and method for integrating automatic electrical steering with GNSS guidance |
US10131376B2 (en) | 2013-01-30 | 2018-11-20 | Agjunction Llc | Steering controller for precision farming |
US9162703B2 (en) | 2013-01-30 | 2015-10-20 | AgJunction, LLC | Steering controller for precision farming |
US9223314B2 (en) | 2013-03-14 | 2015-12-29 | Aglunction, LLC | Hovering control for helicopters using a GNSS vector |
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 |
US20140266877A1 (en) | 2013-03-15 | 2014-09-18 | Agjunction Llc | Precision accuracy global navigation satellite system (gnss) with smart devices |
WO2015073844A1 (en) | 2013-11-18 | 2015-05-21 | Agco Corporation | System and method for automatically generating vehicle guidance waypoints and waylines |
US9733643B2 (en) | 2013-12-20 | 2017-08-15 | Agjunction Llc | Hydraulic interrupter safety system and method |
US20200062365A1 (en) * | 2014-07-16 | 2020-02-27 | Neil D. Anderson | Networked architecture for a control system for a steerable thrusting device |
EP3175693B1 (en) | 2014-07-30 | 2022-08-31 | Yanmar Power Technology Co., Ltd. | Remote control apparatus |
US10667456B2 (en) | 2014-09-12 | 2020-06-02 | The Climate Corporation | Methods and systems for managing agricultural activities |
US9851718B2 (en) | 2014-09-26 | 2017-12-26 | Steven R. Booher | Intelligent control apparatus, system, and method of use |
US9857478B2 (en) | 2015-01-27 | 2018-01-02 | Agjunction Llc | Apparatus and method to mount steering actuator |
IN2015MU01824A (en) | 2015-05-07 | 2015-05-22 | Kpit Technologies Ltd | |
UA127077C2 (en) | 2015-06-08 | 2023-04-05 | Зе Клаймет Корпорейшн | Agricultural data analysis |
US20160380914A1 (en) * | 2015-06-25 | 2016-12-29 | Here Global B.V. | Method and apparatus for providing resource load distribution for embedded systems |
US20210136515A1 (en) * | 2015-07-17 | 2021-05-06 | Feng Zhang | Method, apparatus, and system for wireless monitoring with motion localization |
US11072356B2 (en) * | 2016-06-30 | 2021-07-27 | Transportation Ip Holdings, Llc | Vehicle control system |
WO2018006142A1 (en) | 2016-07-04 | 2018-01-11 | Perfect Flight Assessoria E Controle De Pulverizacao Ltda | System and method for control and audit of chemical products application made by vehicles |
WO2018104929A1 (en) | 2016-12-07 | 2018-06-14 | Arilou Information Security Technologies Ltd. | System and method for using signal waveform analysis for detecting a change in a wired network |
EP3652721A1 (en) | 2017-09-04 | 2020-05-20 | NNG Software Developing and Commercial LLC | A method and apparatus for collecting and using sensor data from a vehicle |
US10953881B2 (en) | 2017-09-07 | 2021-03-23 | Tusimple, Inc. | System and method for automated lane change control for autonomous vehicles |
WO2019094843A1 (en) * | 2017-11-10 | 2019-05-16 | Nvidia Corporation | Systems and methods for safe and reliable autonomous vehicles |
WO2019167204A1 (en) | 2018-02-28 | 2019-09-06 | 本田技研工業株式会社 | Control device, work machine, and program |
US10852724B2 (en) * | 2018-04-30 | 2020-12-01 | DJI Research LLC | Customizable waypoint missions |
US10832347B1 (en) | 2018-05-14 | 2020-11-10 | State Farm Mutual Automobile Insurance Company | Methods and systems for smart claim routing and smart claim assignment |
AU2019306742A1 (en) * | 2018-07-17 | 2021-02-04 | Emesent IP Pty Ltd | Method for exploration and mapping using an aerial vehicle |
EP3836783A4 (en) | 2018-08-13 | 2022-05-04 | Farmwise Labs, Inc. | Method for autonomous detection of crop location based on tool depth and location |
US11800827B2 (en) | 2018-09-14 | 2023-10-31 | Agjunction Llc | Using non-real-time computers for agricultural guidance systems |
US20200110403A1 (en) | 2018-10-08 | 2020-04-09 | Cnh Industrial America Llc | Agricultural data center systems, networks, and methods |
US11672203B2 (en) | 2018-10-26 | 2023-06-13 | Deere & Company | Predictive map generation and control |
US11589509B2 (en) | 2018-10-26 | 2023-02-28 | Deere & Company | Predictive machine characteristic map generation and control system |
GB2583089B (en) * | 2019-04-12 | 2021-09-22 | Thales Holdings Uk Plc | A system and method of planning a path for an autonomous vessel |
US20210003416A1 (en) | 2019-07-03 | 2021-01-07 | Ag Leader Technology | Apparatus, Systems And Methods For Automatic Steering Guidance And Visualization Of Guidance Paths |
US20210026362A1 (en) | 2019-07-25 | 2021-01-28 | Ag Leader Technology | Apparatus, Systems And Methods For Automated Navigation Of Agricultural Equipment |
-
2019
- 2019-09-13 US US16/570,358 patent/US11800827B2/en active Active
- 2019-09-13 EP EP19780049.3A patent/EP3849296A1/en active Pending
- 2019-09-13 WO PCT/US2019/051044 patent/WO2020056283A1/en unknown
- 2019-09-13 AU AU2019338528A patent/AU2019338528A1/en active Pending
- 2019-09-13 CA CA3107440A patent/CA3107440A1/en active Pending
-
2020
- 2020-07-24 US US16/938,821 patent/US10986767B2/en active Active
-
2023
- 2023-09-12 US US18/465,725 patent/US20230413713A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20200084955A1 (en) | 2020-03-19 |
US11800827B2 (en) | 2023-10-31 |
WO2020056283A1 (en) | 2020-03-19 |
AU2019338528A1 (en) | 2021-02-18 |
EP3849296A1 (en) | 2021-07-21 |
US20200352083A1 (en) | 2020-11-12 |
US10986767B2 (en) | 2021-04-27 |
CA3107440A1 (en) | 2020-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230413713A1 (en) | Using non-real-time computers for agricultural guidance systems | |
US11887488B2 (en) | Computer aided dispatch of drones | |
EP3696642B1 (en) | Method for controlling unmanned aerial vehicle, and terminal | |
JP7258233B2 (en) | backward horizon state estimator | |
US20210256395A1 (en) | System and methods to provide seamless information exchange between certified and uncertified applications | |
US20070276594A1 (en) | In-transit Two-Way Route Communication Between a Handheld Positioning Device and a Service Provider | |
US20200033856A1 (en) | Travel route detemination system | |
WO2018156284A1 (en) | Systems and methods for delivering merchandise using unmanned aerial vehicles | |
CN110100272B (en) | Air traffic communication | |
EP3910910B1 (en) | Flight log upload method and device, mobile terminal, and unmanned aerial vehicle | |
WO2019119200A1 (en) | Job task allocation method for unmanned aerial vehicle, relevant device and storage medium | |
US20200317334A1 (en) | Unmanned aerial vehicles and flight planning methods and apparatus | |
EP4002980B1 (en) | Using smart-phones and other hand-held mobile devices in precision agriculture | |
CN111338381A (en) | Unmanned aerial vehicle operation control method and device, remote controller and storage medium | |
KR101720726B1 (en) | Apparatus for monitoring autopilot information of a ship and method thereof | |
CN111025360A (en) | Unmanned aerial vehicle control method, device, system, equipment and medium | |
KR20200072215A (en) | System for management and control of pest spraying drone, and control method for the same | |
CN112243593A (en) | Apparatus and method for data transmission to and from an out-of-remote-range transceiver | |
KR102356997B1 (en) | Communication apparatus providing location based service and control method thereof | |
CN110244769B (en) | Offline operation method and device | |
KR102622482B1 (en) | An electronic device and a system for controlling an autonomous vehicle | |
US11132003B2 (en) | Integrated GNSS and steering for agricultural guidance systems | |
US20240138000A1 (en) | Unmanned aerial vehicle and pairing method and system thereof | |
EP4300238A1 (en) | Control device, control system, control method, and program recording medium | |
JP2023175585A (en) | Correction information account setting system and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |