METHOD AND DEVICE FOR GUIDING AN AGRICULTURAL ROBOT
The method and device for guiding agricultural robots improve precision and accuracy in crop row navigation by using wheel control and sensor data to adjust orientations and speeds, addressing the challenges of autonomous crop row movement and tool positioning.
Patent Information
- Authority / Receiving Office
- FR · FR
- Patent Type
- Applications
- Current Assignee / Owner
- NAIO TECHNOLOGIES
- Filing Date
- 2024-11-29
- Publication Date
- 2026-06-05
AI Technical Summary
Agricultural robots face challenges in moving autonomously between crop rows with insufficient precision and accuracy, particularly in maintaining correct trajectories and tool positioning, and require improved guidance systems for various movement modes, including crab-like movements.
A method and device for guiding agricultural robots using wheel control, sensor data acquisition, and computer calculations to determine anchors and instantaneous centers of rotation, adjusting wheel orientations and speeds for precise trajectory correction, incorporating PID controllers for smooth direction changes and deceleration phases.
Enhances the precision and accuracy of agricultural robot movements between crop rows, allowing for various movement modes with reduced oscillations and improved trajectory adherence, ensuring effective crop treatment operations.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Title of the invention: METHOD AND DEVICE FOR GUIDING AN AGRICULTURAL ROBOT - TECHNICAL FIELD AND PRIOR ART
[0001] The invention relates to the field of guidance techniques for an agricultural robot.
[0002] The invention finds particular applications in the field of row crop treatment.
[0003] Guidance techniques are known, for example from document FR3049815.
[0004] But, in order to automate various processing operations carried out by agricultural robots, these must be able to move between crop rows autonomously.
[0005] We are also looking for more precise guidance, particularly with regard to the positioning of the robot and / or the tool it carries. In other words, we are seeking to increase the accuracy of the trajectories of the robot and / or the tool it carries.
[0006] We also seek to allow several modes of movement, for example crab-like movement, in particular when an infinite instantaneous center of rotation is presented. Description of the invention
[0007] The invention relates first to a guidance method for an agricultural robot (or agricultural machine, or autonomous agricultural machine or highly automated agricultural machine (HAAM)) moving between rows of crops.
[0008] It relates in particular to a method for guiding an agricultural robot (or an agricultural machine, or an autonomous agricultural machine or a highly automated agricultural machine (HAAM)) comprising 4 wheels, of which at least 2 are driven and / or steered, connected or not in pairs by an axle, wheel control means, forward movement means which may include one or more (for example 2 or 4) electric motors, enabling the machine to move forward in a main direction of forward movement, a computer, control means which may be configured to control the wheels in speed (for the drive wheels) and possibly in position (for the steerable and drive wheels), one or more processing tool(s), means for moving the processing tools, this method comprising the following steps:
[0009] - acquisition, by one or more sensors, of data on the position of the agricultural robot and transmission of this data to the computer;
[0010] - calculation or determination, by the computer, of at least one or two anchor(s) associated with at least two different wheels or two different axles, depending on said position data and a predefined trajectory, and the instantaneous center of rotation (CIR) of the robot or the two anchors,
[0011] - taking into account the instantaneous center of rotation for the change of orientation wheels and / or the calculation of their speed.
[0012] The invention also relates to a computer program that includes instructions for processing, when this program is loaded or executed on a computer, position data of an agricultural robot (or agricultural machinery, or autonomous agricultural machinery, or highly automated agricultural machinery (HAAM)) in order to:
[0013] - determine, as a function of robot position data and a trajectory predefined robot, at least one or two anchor(s) associated with at least two different wheels or two different axles of the robot, and the instantaneous center of rotation (CIR) from the anchor or the two anchors;
[0014] - take into account the instantaneous center of rotation for the change of orientation of the wheels and / or the calculation of their speed or speeds.
[0015] The robot can then be moved according to the change(s) in orientation of the wheels and / or the calculation of the speed or speeds of the wheels.
[0016] Depending on the position of the instantaneous center of rotation, it is therefore possible to generate a correction of the trajectory and / or the speed of the robot, the level of correction being linked to the difference between the instantaneous center of rotation and the center of the robot.
[0017] If the instantaneous center of rotation is at the center of the robot, then a rotation can be carried out in place.
[0018] The closer the instantaneous center of rotation is to the robot, the stronger the correction, and vice versa.
[0019] The invention also relates to a computer-readable recording medium on which a program according to the invention is recorded.
[0020] In a method or program according to the invention, the data may include location and / or position data, for example of the steering motor(s) and / or the agricultural robot, and / or orientation and / or speed data, for example the rotation speed of the traction motor(s) and / or the agricultural robot; such data, in particular location data, may come from a GNSS (satellite positioning system) and / or be from an inertial measurement unit (in the case, for example, of positioning or orientation data) and / or from rotation speed sensors of the traction motors and / or from position sensors of the steering motors.
[0021] In a method or program or device (or robot) according to the invention (the device or robot is shown below):
[0022] - the 4 wheels of the robot may include 2 or 4 steering and / or driving wheels;
[0023] - and / or the calculator or program determines or calculates the instruction(s) of speed and / or position;
[0024] - and / or the control means or the program transform(s) these instructions into electrical signals for controlling motors (e.g., electric drive);
[0025] - and / or the agricultural robot is, for example, wheeled, and / or of the "straddle" type inter-row or inter-row type crops;
[0026] - and / or at least one processing tool is, for example and without limitation, type hoe, and / or seeder, and / or inter-row cultivator, and / or weeding finger (for example Kress type, registered trademark), and / or clod-breaking disc, and / or notched disc, and / or brush, and / or rigid tooth, and / or tine harrow, and / or opening share, and / or leaf guard, and / or sprayer;
[0027] - and / or the agricultural robot is used, for example, for one or more missions of crop treatment(s), in one or more crop plot(s) including in particular crop row(s);
[0028] - and / or the robot includes lifting means for raising and lowering the tools, allowing the working depth to be adjusted and the tool(s) to be raised during a half-turn; in some cases, a robot may include means for translating the tool holder;
[0029] - and / or there may be an adjustment, by the control means, of the position of the minus two wheels in an initial position.
[0030] In a method or program according to the invention, the anchors:
[0031] - have a predefined length (La);
[0032] - and / or the length (La) of the anchors is variable depending on the speed of the vehicle and / or the desired reaction speed;
[0033] - and / or the instantaneous center of rotation is at the intersection of 2 perpendicular lines to the anchors and which pass through the midpoints of the axles.
[0034] For example, each anchor has one end positioned in the middle of 2 wheels and another end positioned on said predefined trajectory.
[0035] In a method or program according to the invention:
[0036] - when the instantaneous center of rotation (ICR) is located at infinity, the wheels are positioned parallel to the anchors to bring the robot back towards its trajectory;
[0037] - and / or when the instantaneous center of rotation is located at a finite distance, the wheels are oriented in such a way that their center of rotation is the instantaneous center of rotation;
[0038] - and / or the instantaneous center of rotation (ICR) can be determined in a way periodic during the robot's movement.
[0039] Preferably, the method includes (or the program includes instructions for) a determination, by the computer, of at least two anchors associated with at least two different wheels or two different axles, and of the instantaneous center of rotation (ICR) of the two anchors. A difference between the instantaneous center of rotation and the center of the robot may result in the application of a correction, the level of correction being related to this difference (the further the instantaneous center of rotation is from the robot, the less correction there will be, and conversely, the closer it is to the robot, the stronger the correction will be).
[0040] One of the at least two anchors can be associated with a front wheel or axle of the agricultural robot, the other of the at least two anchors can be associated with a rear wheel or axle of the agricultural robot.
[0041] The 2 anchors can be independent of each other.
[0042] In some cases, the instantaneous center of rotation is located on the transverse axis of the robot.
[0043] For example, there is calculation or determination, by the computer of a front anchor, of an angle of this anchor with respect to an axis, for example with respect to the longitudinal axis of the robot, then the same angle is applied, but in the opposite direction, for the rear anchor.
[0044] In some cases, for example in at least one of the robot's turning zones, there is no translation of the robot.
[0045] From the instantaneous center of rotation, the angles and / or speeds of the wheels can be calculated as a function of this instantaneous center of rotation.
[0046] If an instantaneous center of rotation is not identified because the anchors are parallel, then a translation is carried out, for example along the direction defined by the anchors, the same heading being applied to the different wheels.
[0047] In a method according to the invention, the computer (or program) can determine:
[0048] - of a set speed for each wheel, for example as a function of the speed linear at the center of the robot and the distance of each wheel from the instantaneous center of rotation;
[0049] - and / or a heading of each wheel relative to the position of the instantaneous center of rotation, or of the same heading, for each wheel, as a function of an angle between a robot vector (the vector which follows the longitudinal axis of the robot) and a vector of an anchor in order to allow a translation along a given axis.
[0050] In a method or device (shown below) according to the invention, the control means may, for example, include:
[0051] - means which form a speed regulator;
[0052] - and / or means for controlling heading,
[0053] or the control means can be configured to control the wheels by speed and / or heading and / or may include:
[0054] - a speed regulator;
[0055] - and / or a heading control.
[0056] A heading control regulation can be implemented, which is different depending on the turn-around mode or the rank-following mode.
[0057] A program according to the invention may include instructions to perform:
[0058] - a speed regulation;
[0059] - and / or a heading control.
[0060] In a method or program according to the invention:
[0061] - one or more "PID" (Proportional, Integral, Derivative) type controllers may to be implemented;
[0062] - and / or simple proportional control is applied during a half-turn of the robot;
[0063] - and / or:
[0064] * in a row, the instantaneous center of rotation is obtained as a function of the 2 anchors;
[0065] * in the half-turn zones, the instantaneous center of rotation is obtained only thanks to the robot's front anchor.
[0066] - and / or 2 PID controllers can be implemented:
[0067] * a speed controller, which allows the robot to follow a set speed and to accelerate or decelerate;
[0068] * a heading control that allows the robot to recenter itself on its trajectory and to be well aligned with it.
[0069] - and / or (the) 2 PID controllers can be implemented independently of each other the other one.
[0070] A heading control regulation is implemented, which may be different depending on the turn-around mode or the rank-following mode.
[0071] According to another aspect of the invention, it also relates to the regulation of the heading control (PID controller) which differs depending on the half-turn mode (without oscillation) or the rank following mode (allowing correction of the static deviation); according to one embodiment, one or more PID type controllers are applied to the calculation of the angle between the anchor and the robot vector in order to smooth out rapid changes of direction and avoid oscillations.
[0072] When the robot approaches the target position, it can be decelerated according to:
[0073] - a first deceleration with a certain slope up to a point located at a distance, which can be adjusted, of the target;
[0074] - a second deceleration, stronger than the first deceleration, up to a point located at a distance, which can be adjusted, from the target.
[0075] Braking, or final braking, can be applied after the 2nd deceleration, until the robot reaches the target.
[0076] The invention also relates to an agricultural robot (or agricultural machinery, or autonomous agricultural machinery, or highly automated agricultural machinery (HAAM)) comprising four wheels, at least two of which may be steerable and / or drive wheels, wheel control means, forward movement means enabling the machine to move in a principal direction of forward movement, a computer, one or more processing tools, means for moving the processing tool(s), one or more data sensors on the position of the agricultural robot, the computer being configured or programmed to implement a method according to the invention, as defined above or in the remainder of this application, and / or being configured or programmed to:
[0077] - calculate or determine at least one or two anchor(s) associated with at least two different wheels or two different axles, depending on position data provided by said sensors and a predefined trajectory, and the instantaneous center of rotation (ICR) of the robot or the two anchors,
[0078] - take into account the instantaneous center of rotation to calculate or control or to control the change in wheel orientation and / or to calculate their speed.
[0079] A computer of a robot according to the invention can be configured or programmed to control the wheels in speed and direction by performing the following steps:
[0080] - adjusting the position of at least two wheels in an initial position by the control methods;
[0081] - acquisition, by one or more sensors, of data on the position of the agricultural robot and transmission to the computer;
[0082] - calculation or determination of a distance between a target position resulting from a mapping and the actual position of the agricultural robot based on the data received, and:
[0083] * determination, by the computer, of at least two anchors associated with at least two different wheels or two different axles, and the instantaneous center of rotation (ICR) of the two anchors;
[0084] * taking into account the instantaneous center of rotation for the change of orientation wheels and / or the calculation of their speed.
[0085] A method or device (robot) according to the invention may implement:
[0086] - a "GNSS" or "GPS" type guidance system and / or the robot may include an inertial measurement unit and / or one or more rotation and / or position sensors of one or more motors;
[0087] - and / or a compass or a navigation unit, for example of the GNSS and IMU type. Brief description of the drawings
[0088] [Fig.1], [Fig.2], [Fig.3] and [Fig.4] schematically represent various aspects of guiding an agricultural robot;
[0089] Fig. 5 represents a system, comprising an agricultural robot, capable of implementing the invention;
[0090] Fig. 6 represents a computer device for an agricultural robot according to the invention or capable of implementing a method according to the invention.
[0091] DETAILED DESCRIPTION OF SPECIFIC EMBODIMENTS
[0092] An agricultural robot (or agricultural machinery, or autonomous agricultural machinery, or highly automated agricultural machinery (HAAM)) to which the invention can be applied is, for example, wheeled and / or of the "straddle" crop type or of the inter-row type. As illustrated in [Fig. 1], it comprises 4 wheels 2, 4, 6, 8, of which 2 or 4 may be drive wheels and / or 2 or 4 may be steer wheels.
[0093] We can identify:
[0094] - a center distance 3 of the front wheels 2, 4;
[0095] - a center distance 7 of the rear wheels 6, 8.
[0096] Preferably, the value of these center distances is known with good accuracy.
[0097] The crossing 15 of the wheel diagonals can also be identified.
[0098] Furthermore, such a robot can be guided by a “GPS” type guidance system or “ GNSS”. Preferably, the position of the GPS or GNSS relative to the robot's reference point is located at the intersection 12 of the diagonals 14, 16 of the wheel axes.
[0099] Such a robot may further include:
[0100] - an inertial measurement unit (IMU); guidance is preferably performed with respect to a ground tracking; GNSS acquisition is done on the top of the robot; 1TMU allows calculation of a ground reprojection of the GPS (or GNSS) position; the elements allowing guidance (wheels, and / or center of an axle, and / or center of the robot) can be defined from the GPS position and the orientation of the robot given by the IMU;
[0101] - and / or one or more rotation sensor(s) of the traction motor(s);
[0102] - and / or one or more position sensor(s) of the steering motor(s).
[0103] Various rotation sensors and / or position sensors 140i, 1402 ..., 140nsont represented in the example of robots in [Fig.5].
[0104] Incorrect dimensions may lead to poor parallelism (for directional robots) and incorrect GPS positioning; in particular:
[0105] - for an error in x (in a coordinate system x, y, z attached to the robot), depending on the length of the robot (depending on its direction of advancement), the robot risks getting stuck in “target reach problem” or stopping before or after the desired position (in other words: the robot risks overshooting the target or stopping too soon);
[0106] - for an error in z, in case of superelevation, the reprojection (as a function of the 3 axes) may be incorrect and therefore the robot will be out of sync;
[0107] - for an error in y, depending on whether the robot is left or right, it could be all the time difference.
[0108] Reprojection is a calculation of the ground position, from the position measured (for example by GPS or GNSS) at the level of an antenna, for example positioned on the roof of the robot.
[0109] The position relative to the ground can be defined as a function of the position given by the GPS, the orientation of the IMU, and the coordinates of the GPS or GNSS antenna in the robot reference frame.
[0110] For example, the position of the axle centers at ground level may be required. Using GPS or GNSS sensors and the IMU, this position is recalculated. Once these positions are obtained, the anchor calculation can be performed (from the axle center to the path).
[0111] For robots with directional wheels, these are preferably set to their initial position (or "0°") for proper guidance. An incorrect initial setting of the wheels to this initial position can lead to poor guidance and / or misalignment and / or crabbing because the robot does not correct itself from the correct initial position.
[0112] The robot's attitude relates to the robot's 3D orientation in space; it is defined by 3 angles with respect to the 3 axes x, y, z:
[0113] - the roll around the x-axis;
[0114] - the pitch around the y-axis;
[0115] - the heading around the z-axis.
[0116] A robot according to the invention may be equipped with a compass or a navigation unit (for example, of the GNSS and IMU type) that provides these three angles. It may be impossible or difficult to mount it precisely or perfectly aligned with the robot's x-axis, and precisely or perfectly at 0° relative to the robot. Therefore, it is preferable to perform an initial calibration.
[0117] It can be noted that a poor estimation of the robot's attitude can lead to offsets, crab-like movement and also problems with reprojection on the ground and therefore problems with reaching the target.
[0118] The invention can implement one or more vector(s) 13, 17 called “anchor(s)”, of length La, which “pull” the robot along its trajectory. An anchor has as The origin is the center 3, 7 of the front or rear axle, and the target is a point 3', 7' on the robot's trajectory 20. The size (or standard) La of this vector (anchor length) is a constant length that can be configured by the user. For example, this length La is between 2 m and 50 cm. A length La at the lower end of this range can be chosen for vehicles traveling at low speeds, for example, up to 5 km / h, and can be increased for vehicles moving at higher speeds. This length can be adjusted according to the vehicle's speed and / or the desired responsiveness of the guidance system.
[0119] Figure 1 represents the robot 10 with respect to a previously calculated trajectory 20. The robot attempts to follow this trajectory to perform its work in a field. Each of the points between axes 3, 7 is the origin of a vector, or anchor, 13, 17, whose length is fixed by Figure 1. The other end 3', 7' of this vector is positioned on the trajectory 20 (in the direction of forward movement of the robot): at each instant, this end is uniquely determined (depending on the direction of travel of the robot, so that the anchor(s) pull it). A line 23, 27 perpendicular to each of these vectors can be drawn, and the intersection of these two lines provides the instantaneous center of rotation (ICR) 30 of the robot.
[0120] From the anchors of the front and rear axles, the CIR can therefore be obtained. This can be calculated on a periodic basis, for example every 50 ms. The wheels can be oriented so that rotation around the center is the CIR 30 to generate a rotation that respects the CIR.
[0121] Figure 2 represents the case where lines 23 and 27 are parallel to each other. In this case, it is not possible to identify a center of rotation (CIR) at a finite distance. One solution is to rotate each wheel by an angle defined by the anchors 13 and 17 (which are also parallel to each other), the wheels thus also being parallel to the anchors, and thereby bringing the robot back towards its trajectory 20.
[0122] Figure 4 illustrates the calculation of the rotational speed of wheels 2, 4, 6, and 8, in the case where a center of rotation (CIR) 30 is correctly identified. For each wheel, the speed calculation takes into account its distance from the CIR as well as the distance Le between the center 15 (intersection of the wheel diagonals) and the CIR 30. Therefore:
[0123] Wheel rotation speed 2 = (Linear speed center) * (L2 / Lc);
[0124] Wheel rotation speed 4 = (Linear speed center) * (L4 / Lc);
[0125] Wheel rotation speed 6 = (Linear speed center) * (L6 / Lc);
[0126] Wheel rotation speed 8 (Linear center speed) * (L8 / Lc).
[0127] The angles applied to the wheels 2, 4, 6, 8 of the robot allow them to be in rotation around a single center of rotation at all times. The speed of each wheel as calculated above is proportional to the radius: there is no slippage.
[0128] In a row (a crop row), the CIR can be obtained as a function of the 2 anchors. The case of a CIR located at infinity implements a translation phase, as above with [Fig.2].
[0129] In certain areas, particularly turning zones, to avoid translation, the center of rotation (CIR) can be achieved solely using the robot's front anchor. This results in a CIR positioned on the robot's transverse axis, thus preventing translation. In non-translation mode, the usual calculation is performed for the front anchor, and then the same angle, but in the opposite direction, is applied to the rear anchor. For example, if the front anchor indicates a 5° right angle, a -5° angle is simulated for the rear anchor. The same calculation is then performed for the CIR (intersection of the lines orthogonal to the anchors). This method ensures that the CIR lies on the robot's transverse axis.
[0130] According to the invention, a "front and rear anchor" mode can be implemented, which can be used in a row to have two independent anchors at the front and rear, as explained above: in other words, each anchor follows the predefined path or trajectory, resulting in a center of rotation (CIR) or a translation. This allows the robot to perform all possible movements: pure rotation, pure translation, or a curved trajectory around the CIR.
[0131] It can be noted that the length La of the anchors can have an impact on the responsiveness of the guidance:
[0132] - the shorter the length La of the anchors, the more the robot 10 will correct relative to to a point close to him: his aiming point is very close; this is dangerous at high speed because it can generate oscillations, especially when there are turns;
[0133] - the longer the length of the anchors, the more small the robot 10 will have corrections because it will aim at a distant point, it will have stable guidance, little wheel oscillation, but less it will manage changes in trajectory (it will be less reactive, therefore less strict with line following and it will smooth its trajectory).
[0134] In cases where the CIR is "below" or "above" a predefined value:
[0135] a) if the CIR is below a predefined value, there is a determination, by the calculator:
[0136] - of a setpoint speed of each wheel as a function of the linear speed at the center of the robot and the distance of each wheel to the CIR;
[0137] - and / or a heading of each wheel relative to the position of the CIR.
[0138] b) if the CIR is equal to or above the predefined value, the calculator determines:
[0139] - of a set speed of each wheel;
[0140] - and / or the same heading, for each wheel, depending on an angle between a vector robot and a vector of an anchor in order to allow translation along a given axis.
[0141] An agricultural robot according to the invention can be equipped with a tool. This is, for example and without limitation, a tool of the type hoeing machine, and / or seeder, and / or inter-row cultivator, and / or weeding finger (for example of the Kress type, registered trademark), and / or clod-breaking disc, and / or notched disc, and / or brush, and / or rigid toothed brush, and / or tine harrow, and / or opening share, and / or leaf guard, and / or sprayer.
[0142] The robot monitors, preferably at all times, that its points of interest (the axle centers and possibly the tool centers) do not deviate too much from the trajectory. There are different parameters, for example one or more deviation tolerances from the trajectory 20, depending on whether the robot is:
[0143] - at the start of the row, that is to say before having the tools in the ground;
[0144] - or in the rank;
[0145] - or by turning around.
[0146] When planning a robot mission, it is specified that a segment of the trajectory is a half-turn, or a rank entry, or a rank, and the parameters are adapted, for example the deviation tolerances from the trajectory.
[0147] For example, the anchor length La can be varied according to one or the other of these situations, in order to obtain:
[0148] - a responsive and precise system in the ranks;
[0149] - and / or less responsive guidance at the row entry, in order to avoid changes sudden changes of direction;
[0150] - and / or, during half-turns, a non-translational system (with the front anchor only) and which allows for following steep curves.
[0151] The robot's speed can be adjusted according to the offset between the points of interest and the trajectory: the greater this offset, the more the robot slows down in order to reduce the distance it has to return to the trajectory; if the robot is close to the trajectory, the planned speed (the "mission" speed) is applied. If the robot deviates too far from its trajectory, it can be stopped completely.
[0152] Preferably, the deviation margins from the guidance line are adapted to the crop and can be looser during a U-turn to compensate for slippage and offsets from the trajectory. In particular, if a crop requires very high precision, the tolerance margins for deviations from the line can be reduced. During a U-turn, the margins are wider than in the row, because the curves are then steeper, and therefore more difficult to follow, and the line-following constraints are therefore less critical.
[0153] According to the invention, one or more PID (Proportional, Integral, Derivative) controllers can be implemented. Such a PID controller is a closed-loop time-domain system that allows for smooth and stable error cancellation.
[0154] Such a system may include, as input parameter(s):
[0155] - an instruction (for example: turn the front left wheel 5°);
[0156] - and / or a measurement (for example: the front left wheel is turned at 3°).
[0157] Such a system may include, as output parameter(s), a command (for example a heading command, for example again: "go to" 3.5% then 3.8%... then 5°)
[0158] A robot according to the invention may include 2 PID controllers which may be independent of each other:
[0159] - a speed controller that allows the robot to follow its set speed and to accelerate or decelerate smoothly during changes of state (for example: U-turn or load shedding zone...);
[0160] - a heading control that allows the robot to recenter itself, for example at each instant, on its trajectory and to be well aligned with it.
[0161] The implementation of these 2 regulators allows for better precision and better tracking of the trajectory.
[0162] In the context of the present invention, the following may be used:
[0163] - a PID-type regulation in "rank" mode, to smooth out abrupt changes of direction, eliminate the static error;
[0164] - a P-type regulation only in "half-turn" mode, the half-turn being a phase where we simply want to smooth out strong changes in direction without expecting very high precision.
[0165] Therefore, in a method according to the invention, a regulation, for example of the heading control, can be implemented, which is different depending on the turn-around mode or the rank-following mode.
[0166] In a PID controller, the "I" (integral) part may optionally include "anti-windup" mechanisms (anti-runaway of the integral) to prevent saturation effects and avoid system runaway in the event of a prolonged static error. For example, if there is slippage on a slope, and the anchors indicate that the robot needs to turn by a certain angle, for example 5°, to get closer to the trajectory, the controller will indeed turn by that angle, but without taking into account that the robot is slipping. In this case, the actuator is preferably commanded even further to cancel this residual static error, which is the role of the "I" part of the controller. This part "loads" itself according to the error over time and allows a command to be sent to the controller to completely cancel the error.The "anti-windup" feature prevents the integral part of the PID control from becoming unstable and triggering the actuator too abruptly.
[0167] The heading regulator can be in 2 parts, one part for row following and one part for U-turns. For U-turns, it is preferable to use a simple P regulator (in other words: with only a proportional term P), because there can be large changes in trajectory. On the other hand, in the row, it is possible to apply "I" (integral) regulation, particularly in cases where the robots slip and / or tip over, but preferably with an "anti-windup": in other words, I regulation is allowed, but preferably not too much (to avoid overshoot or instability).
[0168] The speed regulator can be of the "PI" type: the sensor(s), control unit and actuator(s) system is slow, does not oscillate, and is without static error, the "I" part allowing the static error to be managed.
[0169] In a robot according to the invention, a user can adjust the robot's kinematics, i.e. various parameters relating to speeds, for example the linear speed setpoint in row and half-turn, and possibly accelerations and decelerations.
[0170] For decelerations, the robot may have phases that ensure that the robot reaches its target smoothly and without overshooting:
[0171] - a deceleration with a certain slope up to a point located at a distance, which can be adjustable, from the target;
[0172] - a stronger deceleration up to a point located at a 2nd distance, which can it also be adjustable, of the target;
[0173] - possibly a braking (or final braking), until reaching the target.
[0174] The robot can therefore implement a deceleration slope with 3 phases, the first two phases being adaptable (one can have linear braking, or soft braking then strong braking or the reverse), the last phase being forced because one must slow down to reach the target.
[0175] According to one example, a user of a robot according to the invention can adjust:
[0176] - the distance between the start of the deceleration and the target (for example: 5m) and the desired speed for this phase (for example: 2km / h);
[0177] - and / or the distance between an end point of the first deceleration phase and the target (for example: 2.5m) and the desired speed for this phase (for example:
[0178] 1.2km / h);
[0179] - and / or the distance between an end point of the second deceleration phase and the target (for example: 1m) and the desired speed for this phase (for example: 0.25km / h).
[0180] An agricultural robot 100 to which the invention can be applied is schematically represented in [Fig.5].
[0181] It comprises wheels 2, 6, a motor (not shown in the figure), transmission means between the motor and the wheels.
[0182] It includes the means already described and can be equipped with:
[0183] - of a number of rotation sensors and / or position sensors 140i, 1402 ...140n which allow, to measure one or more of the parameters already mentioned above;
[0184] - and / or an inertial measurement unit (IMU);
[0185] - and / or means (including an antenna) for GNSS or GPS guidance.
[0186] The data measured using sensors 140i, 1402 ..., 140n can be transmitted to a computer 120 or to an on-board computer. This includes, for example ([Fig. 6]), a central processing unit, which itself includes a microprocessor 56, a set of non-volatile memories and RAM 57, peripheral circuits, all these elements being coupled to a bus 55. Data can be stored in the memory areas, in particular data to implement a method according to the present invention: these areas form a computer-readable recording medium, to implement a method according to the invention or comprising the instructions to, when read by a computer, enable the implementation of a method according to the invention; other types of media may include a USB key or any other type of data storage medium used in computing and which, when read by a computer, enables the implementation of a method according to the invention.The on-board computer or computer is therefore programmed or configured to implement a process according to the invention. Means 59 will allow the management of the input (and in particular from sensors 140i, 1402, ..., 140n) and output data flow, and towards the various components of the robot. These means for receiving and / or transmitting data wirelessly may also be provided.
[0187] The data can be analyzed and processed by a method according to the invention. This analysis and / or processing can be performed by this computer 120 or calculator. Commands are then applied to the robot's components.
Claims
Demands
1. A method for guiding an agricultural robot comprising 4 wheels (2, 4, 6, 8), of which at least 2 are drive and / or steering wheels, wheel control means, forward movement means, enabling the machine to advance in a main direction of forward movement, a computer, one or more processing tool(s), means for moving the processing tool(s), this method comprising the following steps: - acquisition, by one or more sensors, of data on the position of the agricultural robot and transmission to the computer; - calculation or determination, by the computer (120), of at least one or two anchor(s) (13, 17) associated with at least two different wheels or two different axles, according to said position data and a predefined trajectory (20), and an instantaneous center of rotation (30) of the agricultural robot;- taking into account the instantaneous center of rotation (CIR) for the change of orientation of the wheels (2, 4, 6, 8) and / or the calculation of their speed.
2. Method according to claim 1, wherein the computer determines: - a set speed for each wheel; - and / or a heading for each wheel relative to the position of the instantaneous center of rotation (ICR).
3. A method according to claim 1 or 2, wherein the computer determines: - a setpoint speed for each wheel as a function of the linear speed at the center of the robot and the distance of each wheel from the instantaneous center of rotation (ICR); - and / or the same heading for each wheel as a function of an angle between a robot vector and an anchor vector to allow translation along a given axis.
4. A method according to any one of the preceding claims, wherein each anchor has a predefined length (La).
5. Method according to the preceding claim, wherein the length (La) of the anchors is variable depending on the speed of the vehicle and / or the desired reaction speed.
6. A method according to any one of the preceding claims, wherein each anchor has one end positioned in the middle of 2 wheels and another end positioned on said predefined trajectory.
7. A method according to any one of the preceding claims, wherein the instantaneous center of rotation (CIR) is at the intersection of 2 straight lines (13, 17) perpendicular to the anchors and passing through the midpoints (3, 7) of the axles.
8. A method according to any one of the preceding claims, wherein when the instantaneous center of rotation (CIR) is located at infinity, the wheels are positioned parallel to the anchors to bring the robot back to its trajectory (20).
9. A method according to any one of the preceding claims, wherein when the instantaneous center of rotation (30) is located at a finite distance, the wheels are oriented so that their center of rotation is the instantaneous center of rotation (30).
10. A method according to any one of the preceding claims, wherein the control means are configured to control the wheels in speed and heading and / or comprise: - a speed regulator; - and / or a heading control.
11. A method according to any one of the preceding claims, wherein a heading control regulation is implemented, which is different depending on a half-turn mode or a rank-following mode.
12. A method according to any one of the preceding claims, wherein one or more PID (Proportional, Integral, Derivative) type controllers are implemented.
13. A method according to any one of the preceding claims, wherein a simple proportional control is applied during a half-turn of the robot.
14. A method according to any one of the preceding claims, wherein: - in a row, the instantaneous center of rotation is obtained as a function of the 2 anchors; - in the turning zones, the instantaneous center of rotation is obtained solely by means of the front anchor of the robot.
15. A method according to any one of the preceding claims, wherein 2 PID controllers are implemented: - a speed controller, which allows the robot to follow a set speed and to accelerate or decelerate; - a heading control that allows the robot to refocus on its trajectory and be well aligned with it.
16. A method according to the preceding claim, wherein the 2 implemented PID controllers are independent of each other.
17. A method according to any one of the preceding claims, wherein one of the at least two anchors (13) is associated with a front wheel or axle of the agricultural robot, the other (17) of the at least two anchors is associated with a rear wheel or axle of the agricultural robot.
18. A method according to the preceding claim, wherein the 2 anchors are independent of each other.
19. A method according to any one of the preceding claims, wherein the instantaneous center of rotation is located on the transverse axis of the robot.
20. A method according to any one of the preceding claims, wherein there is calculation or determination, by the calculator of a front anchor, of an angle of this anchor with respect to an axis, for example with respect to the longitudinal axis of the robot, and then the same angle is applied, but in the opposite direction, to the rear anchor.
21. A method according to any one of the preceding claims, wherein there is no translation in at least one half-turn zone of the robot.
22. A method according to any one of the preceding claims, wherein the speed of the robot is adjusted according to a difference between a target position and the actual position of the robot.
23. A method according to any one of the preceding claims, wherein, when the robot approaches a target position, it is decelerated according to: - a first deceleration with a certain slope to a point located at a distance, which can be adjusted, from the target; - a second deceleration, stronger than the first deceleration, to a point located at a distance, which can be adjusted, from the target.
24. Method according to the preceding claim, wherein braking is applied after the 2nd deceleration, until the robot reaches the target.
25. A method according to any one of the preceding claims, the 4 wheels being connected in pairs by an axle.
26. A method according to any one of the preceding claims, implementing a "GNSS" or "GPS" type guidance system and / or the robot comprising an inertial measurement unit and / or one or more rotation and / or position sensor(s) of one or more motor(s).
27. A method according to any one of the preceding claims, employing a compass or a navigation unit, for example of the GNSS and IMU type.
28. A method according to any one of the preceding claims, the tool being of the type hoe, and / or seeder, and / or inter-row cultivator, and / or weeding finger (for example of the Kress type, registered trademark), and / or clod-breaking disc, and / or notched disc, and / or brush, and / or rigid tooth, and / or tine harrow, and / or opening share, and / or leaf guard, and / or sprayer.
29. A method according to any one of the preceding claims, comprising an initial step of adjusting the position of at least two wheels in an initial position by the control means.
30. Agricultural robot comprising 4 wheels (2, 4, 6, 8), of which at least 2 are drive and / or steering wheels, wheel control means, forward movement means, enabling the machine to advance in a main forward direction, a computer (120), one or more processing tool(s), means for moving the processing tool(s), one or more sensor(s) (140i, 1402 ..., 140n) of data on the position of the agricultural robot, the computer (120) being configured to: - calculate or determine at least two anchors (13, 17) associated with at least two different wheels or two different axles, as a function of position data provided by said sensors (140i, 1402 ..., 140n), a predefined trajectory (20), and the instantaneous center of rotation (30) of the agricultural robot; - take into account the instantaneous center of rotation for the change of orientation of the wheels (2, 4, 6, 8) and / or the calculation of their speed.
31. Agricultural robot according to the preceding claim, of the wheeled type, and / or of the crop straddle type or of the inter-row type.