Method and device for controlling an unmanned guided vehicle
By using the Longguta algorithm to predict the position error of the unmanned transport vehicle and correct the deviation, the path deviation and derailment problems caused by the unmanned transport vehicle due to the abnormal synchronization of the two-wheeled transport vehicle are solved, and the accuracy and stability of the driving trajectory are improved.
Patent Information
- Application Number
- CN201911173759.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-11-26
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2039-11-26
AI Technical Summary
When an unmanned truck is driving in a warehouse, due to uneven road surfaces and other reasons, the two wheels may be out of synchronization, deviated from the pre-planned driving path, and even derailed.
By obtaining the current actual position coordinates and deflection angle of the unmanned transport vehicle, using the Longgekuta algorithm to predict its position coordinates at the next moment, calculate the position error, and correct the deviation according to the error, send control information to adjust the driving of the unmanned transport vehicle. path.
The trajectory accuracy of the unmanned transport vehicle during driving is improved, the probability of derailment is reduced, and the unmanned transport vehicle can travel steadily along the predetermined path.
Smart Images

Figure CN112859826B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of computer technology, and more particularly to a method and device for controlling an unmanned guided vehicle. Background Art
[0002] With the rapid development of e-commerce and new retail, AGVs have been widely used. When an AGV is driving in a warehouse, due to some reasons such as uneven warehouse road surface, the two wheels may not be synchronized, causing the AGV to deviate from the pre-planned driving path. If the AGV's driving path is not corrected in time, the AGV may derail. Summary of the invention
[0003] The embodiments of the present application provide a method and device for controlling an unmanned guided vehicle.
[0004] In a first aspect, an embodiment of the present application provides a method for controlling an unmanned guided vehicle, including: obtaining the actual position coordinates and deflection angle of a target unmanned guided vehicle in a preset coordinate system at a current moment; based on the actual position coordinates and the deflection angle, using the Runge-Kutta algorithm, predicting the position coordinates of the target unmanned guided vehicle at the next moment as predicted position coordinates; obtaining the pre-planned planned position coordinates of the target unmanned guided vehicle at the next moment, and determining the position error based on the planned position coordinates and the predicted position coordinates; determining the target position coordinates based on the position error and the actual position coordinates; and sending control information to the target unmanned guided vehicle based on the target position coordinates.
[0005] In some embodiments, the preset coordinate system uses the starting point of the target automated guided vehicle as the coordinate origin and the starting driving direction of the target automated guided vehicle as the positive direction of the horizontal coordinate axis.
[0006] In some embodiments, based on the actual position coordinates and the deflection angle, the position coordinates of the target unmanned guided vehicle at the next moment are predicted as the predicted position coordinates using the Runge-Kutta algorithm, including: obtaining the rotation angle of the target unmanned guided vehicle within a target period and the driving speed of the target unmanned guided vehicle, wherein the target period is a communication period with the target unmanned guided vehicle; determining the projection lengths of the projections of the driving path of the target unmanned guided vehicle at each target deflection angle and the driving speed for the target period on the horizontal axis and the vertical axis of the coordinate system, respectively, wherein the target deflection angle is determined based on the deflection angle and the rotation angle; determining a weighted average value of preset weights corresponding to each target deflection angle and the corresponding projection lengths on the horizontal axis as a first average value, and determining the sum of the horizontal coordinate value in the actual position coordinates and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment; determining a weighted average value of the weights corresponding to each target deflection angle and the corresponding projection lengths on the vertical axis as a second average value, and determining the sum of the vertical coordinate value in the actual position coordinates and the second average value as the vertical coordinate value of the target unmanned guided vehicle at the next moment.
[0007] In some embodiments, the rotation angle is determined based on the wheel diameter of the target unmanned guided vehicle, the change value of the wheel motor encoder when the target unmanned guided vehicle travels the target cycle, the resolution of the wheel motor encoder of the target unmanned guided vehicle, the mechanical reduction ratio of the target unmanned guided vehicle, and the distance between the two wheels of the target unmanned guided vehicle.
[0008] In some embodiments, obtaining the actual position coordinates and deflection angle of the target unmanned guided vehicle in a preset coordinate system at a current moment includes: obtaining an image presenting a target identifier; identifying the actual position information of the target unmanned guided vehicle at a current moment from the target identifier, and determining the driving direction of the target unmanned guided vehicle at a current moment from the image; determining the actual position coordinates of the target unmanned guided vehicle in the preset coordinate system at a current moment based on the actual position information; and determining the deflection angle of the target unmanned guided vehicle in the coordinate system at a current moment based on the driving direction.
[0009] In the second aspect, an embodiment of the present application provides a device for controlling an unmanned guided vehicle, comprising: an acquisition unit, configured to acquire the actual position coordinates and deflection angle of the target unmanned guided vehicle in a preset coordinate system at the current moment; a prediction unit, configured to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle and using the Runge-Kutta algorithm; a first determination unit, configured to acquire the pre-planned planned position coordinates of the target unmanned guided vehicle at the next moment, and determine the position error based on the planned position coordinates and the predicted position coordinates; a second determination unit, configured to determine the target position coordinates based on the position error and the actual position coordinates; and a sending unit, configured to send control information to the target unmanned guided vehicle based on the target position coordinates.
[0010] In some embodiments, the preset coordinate system uses the starting point of the target automated guided vehicle as the coordinate origin and the starting driving direction of the target automated guided vehicle as the positive direction of the horizontal coordinate axis.
[0011] In some embodiments, the prediction unit is further configured to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle using the Runge-Kutta algorithm in the following manner: obtaining the rotation angle of the target unmanned guided vehicle and the driving speed of the target unmanned guided vehicle within the target period, wherein the target period is the communication period with the target unmanned guided vehicle; determining the projection lengths of the projections of the driving path of the target unmanned guided vehicle at each target deflection angle and the driving speed for the target period on the horizontal axis and the vertical axis of the coordinate system, respectively, wherein the target deflection angle is determined based on the deflection angle and the rotation angle; determining the weighted average of the preset weights corresponding to each target deflection angle and the corresponding projection lengths on the horizontal axis as the first average value, and determining the sum of the horizontal coordinate value in the actual position coordinates and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment; determining the weighted average of the weights corresponding to each target deflection angle and the corresponding projection lengths on the vertical axis as the second average value, and determining the sum of the vertical coordinate value in the actual position coordinates and the second average value as the vertical coordinate value of the target unmanned guided vehicle at the next moment.
[0012] In a third aspect, an embodiment of the present application provides an electronic device, comprising: one or more processors; a storage device on which one or more programs are stored, and when the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any implementation method in the first aspect.
[0013] In a fourth aspect, an embodiment of the present application provides a computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the method described in any implementation manner in the first aspect.
[0014] The method and device for controlling an unmanned guided vehicle provided by the above-mentioned embodiment of the present application first obtain the actual position coordinates and deflection angle of the target unmanned guided vehicle in the preset coordinate system at the current moment; then, based on the above-mentioned actual position coordinates and the above-mentioned deflection angle, the Runge-Kutta algorithm is used to predict the position coordinates of the above-mentioned target unmanned guided vehicle at the next moment as the predicted position coordinates; then, the planned position coordinates of the above-mentioned target unmanned guided vehicle at the next moment are obtained, and the position error is determined based on the above-mentioned planned position coordinates and the above-mentioned predicted position coordinates; then, the target position coordinates are determined based on the above-mentioned position error and the above-mentioned actual position coordinates; finally, control information is sent to the above-mentioned target unmanned guided vehicle based on the above-mentioned target position coordinates. In this way, the position coordinates of the unmanned guided vehicle at the next moment are predicted, and the position error that may occur in the unmanned guided vehicle at the next moment is inferred in combination with the pre-planned position coordinates, and corrected at the current moment, thereby improving the trajectory accuracy of the unmanned guided vehicle during driving and reducing the probability of derailment of the unmanned guided vehicle. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Other features, objects and advantages of the present application will become more apparent by reading the detailed description of non-limiting embodiments made with reference to the following drawings:
[0016] Figure 1 is an exemplary system architecture diagram to which various embodiments of the present application may be applied;
[0017] Figure 2 is a flow chart of an embodiment of a method for controlling an unmanned guided vehicle according to the present application;
[0018] Figure 3 is a schematic diagram of an application scenario of the method for controlling an unmanned guided vehicle according to the present application;
[0019] Figure 4 is a flow chart of predicting the position coordinates of a target unmanned guided vehicle at the next moment in a method for controlling an unmanned guided vehicle according to the present application;
[0020] Figure 5 It is a schematic diagram of a driving trajectory of a target unmanned guided vehicle in a method for controlling an unmanned guided vehicle according to the present application and determining a rotation angle of the target unmanned guided vehicle based on the driving trajectory of the target unmanned guided vehicle;
[0021] Figure 6is a structural schematic diagram of an embodiment of a device for controlling an unmanned guided vehicle according to the present application;
[0022] Figure 7 It is a structural diagram of a computer system suitable for implementing an electronic device of an embodiment of the present application. DETAILED DESCRIPTION
[0023] The present application will be further described in detail below in conjunction with the accompanying drawings and embodiments. It is to be understood that the specific embodiments described herein are only used to explain the relevant invention, rather than to limit the invention. It should also be noted that, for ease of description, only the parts related to the relevant invention are shown in the accompanying drawings.
[0024] It should be noted that, in the absence of conflict, the embodiments and features in the embodiments of the present application can be combined with each other. The present application will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0025] Figure 1 An exemplary system architecture 100 is shown to which an embodiment of the method for controlling an unmanned guided vehicle of the present application can be applied.
[0026] like Figure 1 As shown, the system architecture 100 may include an unmanned guided vehicle 101, a network 102, and a server 103 that provides support for the unmanned guided vehicle 101. The unmanned guided vehicle 101 may be provided with an onboard smart device 104 and a driver 105. The network 102 is used to provide a medium for a communication link between the onboard smart device 104 and the server 103. The network 102 may include various connection types, such as wired, wireless communication links, global positioning systems, or optical fiber cables, etc.
[0027] The vehicle-mounted smart device 104 is equipped with a control system of the unmanned guided vehicle 101. The control system can send control information to the driver 105 to control the driving of the unmanned guided vehicle 101. The vehicle-mounted smart device 104 can interact with the server 103 through the network 102 to receive information such as control information.
[0028] The unmanned guided vehicle 101 may also be equipped with various sensors, such as obstacle sensors, camera devices, gyroscopes, accelerometers, etc. It should be noted that the unmanned guided vehicle 101 may also be equipped with sensors of various types and functions other than those listed above, which will not be described in detail here.
[0029] The vehicle-mounted intelligent device 104 can be hardware or software. When the vehicle-mounted intelligent device 104 is hardware, it can be an electronic device that supports information interaction. When the vehicle-mounted intelligent device 104 is software, it can be installed in the above-mentioned electronic device. It can be implemented as multiple software or software modules (for example, to provide distributed services), or it can be implemented as a single software or software module. No specific limitation is made here.
[0030] The server 103 may be a server that provides various services, such as a server that sends control information to the on-board smart device 104 installed on the unmanned guided vehicle 101. The server 103 may first obtain the actual position coordinates and deflection angle of the unmanned guided vehicle 101 in the preset coordinate system at the current moment; then, based on the actual position coordinates and the deflection angle, the Runge-Kutta algorithm may be used to predict the position coordinates of the unmanned guided vehicle 101 at the next moment as the predicted position coordinates; then, the planned position coordinates of the unmanned guided vehicle 101 at the next moment that are pre-planned may be obtained, and the position error may be determined based on the planned position coordinates and the predicted position coordinates; then, the target position coordinates may be determined based on the position error and the actual position coordinates; finally, based on the target position coordinates, control information may be sent to the on-board smart device 104 of the target unmanned guided vehicle 101, so that the on-board smart device 104 drives the driver 105 using the control information.
[0031] It should be noted that the server 103 can be hardware or software. When the server 103 is hardware, it can be implemented as a distributed server cluster consisting of multiple servers, or it can be implemented as a single server. When the server 103 is software, it can be implemented as multiple software or software modules (for example, for providing distributed services), or it can be implemented as a single software or software module. No specific limitation is made here.
[0032] It should be noted that the method for controlling the unmanned guided vehicle provided in the embodiment of the present application is usually executed by the server 103 .
[0033] It should be understood that Figure 1 The number of unmanned guided vehicles, on-board intelligent devices, drivers, networks, and servers in the embodiment is merely illustrative. Any number of unmanned guided vehicles, on-board intelligent devices, drivers, networks, and servers may be provided as required.
[0034] Continue to refer Figure 2 , shows a process 200 of an embodiment of a method for controlling an unmanned guided vehicle according to the present application. The method for controlling an unmanned guided vehicle comprises the following steps:
[0035] Step 201, obtaining the actual position coordinates and deflection angle of the target automated guided vehicle in a preset coordinate system at the current moment.
[0036] In this embodiment, the execution subject (eg Figure 1 The server 103 shown in the figure can obtain the actual position coordinates and deflection angle of the target unmanned guided vehicle in the preset coordinate system at the current moment. An unmanned guided vehicle can also be called an unmanned guided transport vehicle, which refers to a transport vehicle equipped with an automatic guidance device such as an electromagnetic or optical device, capable of traveling along a specified guidance path, and having safety protection and various transfer functions. The above-mentioned target unmanned guided vehicle can be an unmanned guided vehicle that is currently traveling in the warehouse.
[0037] In this embodiment, the preset coordinate system may be a two-dimensional coordinate system whose horizontal and vertical axes are respectively parallel to two adjacent sides of the warehouse where the target unmanned guided vehicle is located. The execution subject may obtain the actual position coordinates and deflection angle of the target unmanned guided vehicle at the current moment through the Global Positioning System (GPS). It should be noted that the deflection angle is usually the angle between the orientation of the target unmanned guided vehicle and the starting driving direction of the target unmanned guided vehicle.
[0038] Step 202 : Based on the actual position coordinates and the deflection angle, the Runge-Kutta algorithm is used to predict the position coordinates of the target AGV at the next moment as the predicted position coordinates.
[0039] In this embodiment, the execution subject can use the Runge-Kutta algorithm based on the actual position coordinates and deflection angle obtained in step 201 to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates. The Runge-Kutta algorithm is a high-precision single-step algorithm widely used in engineering. The Runge-Kutta algorithm can suppress errors. The Runge-Kutta algorithm can be used for computer simulation applications when the derivatives and initial information of the equations are known, eliminating the complex process of solving differential equations. The most classic Runge-Kutta algorithm is the fourth-order Runge-Kutta algorithm (RK4).
[0040] Here, the initial value information can be expressed as the following formula (1):
[0041] y'=f(t,y),y(t n )=y n (1)
[0042] Then, RK4 for predicting the position coordinates of the target AGV at the next moment is given by the following formula (2):
[0043]
[0044] Wherein, k1, k2, k3 and k4 in formula (2) can be determined by the following formulas (3), (4), (5) and (6), respectively:
[0045] k1=f(t n ,y n ) (3)
[0046]
[0047]
[0048] k4=f(t n +t,y n +tk3) (6)
[0049] Among them, y n is the coordinate value (horizontal coordinate value or vertical coordinate value) of the actual position coordinate at the current moment, y n+1 is the coordinate value of the predicted position at the next moment, t n is the current time, k1 is the slope at the beginning of a communication, k2 is the slope at the midpoint of a communication, and the slope k1 is used by the Euler method to determine the slope of y at point k3 is the slope at the midpoint of a communication, and the slope k2 is used to determine the value of y at point k4 is the slope at the end of a communication, the slope k3 is used to determine the value of y at point x0+t, and n is a natural number.
[0050] In this way, the value y at the next moment n+1 The current value y n It is determined by adding the product of the time interval t and an estimated slope.
[0051] It should be noted that the above-mentioned execution entity can also obtain the slope at the preset time, for example, the slope at the beginning of the time period, the slope at one-third of the time period, the slope at two-thirds of the time period and the slope at the end of the time period, and determine the weighted average of the slopes at the above-mentioned preset time, so as to predict the position coordinates of the above-mentioned target unmanned guided vehicle at the next moment.
[0052] Step 203, obtaining the pre-planned planned position coordinates of the target automated guided vehicle at the next moment, and determining the position error based on the planned position coordinates and the predicted position coordinates.
[0053] In this embodiment, after obtaining the starting position and the end position of the target unmanned guided vehicle, the above-mentioned execution subject can plan the driving route of the above-mentioned target unmanned guided vehicle. Afterwards, a curve for characterizing the correspondence between position and time can be fitted according to the settings of acceleration and maximum speed. The above-mentioned curve is divided according to the communication cycle, and when the time reaches the communication moment, the planned position coordinates (planned position coordinates) are sent to the above-mentioned target unmanned guided vehicle. Here, the above-mentioned execution subject usually sends the planned position coordinates to the driver (servo driver) of the above-mentioned target unmanned guided vehicle. It should be noted that the next moment is usually separated from the current moment by the above-mentioned communication cycle.
[0054] In this embodiment, the execution subject may use the curve for characterizing the corresponding relationship between position and time to obtain the planned position coordinates of the target unmanned guided vehicle at the next moment. Afterwards, the execution subject may determine the position error based on the planned position coordinates and the predicted position coordinates predicted in step 202. Specifically, the execution subject may determine the difference between the horizontal coordinate value in the planned position coordinates and the horizontal coordinate value in the predicted position coordinates as the position error of the horizontal coordinate. The execution subject may determine the difference between the vertical coordinate value in the planned position coordinates and the vertical coordinate value in the predicted position coordinates as the position error of the vertical coordinate.
[0055] Here, the execution subject can determine the position error of the horizontal axis by the following formula (7), and determine the position error of the vertical axis by the following formula (8):
[0056] e x = x′ i+1 -x i+1 (7)
[0057] e y =y′ i+1 -y i+1 (8)
[0058] Among them, e x is the position error of the horizontal axis, x′ i+1 is the horizontal coordinate value in the planning position coordinate, x i+1 is the horizontal coordinate value in the predicted position coordinate, e y is the position error of the ordinate, y′ i+1 is the ordinate value in the planned position coordinates, y i+1 It is the vertical coordinate value in the predicted position coordinates.
[0059] Step 204, determining the target position coordinates based on the position error and the actual position coordinates.
[0060] In this embodiment, the execution subject may determine the target position coordinates based on the position error determined in step 203 and the actual position coordinates. Specifically, the execution subject may determine the sum of the position error of the horizontal coordinate and the horizontal coordinate value in the actual position coordinates as the horizontal coordinate value of the target position coordinates. The execution subject may determine the sum of the position error of the vertical coordinate and the vertical coordinate value in the actual position coordinates as the vertical coordinate value of the target position coordinates.
[0061] Here, the above execution entity can determine the target position coordinates through the following formula (9) and formula (10):
[0062] x″ i+1 =x i +e x (9)
[0063] y″ i+1 =y i +e y (10)
[0064] Among them, x″ i+1 is the horizontal coordinate value of the target position coordinate, x i is the horizontal coordinate value in the actual position coordinate, e x is the position error of the horizontal axis, y″ i+1 is the ordinate value of the target position, y i is the ordinate value in the actual position coordinates, e y is the position error of the ordinate.
[0065] Step 205: Send control information to the target AGV based on the target position coordinates.
[0066] In this embodiment, the above-mentioned execution subject may send control information to the above-mentioned target unmanned guided vehicle based on the target position coordinates determined in step 204. After the above-mentioned target unmanned guided vehicle receives the above-mentioned control information, the above-mentioned control information may be used to drive the driver of the above-mentioned target unmanned guided vehicle so that the above-mentioned target unmanned guided vehicle reaches the above-mentioned target position coordinates, thereby realizing the position correction of the target unmanned guided vehicle at the current moment. Specifically, the above-mentioned execution subject may use the above-mentioned actual position coordinates as the starting point and the above-mentioned target position coordinates as the end point to plan the path to be traveled by the above-mentioned target unmanned guided vehicle. The above-mentioned execution subject may send control information to the above-mentioned target unmanned guided vehicle according to the above-mentioned path to be traveled. The above-mentioned control information may include but is not limited to: driving direction and driving speed.
[0067] In some optional implementations of this embodiment, an identifier for indicating the location information of the corresponding position may be pasted on the floor of the warehouse where the target unmanned guided vehicle is located, such as a two-dimensional code, a QR code, and a chessboard. The target identifier is generally the identifier for indicating the location information of the corresponding position. The target identifier may be pasted on a designated position on the floor of the warehouse, and a preset distance may be spaced between the designated positions. The execution subject may obtain the actual position coordinates and deflection angle of the target unmanned guided vehicle at the current moment in the preset coordinate system in the following manner: after the camera installed on the target unmanned guided vehicle acquires an image containing the target identifier, the execution subject may obtain an image presenting the target identifier. Afterwards, the target identifier may be read, and since the target identifier stores the location information for indicating the corresponding position, the execution subject may identify the actual location information of the target unmanned guided vehicle at the current moment from the target identifier. The execution subject may also determine the driving direction of the target unmanned guided vehicle at the current moment from the image. The execution subject may determine the driving direction of the target unmanned guided vehicle by integrating the electronic compass data through the rotation of the target identifier in the image.
[0068] Then, the execution entity can determine the actual position coordinates of the target unmanned guided vehicle at the current moment in the preset coordinate system based on the actual position information. The actual position information is usually the position information of the target unmanned guided vehicle in the warehouse. The actual position indicated by the actual position information can be represented as a coordinate point. As an example, if the preset coordinate system is a warehouse coordinate system, for example, with a specified point in the warehouse as the coordinate origin, the horizontal axis and the vertical axis are respectively parallel to the two adjacent sides of the warehouse where the target unmanned guided vehicle is located, the execution entity can determine the coordinates of the coordinate point representing the actual position indicated by the actual position information as the actual position coordinates of the target unmanned guided vehicle at the current moment in the coordinate system. If the preset coordinate system is a first coordinate system with the starting point of the target unmanned guided vehicle as the coordinate origin and the starting driving direction of the target unmanned guided vehicle as the positive direction of the horizontal coordinate axis, the execution entity can determine the relative position of the coordinate point of the actual position indicated by the actual position information relative to the coordinate point of the actual position indicated by the actual position information of the target unmanned guided vehicle at the initial moment, thereby determining the actual position coordinates of the target unmanned guided vehicle at the current moment in the first coordinate system.
[0069] Finally, the execution subject can determine the deflection angle of the target unmanned guided vehicle in the coordinate system at the current moment based on the driving direction. It should be noted that the deflection angle is usually the angle between the driving direction of the target unmanned guided vehicle and the reference direction. As an example, if the reference direction is the starting driving direction of the target unmanned guided vehicle, the execution subject can determine the angle between the current driving direction of the target unmanned guided vehicle and the starting driving direction as the deflection angle of the target unmanned guided vehicle in the coordinate system at the current moment.
[0070] Continue to see Figure 3 , Figure 3 FIG. 1 is a schematic diagram of an application scenario of the method for controlling an unmanned guided vehicle according to this embodiment. Figure 3In the application scenario, the server 301 can first obtain the actual position coordinates 303 and the deflection angle 304 of the unmanned guided vehicle 302 in the preset warehouse coordinate system at the current moment. Here, the actual position coordinates 303 can be (20, 35), and the deflection angle 304 can be 30 degrees. It should be noted that the deflection angle 304 can be the angle between the positive direction of the horizontal axis of the above-mentioned warehouse coordinate system. Afterwards, the server 301 can use the Runge-Kutta algorithm based on the actual position coordinates 303 and the deflection angle 304 to predict the position coordinates of the unmanned guided vehicle 302 at the next moment as the predicted position coordinates 305. Here, using the Runge-Kutta algorithm, the predicted position coordinates 305 are predicted to be (24, 38). Then, the server 301 can obtain the pre-planned planned position coordinates 306 of the unmanned guided vehicle 302 at the next moment as (23, 40), and the server 301 can determine the difference -1 between the horizontal coordinate value 23 in the planned position coordinates 306 and the horizontal coordinate value 24 in the predicted position coordinates 305 as the position error 307 of the horizontal coordinate, and the server 301 can determine the difference 2 between the vertical coordinate value 40 in the planned position coordinates 306 and the vertical coordinate value 38 in the predicted position coordinates 305 as the position error of the vertical coordinate. Then, the server 301 can determine the target position coordinates 308 based on the position error 307 and the actual position coordinates 303. Specifically, the server 301 can determine the sum of the position error of the horizontal coordinate -1 and the horizontal coordinate value 20 in the actual position coordinate 303 as the horizontal coordinate value of the target position coordinate 308, and can determine the sum of the position error of the vertical coordinate 2 and the vertical coordinate value 35 in the actual position coordinate 303 as the vertical coordinate value of the target position coordinate 308, thereby determining that the target position coordinate 308 is (19, 37). Finally, the server 301 can send control information 309 to the unmanned guided vehicle 302 based on the target position coordinate 308. Specifically, the server 301 can use the actual position coordinate (20, 35) as the starting point and the target position coordinate (19, 37) as the end point to plan the path to be traveled by the unmanned guided vehicle 302, and can send control information 309 such as the driving direction and driving speed to the unmanned guided vehicle 302 according to the above-mentioned path to be traveled.
[0071] The method provided by the above-mentioned embodiment of the present application predicts the position coordinates of the unmanned guided vehicle at the next moment, and infers the position error that may occur in the unmanned guided vehicle at the next moment by combining the pre-planned position coordinates, and corrects it at the current moment, thereby improving the trajectory accuracy of the unmanned guided vehicle during driving and reducing the probability of derailment of the unmanned guided vehicle.
[0072] Further references Figure 4 , Figure 4 FIG4 is a flowchart 400 for predicting the position coordinates of a target unmanned guided vehicle at the next moment in a method for controlling an unmanned guided vehicle according to the present application. Figure 4 As shown, in this embodiment, the prediction step of predicting the position coordinates of the target unmanned guided vehicle at the next moment includes:
[0073] Step 401, obtaining the rotation angle of a target automated guided vehicle within a target period and the driving speed of the target automated guided vehicle.
[0074] In this embodiment, the execution subject (eg Figure 1 The server 103 shown in FIG. 1 may obtain the rotation angle of the target unmanned guided vehicle within the target cycle and the driving speed of the target unmanned guided vehicle. The target unmanned guided vehicle may be an unmanned guided vehicle that is currently in driving state in the warehouse. The target cycle may be a communication cycle between the execution subject and the target unmanned guided vehicle. The rotation angle may be the product of the angular velocity of the rotation of the target unmanned guided vehicle due to the asynchronous driving of the two wheels and the target cycle.
[0075] Step 402 : Determine the projection lengths of the projections of the driving path of the target automated guided vehicle at each target deflection angle and the target driving speed for the cycle on the abscissa and ordinate axes of the coordinate system.
[0076] In this embodiment, the execution entity may determine the projection lengths of the driving path of the target automated guided vehicle traveling the target period at the driving speed at each target deflection angle on the abscissa and ordinate axes of the coordinate system.
[0077] Here, the target deflection angle may be determined based on the deflection angle and the rotation angle. The target deflection angle may include the deflection angle of the target unmanned guided vehicle at the beginning of a communication (the deflection angle), the deflection angle of the target unmanned guided vehicle at the midpoint of a communication (the sum of half of the rotation angle and the deflection angle), and the deflection angle of the target unmanned guided vehicle at the end of a communication (the sum of the rotation angle and the deflection angle).
[0078] In this embodiment, the execution subject can determine the projection lengths of the projections of the driving path of the target automated guided vehicle traveling at the target speed for the target period on the abscissa axis of the coordinate system respectively by using the following formulas (11), (12), (13) and (14):
[0079]
[0080]
[0081]
[0082]
[0083] in, is the projection length of the target AGV's driving path of the target period at the driving speed, when the deflection angle of the target AGV is θ, on the abscissa axis of the coordinate system, The deflection angle of the target unmanned guided vehicle corresponding to the driving path of the target cycle driven by the target unmanned guided vehicle at the driving speed is When , the projection length of the projection on the horizontal axis of the above coordinate system is, The deflection angle of the target unmanned guided vehicle corresponding to the driving path of the target cycle driven by the target unmanned guided vehicle at the driving speed is When , the projection length of the projection on the horizontal axis of the above coordinate system is, The deflection angle of the target unmanned guided vehicle corresponding to the driving path of the target cycle driven by the target unmanned guided vehicle at the driving speed is θ+V ω At t, the projection length of the projection on the abscissa axis of the above coordinate system, V L is the driving speed of the target AGV, θ is the deflection angle of the target AGV in the preset coordinate system at the current moment, V ω is the angular velocity of the rotation of the target unmanned guided vehicle due to the asynchronous driving of the two wheels, and t is the communication period between the execution subject and the target unmanned guided vehicle.
[0084] In this embodiment, the execution subject can determine the projection lengths of the projections of the driving path of the target automated guided vehicle traveling at the target speed for the target period on the ordinate axis of the coordinate system respectively at each target deflection angle by using the following formulas (15), (16), (17) and (18):
[0085]
[0086]
[0087]
[0088]
[0089] in, is the projection length of the target AGV's driving path of the target period at the driving speed, when the deflection angle of the target AGV is θ, on the ordinate axis of the coordinate system, The deflection angle of the target unmanned guided vehicle corresponding to the driving path of the target cycle driven by the target unmanned guided vehicle at the driving speed is When , the projection length of the projection on the ordinate axis of the above coordinate system is, The deflection angle of the target unmanned guided vehicle corresponding to the driving path of the target cycle driven by the target unmanned guided vehicle at the driving speed is When , the projection length of the projection on the ordinate axis of the above coordinate system is, The deflection angle of the target unmanned guided vehicle corresponding to the driving path of the target cycle driven by the target unmanned guided vehicle at the driving speed is θ+V ω At t, the projection length of the projection on the ordinate axis of the above coordinate system, V L is the driving speed of the target AGV, θ is the deflection angle of the target AGV in the preset coordinate system at the current moment, V ω is the angular velocity of the rotation of the target unmanned guided vehicle due to the asynchronous driving of the two wheels, and t is the communication period between the execution subject and the target unmanned guided vehicle.
[0090] Step 403, determine the weighted average of the preset weights corresponding to each target deflection angle and the corresponding projection length on the horizontal axis as the first average value, and determine the sum of the horizontal coordinate value in the actual position coordinate and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment.
[0091] In this embodiment, the execution subject may determine the weighted average of the preset weights corresponding to the target deflection angles and the corresponding projection lengths on the horizontal axis as the first average value, and may determine the sum of the horizontal coordinate value in the actual position coordinates and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment. The execution subject needs to obtain the preset weights corresponding to the target deflection angles in advance.
[0092] Here, the execution subject can determine the horizontal coordinate value of the target automated guided vehicle at the next moment by the following formula (19):
[0093]
[0094] Among them, x i+1 is the horizontal coordinate value of the target AGV at the next moment, x i is the horizontal coordinate value in the actual position coordinate.
[0095] It should be noted that the parameters in formula (19) and The meaning of is the same as the parameters in formula (11)-formula (14) and The meanings are the same and will not be repeated here.
[0096] Step 404, determine the weighted average of the weights corresponding to the target deflection angles and the corresponding projection lengths on the ordinate axis as the second average, and determine the sum of the ordinate value in the actual position coordinates and the second average as the ordinate value of the target unmanned guided vehicle at the next moment.
[0097] In this embodiment, the execution entity may determine the weighted average of the weights corresponding to the target deflection angles and the corresponding projection lengths on the ordinate axis as the second average value, and may determine the sum of the ordinate value in the actual position coordinates and the second average value as the ordinate value of the target unmanned guided vehicle at the next moment.
[0098] Here, the execution subject can determine the vertical coordinate value of the target automated guided vehicle at the next moment by the following formula (20):
[0099]
[0100] Among them, y i+1 is the ordinate value of the target AGV at the next moment, y i It is the vertical coordinate value in the actual position coordinate.
[0101] It should be noted that the parameters in formula (20) and The meaning of is the same as the parameters in formula (15)-formula (18) and The meanings are the same and will not be repeated here.
[0102] In some optional implementations of this embodiment, the preset coordinate system may take the starting point of the target unmanned guided vehicle (the starting point of this transportation) as the coordinate origin and the starting driving direction of the target unmanned guided vehicle as the positive direction of the horizontal coordinate axis.
[0103] In some optional implementations of this embodiment, the above-mentioned rotation angle can be determined by the above-mentioned execution entity based on the wheel diameter of the above-mentioned target unmanned guided vehicle, the change value of the wheel motor encoder of the above-mentioned target unmanned guided vehicle when the above-mentioned target unmanned guided vehicle travels the above-mentioned target cycle, the resolution of the wheel motor encoder of the above-mentioned target unmanned guided vehicle, the mechanical reduction ratio of the above-mentioned target unmanned guided vehicle and the distance between the two wheels of the above-mentioned target unmanned guided vehicle.
[0104] Specifically, the execution subject may determine the rotation angle of the target automated guided vehicle in the following manner:
[0105] Assume that the change values of the two-wheel motor encoders in one communication cycle are S1 and S2, the motor encoder resolution (encoder change value after one motor rotation) is S, the mechanical reduction ratio is R, the distance between the two wheels is L, and the wheel diameter is D. The mechanical reduction ratio can be the transmission ratio of the reduction device, which refers to the ratio of the instantaneous input speed to the output speed in the reduction mechanism.
[0106] like Figure 5 As shown, Figure 5 A schematic diagram of a driving trajectory of a target unmanned guided vehicle and determining a rotation angle of the target unmanned guided vehicle based on the driving trajectory of the target unmanned guided vehicle in the method for controlling an unmanned guided vehicle according to the present application.
[0107] exist Figure 5 In the figure, arc I is the driving track of one wheel of the target AGV, arc P is the driving track of the other wheel of the target AGV, and arc I is parallel to arc P. Connect the two endpoints of arc I and arc P respectively, and make an extension line to get the center of the two arcs. ω is the rotation angle of the target AGV, and r is the length of the extension line (the distance between the endpoint of arc I and the center of the circle).
[0108] According to the arc length formula, the following formulas (21) and (22) can be obtained:
[0109]
[0110]
[0111] The above formula (21) and formula (22) are two-variable linear equations with r and ω as unknown variables. Solving these two equations, the following formula (23) is obtained:
[0112]
[0113] because The following formula (24) is obtained:
[0114]
[0115] The above execution entity can determine the rotation angle of the unmanned guided vehicle through the following formula (25):
[0116]
[0117] Wherein, h is the rotation angle of the target AGV within the target period.
[0118] The method provided in the above-mentioned embodiment of the present application uses the fourth-order Runge-Kutta algorithm to predict the position coordinates of the target unmanned guided vehicle at the next moment. This prediction method can further improve the trajectory accuracy of the unmanned guided vehicle during driving and further reduce the probability of derailment of the unmanned guided vehicle.
[0119] Further references Figure 6 As an implementation of the methods shown in the above figures, the present application provides an embodiment of a device for controlling an unmanned guided vehicle. Figure 2 Corresponding to the method embodiment shown, the device can be specifically applied to various electronic devices.
[0120] like Figure 6 As shown, the device 600 for controlling an unmanned guided vehicle in this embodiment includes: an acquisition unit 601, a prediction unit 602, a first determination unit 603, a second determination unit 604 and a sending unit 605. The acquisition unit 601 is configured to acquire the actual position coordinates and deflection angle of the target unmanned guided vehicle in the preset coordinate system at the current moment; the prediction unit 602 is configured to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle using the Runge-Kutta algorithm; the first determination unit 603 is configured to acquire the planned position coordinates of the target unmanned guided vehicle at the next moment, and determine the position error based on the planned position coordinates and the predicted position coordinates; the second determination unit 604 is configured to determine the target position coordinates based on the position error and the actual position coordinates; and the sending unit 605 is configured to send control information to the target unmanned guided vehicle based on the target position coordinates.
[0121] In this embodiment, the specific processing of the acquisition unit 601, the prediction unit 602, the first determination unit 603, the second determination unit 604 and the sending unit 605 of the device 600 for controlling the unmanned guided vehicle can be referred to. Figure 2 Corresponding to step 201, step 202, step 203, step 204 and step 205 in the embodiment.
[0122] In some optional implementations of this embodiment, the preset coordinate system may take the starting point of the target unmanned guided vehicle (the starting point of this transportation) as the coordinate origin and the starting driving direction of the target unmanned guided vehicle as the positive direction of the horizontal coordinate axis.
[0123] In some optional implementations of the present embodiment, the prediction unit 602 may predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle using the Runge-Kutta algorithm in the following manner: the prediction unit 602 may obtain the rotation angle of the target unmanned guided vehicle and the driving speed of the target unmanned guided vehicle within a target period, wherein the target period is a communication period with the target unmanned guided vehicle; thereafter, the prediction unit 602 may determine the projection lengths of the projections of the driving path of the target unmanned guided vehicle at each target deflection angle and the driving speed for the target period on the horizontal and vertical axes of the coordinate system, respectively, wherein , the target deflection angle is determined based on the deflection angle and the rotation angle; then, the prediction unit 602 can determine the weighted average of the preset weights corresponding to each target deflection angle and the corresponding projection length of the projection on the horizontal axis as the first average value, and determine the sum of the horizontal coordinate value in the actual position coordinate and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment; finally, the prediction unit 602 can determine the weighted average of the weights corresponding to each target deflection angle and the corresponding projection length of the projection on the vertical axis as the second average value, and determine the sum of the vertical coordinate value in the actual position coordinate and the second average value as the vertical coordinate value of the target unmanned guided vehicle at the next moment.
[0124] In some optional implementations of this embodiment, the above-mentioned rotation angle can be determined by the above-mentioned execution entity based on the wheel diameter of the above-mentioned target unmanned guided vehicle, the change value of the wheel motor encoder of the above-mentioned target unmanned guided vehicle when the above-mentioned target unmanned guided vehicle travels the above-mentioned target cycle, the resolution of the wheel motor encoder of the above-mentioned target unmanned guided vehicle, the mechanical reduction ratio of the above-mentioned target unmanned guided vehicle and the distance between the two wheels of the above-mentioned target unmanned guided vehicle.
[0125] In some optional implementations of this embodiment, an identifier for indicating the location information of the corresponding position may be pasted on the floor of the warehouse where the target unmanned guided vehicle is located, such as a two-dimensional code, a QR code, a checkerboard, etc. The target identifier is usually the identifier for indicating the location information of the corresponding position. The target identifier may be pasted on a designated position on the floor of the warehouse, and the designated positions may be spaced by a preset distance. The acquisition unit 601 may acquire the actual position coordinates and deflection angle of the target unmanned guided vehicle at the current moment in the preset coordinate system in the following manner: after the camera installed on the target unmanned guided vehicle acquires an image containing the target identifier, the acquisition unit 601 may acquire an image presenting the target identifier. Afterwards, the target identifier may be read, and since the target identifier stores the location information for indicating the corresponding position, the acquisition unit 601 may identify the actual location information of the target unmanned guided vehicle at the current moment from the target identifier. The acquisition unit 601 may also determine the driving direction of the target unmanned guided vehicle at the current moment from the image. The acquisition unit 601 may determine the driving direction of the target AGV by integrating the electronic compass data with the rotation of the target identifier in the image.
[0126] Then, the acquisition unit 601 can determine the actual position coordinates of the target unmanned guided vehicle at the current moment in the preset coordinate system based on the actual position information. The actual position information is usually the position information of the target unmanned guided vehicle in the warehouse. The actual position indicated by the actual position information can be represented as a coordinate point. As an example, if the preset coordinate system is a warehouse coordinate system, for example, with a specified point in the warehouse as the coordinate origin, the horizontal axis and the vertical axis are respectively parallel to the two adjacent sides of the warehouse where the target unmanned guided vehicle is located, the acquisition unit 601 can determine the coordinates of the coordinate point representing the actual position indicated by the actual position information as the actual position coordinates of the target unmanned guided vehicle at the current moment in the coordinate system. If the preset coordinate system is a first coordinate system with the starting point of the target unmanned guided vehicle as the coordinate origin and the starting driving direction of the target unmanned guided vehicle as the positive direction of the horizontal coordinate axis, the acquisition unit 601 can determine the relative position of the coordinate point of the actual position indicated by the actual position information relative to the coordinate point of the actual position indicated by the actual position information of the target unmanned guided vehicle at the initial moment, thereby determining the actual position coordinates of the target unmanned guided vehicle at the current moment in the first coordinate system.
[0127] Finally, the acquisition unit 601 can determine the deflection angle of the target unmanned guided vehicle in the coordinate system at the current moment based on the driving direction. It should be noted that the deflection angle is usually the angle between the driving direction of the target unmanned guided vehicle and the reference direction. As an example, if the reference direction is the starting driving direction of the target unmanned guided vehicle, the execution entity can determine the angle between the current driving direction of the target unmanned guided vehicle and the starting driving direction as the deflection angle of the target unmanned guided vehicle in the coordinate system at the current moment.
[0128] Reference below Figure 7 , which shows an electronic device (eg, Figure 1 A schematic diagram of the structure of the server 700. Figure 7 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.
[0129] like Figure 7 As shown, the electronic device 700 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the electronic device 700 are also stored. The processing device 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.
[0130] Typically, the following devices may be connected to the I / O interface 705: an input device 706 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 707 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; and a communication device 709. The communication device 709 may allow the electronic device 700 to communicate with other devices wirelessly or by wire to exchange data. Figure 7 The electronic device 700 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead. Figure 7 Each block shown in the figure may represent one device, or may represent multiple devices as required.
[0131] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through a communication device 709, or installed from a storage device 708, or installed from a ROM 702. When the computer program is executed by the processing device 701, the above functions defined in the method of the embodiment of the present disclosure are executed. It should be noted that the computer-readable medium described in the embodiment of the present disclosure can be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium can be, for example, - but not limited to - an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to, an electrical connection with one or more conductors, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In an embodiment of the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, an apparatus, or a device. In an embodiment of the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. A computer-readable signal medium may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in combination with an instruction execution system, an apparatus, or a device. The program code embodied on the computer readable medium may be transmitted using any appropriate medium, including but not limited to: wire, optical cable, RF (radio frequency), etc., or any suitable combination of the foregoing.
[0132] The computer-readable medium may be included in the electronic device; or it may exist independently without being assembled into the electronic device. The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device: obtains the actual position coordinates and deflection angle of the target unmanned guided vehicle in the preset coordinate system at the current moment; based on the actual position coordinates and deflection angle, uses the Runge-Kutta algorithm to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates; obtains the planned position coordinates of the target unmanned guided vehicle at the next moment, and determines the position error based on the planned position coordinates and the predicted position coordinates; determines the target position coordinates based on the position error and the actual position coordinates; and sends control information to the target unmanned guided vehicle based on the target position coordinates.
[0133] Computer program code for performing the operations of embodiments of the present disclosure may be written in one or more programming languages or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on a user's computer, partially on a user's computer, as a separate software package, partially on a user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0134] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0135] The units involved in the embodiments described in the present disclosure may be implemented by software or by hardware. The units described may also be provided in a processor, for example, may be described as: a processor including an acquisition unit, a prediction unit, a first determination unit, a second determination unit, and a sending unit. The names of these units do not, in some cases, constitute limitations on the units themselves, for example, the sending unit may also be described as "a unit that sends control information to a target unmanned guided vehicle based on the target position coordinates".
[0136] The above description is only a preferred embodiment of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by a specific combination of the above-mentioned technical features, but should also cover other technical solutions formed by any combination of the above-mentioned technical features or their equivalent features without departing from the above-mentioned inventive concept. For example, the above-mentioned features are replaced with the technical features with similar functions disclosed in the embodiments of the present disclosure (but not limited to) to form a technical solution.
Claims
1. A method for controlling an unmanned guided vehicle, comprising: Obtain the actual position coordinates and deflection angle of the target unmanned guided vehicle in the preset coordinate system at the current moment; Based on the actual position coordinates and the deflection angle, using the Runge-Kutta algorithm, predicting the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates; Acquire the pre-planned planned position coordinates of the target unmanned guided vehicle at the next moment, and determine the position error based on the planned position coordinates and the predicted position coordinates; Determining the target position coordinates based on the position error and the actual position coordinates includes: determining the sum of the abscissa in the position error and the abscissa in the actual position coordinates as the abscissa value of the target position coordinates, and determining the sum of the ordinate in the position error and the ordinate in the actual position coordinates as the ordinate value of the target position coordinates; Based on the target position coordinates, control information is sent to the target unmanned guided vehicle, and the target unmanned guided vehicle is driven to reach the target position coordinates using the control information.
2. The method according to claim 1, wherein: The preset coordinate system takes the starting point of the target unmanned guided vehicle as the coordinate origin and the starting driving direction of the target unmanned guided vehicle as the positive direction of the horizontal coordinate axis.
3. The method according to claim 2, wherein: The method of predicting the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle using the Runge-Kutta algorithm includes: Acquire the rotation angle of the target unmanned guided vehicle and the driving speed of the target unmanned guided vehicle within a target period, wherein the target period is a communication period with the target unmanned guided vehicle; Determine the projection lengths of the projections of the driving path of the target unmanned guided vehicle traveling the target cycle at the driving speed at each target deflection angle on the abscissa axis and the ordinate axis of the coordinate system, respectively, wherein the target deflection angle is determined based on the deflection angle and the rotation angle; Determine a weighted average value of preset weights corresponding to each target deflection angle and a corresponding projection length on the horizontal axis as a first average value, and determine the sum of the horizontal coordinate value in the actual position coordinate and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment; Determine a weighted average of the weights corresponding to each target deflection angle and the corresponding projection lengths on the ordinate axis as a second average, and determine the sum of the ordinate value in the actual position coordinate and the second average as the ordinate value of the target unmanned guided vehicle at the next moment.
4. The method according to claim 3, wherein: The rotation angle is determined based on the wheel diameter of the target unmanned guided vehicle, the change value of the wheel motor encoder when the target unmanned guided vehicle travels the target cycle, the resolution of the wheel motor encoder of the target unmanned guided vehicle, the mechanical reduction ratio of the target unmanned guided vehicle, and the distance between the two wheels of the target unmanned guided vehicle.
5. The method according to any one of claims 1 to 4, wherein: The step of obtaining the actual position coordinates and deflection angle of the target unmanned guided vehicle in the preset coordinate system at the current moment includes: acquiring an image presenting a target identifier; Identifying the actual position information of the target unmanned guided vehicle at the current moment from the target identifier, and determining the driving direction of the target unmanned guided vehicle at the current moment from the image; Based on the actual position information, determining the actual position coordinates of the target automated guided vehicle at the current moment in a preset coordinate system; Based on the driving direction, a deflection angle of the target automated guided vehicle in the coordinate system at a current moment is determined.
6. A device for controlling an unmanned guided vehicle, comprising: An acquisition unit is configured to acquire the actual position coordinates and deflection angle of the target unmanned guided vehicle in a preset coordinate system at the current moment; A prediction unit is configured to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle using the Runge-Kutta algorithm; A first determining unit is configured to obtain the pre-planned planned position coordinates of the target unmanned guided vehicle at the next moment, and determine the position error based on the planned position coordinates and the predicted position coordinates; A second determining unit is configured to determine a target position coordinate based on the position error and the actual position coordinate; a sending unit configured to send control information to the target unmanned guided vehicle based on the target position coordinates, and drive the target unmanned guided vehicle to reach the target position coordinates using the control information; Wherein, the second determining unit is further configured to: Determine the sum of the abscissa in the position error and the abscissa in the actual position coordinate as the abscissa value of the target position coordinate; The sum of the ordinate in the position error and the ordinate in the actual position coordinate is determined as the ordinate value of the target position coordinate.
7. The device according to claim 6, wherein: The preset coordinate system takes the starting point of the target unmanned guided vehicle as the coordinate origin and the starting driving direction of the target unmanned guided vehicle as the positive direction of the horizontal coordinate axis.
8. The device according to claim 7, wherein: The prediction unit is further configured to predict the position coordinates of the target unmanned guided vehicle at the next moment as the predicted position coordinates based on the actual position coordinates and the deflection angle using the Runge-Kutta algorithm in the following manner: Acquire the rotation angle of the target unmanned guided vehicle and the driving speed of the target unmanned guided vehicle within a target period, wherein the target period is a communication period with the target unmanned guided vehicle; Determine the projection lengths of the projections of the driving path of the target unmanned guided vehicle traveling the target cycle at the driving speed at each target deflection angle on the abscissa axis and the ordinate axis of the coordinate system, respectively, wherein the target deflection angle is determined based on the deflection angle and the rotation angle; Determine a weighted average value of preset weights corresponding to each target deflection angle and a corresponding projection length on the horizontal axis as a first average value, and determine the sum of the horizontal coordinate value in the actual position coordinate and the first average value as the horizontal coordinate value of the target unmanned guided vehicle at the next moment; Determine a weighted average of the weights corresponding to each target deflection angle and the corresponding projection lengths on the ordinate axis as a second average, and determine the sum of the ordinate value in the actual position coordinate and the second average as the ordinate value of the target unmanned guided vehicle at the next moment.
9. An electronic device, comprising: one or more processors; a storage device having one or more programs stored thereon, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 5.
10. A computer readable medium having a computer program stored thereon, wherein: When the program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Unmanned ship navigation method, device, computer device and storage medium
CN108917752A