Multi-differential drive unit AGV path tracking method and device, and storage medium
By establishing a global and driving coordinate system, decomposing and correcting the motion deviation of multi-differential drive unit AGVs, and calculating the precise drive wheel speed, the problem of path tracking difficulties for multi-differential drive unit AGVs in trackless navigation is solved, realizing path motion and high-precision control at arbitrary attitude angles.
Patent Information
- Application Number
- CN202211704517.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-29
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2042-12-29
AI Technical Summary
In the existing technology, multi-differential drive unit AGVs have difficulty in path tracking control in trackless navigation, especially in achieving path movement at arbitrary attitude angles, and existing methods are only applicable to navigation with traceable paths.
By establishing a global coordinate system and a driving coordinate system, distance deviation and angle deviation are obtained, the AGV motion is decomposed into translational and rotational motions, and the rotation angle and speed of the driving unit are corrected using a pure proportional feedback control algorithm. The kinematic relationship of the differential driving unit is established, and the accurate speed of the driving wheel is calculated.
This invention enables precise path tracking of AGVs with multiple differential drive units under trackless navigation conditions, allowing them to move along the path at any attitude angle. It provides a simple, reliable, and versatile path tracking control method.
Smart Images

Figure CN115963831B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of AGV control technology, and in particular to a path tracking method, device, and storage medium for AGVs with multiple differential drive units. Background Technology
[0002] In the design of heavy-duty industrial AGVs, using multiple drive units (≥2) to provide power is a common method to increase the AGV's carrying capacity without significantly increasing the chassis's ground clearance. There are two common types of drive units used in heavy-duty AGVs: steering wheel drive units and differential drive units. Steering wheel drive units have only one wheel and possess both steering and driving capabilities. Differential drive units have two symmetrically arranged drive wheels, and their steering is achieved through the difference in speed between the two wheels. Steering wheel drive units are simpler to control than differential drive units, but their steering involves significant frictional torque between the wheels and the ground, which greatly reduces wheel life and can damage the ground. Differential drive units, utilizing differential steering, avoid these problems. Therefore, current large heavy-duty AGVs typically use multiple differential drive units as their power units.
[0003] Heavy-duty AGVs using multiple differential drive units have many drive wheels, making coordinated control difficult. Currently, there are few publicly available technologies for this. CN112631309A discloses a dual-differential drive AGV tracking control method, but it is only applicable to "track-following" navigation, not trackless navigation (such as laser navigation, SLAM navigation, etc.), and can only keep the AGV's movement direction tangent to the route, not allowing it to move along the path at arbitrary angles. Summary of the Invention
[0004] The purpose of this invention is to provide a path tracking method, device, and storage medium for multi-differential drive unit AGVs, in order to solve one or more technical problems existing in the prior art, or at least provide a beneficial option or create conditions.
[0005] The solution to the technical problem of this invention is to provide a path tracking method and device for multi-differential drive unit AGVs, as well as a storage medium.
[0006] According to an embodiment of a first aspect of the present invention, a path tracking method for a multi-differential drive unit AGV is provided, comprising the following steps:
[0007] Establish a global coordinate system, and establish a vehicle coordinate system based on the selected AGV reference point. Under the vehicle coordinate system, obtain the rotation center point of each drive unit, and establish a drive coordinate system based on the rotation center point.
[0008] Obtain the AGV tracking path, and based on the AGV reference point, obtain the orthogonal projection point on the path. Based on the path, the orthogonal projection point, and the AGV reference point, obtain the current AGV's distance deviation and angle deviation.
[0009] The motion of the AGV is decomposed, and the distance deviation and angle deviation are corrected according to the target speed of the AGV to obtain the translation vector and rotation vector of each drive unit. Based on the translation vector and rotation vector, the velocity vector of each rotation center point is obtained.
[0010] Based on the velocity vector and the set target velocity, the set rotation angle of each drive unit is obtained;
[0011] Obtain the current actual rotation angle of each drive unit, and correct the obtained rotation angle deviation of each drive unit according to the set rotation angle and the actual rotation angle to obtain the rotational angular velocity of the drive coordinate system of each drive unit.
[0012] Establish the kinematic relationship of the differential drive unit. Based on the kinematic relationship, the set target speed, the speed vector, and the rotational angular velocity of the drive coordinate system, verify and correct the speeds of the left and right drive wheels of each drive unit to obtain the set speeds of the left and right drive wheels of each drive unit.
[0013] Furthermore, the process of establishing the driving coordinate system specifically includes:
[0014] Select the geometric center of the AGV body as the AGV reference point, and establish the body coordinate system xoy with the AGV reference point as the origin. The x-axis is the forward direction of the AGV, and the y-axis points to the left side of the body.
[0015] In the vehicle coordinate system xoy, with the rotation center point p i Establish a driving coordinate system x′p with the origin as the coordinate origin. i The y′ and x′ axes are perpendicular to the axle of the drive unit and point towards the front of the vehicle body. The y′ axis points along the axle towards the left side of the vehicle body, where i is the number of drive units.
[0016] Furthermore, the process of obtaining the distance deviation and angle deviation of the current AGV specifically includes:
[0017] The distance from the AGV reference point to the orthogonal projection point is the distance deviation of the current AGV;
[0018] Obtain the tangential angle θ at the orthogonal projection point. f The AGV's orientation angle θ in the global coordinate system and the target attitude angle θ relative to the tangent of the path when the AGV moves along the path. d ;
[0019] According to the tangential angle θ f , direction angle θ and target attitude angle θd The angle deviation is calculated using the formula: θ e =θ-(θ) f +θ d ), calculate the current angular deviation θ of the AGV. e .
[0020] Furthermore, the process of obtaining the translation vector specifically includes:
[0021] If the motion of an AGV is decomposed into translational motion and rotational motion, then the velocity vector at the rotation center point of each drive unit can be decomposed into translational vector and rotational vector.
[0022] With the distance deviation d e The direction of translational motion when the value is zero is the reference direction φ of the translation vector of each driving unit. f , then φ f =-θ d ;
[0023] Rotate all drive units around their respective rotation centers to correct the angle Δφ. t Δφ is calculated using a pure proportional feedback control algorithm. t Δφ t =-k t d e , where k t A proportionality coefficient that is greater than zero;
[0024] According to the reference direction φ f and correction angle Δφ t Calculate the direction φ of the translation vector of each driving unit. t And according to the set target speed v f The translation vector V of each rotation center point is obtained. t =[v f cosφ t v f sinφ t 0] T .
[0025] Furthermore, the process of obtaining the rotation vector specifically includes:
[0026] With the aforementioned angular deviation θ e The angular velocity of the AGV reference point when it is zero is the reference angular velocity ω of each drive unit. f , then ω f =v f k;
[0027] The AGV body is rotated around the AGV reference point to correct the angular velocity Δω. r Rotation, using a pure proportional feedback control algorithm to calculate Δω r:Δω r =-k r θ e , where k r A proportionality coefficient that is greater than zero;
[0028] According to the reference rotational angular velocity ω f and corrected angular velocity Δω r Calculate the rotational angular velocity ω of each drive unit. r And through the obtained rotation center points p i Position vector in the vehicle coordinate system Obtain the rotation vector V r =[-ω r y i ω r x i 0] T , where i is the number of driving units.
[0029] Furthermore, the process of obtaining the set rotation angle specifically includes:
[0030] When the target speed is v f If the value is positive, the AGV moves forward. The set rotation angle for each drive unit is as follows:
[0031] φ si =atan2(v f sinφ t +ω r x i ,v f cosφ t -ω r y i );
[0032] When the target speed is v f If the value is negative, the AGV will reverse. The set rotation angle for each drive unit is as follows:
[0033] φ si =atan2(v f sinφ t +ω r x i ,v f cosφ t -ω r y i )-π.
[0034] Furthermore, the process of obtaining the rotational angular velocity of the driving coordinate system specifically includes:
[0035] According to the actual rotation angle φ ci and set the rotation angle φ si The rotation angle deviation φ of each drive unit is obtained.ei φ ei =φ ci -φ si ;
[0036] Let each drive unit rotate around the center point p i To correct the angular velocity Δω i Rotation, using a pure proportional feedback control algorithm to calculate Δω i :Δω i =-k s φ ei , where k s A proportionality coefficient that is greater than zero;
[0037] According to the rotational angular velocity ω of each drive unit r and corrected angular velocity Δω i The rotational angular velocity ω of the driving coordinate system of each driving unit is obtained. si :ω si =ω r +Δω i .
[0038] Furthermore, the process of obtaining the set speed of the left and right drive wheels of each drive unit specifically includes:
[0039] Based on the velocity vector and the set target velocity, the preset velocity of each drive unit is calculated. The preset velocity and the rotational angular velocity of the drive coordinate system are input into the kinematic relationship to obtain the velocity of the left and right drive wheels of each drive unit.
[0040] Determine that the left and right drive wheels of each drive unit have the same speed direction, take the absolute value of the speed of the left and right drive wheels of all drive units, and find the maximum speed from the absolute values;
[0041] The maximum speed limit of the drive wheel is obtained. When the maximum speed limit is greater than the maximum speed limit, the speed of the left and right drive wheels of all drive units is adjusted to obtain the set speed of the left and right drive wheels of each drive unit.
[0042] According to a second aspect of the present invention, an electronic device is provided, comprising:
[0043] A memory for storing a program; a processor for executing the program stored in the memory, wherein when the processor executes the program stored in the memory, the processor is configured to execute a multi-differential drive unit AGV path tracking method as described in any one of the first aspects.
[0044] According to a third aspect of the present invention, a storage medium is provided, comprising: storing computer-executable instructions for performing a multi-differential drive unit AGV path tracking method as described in any one of the first aspects.
[0045] The beneficial effects of this invention are as follows: Based on the distance and angle deviations between the AGV body and the path, each drive unit under the AGV body is corrected to obtain a velocity vector. Then, based on the rotational angle deviation of each drive unit, the respective drive unit is corrected to obtain the rotational angular velocity of the drive coordinate system. The kinematic relationship of the differential drive units is established, and the set speeds of the left and right drive wheels of each drive unit with high accuracy and low error are verified. This invention provides a simple, reliable, and versatile path tracking control method for AGVs with a multi-differential drive unit structure using trackless navigation. The drive coordinate system of the drive units is established, independent of the layout of the drive units, allowing the AGV to move along the path at any attitude angle. It can be extended to AGVs using two or more differential drive units, and features a simple algorithm and easy programming. Attached Figure Description
[0046] Figure 1 This is a schematic flowchart of a path tracking method for AGVs with multiple differential drive units provided by the present invention;
[0047] Figure 2 This is a schematic diagram in global coordinates of a multi-differential drive unit AGV path tracking method provided by the present invention;
[0048] Figure 3 This is an example diagram of a four-differential-drive AGV tracking straight line using a multi-differential-drive AGV path tracking method provided by the present invention;
[0049] Figure 4 This is a schematic diagram of the rotation center point velocity synthesis of a multi-differential drive unit AGV path tracking method provided by the present invention;
[0050] Figure 5 This is a schematic diagram of the velocity vector of the drive unit in its own coordinate system when the multi-differential drive unit AGV path tracking method provided by the present invention is moving forward and backward.
[0051] Figure 6 This is a schematic diagram of the differential drive unit structure of an AGV path tracking method with multiple differential drive units provided by the present invention. Detailed Implementation
[0052] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and should not be construed as limiting the scope of the invention.
[0053] It should be noted that although functional modules are divided in the system diagram, in some cases, the steps shown or described may be executed in a different order than the module division or flowchart shown in the system. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0054] In the description of this invention, it should be noted that, unless otherwise explicitly defined, terms such as "setting," "installation," and "connection" should be interpreted broadly, and those skilled in the art can reasonably determine the specific meaning of the above terms in this invention in conjunction with the specific content of the technical solution.
[0055] According to an embodiment of the first aspect of the present invention, referring to Figure 1 and Figure 2 In some embodiments of the present invention, a path tracking method for a multi-differential drive unit AGV includes the following steps:
[0056] S100, establish a global coordinate system, establish a vehicle coordinate system based on the selected AGV reference point, obtain the rotation center point of each drive unit in the vehicle coordinate system, and establish a drive coordinate system based on the rotation center point.
[0057] In this embodiment, a global coordinate system XOY is constructed. Without loss of generality, the geometric center o of the AGV body is selected as the reference point for motion control. That is, the AGV reference point o is selected. This reference point o can be any point on the vehicle body, depending on the actual application requirements. A local coordinate system xoy is constructed with the AGV reference point o as the origin.
[0058] In the vehicle coordinate system xoy, the AGV has i drive units on its body, and each drive unit has a rotation center point p. i Using the rotation center point p on each drive unit i Construct a local coordinate system on each driving unit, that is, construct the driving coordinate system x′p. i y′.
[0059] S200: Obtain the AGV tracking path; obtain the orthogonal projection point on the path based on the AGV reference point; and obtain the current AGV's distance deviation and angle deviation based on the path, orthogonal projection point, and AGV reference point.
[0060] In this embodiment, the path C that the AGV is tracking is obtained in the global coordinate system XOY. An orthogonal projection point M on path C is constructed using the AGV reference point o.
[0061] The current distance deviation of the AGV is obtained by using the AGV reference point o and the orthogonal projection point M.
[0062] The current angle deviation of the AGV is obtained by using the orthogonal projection point M, the path C, and the AGV reference point o.
[0063] S300 decomposes the motion of the AGV, corrects the distance and angle deviations according to the target speed of the AGV, and obtains the translation and rotation vectors of each drive unit. Based on the translation and rotation vectors, the velocity vectors of each rotation center point are obtained.
[0064] In this embodiment, the planar motion of the AGV with multiple differential drive units is decoupled, and the decoupled motion is superimposed on each drive unit.
[0065] Using the target speed v of the AGV moving along the path f The distance deviation is corrected to obtain the translation vector of each drive unit.
[0066] The angular deviation is corrected to obtain the rotation vector of each drive unit. Based on the two vectors obtained for each drive unit, the rotation center point p of the i drive units can be calculated. i The velocity vector V at that point i .
[0067] S400 obtains the set rotation angle of each drive unit based on the velocity vector and the set target velocity.
[0068] In this embodiment, the set rotation angle of the drive unit is related to the movement direction of the AGV, that is, to the set target speed v. f The sign is related to the target velocity v. f To represent the forward movement of the AGV, the target speed v is set. f A negative value indicates that the AGV vehicle is moving backward.
[0069] Based on the characteristics of the differential drive unit, the velocity vector V i Always relative to its own coordinate system x′p i The x' axis coincides with the y' axis. When v f If positive, then V i The direction is the same as the positive x′ axis; when v f If it is negative, then V i The direction is opposite to the positive x′ axis.
[0070] via v f With V iThe relationship between these factors determines the set rotation angle for each drive unit.
[0071] S500: Obtain the current actual rotation angle of each drive unit, and correct the obtained rotation angle deviation of each drive unit according to the set rotation angle and the actual rotation angle to obtain the rotational angular velocity of the drive coordinate system of each drive unit.
[0072] In this embodiment, the actual rotation angle of each drive unit is detected.
[0073] The rotation angle deviation of each drive unit is calculated by using the set rotation angle obtained from S400 and the actual rotation angle detected.
[0074] The rotational deviation of each drive unit is corrected to obtain the rotational angular velocity of each drive unit in the drive coordinate system.
[0075] It should be noted that the distance deviation and angle deviation are the same for each drive unit, based on the deviation between the AGV body itself and the tracking path, while the individual angular deviation of each drive unit may have slight differences.
[0076] S600: Establish the kinematic relationship of the differential drive unit. Based on the kinematic relationship, the set target speed, the speed vector and the rotational angular velocity of the drive coordinate system, check and correct the speeds of the left and right drive wheels of each drive unit, and obtain the set speeds of the left and right drive wheels of each drive unit.
[0077] In this embodiment, the kinematic relationship of the differential drive unit is constructed. Based on the kinematic relationship, the set target speed, the velocity vector obtained in S400, and the rotational angular velocity of the drive coordinate system obtained in S500, the speed of the left drive wheel and the speed of the right drive wheel of each drive unit are calculated.
[0078] The obtained drive wheel speeds are checked and corrected, and finally the set speeds of the left and right drive wheels of each drive unit are output.
[0079] Based on the distance and angular deviations between the AGV body and the path, each drive unit under the AGV body is corrected to obtain a velocity vector. Then, based on the rotational angular deviation of each drive unit, the respective drive unit is corrected to obtain the rotational angular velocity of the drive coordinate system. The kinematic relationship of the differential drive units is established, and the corrected speeds of the left and right drive wheels of each drive unit are verified to achieve high accuracy and low error. This invention provides a simple, reliable, and versatile path tracking control method for AGVs with a multi-differential drive unit structure using trackless navigation. The drive coordinate system of the drive units is established independently of the drive unit layout, allowing the AGV to move along the path at any attitude angle. It can be extended to AGVs using two or more differential drive units, and features a simple algorithm and easy programming.
[0080] Reference Figure 2 In some embodiments of the present invention, the establishment of the driving coordinate system in S100 includes the following specific steps:
[0081] S110, the origin of the coordinate system is the geometric center of the AGV body, and the body coordinate system xoy is established. The forward direction of the AGV is set as the x-axis, and the left side of the body is the direction of the y-axis.
[0082] In this embodiment, without loss of generality, the geometric center o of the AGV body is selected as the reference point for motion control; that is, the AGV reference point o is selected. This reference point o can be any point on the vehicle body, depending on the actual application requirements. A local coordinate system xoy is constructed with the AGV reference point o as the origin. The x-axis points in the forward direction, and the left side of the vehicle body points to the y-axis. Alternatively, the y-axis can be obtained by rotating the x-axis 90° counterclockwise.
[0083] S120, in the vehicle coordinate system, the origin is the rotation center point p. i Establish the driving coordinate system x′p i y′.
[0084] In this embodiment, the rotation center point of the i-th drive unit is defined as p. i Let p i The coordinates in the vehicle coordinate system xoy are (x i ,y i ), with p i Construct the driving coordinate system x′p of this driving unit with the origin as the coordinate origin. i y′. The direction perpendicular to the axle of the drive unit is the x′ axis, pointing towards the front of the AGV body. The y′ axis is along the axle, pointing towards the left side of the AGV body. φ is the angle of the drive unit relative to the x-axis in the vehicle coordinate system xoy, with counterclockwise being positive and clockwise being negative. i is the number of drive units on the AGV body.
[0085] Reference Figure 2 and Figure 3 In some embodiments of the present invention, in S200, the process of obtaining the distance deviation and angle deviation includes the following specific steps:
[0086] S210, the distance deviation is calculated based on the AGV reference point and the orthogonal projection point.
[0087] In this embodiment, the current AGV's distance deviation is the straight-line distance from the AGV reference point o to the orthogonal projection point M. The distance deviation is obtained by calculating the straight-line distance between the two points, denoted as d. e Its symbol is v f The direction is used as a reference, with the left side being positive and the right side being negative.
[0088] S220, in the global coordinate system XOY, construct the tangential angle θ at the orthogonal projection point M. f Obtain the AGV's orientation angle θ and the target attitude angle θ relative to the path tangent when the AGV moves along the path. d .
[0089] In this embodiment, point M is the orthogonal projection point on path C of the AGV reference point o, θ f Let v be the tangential angle at point M, and k be the curvature at point M. f Let θ be the target speed for the AGV as it moves along the path, with its direction aligned with the tangent at point M. In the global coordinate system, XOY, θ represents the AGV's direction angle.
[0090] θ d This represents the target attitude angle of the AGV relative to the tangential direction of the path as it moves along the path. (Refer to...) Figure 3 In particular, when θ d When the value is 0, that is, the velocity direction of the AGV coincides with the x-axis of the vehicle coordinate system xoy. At this time, the AGV moves along path C in the forward and backward direction.
[0091] When θ d When the angle is 90°, that is, the AGV's velocity direction coincides with the y-axis of the vehicle coordinate system xoy, at which point the AGV moves along path C in the left and right direction, which is to say, it becomes a lateral movement mode.
[0092] S230, via the tangential angle θ f , direction angle θ and target attitude angle θ d The formula θ is used to calculate the angle deviation. e =θ-(θ) f +θ d The angular deviation θ is calculated. e .
[0093] In this embodiment, the target attitude angle θ d With tangential angle θ f The sum of these is the target direction angle θ of the AGV. x Define the difference θ between the AGV's direction angle θ and the target's direction angle. x θ is the angular deviation of the AGV. e The formula for calculating the angle deviation is:
[0094] θ e =θ-θ x =θ-(θ) f +θ d )
[0095] Reference Figure 4In some embodiments of the present invention, in S300, the process of obtaining the translation vector includes the following specific steps:
[0096] S310 decouples the AGV's motion into translational and rotational motions. In the vehicle coordinate system, the rotation center point p is... i The velocity vector V at that point i As the velocity vector of each drive unit, the velocity vector V i It consists of its own translation vector and rotation vector.
[0097] In this embodiment, the planar motion of the multi-differential drive unit AGV is decoupled into translational motion of the AGV reference point and rotational motion about the AGV reference point. The velocity vector xoy of each drive unit in the vehicle coordinate system can be obtained from p i The velocity vector V at that point i The expression is given by their respective translation vectors V. t and rotation vector V r It was synthesized.
[0098] S311, set the reference direction of the translation vector of each drive unit as φ f With distance deviation d e The translation direction of the AGV reference point when the value is 0 is φ. f , then φ f =-θ d .
[0099] In this embodiment, let the distance deviation d e The translation direction of the AGV reference point when the value is 0 is φ. f , φ f Translation vector V for each drive unit t If the reference direction is φ, then f =-θ d .
[0100] S312 controls all drive units to rotate around their respective rotation center points to correct the angle Δφ. t Rotation, Δφ is calculated using a pure proportional feedback control algorithm. t .
[0101] In this embodiment, in order to correct the distance deviation d e The translation vector of all drive units is controlled to rotate around their respective rotation centers p. i Rotate by a correction angle Δφ t , where Δφ t The calculation can be performed using PID (including P, PI, PD) control methods or fuzzy control methods.
[0102] In this embodiment, a pure proportional feedback control method is used to calculate Δφ.t :
[0103] Δφ t =-k t d e
[0104] , where k t The proportionality coefficient is greater than zero.
[0105] S313, using the reference direction φ obtained from S311 f The corrected angle Δφ is obtained from S312. t Calculations are performed to obtain the direction φ of the translation vector. t By the direction φ of the translation vector t and the set target speed v f The translation vector V of each rotation center point can be obtained. t =[v f cosφ t v f sinφ t 0] T .
[0106] In this embodiment, the direction of the translation vector of each driving unit obtained in S311 is used as the reference direction φ. f The corrected angle Δφ is obtained by superimposing S312. t :
[0107] φ t =φ f +Δφ t =-θ d +Δφ t
[0108] Calculate the direction φ of the translation vector. t The magnitude of the translation vector is proportional to the target velocity v. f As a preset value, the center point p of each revolution can be obtained. i Translation vector V at point t =[v f cosφ t v f sinφ t 0] T .
[0109] When the distance deviation d e When θ = 0, the AGV body moves along path C. Then, based on the target attitude angle θ relative to the tangential direction of the path when the AGV moves along the path... d The distance deviation d between the AGV body and the path C e Correction is made to obtain the rotation center point p of each drive unit. i Translation vector V at pointt =[v f cosφ t v f sinφ t 0] T .
[0110] Reference Figure 4 In some embodiments of the present invention, in S300, the process of obtaining the rotation vector includes the following specific steps:
[0111] S320, set the reference rotational angular velocity of each drive unit to ω. f , with angular deviation θ e The rotational angular velocity of the AGV reference point when it is zero is taken as ω. f , then ω f =v f k.
[0112] In this embodiment, when θ e When ω = 0, the rotational angular velocity of the AGV reference point is taken as ω. f ω f For each drive unit, the reference rotational angular velocity is ω. f =v f k.
[0113] S321, control the AGV body to rotate around the AGV reference point to correct the angular velocity Δω r Rotation, using a pure proportional feedback control algorithm to calculate Δω r .
[0114] In this embodiment, in order to correct the angular deviation θ e Control the AGV body to revolve around the AGV reference point with a corrected angular velocity Δω r Rotation, where Δω r The calculation can be performed using PID (including P, PI, PD) control methods or fuzzy control methods.
[0115] In this embodiment, a pure proportional feedback control method is used to calculate Δω. r :
[0116] Δω r =-k r θ e
[0117] , where k r The proportionality coefficient is greater than zero.
[0118] S322, using the reference rotational angular velocity ω obtained from S320 f The corrected angular velocity Δω obtained from S321 r Calculations were performed to obtain the rotational angular velocity ω.r Obtain the center points p of each rotation. i Position vector in the vehicle coordinate system By rotational angular velocity ω r and position vector Obtain the center points p of each revolution i Rotation vector V at the location r =[-ω r yi ω r xi 0] T .
[0119] In this embodiment, the rotational angular velocity ω of each drive unit r Reference angular velocity ω f Superimposed correction angular velocity Δω r Let the rotational angular velocity be ω. r Then we have:
[0120] ω r =ω f +Δω r =v f k+Δω r
[0121] Let W denote the angular velocity vector of the AGV body rotation, then W = [0 0 ω r ] T In the vehicle coordinate system xoy, Indicates each center of rotation p i position vector, Then we can obtain the center points p of each revolution. i Rotation vector V at the location r =[-ω r y i ω r x i 0] T .
[0122] When the angle deviation θ e When θ = 0, the AGV's velocity direction coincides with the x-axis of the vehicle coordinate system xoy. At this time, the AGV moves along path C in a forward and backward direction. The angular deviation θ between the AGV body and path C is... e Correction is made to obtain the rotation center point p of each drive unit. i Rotation vector V at the location r =[-ω r y i ω r x i 0] T .
[0123] It should be noted that the translation vector V obtained from S313 t =[v f cosφ t v f sinφ t 0] T The rotation vector V obtained from S322 r =[-ω r y i ω r x i 0] T Thus, the center points p of each revolution are obtained. i The velocity vector V at that point i :
[0124] V i =V t +V r =[v f cosφ t -ω r y i v f sinV t +ω r x i 0] T .
[0125] Reference Figure 5 In some embodiments of the present invention, in S400, the process of obtaining the set angle includes the following specific steps:
[0126] S410, when the set target speed v f For positive values, the set rotation angle for each drive unit is:
[0127] φ si =atan2(v f sinφ t +ω r x i ,v f cosV t -ω r y i ).
[0128] In this embodiment, the set rotation angle of the drive unit is related to the movement direction of the AGV, that is, to the set target speed v. f The sign is related to the target velocity v. f A positive value indicates that the AGV is moving forward. Based on the characteristics of the differential drive unit, the velocity vector V... i Always relative to its own coordinate system x′p i The x' axis coincides with the y' axis. If v f If positive, then Vi The direction is the same as the positive x′ axis, and the set rotation angle for each drive unit is:
[0129] φ si =atan2(v f sinφ t +ω r x i ,v f cosφ t -ω r y i ).
[0130] S420, when the set target speed v f If negative, the set rotation angle for each drive unit is:
[0131] φ si =atan2(v f sinφ t +ω r x i ,v f cosφ t -ω r y i )-π.
[0132] In this embodiment, the set rotation angle of the drive unit is related to the movement direction of the AGV, that is, to the set target speed v. f The sign is related to the target velocity v. f A negative value indicates that the AGV is reversing. Based on the characteristics of the differential drive unit, the velocity vector V... i Always relative to its own coordinate system x′p i The x' axis coincides with the y' axis. If v f If it is negative, then V i The direction is opposite to the positive x′ axis, and the set rotation angle for each drive unit is:
[0133] φ si =atan2(v f sinφ t +ω r x i ,v f cosφ t -ω r y i )-π.
[0134] Reference Figure 5 and Figure 6 In some embodiments of the present invention, in S500, the process of obtaining the rotational angular velocity of each drive unit includes the following specific steps:
[0135] S510, by obtaining the actual rotation angle φci The set rotation angle φ obtained in S400 si The rotational deviation φ of each drive unit was calculated. ei .
[0136] In this embodiment, the rotation angle deviation φ ei The calculation formula is:
[0137] φ ei =φ ci -φ si
[0138] S520 controls each drive unit to rotate around its respective rotation center point p. i To correct the angular velocity Δω i Rotation, using a pure proportional feedback control algorithm to calculate Δω i .
[0139] In this embodiment, in order to correct the angular deviation φ ei Control each drive unit around the rotation center point p i With a corrected angular velocity Δω i Rotate.
[0140] It should be noted that this is different from the correction of the angular velocity Δω of the AGV body around the AGV reference point. r ,Δω r It is the same for each driving unit, but Δω i The corrected angular velocity Δω is different for each drive unit. i With their respective angular deviations φ ei related.
[0141] Where, Δω i The calculation can be performed using PI-D (including P, PI, PD) control methods or fuzzy control methods.
[0142] In this embodiment, a pure proportional feedback control method is used to calculate Δω. i :
[0143] Δω i =-k s φ ei
[0144] , where k s The proportionality coefficient is greater than zero.
[0145] S530, via ω r and corrected angular velocity Δω i The rotational angular velocity ω of the driving coordinate system of each driving unit is obtained. si :ω si =ω r +Δωi .
[0146] In this embodiment, the rotational angular velocity ω obtained by S322 r and corrected angular velocity Δω i Then the driving coordinate system x′p of each driving unit i The rotational angular velocity ω of y′ si for:
[0147] ω si =ω r +Δω i
[0148] In some embodiments of the present invention, in S600, the process of obtaining the set speed includes the following specific steps:
[0149] S610 calculates the preset speed of each drive unit by using the set target speed and speed vector. The preset speed, along with the rotational angular velocity of the drive coordinate system, is then input into the kinematic relationship to obtain the speed of the left and right drive wheels of each drive unit.
[0150] In this embodiment, the kinematic relationship of the differential drive unit is constructed:
[0151]
[0152] The wheel track between the two drive wheels of the drive unit is D.
[0153] Through the set target speed v f and velocity vector V i Calculate the preset speed v of each drive unit. i The preset speed v of each drive unit i Size and the target velocity v f Let the signs be consistent and be v. i Then we have:
[0154]
[0155] The preset speed v of the drive unit i and driving coordinate system x′p i The rotational angular velocity ω of y′ si Input the speed of the left drive wheel of each drive unit to obtain the speed. and the speed of the right drive wheel of each drive unit
[0156] S620: Confirm that the speed directions of the left and right drive wheels of each drive unit are the same, take the absolute value of the speed of all left and right drive wheels, and find the maximum speed.
[0157] In this embodiment, to ensure the smooth movement of the AGV, They should be the same number; otherwise, if they are opposite in direction, it can easily lead to a lack of coordination between the various drive units of the AGV, resulting in vehicle vibration and jamming.
[0158] when If they have the same sign, then The kinematic relationship of the differential drive unit is obtained. If not satisfied This indicates that the radius of curvature at point M on the current path is too small, and path C should be optimized.
[0159] Since the speed of each drive wheel in a multi-differential drive unit AGV is not exactly the same during movement, the speed is calculated according to steps S100 to S500. This may exceed the maximum speed limit of the drive wheels. Therefore, find out all The maximum value among absolute values, i.e., the maximum velocity.
[0160] S630: Obtain the maximum speed limit of the drive wheels. Based on the maximum speed value and the maximum speed limit obtained in S620, correct the speed of the left and right drive wheels of all drive units.
[0161] In this embodiment, based on the maximum limiting speed v of the drive wheel max When there is a maximum speed Greater than the maximum speed limit v max ,Right now, The speed of each drive wheel is then corrected according to the speed correction formula.
[0162] The speed correction formula is:
[0163]
[0164] , where v old The original set speed value is obtained through the kinematic relationship of the differential drive unit. v new To set the speed value.
[0165] When there is a maximum speed Less than or equal to the maximum speed limit v max ,Right now, Then no correction is needed; the kinematic relationship obtained through the differential drive unit will be used. As the set speed value.
[0166] It should be noted that the initial turning angle deviation φ should be checked each time the AGV starts and begins path tracking. ei If φ eiIf the value is too large, each drive unit will first rotate in place to the set rotation angle φ. si Then restart to avoid problems caused by angular deviation φ ei An excessively large value prevents each drive unit from quickly rotating to its designated angle φ. si This can lead to a lack of coordination in movement, causing the AGV to malfunction.
[0167] According to an embodiment of a second aspect of the present invention, an electronic device includes:
[0168] A memory for storing a program; a processor for executing the program stored in the memory, wherein when the processor executes the program stored in the memory, the processor is used to execute a multi-differential drive unit AGV path tracking method as described in any of the first aspects.
[0169] The processor and memory can be connected via a bus or other means.
[0170] Memory, as a non-transitory computer-readable storage medium, can be used to store non-transitory software programs and non-transitory computer-executable programs, such as the AGV dual-radar installation error calibration method described in the embodiments of the present invention. The processor implements the multi-differential-drive-unit AGV path tracking method of the first aspect of the present invention by running the non-transitory software program and instructions stored in the memory.
[0171] The memory may include a program storage area and a parameter storage area. The program storage area may store the operating system and application programs required for at least one function. The parameter storage area may store the above-described method for calibrating the installation error of the AGV dual radar. Furthermore, the memory may include high-speed random access memory and non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory may optionally include memory remotely located relative to the processor, which can be connected to the processor via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.
[0172] According to an embodiment of a third aspect of the present invention, an electronic device includes:
[0173] A storage medium, characterized in that it comprises: storing computer-executable instructions for executing the multi-differential drive unit AGV path tracking method as described in the first aspect of the present invention.
[0174] The non-transient software program and instructions required to implement the above-described terminal selection method are stored in memory. When executed by one or more processors, they perform the multi-differential drive unit AGV path tracking method of the first aspect of the present invention.
[0175] It will be understood by those skilled in the art that all or some of the steps and systems in the methods disclosed above can be implemented as software, firmware, hardware, and suitable combinations thereof. Some or all of the physical components can be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit. Such software can be distributed on a computer-readable medium, which can include computer storage media (or non-transitory media) and communication media (or transient media). As is known to those skilled in the art, the term computer storage media includes volatile and non-volatile, removable and non-removable media implemented in any method or technology for storing information (such as computer-readable instructions, parameter structures, program modules, or other parameters). Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technologies, CD-ROM, digital versatile disc (DVD) or other optical disc storage, magnetic cartridges, magnetic tape, disk storage or other magnetic storage devices, or any other medium that can be used to store desired information and is accessible to a computer. Furthermore, as is known to those skilled in the art, communication media typically include computer-readable instructions, parameter structures, program modules, or other parameters in modulation parameter signals such as carrier waves or other transmission mechanisms, and may include any information delivery medium.
[0176] The preferred embodiments of the present invention have been described in detail above, but the present invention is not limited to the embodiments described. Those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present invention, and these equivalent modifications or substitutions are all included within the scope defined by the claims of this application.
Claims
1. A path tracking method for AGVs with multiple differential drive units, characterized in that, include: Establish a global coordinate system, and establish a vehicle coordinate system based on the selected AGV reference point. Under the vehicle coordinate system, obtain the rotation center point of each drive unit, and establish a drive coordinate system based on the rotation center point. Obtain the AGV tracking path, and based on the AGV reference point, obtain the orthogonal projection point on the path. Based on the path, the orthogonal projection point, and the AGV reference point, obtain the current AGV's distance deviation and angle deviation. The motion of the AGV is decomposed, and the distance deviation and angle deviation are corrected according to the target speed of the AGV to obtain the translation vector and rotation vector of each drive unit. Based on the translation vector and rotation vector, the velocity vector of each rotation center point is obtained. Based on the velocity vector and the set target velocity, the set rotation angle of each drive unit is obtained; Obtain the current actual rotation angle of each drive unit, and correct the obtained rotation angle deviation of each drive unit according to the set rotation angle and the actual rotation angle to obtain the rotational angular velocity of the drive coordinate system of each drive unit. Establish the kinematic relationship of the differential drive unit. Based on the kinematic relationship, the set target speed, the speed vector and the rotational angular velocity of the drive coordinate system, check and correct the speeds of the left and right drive wheels of each drive unit to obtain the set speeds of the left and right drive wheels of each drive unit.
2. The path tracking method for a multi-differential drive unit AGV according to claim 1, characterized in that, The process of establishing the driving coordinate system specifically includes: Select the geometric center of the AGV body as the AGV reference point, and establish the body coordinate system xoy with the AGV reference point as the origin. The x-axis is the forward direction of the AGV, and the y-axis points to the left side of the body. In the vehicle coordinate system xoy, with the rotation center point p i Establish a driving coordinate system x′p with the origin as the coordinate origin. i The y′ and x′ axes are perpendicular to the axle of the drive unit and point towards the front of the vehicle body. The y′ axis points along the axle towards the left side of the vehicle body, where i is the number of drive units.
3. The path tracking method for a multi-differential drive unit AGV according to claim 1, characterized in that, The process of obtaining the distance deviation and angle deviation of the current AGV specifically includes: the distance from the AGV reference point to the orthogonal projection point is the distance deviation of the current AGV; Obtain the tangential angle θ at the orthogonal projection point. f The AGV's orientation angle θ in the global coordinate system and the target attitude angle θ relative to the tangent of the path when the AGV moves along the path. d ; According to the tangential angle θ f , direction angle θ and target attitude angle θ d The angle deviation is calculated using the formula: θ e =θ-(θ) f +θ d ), calculate the current angular deviation θ of the AGV. e .
4. The path tracking method for a multi-differential drive unit AGV according to claim 3, characterized in that, The process of obtaining the translation vector specifically includes: If the motion of an AGV is decomposed into translational motion and rotational motion, then the velocity vector at the rotation center point of each drive unit can be decomposed into translational vector and rotational vector. With the distance deviation d e The direction of translational motion when the value is zero is the reference direction φ of the translation vector of each driving unit. f , then φ f =-θ d ; Rotate all drive units around their respective rotation centers to correct the angle Δφ. t Δφ is calculated using a pure proportional feedback control algorithm. t Δφ t =-k t d e , where k t A proportionality coefficient that is greater than zero; According to the reference direction φ f and correction angle Δφ t Calculate the direction φ of the translation vector of each driving unit. t And based on the set target speed v f The translation vector V of each rotation center point is obtained. t =[v f cosφ t v f sinφ t 0] T .
5. The path tracking method for a multi-differential drive unit AGV according to claim 4, characterized in that, The process of obtaining the rotation vector specifically includes: With the aforementioned angular deviation θ e The angular velocity of the AGV reference point when it is zero is the reference angular velocity ω of each drive unit. f , then ω f =v f k; The AGV body is rotated around the AGV reference point to correct the angular velocity Δω. r Rotation, using a pure proportional feedback control algorithm to calculate Δω r :Δω r =-k r θ e , where k r A proportionality coefficient that is greater than zero; According to the reference rotational angular velocity ω f and corrected angular velocity Δω r Calculate the rotational angular velocity ω of each drive unit. r And through the obtained rotation center points p i Position vector in the vehicle coordinate system Obtain the rotation vector V r =[-ω r y i ω r x i 0] T , where i is the number of driving units.
6. The path tracking method for a multi-differential drive unit AGV according to claim 5, characterized in that, The process of obtaining the set rotation angle specifically includes: When the target speed is v f If the value is positive, the AGV moves forward. The set rotation angle for each drive unit is as follows: f si =atan2(v f sinφ t +oh r x i ,v f cosφ t -oh r y i ); When the target speed is v f If the value is negative, the AGV will reverse. The set rotation angle for each drive unit is as follows: f si =atan2(v f sinφ t +oh r x i ,v f cosφ t -oh r y i )-p.
7. The path tracking method for a multi-differential drive unit AGV according to claim 6, characterized in that, The process of obtaining the rotational angular velocity of the driving coordinate system specifically includes: According to the actual rotation angle φ ci and set the rotation angle φ si The rotation angle deviation φ of each drive unit is obtained. ei φ ei =φ ci -φ si ; Let each drive unit rotate around the center point p i To correct the angular velocity Δω i Rotation, using a pure proportional feedback control algorithm to calculate Δω i :Δω i =-k s φ ei , where k s A proportionality coefficient that is greater than zero; According to the rotational angular velocity ω of each drive unit r and corrected angular velocity Δω i The rotational angular velocity ω of the driving coordinate system of each driving unit is obtained. si :ω si =ω r +Δω i .
8. The path tracking method for a multi-differential drive unit AGV according to claim 1, characterized in that, The process of obtaining the set speed of the left and right drive wheels of each drive unit specifically includes: Based on the velocity vector and the set target velocity, the preset velocity of each drive unit is calculated. The preset velocity and the rotational angular velocity of the drive coordinate system are input into the kinematic relationship to obtain the velocity of the left and right drive wheels of each drive unit. Determine that the left and right drive wheels of each drive unit have the same speed direction, take the absolute value of the speed of the left and right drive wheels of all drive units, and find the maximum speed from the absolute values; The maximum speed limit of the drive wheel is obtained. When the maximum speed limit is greater than the maximum speed limit, the speed of the left and right drive wheels of all drive units is adjusted to obtain the set speed of the left and right drive wheels of each drive unit.
9. An electronic device, characterized in that, include: Memory, used to store programs; A processor is configured to execute a program stored in the memory, wherein when the processor executes the program stored in the memory, the processor is configured to perform a multi-differential drive unit AGV path tracking method as described in any one of claims 1 to 8.
10. A storage medium, characterized in that, include: The device stores computer-executable instructions for performing a multi-differential drive unit AGV path tracking method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Tracking control method for double-differential-wheel drive type AGV
CN112631309A
Trajectory tracking control method of AGV system
CN110262517A
Tracking control method for steering wheel drive type AGV
CN110989571A