A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the United States Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
One or more implementations relate generally to performing K-turns.
Guidance systems autonomously guide farm vehicles along predefined paths or rows in a field. At the end of each row the controller or a vehicle operator may turn the vehicle around 180 degrees and direct the vehicle along a next adjacent row. The turn-around area is referred to as a headland area of the field. A significant amount of headland is used for turning around vehicles reducing the amount of field area available for growing crops.
The included drawings are for illustrative purposes and serve to provide examples of possible structures and operations for the disclosed inventive systems, apparatus, methods and computer-readable storage media. These drawings in no way limit any changes in form and detail that may be made by one skilled in the art without departing from the spirit and scope of the disclosed implementations.
In one example, guidance system 114 may include a global navigation satellite system (GNSS) and/or an inertial navigation system (INS) for detecting a position of vehicle 112 on field 110. Guidance system 114 may automatically steer vehicle 112 over AB line 108A. Previous guidance systems may go into an idle mode when vehicle 112 reaches an end of AB line 108A. The vehicle operator then may manually perform a keyhole turn 120 turning vehicle 112 around 180 degrees and back onto a next adjacent AB line 108B. The vehicle operator then re-activates the guidance system to automatically steer vehicle 112 over a next adjacent AB line 108B.
Guidance system 114 may automatically perform K-turns 130 that turn vehicle 112 around 180 degrees within headland 106 for traversing a next adjacent AB line 108B. K-turns 130 not only prevent the vehicle operator from having to manually turn around vehicle 112 but also reduce the amount of boundary or headland area used in field 110.
For example, guidance system 114 may automatically steer vehicle 112 along AB line 108C. Guidance system 114 may detect vehicle 112 reaching the end of AB line 108C near border 104. Guidance system 112 then may steer vehicle 112 through a series of turns referred to as K-turn 130. As shown in
Table 1.0 details size comparisons between classical forward keyhole turn 120 and K-Turn 130 maneuvers generated under the same conditions at 15 kilometers (km)/hour (h). Table 1.0 shows K-turn 130 uses less width and height at almost each swath distance thus reducing the amount of headland area used for vehicle turns.
The width and height of the K-Turn paths in Table 1.0 may change at different swath distances when the vehicle is steered at different maximum curvatures and curvature rates at the departure and destination positions. At the departure position the K-Turn path planning may use a higher value of maximum curvature (or smaller turn radius) and steering curvature rate (faster steering) for a quicker and shorter turn. At the destination, the K-Turn may have a lower steering curvature and steering rate for a better line acquisition and alignment before the vehicle and implement get back into the field.
In one example, guidance system 114 may try to steer vehicle 112 from position 133 to position 134A as quickly as possible. For example, guidance system 114 may steer vehicle 112 at a maximum steering curvature and steering curvature rate. The maximum steering curvature is the hardest the vehicle can be turned to the left or right and the steering curvature rate is the rate is which the vehicle is turned to the left or right.
Guidance system 114 then changes vehicle 112 into a reverse gear and moves vehicle 112 in a reverse direction along a second straight (in this example) K-turn segment 132B. Guidance system 114 stops vehicle 112 after reaching a second position 134B. Guidance system 114 then changes vehicle 112 back into a forward gear and maneuvers vehicle 112 in a forward right turn direction along a third K-turn segment 132C with a second curvature. In one example, the curvature, curvature rate and length of segments 132A and 132C are symmetric. However, to further reduce the height or width of K-turn 130, the curvature, curvature rate and length of one of turn segments 132A or 132C may be different to the other.
After reaching a location 134C at the beginning of AB line 108B, guidance system 114 may transition back into a field processing mode and steer vehicle 112 along AB line 108B. Guidance system 114 may perform a similar K-turn 130 when vehicle 112 reaches an opposite end of field 110.
Segments 132 of K-turn 130 may be straight lines or continuous-curvature planar curves bounded by the maximum steering curvature of vehicle 112 and a curvature first derivative bounded by a maximum steering curvature rate of vehicle 112. Guidance system 114 may use a higher value of curvature and curvature rate for first two turn segments 132A and 132B and a lower value for third turn segment 132C to more quickly place an implement towed by vehicle 112 back on AB line 108B.
An example algorithm for generating continuous-curvature planar curves is described in: Thierry Fraichard, Alexis Scheuer. From Reeds and Shepp's to continuous-curvature paths. IEEE Transactions on Robotics, IEEE, 2004, 20 (6), pp. 1025-1035, which is herein incorporated by reference in its entirety.
The vehicle operator may manually initiate K-turn 130, or guidance system 114 may automatically initiate K-turn 130, when vehicle 112 reaches border 104. For example, vehicle 112 may be traveling at 2 meters/second and guidance system 114 may include a timer set at 50 seconds. If not fully automated, guidance system 114 may display an option to the vehicle operator to enable the automatic K-turn 130 when vehicle 112 comes within 100 meters of headland 106. Guidance system 114 may keep offering the K-turn on a computer screen until the K-turn can no longer be performed within headland area 106.
If the user enables the K-turn, guidance system 114 may complete first turn segment 132A and allow the vehicle operator to shift the vehicle into a reverse gear. Guidance system 114 then may automatically move vehicle 112 along second turn segment 132B, etc. Alternatively, the entire process, or any portion, of initiating K-turn 130 at the end of AB line 130A, executing turn segments 132A-132C, and steering vehicle 112 back over next AB line 108B may be automatically performed by guidance system 114.
Referring to
curve—straight—curve (K-turn 130A);
curve—curve—straight (K-turn 130B);
curve—curve—curve (K-turn 130C);
straight—curve—curve (K-turn 130D); or
straight—curve—straight (K-turn 130E).
For a contoured field, guidance system 114 may use K-Turns including:
curve—straight—curve (K-turn 130A); or
curve—curve—curve (K-turn 130C).
There may only be two or fewer turn options for contoured fields because the path curvature at the departing and destination positions are generally non-zero, which means the vehicle may not start and end the K-Turn with straight segments.
Guidance system 114 may automatically select different K-turns 130A-130E based on different environmental conditions including the orientation of vehicle 112 and the contour of field 110, number of skipped rows/way-lines 108, limits on the size of headland area 106, and other conditions specific to field applications.
For example, AB lines 108 may end on a left sloping hill promoting a first left curve segment, a second reverse curve segment, and a third left curve segment. In another example, based on the maximum steering curvature and vehicle maximum steering curvature rate, guidance system 114 may select one of K-turns 130A-130E using the least amount of overall headland area 106, smallest width, and/or smallest height.
In another example, guidance system 114 may select one of K-turns 130A-130E that uses a least amount of space left of a current AB line 108A or the least amount of space right of the current AB line 108A. K-Turn path 130E with first and last straight segments may be better for a parallel field with a trailed implement because it allows for full field coverage without extending outside of the headland area.
In another example, one of K-turns 130A-130E may be easier or more efficient to perform on a contoured headland 106 or a headland with a particular soil condition. For example, straight reverse second segments may be easier to execute on flat headland areas 106. In yet another example, a tree or other obstruction overhanging or lying within headland 106 may favor one of K-turns 130A-130E that avoids the obstruction.
K-turn 130A as depicted in
1. A clothoid arc of curvature rate σ=±σmax and curvature changes from 0 to ±kmax.
2. A circular arc of curvature ±kmax.
3. A clothoid arc of curvature rate −σ and curvature changes from ±kmax to 0.
The k and k values are the steering curvature and the maximum steering curvature, respectively of the vehicle. Steering curvature is the reciprocal of the turning radius of the vehicle to one direction. The unit of steering curvature is 1/m. The value of kmax in general can be different when steering to the left and to the right.
The values σ and σmax are the steering curvature rate and the maximum steering curvature rate, respectively, of the vehicle and indicate how fast the vehicle can be turned to the left or right. The unit of steering curvature rate is 1/m2. The sign convention for steering curvature and steering curvature rate is usually accepted to be positive to the right and negative to the left.
A clothoid is a curve whose curvature changes linearly with a constant rate with its curve length. The path that a vehicle usually takes steering from straight to full lock on one direction is an example of a clothoid. K-Turn path planning uses clothoid arcs from maximum steering curvature and curvature rate of a vehicle to generate curve segments that are both smooth and fully drivable for the vehicle to steer.
The circular arc in item 2 in many cases might have a zero length and the turn segment then may be two clothoids joined together. Guidance system 114 may use kmax and σmax of vehicle 112 to achieve the shortest possible path length for K-turn 130.
In operation 200B, the guidance system starts generating the next K-turn values for turning around the vehicle and continuing on a next adjacent AB line. In another example, guidance system 114 may pre-calculate the K-turns based on terrain information, map AB line directions, and headland dimensions identified in the electronic map shown in
In operation 200C, the guidance system reads vehicle steering capabilities from memory. The guidance system 114 may calculate and store the following vehicle steering parameters or may store the following pre-derived steering parameters:
For example, during a configuration operation the operator or the guidance system may turn the steering wheel of the vehicle as far as possible to the left and then as far as possible to the right at a highest possible steering speed. The guidance system may measure the maximum left and right steering curvature (or minimum turning radii). The guidance system then may calculate the maximum steering curvature rate of the vehicle by measuring how fast the steering curvature changes. The guidance system may use the GPS receivers and inertial navigation devices to measure the vehicle maximum left and right steering curvature and curvature rate.
In operation 200D, the guidance system calculates the departure and destination postures of the vehicle. For example, the guidance system determines the position and heading of the vehicle at the end of the current AB line (departure posture) and desired position and heading of the vehicle at the beginning of the next AB line (destination posture). The guidance system may determine the departure posture from the GNSS and/or inertial navigation system (INS) data.
The guidance system may determine the destination posture based on the location and direction of the next target AB way-line. For example, the guidance system may calculate the destination posture at the starting point of the next AB way-line and the destination heading as 180 degrees from the current vehicle heading. This depends on the shape at each AB way-line of the field.
In operation 200E, the guidance system may generate the K-turn with a starting direction as a relative direction from the departure posture to the destination posture. For example, if the next AB way-line in the field is to the right of the current AB way-line, the guidance system may calculate the K-turn with a starting right turn.
The guidance system may report success in operation 2001 if a K-turn path generated in operation 200E satisfies certain success criterion in operation 200F. The success criteria may include the K-turn joining the departing and the destination postures, the entire K-turn with all three segments remaining within the headland, and the K-turn having a smallest overall length.
If K-turn generation is not successful, the guidance system in operation 200G retries the K-turn generation with the starting direction opposite to the relative direction from departure to destination postures. For example, for a long skipping distance between departure and destination swaths when turning to the right hand side direction, the guidance system may generate a curve-straight-curve K-turn combination with left turns for the first and third segments. An initial curve segment to the right, a second straight reverse segment, and a third curve segment to the right are shown in
The guidance system reports success in operation 2001 if the second K-turn generation meets the success criterion. If not, the guidance system reports a K-turn generation error and notifies the vehicle operator in operation 200J. In operation 200K, the guidance system completes K-turn generation and returns to running in idle state in operation 200A. If no K-turn can be successfully generated within the headland area, the operator may have to manually perform a manoeuver.
In operation 205D, the guidance system may select a K-turn shape for generation. For example, the guidance system may automatically select a first one of K-turn shapes 130 in
For the selected K-turn shape, operation 205E determines the departure and destination postures based on the number of skipped rows and turn direction. The departure and destination postures may vary based on the shape of the AB way-lines, the spacing between the current and next AB way-line, and the selected first turn direction of the K-turn.
Operation 205F calculates the available headland space for the next K-turn. For example, different amounts of headland space may be available forward, to the left, and to the right based on the location of the current AB way-line and the next AB way-line. Operation 205G calculates the posture of the vehicle for the start of the second turn segment and operation 205H calculates the posture of the vehicle for the start of the third turn segment. For example, based on the selected K-turn, the start of the second and third segments may be in one of the different headings and locations shown in
Operation 205I may calculate the first K-turn segment from the departure posture at the end of the current AB way-line to the start of the second turn segment. The path shape and length are based on the selected K-turn, vehicle speed, maximum steering curvature, and steering curvature rate. Operation 205J calculates the second K-turn segment from the start of the second turn segment to the start of the third K-turn segment. Operation 205K calculates the third K-turn segment from the start of the third turn segment to the start of the next AB way-line.
Operation 205L combines the three calculated segments together for the selected K-turn shape and operation 205M determines if any part of the K-turn path extends outside of the available headland space.
Operation 205N calculates the overall K-turn path length and/or the height and width of the K-turn shape. Operation 205O then stores the calculated K-turn length and status for possible comparison with other K-turn shapes. For example, the navigation system may produce a report used in
The guidance system in operation 210A may run in idle state and wait for a command to start steering the vehicle on a K-Turn path. The guidance system in operation 210B may start the sequence of operations to perform a K-turn to move the vehicle from the end of the current AB way-line to the next AB way-line.
In operation 210C the guidance system sends the first K-turn segment to a vehicle steering controller. The vehicle controller may be any type of electro-mechanical system that steers the vehicle along the first K-turn segment. In one example, the guidance system may send a series of turn and speed commands that the vehicle steering controller uses to steer the vehicle along the first K-turn segment in operation 210D.
Operation 210E monitors the vehicle location and operation 210F slows down the vehicle to a stationary in forward direction when the vehicle reaches the end of the first K-turn segment. Operation 210G then shifts gears in the vehicle from the forward direction to a reverse direction.
The guidance system in operation 210H sends the second K-turn segment to the steering controller. For example, for K-turn 130A in
Operation 210I steers the vehicle along the second K-turn segment and operation 210K slows down the vehicle to a stationary in reverse direction when the vehicle reaches the end of the second K-turn segment. Operation 210L then changes gears of the vehicle from the reverse direction back to the forward direction.
The guidance system in operation 210M sends the third K-turn segment to the vehicle steering controller. For example, for K-turn 130A in
Operation 210O detects the vehicle reaching the end of the third segment and operation 210P sends the destination path to the vehicle steering controller. For example, the guidance system may send steering commands for the next AB way-line. When the vehicle completes the K-turn, operation 210Q transitions into steering the vehicle along the next AB way-line.
Examples of systems, apparatus, computer-readable storage media, and methods are being provided solely to add context and aid in the understanding of the disclosed implementations. It will thus be apparent to one skilled in the art that the disclosed implementations may be practiced without some or all of the specific details provided. In other instances, certain process or method operations, also referred to herein as “blocks,” have not been described in detail in order to avoid unnecessarily obscuring the disclosed implementations. Other implementations and applications also are possible, and as such, the following examples should not be taken as definitive or limiting either in scope or setting.
References have been made to accompanying drawings, which form a part of the description and in which are shown, by way of illustration, specific implementations. Although these disclosed implementations are described in sufficient detail to enable one skilled in the art to practice the implementations, it is to be understood that these examples are not limiting, such that other implementations may be used and changes may be made to the disclosed implementations without departing from their spirit and scope. For example, the blocks of the methods shown and described above are not necessarily performed in the order indicated in some other implementations. Additionally, in some other implementations, the disclosed methods may include more or fewer blocks than are described. As another example, some blocks described herein as separate blocks may be combined in some other implementations. Conversely, what may be described herein as a single block may be implemented in multiple blocks in some other implementations. Additionally, the conjunction “or” is intended herein in the inclusive sense where appropriate unless otherwise indicated; that is, the phrase “A, B or C” is intended to include the possibilities of “A,” “B,” “C,” “A and B,” “B and C,” “A and C” and “A, B and C.”
A Global navigation satellite system (GNSS) is broadly defined to include GPS (U.S.), Galileo (European Union, proposed), GLONASS (Russia), Beidou (China), Compass (China, proposed), IRNSS (India, proposed), QZSS (Japan, proposed) and other current and future positioning technology using signal from satellites, with or without augmentation from terrestrial sources.
Inertial navigation systems (INS) may include gyroscopic (gyro) sensors, accelerometers and similar technologies for providing outputs corresponding to the inertial of moving components in all possible axes (linear directions along and rotational about the X, Y and Z axes respectively). Said terminology will include the words specifically mentioned, derivative thereof and words of similar meaning.
Auto-steering system 8 may interface mechanically with the vehicle's steering column 34, which is mechanically attached to steering wheel 32. A control line 42 may transmit guidance data from the CPU 6 to the auto-steering system 8. An electrical subsystem 44, which powers the electrical needs of vehicle 112, may interface directly with auto-steering system 8 through a power cable 46. Auto-steering subsystem 8 can be mounted to steering column 34 near the floor of the vehicle, and in proximity to the vehicle's control pedals 36. Alternatively, auto-steering system 8 can be mounted at other locations along steering column 34.
The auto-steering system 8 physically drives and steers vehicle 112 by actively turning steering wheel 32 via steering column 34. A motor 45 powered by vehicle electrical subsystem 44 may power a worm drive which powers a worm gear affixed to auto-steering system 8. In other embodiments, auto-steering system 8 is integrated directly into the vehicle drive control system independently of steering column 34.
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.
“Computer-readable storage medium” (or alternatively, “machine-readable storage medium”) used in guidance system 114 may include any type 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.
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.
The present application claims priority to U.S. Provisional Patent Application Ser. No. 62/257,398 filed on Nov. 19, 2015, entitled: K-TURN PATH PLANNING which is incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
62257398 | Nov 2015 | US |