A robot and a robot movement control method
By determining the pre-sight point for the robot and generating the target control amount, the control deviation problem caused by the actuator delay response is solved, and the stability and path tracking accuracy of the robot during operation are achieved.
Patent Information
- Application Number
- CN202110266176.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-03-11
- Publication Date
- 2025-08-08
- Estimated Expiration
- 2041-03-11
AI Technical Summary
The existing robot path tracking and control methods can easily lead to greater differences between the robot and poor stability during operation and poorer stability, especially due to the control deviation caused by the actuator delay response characteristics.
By determining the second reference position point (pre-seeking point) on the reference trajectory for the robot, combining the current position information, speed information and the duration of the response control command of the robot, a target control amount is generated to compensate for the error during the actuator delay response and reduce the control deviation.
It achieves that the robot has little difference from the planned path during operation, and can run smoothly, improving the stability of robot path tracking.
Smart Images

Figure CN115129034B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of intelligent control technology, and in particular to a robot and a robot movement control method. Background Art
[0002] With the development of robot intelligent technology, controlling the robot to smoothly and accurately follow the planned path has become the primary task of current intelligent control.
[0003] The currently commonly used robot path tracking control method is the model predictive control algorithm, which uses the distance deviation and heading angle deviation between the robot's current position and the planned path as control quantities to reduce the deviation between the robot's current position and the planned path. This method can easily lead to the problem of large differences between the robot and the planned path during operation. Summary of the Invention
[0004] The embodiments of the present disclosure provide at least one robot and a method for controlling the movement of the robot.
[0005] In a first aspect, an embodiment of the present disclosure provides a robot, comprising: an information acquisition component, a positioning component, and a control server;
[0006] Wherein: the information acquisition component is configured to obtain the reference trajectory information of the robot, the current speed information of the robot, and the duration of the robot's response to the control instruction;
[0007] The positioning component is configured to obtain the current position information of the robot;
[0008] The control server is configured to, in multiple operation control cycles, determine a first reference position point on the reference trajectory of the robot that is closest to the current position of the robot based on the reference trajectory information and the current position information of the robot in the current operation control cycle, and determine the first reference position information of the first reference position point; determine a preview second reference position point from the reference trajectory based on the first reference position point information, the current speed information of the robot, and the duration of the robot's response to the control instruction, and determine the second reference position information of the second reference position point; generate a target control amount for controlling the movement of the robot based on the second reference position information; and control the movement of the robot based on the target control amount.
[0009] In an optional embodiment, the positioning component is configured to obtain current posture information of the robot;
[0010] When the control server generates a target control amount for controlling the movement of the robot based on the second reference position information, the control server is configured as follows:
[0011] Based on the second reference position information and the reference trajectory information, determining a plurality of third reference position points on the reference trajectory that respectively correspond to a plurality of future operation control cycles;
[0012] Determining a target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points; the target control sequence includes a predicted control amount corresponding to each of the predicted position points corresponding to each of the third reference position points;
[0013] The target control amount is generated based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
[0014] In an optional implementation, the reference trajectory information includes at least one of the following:
[0015] the first reference position information corresponding to the first reference position point;
[0016] the second reference position information and second reference posture information corresponding to the second reference position point;
[0017] The third reference pose information corresponding to each of the third reference position points;
[0018] the second reference control amount corresponding to the second reference position point;
[0019] The third reference control amount corresponding to each of the third reference position points.
[0020] In an optional embodiment, when determining a plurality of third reference position points corresponding to a plurality of future operation control cycles on the reference trajectory based on the second reference position information and the reference trajectory information, the control server is configured to:
[0021] Taking the second reference position point as a starting point, a plurality of third reference position points are determined on the reference trajectory based on the second reference position information, the reference trajectory information, and a preset operation control cycle.
[0022] In an optional embodiment, when the control server determines the target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points, the control server is configured as follows:
[0023] Based on the predetermined kinematic equations, construct the target relationship equations corresponding to multiple future moments that can represent the relationship between posture information and control quantity information;
[0024] Based on a pre-constructed cost function, the third reference posture information corresponding to each of the third reference position points, and the third reference control quantity corresponding to each of the third reference position points, the target relationship equations corresponding to the multiple future operation control cycles are solved to obtain the predicted control quantities corresponding to the multiple future operation control cycles; the predicted control quantities corresponding to the multiple future operation control cycles constitute the target control sequence.
[0025] In an optional embodiment, the target relationship equation includes:
[0026]
[0027] Wherein, i includes a positive integer from 1 to N, representing the sequence number of the operation control cycle; N represents the number of operation control cycles; X(k+i) is used to represent the first state information of the robot in the i-th operation control cycle; X(k+i-1) is used to represent the second state information of the robot in the i-1-th operation control cycle; U(k+i-1) represents the predictive control amount that needs to be applied when controlling the robot to switch from the second state information to the first state information; Represents the state transfer matrix after linear discretization; represents the control matrix after linear discretization.
[0028] In an optional implementation, the control server is further configured to determine the second reference control amount corresponding to the second reference position point from the reference trajectory information.
[0029] In an optional embodiment, when the control server generates the target control amount based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point, the control server is configured to:
[0030] The target control amount is obtained by adding the predicted control amount based on the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
[0031] In an optional embodiment, the control server is further configured to construct an initial kinematic equation that characterizes the correlation between the robot's posture information and the control quantity information; linearize the initial kinematic equation; and discretize the linearized initial kinematic equation based on the robot's operation control cycle to obtain the kinematic equation.
[0032] In an optional embodiment, when the control server controls the robot to move based on the target control amount, it is configured to:
[0033] generating a target control instruction based on the target control amount;
[0034] Execute the target control instruction to control the robot to move.
[0035] In a second aspect, an embodiment of the present disclosure further provides a robot movement control method, the method comprising:
[0036] Obtain the robot's reference trajectory information, the robot's current speed information, and the robot's response time to control commands;
[0037] Get the current location information of the robot;
[0038] In a plurality of operation control cycles, based on the reference trajectory information and the current position information of the robot in the current operation control cycle, determining a first reference position point on the reference trajectory of the robot that is closest to the current position of the robot, and determining first reference position information of the first reference position point;
[0039] Determining a previewed second reference position point on the reference trajectory based on the first reference position information, the current speed information of the robot, and the duration of the robot's response to a control instruction, and determining second reference position information of the second reference position point;
[0040] generating a target control amount for controlling the movement of the robot based on the second reference position information;
[0041] Based on the target control amount, the robot is controlled to move.
[0042] In an optional embodiment, the method further includes: obtaining current posture information of the robot;
[0043] Generating a target control amount for controlling the movement of the robot based on the second reference position information includes:
[0044] Based on the second reference position information and the reference trajectory information, determining a plurality of third reference position points on the reference trajectory that respectively correspond to a plurality of future operation control cycles;
[0045] Determining a target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points; the target control sequence includes a predicted control amount corresponding to each of the predicted position points corresponding to each of the third reference position points;
[0046] The target control variable is generated based on the predicted control variable of the predicted position point corresponding to the third reference position point that is closest to the second reference position point and the second reference control variable corresponding to the second reference position point.
[0047] In an optional implementation, the reference trajectory information includes at least one of the following:
[0048] the first reference position information corresponding to the first reference position point;
[0049] the second reference position information and the second reference posture information corresponding to the second reference position point;
[0050] The third reference pose information corresponding to each of the third reference position points;
[0051] the second reference control amount corresponding to the second reference position point;
[0052] The third reference control amount corresponding to each of the third reference position points.
[0053] In an optional embodiment, determining a plurality of third reference position points corresponding to a plurality of future operation control cycles on the reference trajectory based on the second reference position information and the reference trajectory information includes:
[0054] Taking the second reference position point as a starting point, a plurality of third reference position points are determined on the reference trajectory based on the second reference position information, the reference trajectory information, and a preset operation control cycle.
[0055] In an optional embodiment, determining the target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points includes:
[0056] Based on the predetermined kinematic equations, construct the target relationship equations corresponding to multiple future moments that can represent the relationship between posture information and control quantity information;
[0057] Based on a pre-constructed cost function, the third reference posture information corresponding to each of the third reference position points, and the third reference control quantity corresponding to each of the third reference position points, the target relationship equations corresponding to the multiple future operation control cycles are solved to obtain the predicted control quantities corresponding to the multiple future operation control cycles; the predicted control quantities corresponding to the multiple future operation control cycles constitute the target control sequence.
[0058] In an optional embodiment, the target relationship equation includes:
[0059]
[0060] Wherein, i includes a positive integer from 1 to N, representing the sequence number of the operation control cycle; N represents the number of operation control cycles; X(k+i) is used to represent the first state information of the robot in the i-th operation control cycle; X(k+i-1) is used to represent the second state information of the robot in the i-1-th operation control cycle; U(k+i-1) represents the predictive control amount that needs to be applied when controlling the robot to switch from the second state information to the first state information; Represents the state transfer matrix after linear discretization; represents the control matrix after linear discretization.
[0061] In an optional embodiment, the method further includes:
[0062] The second reference control amount corresponding to the second reference position point is determined from the reference trajectory information.
[0063] In an optional embodiment, generating the target control variable based on the predicted control variable of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control variable corresponding to the second reference position point includes:
[0064] The target control amount is obtained by adding the predicted control amount based on the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
[0065] In an optional embodiment, the method further includes:
[0066] Construct the initial kinematic equations that represent the relationship between the robot's posture information and the control quantity information;
[0067] Linearizing the initial kinematic equations;
[0068] Based on the robot operation control cycle, the linearized initial kinematic equation is discretized to obtain the kinematic equation.
[0069] In an optional embodiment, controlling the robot to move based on the target control amount includes:
[0070] generating a target control instruction based on the target control amount;
[0071] Execute the target control instruction to control the robot to move.
[0072] The embodiments of the present disclosure provide a robot and a robot movement control method, which determines a second reference position point (i.e., a preview point) on a reference trajectory for the robot, and then determines a target control amount of the robot based on the second reference position point. The second reference position point is determined using the robot's current position information, current speed information, and the duration of the robot's response to a control instruction. Here, in order to compensate for the error caused by the robot's movement during the delayed response of the robot's actuator, the target control amount for controlling the robot's movement is generated by using the posture information and control amount of the second reference position point, which can reduce the control deviation caused by the delayed response of the actuator, so that the difference between the robot and the planned path during operation is smaller, and the robot can run smoothly.
[0073] In order to make the above-mentioned objectives, features and advantages of the present disclosure more obvious and easy to understand, preferred embodiments are given below and described in detail with reference to the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0074] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the following briefly introduces the drawings required for use in the embodiments. The drawings herein are incorporated into and constitute a part of the specification. These drawings illustrate embodiments consistent with the present disclosure and, together with the specification, are used to illustrate the technical solutions of the present disclosure. It should be understood that the following drawings only illustrate certain embodiments of the present disclosure and should not be regarded as limiting the scope. For those of ordinary skill in the art, other relevant drawings can be obtained based on these drawings without inventive effort.
[0075] Figure 1 A schematic structural diagram of a robot provided by an embodiment of the present disclosure is shown;
[0076] Figure 2 A schematic diagram illustrating a method for determining a position point of a second reference position point (i.e., a preview point) based on a first reference position point (i.e., a projection point) provided by an embodiment of the present disclosure is shown;
[0077] Figure 3A schematic diagram showing a flow chart of the working process of the control server provided by an embodiment of the present disclosure;
[0078] Figure 4 A flow chart of a robot movement control method provided by an embodiment of the present disclosure is shown;
[0079] Figure 5 A flow chart showing a method for determining a target control amount in a robot movement control method provided by an embodiment of the present disclosure is shown;
[0080] Figure 6 A flow chart showing a method for determining a target control sequence in a robot movement control method provided by an embodiment of the present disclosure is shown;
[0081] Figure 7 A schematic diagram of a scenario for controlling the movement of a robot provided by an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0082] In order to make the purpose, technical solutions and advantages of the embodiments of the present disclosure clearer, the technical solutions in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, not all of the embodiments. The components of the embodiments of the present disclosure generally described and shown in the drawings herein can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present disclosure provided in the drawings is not intended to limit the scope of the disclosure for which protection is sought, but merely represents selected embodiments of the present disclosure. Based on the embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without making creative work are within the scope of protection of the present disclosure.
[0083] Research has found that current robot path tracking methods are usually PID algorithms and model predictive control algorithms.
[0084] During path tracking control of a machine based on the PID algorithm, the deviation between the robot's current position and the planned path is used to determine the control amount required for the robot to reach a certain point in the planned path when the robot arrives at the next control cycle. The robot is then controlled based on this control amount. In actual control, this control method results in significant differences in the control amount actually output by the robot at different points along the planned path, leading to large variations in control amplitude and poor robot operation stability. For example, if the planned path is a curved path and the robot is currently located to the right of the planned path, the PID algorithm calculates that the robot needs to be controlled to deflect to the left. However, since the overall direction of the planned path is to the left of the robot's current position, if the robot is first controlled to deflect to the left and then to the right after a period of time, sharp turns may occur during this control process, resulting in poor robot operation stability.
[0085] While the model predictive control algorithm compensates for the poor stability of the PID algorithm, it only uses the robot's current position to determine a projected point on the planned path that corresponds to the current position. The control variable is then determined based on this projected point and another position on the planned path that can be reached in the next cycle. However, because the actuators used to execute control instructions often have a delayed response, this can easily lead to significant deviations from the planned path during robot operation.
[0086] Based on the above research, the present disclosure provides a robot and a robot movement control method, which determines a second reference position point (i.e., a preview point) on a reference trajectory for the robot, and then determines the target control amount of the robot based on the second reference position point. The second reference position point is determined using the robot's current position information, current speed information, and the duration of the robot's response to the control instruction. Here, in order to compensate for the error caused by the robot's movement during the delayed response of the robot's actuator, the target control amount for controlling the robot's movement is generated by the posture information and control amount of the second reference position point, which can reduce the control deviation caused by the delayed response of the actuator, so that the difference between the robot and the planned path during operation is smaller, so that the robot can run smoothly.
[0087] The defects in the above solutions are the results obtained by the inventors after practice and careful research. Therefore, the process of discovering the above problems and the solutions proposed by this disclosure for the above problems below should be the contributions made by the inventors to this disclosure during the disclosure process.
[0088] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings.
[0089] To facilitate understanding of this embodiment, a detailed description of a robot disclosed in this embodiment is first provided, followed by a detailed description of a robot movement control method disclosed in this embodiment. The robot movement control method provided in this embodiment can be executed by a robot or a server controlling the movement of the robot. In some possible implementations, the robot movement control method can be implemented by a processor invoking computer-readable instructions stored in a memory.
[0090] The robot and the robot movement control method provided by the embodiments of the present disclosure are described below.
[0091] Example 1
[0092] See also Figure 1 , which is a structural diagram of a robot 10 provided in an embodiment of the present disclosure, the robot 10 includes: an information acquisition component 11 , a positioning component 12 and a control server 13 .
[0093] The information acquisition component 11 is configured to acquire the reference trajectory information of the robot 10 , the current speed information of the robot 10 , and the duration of the robot 10 responding to the control instruction.
[0094] Generally, a reference path can be planned in advance in the path planning component 15. The reference trajectory information in a reference path can include posture information corresponding to multiple position points and a control amount corresponding to each position point; here, the multiple position points can include a first reference position point, a second reference position point and a third reference position point; wherein the first reference position point is used to represent the projection point of the current position of the robot 10 on the reference trajectory; the second reference position point is used to represent the preview point of the robot on the reference trajectory determined based on the projection point of the current position of the robot 10 on the reference trajectory, the current speed information of the robot 10, and the time duration for the robot 10 to respond to the control instruction; the third reference position point is used to represent multiple reference position points corresponding to multiple future operation control cycles on the reference trajectory based on the preview point determined above and the operation control cycle of the robot; the control amount can include a second reference control amount corresponding to the second reference position point and a third reference control amount corresponding to the third reference position point, and the control amount can include a speed control amount and a rotation angle control amount; wherein the posture information can include position information and posture information (i.e., the orientation of the robot).
[0095] The operation control cycle may be determined according to the operation cycle of the robot program; the robot operation control cycle may be represented by T.
[0096] Here, the information acquisition component 11 may acquire pre-stored reference trajectory information from the path planning component 15 .
[0097] The positioning component 12 is configured to obtain current position information of the robot 10 .
[0098] Here, the positioning component 12 can also obtain the current posture information of the robot 10; wherein, the current posture information may include the current position information and posture information of the robot (i.e., the orientation of the robot); the current posture information is obtained by real-time positioning of the positioning component 12; the positioning component 12 may include a visual sensor, a wireless signal sensor, and a depth sensor installed on the robot 10 body; here, the wireless signal sensor may include a Bluetooth sensor, a Global Positioning System (GPS) sensor, an Ultra Wide Band (UWB) sensor, a Wireless-Fidelity (WiFi) sensor, etc.; the wireless signal sensor can be any sensor that can realize the positioning function according to the received wireless signal, which will not be repeated here; wherein, the depth sensor can be a lidar sensor, an infrared sensor, etc., which will not be repeated here.
[0099] The control server 13 is configured to, in multiple operation control cycles, determine a first reference position point on the reference trajectory of the robot 10 that is closest to the current position of the robot 10 based on the reference trajectory information and the current position information of the robot 10 in the current operation control cycle, and determine the first reference position information of the first reference position point; determine a previewed second reference position point from the reference trajectory based on the first reference position information, the current speed information of the robot 10, and the duration of the robot 10's response to the control instruction, and determine the second reference position information of the second reference position point; generate a target control amount for controlling the movement of the robot 10 based on the second reference position information; and control the movement of the robot 10 based on the target control amount.
[0100] Among them, the first reference position point is a position point (i.e., a projection point) on the reference trajectory that is closest to the current position of the robot 10; the target control amount may include the speed control amount and rotation angle control amount ultimately applied to the robot 10 to control the operation of the robot 10.
[0101] In the disclosed embodiment, taking into account the delay time of the robot in responding to the control instruction, the second reference position point is determined as the expansion point substituted into the prediction model, so that the control amount ultimately applied to the robot is smaller, allowing the robot to run more smoothly.
[0102] In a specific implementation, the control server 13 can determine a first reference position point, i.e., a projection point, which is closest to the current position of the robot on the reference trajectory based on the current position of the robot, and determine the position information of the projection point based on the preset reference trajectory information; since the running direction of the robot is consistent with the pre-planned reference trajectory direction, after determining the position information of the projection point, the robot's travel distance s during the period when the robot responds to the control instruction can be determined by the robot's current speed v and the duration dt of the robot's response to the control instruction according to the formula: speed × time = distance (i.e., s = dt × v); after determining the robot's travel distance s during the period when it responds to the control instruction, the position information of the second reference position point (i.e., the preview point) substituted into the prediction model is determined on the reference trajectory based on the position information of the projection point and the travel distance s.
[0103] For example, when the robot 10 is running, the information acquisition component 11 can obtain the pre-stored reference trajectory information from the path planning component 15, and determine the current posture information of the robot 10 in real time through the positioning component 12. According to the position information in the determined current posture information of the robot, a projection point closest to the current position of the robot can be determined on the reference trajectory. The projection point can be Figure 2 After determining the projection point, the robot's travel distance s = 0.01m can be determined based on the current speed v of the robot: 10m / s and the time dt of the robot's response to the control instruction: 0.001s. According to the formula: speed × time = distance (i.e. s = dt × v = 0.01m), the robot's travel distance s = 0.01m during the robot's response to the control instruction is determined. Then, based on the position information of the projection point (i.e., position 1) and the travel distance s = 0.01m, the preview point substituted into the prediction model on the reference trajectory is determined as Figure 2 Position point 2 in .
[0104] In a specific implementation, when the control server 13 generates a target control amount for controlling the movement of the robot 10 based on the second reference position information (i.e., the position information of the preview point), it is configured as follows: based on the second reference position information and the reference trajectory information, a plurality of third reference position points corresponding to a plurality of future operation control cycles are determined on the reference trajectory; based on the current position information and current posture information (i.e., current posture information) of the robot 10, and the third reference posture information corresponding to each third reference position point, and the third reference control amount corresponding to each third reference position point, the target control sequence is determined; based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point (i.e., the preview point), and the control amount of the second reference position point (i.e., the preview point), the target control amount is generated.
[0105] The target control sequence includes predicted position points corresponding to each third reference position point determined on the reference trajectory, and a predicted control amount corresponding to each predicted position point.
[0106] Specifically, when the control server 13 determines multiple third reference position points on the reference trajectory corresponding to multiple future operation control cycles based on the second reference position information and the reference trajectory information, it is configured as follows: taking the second reference position point as the starting point, based on the second reference position information, the reference trajectory information, and the preset operation control cycle, multiple third reference position points are determined on the reference trajectory.
[0107] Here, in order to reduce the amount of calculation, the prediction model constructed is a linear discrete model. In addition, since it is necessary to compare the errors between the multiple predicted position points predicted by the prediction model and the reference trajectory in the process of determining the target control amount, it is necessary to determine multiple third reference position points on the reference trajectory according to the preset operation control cycle. Therefore, the preview point (i.e., the second reference position point) can be used as the starting point, and the reference trajectory can be sampled according to the position information of the preview point and the preset operation control cycle T, so as to determine multiple third reference position points on the reference trajectory.
[0108] In a specific implementation, when the control server 13 determines the target control sequence based on the current position information and the current posture information (i.e., the current posture information), the third reference posture information corresponding to each third reference position point, and the third reference control quantity corresponding to each third reference position point, it is configured as follows: based on a predetermined kinematic equation, a target relationship equation that can characterize the relationship between the posture information and the control quantity information corresponding to multiple future moments is constructed; based on a pre-constructed cost function, the third reference posture information corresponding to each third reference position point, and the third reference control quantity corresponding to each third reference position point, the target relationship equation corresponding to multiple future operation control cycles is solved to obtain the predicted control quantities corresponding to multiple future operation control cycles; the predicted control quantities corresponding to the multiple future operation control cycles constitute the target control sequence.
[0109] In a specific implementation, the control server 13 is also configured to construct an initial kinematic equation that characterizes the relationship between the posture information of the robot 10 and the control quantity information; linearize the initial kinematic equation; and discretize the linearized initial kinematic equation based on the operation control cycle of the robot 10 to obtain the kinematic equation.
[0110] Here, since the workplace of the robot 10 in the present disclosure is generally an indoor place and the robot 10 runs relatively slowly during the working process, the robot 10 can be quantified as a particle, thereby constructing the particle motion state equation of the robot during operation.
[0111] In a specific implementation, the control server 13 may first establish a Cartesian coordinate system, and based on the motion state information of the robot 10 in the workplace, construct a particle motion state equation representing the correlation between the robot posture information and the control quantity information as shown in formula (1):
[0112]
[0113] The state quantity of the robot 10 in the XY plane of the coordinate system is defined as: in, Indicates the component of the current position of the robot 10 under the X-axis, Indicates the component of the robot 10's current position under the Y axis, The angle between the orientation of the robot 10 and the X-axis may be represented here to indicate the orientation of the robot 10 .
[0114] in, Parameters that represent the relationship between the current position information and orientation of the robot 10 and the control variable.
[0115] in, represents the motion control quantity of robot 10; here, v cmd is the linear velocity of the center of mass of the robot 10, that is, the movement speed of the robot 10; is the rotation speed of the center of mass of the robot 10, that is, the rotation angle.
[0116] After establishing the center of mass motion state equation based on the motion state of the robot 10 in the current workplace, in order to facilitate calculation, the above-mentioned particle motion state equation needs to be linearized and discretized; here, in order to compensate for the error caused by the response time of the robot 10 actuator when executing instructions, the above-mentioned particle motion state equation can be linearized and discretized based on the posture information corresponding to the second reference position point (i.e., the preview point) in the reference trajectory information and the control quantity information.
[0117] In a specific implementation, after the control server 13 obtains the posture information and control quantity information of the second reference position point (i.e., the preview point) in the reference trajectory information, it uses the preview point as the expansion point and adopts the Taylor expansion method to expand the above-constructed particle motion state equation into a first-order Taylor formula, thereby obtaining the linearized particle motion state equation.
[0118] After obtaining the linearized particle motion state equation, the linearized particle motion state equation can be discretized based on the preset operation control cycle, that is, the preset sampling time T, to obtain a prediction model that characterizes the relationship between the current posture information, control quantity information and the posture information corresponding to the next operation control cycle (that is, constructing a target relationship equation that characterizes the relationship between the posture information and the control quantity information corresponding to multiple future moments).
[0119] Here, based on the prediction model constructed above, the control server 13 can predict the predicted position points to which the robot 10 may run in multiple future operation control cycles.
[0120] Here, the target relationship equation that represents the relationship between the posture information and the control amount information corresponding to multiple moments in the future is shown in formula (2):
[0121]
[0122] Wherein, i includes a positive integer from 1 to N, representing the sequence number of the operation control cycle; N represents the number of operation control cycles; X(k+i) is used to represent the first state information of the robot in the i-th operation control cycle; X(k+i-1) is used to represent the second state information of the robot in the i-1-th operation control cycle; U(k+i-1) represents the predictive control amount that needs to be applied when controlling the robot to switch from the second state information to the first state information; Represents the state transfer matrix after linear discretization; represents the control matrix after linear discretization.
[0123] Here, the state transfer matrix is used to transfer the second state information of the robot 10 in the i-1th operation control cycle to the first state information in the i-th operation control cycle; the control matrix is used to convert information such as the speed and rotation angle of the robot 10 into the state information of the robot 10.
[0124] In a specific implementation, the relationship between the posture information and the control amount information corresponding to multiple future operation control cycles can be determined according to formula (2), as shown in formula (3):
[0125]
[0126] Among them, X(k) represents the current state information of the robot 10, U(k) represents the control amount information that needs to be applied to the robot 10 in the current state; X(k+1) represents the state information of the robot 10 after a preset operation control cycle T; X(k+2) represents the state information of the robot 10 after two preset operation control cycles (i.e., 2T); X(k+N) represents the state information of the robot 10 after N preset operation control cycles (i.e., NT); U(k) represents the control amount that needs to be applied when controlling the robot 10 from the current state X(k) to the X(k+1) state; U(k+1) represents the control amount that needs to be applied when controlling the robot 10 from the X(k+1) state to the X(k+2) state; U(k+N-1) represents the control amount that needs to be applied when controlling the robot 10 from the X(k+N-1) state to the X(k+N) state.
[0127] Here, based on the particle motion state equation, taking the current position of the robot as the starting point, the position point that the robot will reach in the next N operating control cycles and the posture information at that position point are predicted. After predicting the N position points, the error between the N predicted position points and the N reference position points can be rolled optimized by using a pre-constructed cost function based on the performance index, thereby solving the predicted control quantity corresponding to each predicted position point.
[0128] Here, the pre-constructed cost function can be expressed as shown in formula (4):
[0129]
[0130] Wherein, i includes a positive integer from 1 to N, representing the sequence number of the operation control cycle; N represents the number of operation control cycles; xe(k+i) represents the state error matrix between the i-th predicted position point among the N predicted position points predicted according to the above-mentioned particle motion state equation and the reference position point corresponding to the reference trajectory; u(k+i-1) represents the control quantity matrix that needs to be applied to control the robot 10 to transition from the X(k+i-1) state to the X(k+N) state after (i-1)T (i.e., (i-1) operation control cycles); Q is the weight of the preset state quantity deviation, R is the preset control quantity weight; xe(k+i) T The transposed matrix of the error matrix between the i-th predicted position point among the N predicted position points predicted according to the above particle motion state equation and the reference position point corresponding to the reference trajectory; u(k+i-1) T It represents the transposed matrix corresponding to the control amount that needs to be applied to control the robot 10 to transition from the X(k+i-1) state to the X(k+N) state after (i-1)T (i.e., (i-1) operation control cycles).
[0131] Here, in order to meet the need for the robot to accurately dock goods, pallets, shelves, etc. when picking up and placing goods, it is necessary to accurately control the robot (that is, it is necessary to ensure the accuracy of the control quantity calculated to control the operation of the robot). The control server 13 can continuously adjust the preset state quantity deviation weight R and the preset control quantity weight Q in the cost function constructed by the above formula (IV) according to the speed of the robot. Here, in order to ensure the stability and continuity of the control quantity output during the adjustment process, the present disclosure adopts a piecewise linear interpolation method based on the robot speed to complete the self-tuning of the optimization weight. The specific formula is shown in the following formula (V):
[0132]
[0133] Wherein, j includes a positive integer between 1 and N, representing the sequence number of the operation control cycle; N represents the number of the operation control cycle; The linear error matrix representing the state between the i-th predicted position point among the N predicted position points predicted according to the above particle motion state equation and the reference position point corresponding to the reference trajectory; The transposed matrix corresponding to the linear error matrix of the state between the i-th predicted position point among the N predicted position points predicted according to the above particle motion state equation and the reference position point corresponding to the reference trajectory; It represents the linear control matrix that needs to be applied to control the robot 10 to transition from the X(k+i-1) state to the X(k+N) state after (i-1)T (i.e., (i-1) operation control cycles); It represents the transposed matrix of the linear control matrix that needs to be applied to control the robot 10 to transition from the X(k+i-1) state to the X(k+N) state after (i-1)T (i.e., (i-1) operation control cycles).
[0134] In a specific implementation, the errors between the N predicted position points corresponding to the predicted N future operation control cycles and the reference position points corresponding to each operation control cycle are iteratively calculated according to formula (V) to obtain the control amount that needs to be applied to the robot when the error between the predicted position point and the reference position point is minimized; when the error between the predicted position point calculated according to the cost function after optimizing the weights of formula (V) and the reference position point is minimized, the predicted control amount corresponding to each operation control cycle constitutes the target control sequence.
[0135] Here, the target control sequence may be the rolling optimized control sequence obtained according to formula (5), and the target control sequence may be shown as formula (6):
[0136] ΔU=[Δu t ,Δu t+1 ,Δut+2 ,…,Δu t+N-1 Formula (6)
[0137] Where ΔU represents the target control sequence; t represents the first operation control cycle; Δu t Indicates the predictive control amount that needs to be applied to the robot in the first operation control cycle; t+1 indicates the second operation control cycle; Δu t+1 Indicates the predictive control amount that needs to be applied to the robot in the second operation control cycle; t+2 indicates the third operation control cycle; Δu t+2 Indicates the predictive control amount that needs to be applied to the robot in the third operation control cycle; t+N-1 indicates the Nth operation control cycle; Δu t+N-1 It represents the predictive control amount that needs to be applied to the robot in the Nth operation control cycle.
[0138] In a specific implementation, when the control server 13 generates a target control amount based on a predicted control amount of a predicted position point corresponding to a third reference position point that is closest to the second reference position point (i.e., the preview point) and a second reference control amount corresponding to the second reference position point (i.e., the preview point), the control server 13 is configured to add the predicted control amount based on the predicted position point corresponding to the third reference position point that is closest to the second reference position point and the second reference control amount corresponding to the second reference position point to obtain the target control amount.
[0139] Specifically, after determining the predicted control quantity corresponding to each of the multiple future operation control cycles (i.e., the target control sequence in formula (six)), the control server 13 selects the predicted control quantity corresponding to the first operation control cycle; and based on the second reference control quantity corresponding to the determined second reference position point (i.e., the preview point), the predicted control quantity corresponding to the above-selected first operation control cycle is added to the control quantity corresponding to the above-determined preview point to obtain the target control quantity that needs to be applied to the robot 10, so that the robot 10 runs from the current position to the reference trajectory under the action of the target control quantity, thereby realizing path tracking of the reference trajectory.
[0140] The target control amount can be represented by formula (VII), as shown below:
[0141] u c =Δu t +u pr Formula (7)
[0142] Among them, u c Indicates the target control amount; Δu t Indicates the predictive control amount that needs to be applied to the robot in the first operation control cycle; u prIndicates the second reference control value corresponding to the preview point (i.e., the second reference position point).
[0143] After determining the target control amount for controlling the movement of the robot, the control server 13 can generate corresponding target control instructions based on the target control amount, and send the above target control instructions to the chassis controller 14 so that the chassis controller 14 executes the target control instructions to control the movement of the robot.
[0144] In a specific implementation, the specific workflow of the control server 13 can be as follows: Figure 3 As shown, the workflow may include: establishing a kinematic equation based on the current posture information of the robot; then, analyzing the kinematic equation based on the posture information of the second reference position point in the reference trajectory information and the second reference control quantity, and establishing a linear discrete prediction model; then, constructing a predicted trajectory through the prediction model and the reference trajectory information; iteratively calculating the error between the predicted trajectory and the reference trajectory through the optimizer (i.e., the cost function after weight optimization, i.e., formula (5)), and rolling optimization to obtain the predicted control quantity corresponding to the predicted position point corresponding to the first operation control cycle when the error between the predicted trajectory and the reference trajectory is minimized; adding the predicted control quantity corresponding to the predicted position point corresponding to the first operation control cycle to the second reference control quantity to obtain a target control quantity; based on the target control quantity, generating a corresponding target control instruction, and sending the above-mentioned target control instruction to the chassis controller, so that the chassis controller executes the target control instruction, thereby controlling the movement of the robot.
[0145] In the embodiment of the present disclosure, a second reference position point located on a reference trajectory is determined for the robot, and then a target control amount of the robot is determined based on the second reference position point. The second reference position point is determined using the robot's current posture information, current speed information, and the duration of the robot's response to a control instruction. Here, in order to compensate for the error caused by the robot's movement during the delayed response of the robot's actuator, the target control amount for controlling the robot's movement is generated by using the posture information and control amount of the second reference position point. This can reduce the control deviation caused by the delayed response of the actuator, so that the difference between the robot and the planned path during operation is smaller, allowing the robot to run smoothly.
[0146] Based on the same inventive concept, the robot provided in the embodiment of the present disclosure corresponds to the robot movement control method applied to the robot described below. Since the principle of solving the problem by the robot in the embodiment of the present disclosure is similar to the robot movement control method applied to the robot described below, the implementation of the robot movement control method applied to the robot can refer to the implementation of the robot, and the repeated parts will not be repeated.
[0147] For descriptions of the processing flow of each module in the robot and the interaction flow between each module, please refer to the relevant descriptions in the following method embodiments, which will not be described in detail here.
[0148] Example 2
[0149] See also Figure 4 FIG. 4 is a flow chart of a robot movement control method provided by an embodiment of the present disclosure. The method is applied to a robot and includes steps S401 to S406, wherein:
[0150] S401: Acquire the reference trajectory information of the robot, the current speed information of the robot, and the duration of the robot's response to the control instruction.
[0151] S402: Obtain the current location information of the robot.
[0152] S403. In multiple operation control cycles, based on the reference trajectory information and the current position information of the robot in the current operation control cycle, determine a first reference position point on the reference trajectory of the robot that is closest to the current position of the robot, and determine first reference position information of the first reference position point.
[0153] S404: Based on the first reference position information, the current speed information of the robot, and the duration of the robot's response to the control instruction, determine a second reference position point for previewing from the reference trajectory, and determine second reference position information of the second reference position point.
[0154] S405: Generate a target control variable for controlling the movement of the robot based on the second reference position information.
[0155] S406: Control the robot to move based on the target control amount.
[0156] In the embodiment of the present disclosure, a second reference position point located on a reference trajectory is determined for the robot, and then a target control amount of the robot is determined based on the second reference position point. The second reference position point is determined using the robot's current posture information, current speed information, and the duration of the robot's response to a control instruction. Here, in order to compensate for the error caused by the robot's movement during the delayed response of the robot's actuator, the target control amount for controlling the robot's movement is generated by using the posture information and control amount of the second reference position point. This can reduce the control deviation caused by the delayed response of the actuator, so that the difference between the robot and the planned path during operation is smaller, allowing the robot to run smoothly.
[0157] In the specific implementation, the current posture information of the robot can be obtained; and see Figure 5In the robot movement control method shown in FIG. 1 , steps S501 to S503 of the method for determining the target control amount for controlling the movement of the robot are to determine the target control amount, wherein:
[0158] S501 : Based on the second reference position information and the reference trajectory information, determine a plurality of third reference position points on the reference trajectory that respectively correspond to a plurality of future operation control cycles.
[0159] S502. Determine a target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points; the target control sequence includes a predicted control amount corresponding to each of the predicted position points corresponding to each of the third reference position points.
[0160] S503: Generate the target control variable based on the predicted control variable of the predicted position point corresponding to the third reference position point that is closest to the second reference position point and the second reference control variable corresponding to the second reference position point.
[0161] Among them, the reference trajectory information may include at least one of the following: first reference position information corresponding to the first reference position point; second reference position information and second reference posture information corresponding to the second reference position point; third reference posture information corresponding to each third reference position point; second reference control quantity corresponding to the second reference position point; third reference control quantity corresponding to each third reference position point.
[0162] In a specific implementation, the second reference position point may be used as a starting point, and multiple third reference position points may be determined on the reference trajectory based on the second reference position information, the reference trajectory information, and a preset operation control cycle.
[0163] In specific implementation, it can be based on Figure 6 Steps S601 to S602 shown in the figure determine the predicted control quantities corresponding to the predicted position points corresponding to the above-mentioned multiple third reference position points based on the acquired current posture information of the robot and the third reference posture information and third reference control quantity information corresponding to the above-mentioned multiple third reference position points respectively. The specific description is shown below.
[0164] S601: Based on a predetermined kinematic equation, construct a target relationship equation corresponding to multiple future moments that can represent the relationship between posture information and control quantity information.
[0165] S602. Based on the pre-constructed cost function, the third reference posture information corresponding to each of the third reference position points, and the third reference control quantity corresponding to each of the third reference position points, the target relationship equations corresponding to the multiple future operation control cycles are solved to obtain the predicted control quantities corresponding to the multiple future operation control cycles; the predicted control quantities corresponding to the multiple future operation control cycles constitute the target control sequence.
[0166] Among them, the predicted control quantities corresponding to multiple future operation control cycles constitute the target control sequence.
[0167] In a specific implementation, the target relationship equation includes:
[0168]
[0169] Wherein, i includes a positive integer from 1 to N, representing the sequence number of the operation control cycle; N represents the number of operation control cycles; X(k+i) is used to represent the first state information of the robot in the i-th operation control cycle; X(k+i-1) is used to represent the second state information of the robot in the i-1-th operation control cycle; U(k+i-1) represents the predictive control amount that needs to be applied when controlling the robot to switch from the second state information to the first state information; Represents the state transfer matrix after linear discretization; represents the control matrix after linear discretization.
[0170] In a specific implementation, the second reference control amount corresponding to the second reference position point can be determined from the reference trajectory information.
[0171] In a specific implementation, when generating the target control quantity based on the predicted control quantity of the predicted position point corresponding to the third reference position point that is closest to the second reference position point, and the second reference control quantity corresponding to the second reference position point, the predicted control quantity based on the predicted position point corresponding to the third reference position point that is closest to the second reference position point and the second reference control quantity corresponding to the second reference position point can be added to obtain the target control quantity.
[0172] In a specific implementation, a linearly discretized kinematic equation can be constructed in advance. The kinematic equation is used to characterize the relationship between the robot's posture information and the control quantity information. The specific description is as follows: construct an initial kinematic equation that characterizes the relationship between the robot's posture information and the control quantity information; linearize the initial kinematic equation; based on the robot's operation control cycle, discretize the linearized initial kinematic equation to obtain the kinematic equation.
[0173] In a specific implementation, a target control instruction can be generated based on the target control amount; and the target control instruction is executed to control the movement of the robot.
[0174] Those skilled in the art will understand that in the above-mentioned method of the specific implementation method, the writing order of each step does not mean a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of each step should be determined by its function and possible internal logic.
[0175] Reference Figure 7 As shown, it is a schematic diagram of a scenario for controlling the movement of a robot provided by an embodiment of the present disclosure, including: a robot 10, a shelf, and a reference path 701.
[0176] During the working process in the current workplace, the robot 10 needs to move on the reference path 701 configured in advance for it to complete the corresponding task. During the working process of the robot 10, the robot 10 obtains the reference path information and the current posture information, and determines the second reference posture information (i.e., the posture information of the preview point) based on the obtained reference path information and the current posture information. Based on the preview point posture information and the pre-constructed particle motion state equation, the robot determines the multiple predicted position points that the robot may reach in the future multiple operation control cycles. Based on the pre-constructed cost function and the multiple predicted position points that the robot may reach in the future multiple operation control cycles and the third reference position point corresponding to each operation control cycle, the robot calculates the target control amount that needs to be applied to itself at the current moment. Based on the calculated target control amount, the robot 10 is controlled to move to the reference trajectory 701.
[0177] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems and devices described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here. In the several embodiments provided in the present disclosure, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0178] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0179] In addition, each functional unit in each embodiment of the present disclosure may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0180] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a non-volatile computer-readable storage medium that is executable by a processor. Based on this understanding, the technical solution of the present disclosure, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present disclosure. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0181] Finally, it should be noted that the above-described embodiments are only specific implementation methods of the present disclosure, which are used to illustrate the technical solutions of the present disclosure, rather than to limit them. The scope of protection of the present disclosure is not limited thereto. Although the present disclosure has been described in detail with reference to the above-described embodiments, those skilled in the art should understand that any person skilled in the art can modify or easily conceive of changes to the technical solutions described in the above-described embodiments within the technical scope disclosed in the present disclosure, or replace some of the technical features therein with equivalents. Such modifications, changes, or replacements do not deviate from the spirit and scope of the technical solutions of the embodiments of the present disclosure, and should be included in the scope of protection of the present disclosure. Therefore, the scope of protection of the present disclosure shall be subject to the scope of protection of the claims.
Claims
1. A robot, characterized in that: include: Information acquisition component, positioning component and control server; Wherein: the information acquisition component is configured to obtain the reference trajectory information of the robot, the current speed information of the robot, and the duration of the robot's response to the control instruction; The positioning component is configured to obtain the current position information of the robot; The control server is configured to, during a plurality of operation control cycles, determine, based on the reference trajectory information and the current position information of the robot in the current operation control cycle, a first reference position point on the reference trajectory of the robot that is closest to the current position of the robot, and determine first reference position information of the first reference position point; Determining a previewed second reference position point on the reference trajectory based on the first reference position information, the current speed information of the robot, and the duration of the robot's response to a control instruction, and determining second reference position information of the second reference position point; generating a target control amount for controlling the movement of the robot based on the second reference position information; Controlling the robot to move based on the target control amount; The positioning component is configured to obtain current posture information of the robot; When the control server generates a target control amount for controlling the movement of the robot based on the second reference position information, the control server is configured as follows: Based on the second reference position information and the reference trajectory information, determining a plurality of third reference position points on the reference trajectory that respectively correspond to a plurality of future operation control cycles; Based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points, a prediction model is applied to determine a target control sequence; the target control sequence includes a predicted control amount corresponding to each of the predicted position points corresponding to each of the third reference position points; The target control amount is generated based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
2. The robot according to claim 1, characterized in that The reference trajectory information includes at least one of the following: the first reference position information corresponding to the first reference position point; the second reference position information and second reference posture information corresponding to the second reference position point; The third reference pose information corresponding to each of the third reference position points; the second reference control amount corresponding to the second reference position point; The third reference control amount corresponding to each of the third reference position points.
3. The robot according to claim 2, characterized in that When the control server determines, based on the second reference position information and the reference trajectory information, a plurality of third reference position points respectively corresponding to a plurality of future operation control cycles on the reference trajectory, the control server is configured to: Taking the second reference position point as a starting point, a plurality of third reference position points are determined on the reference trajectory based on the second reference position information, the reference trajectory information, and a preset operation control cycle.
4. The robot according to claim 2, characterized in that When the control server determines a target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points, the control server is configured as follows: Based on the predetermined kinematic equations, construct the target relationship equations corresponding to multiple future moments that can represent the relationship between posture information and control quantity information; Based on a pre-constructed cost function, the third reference posture information corresponding to each of the third reference position points, and the third reference control quantity corresponding to each of the third reference position points, the target relationship equations corresponding to the multiple future operation control cycles are solved to obtain the predicted control quantities corresponding to the multiple future operation control cycles; the predicted control quantities corresponding to the multiple future operation control cycles constitute the target control sequence.
5. The robot according to claim 4, characterized in that The target relationship equation includes: ; in; A positive integer between 1 and N representing the sequence number of the operation control cycle; N represents the number of the operation control cycle; Used to represent the first state information of the robot in the i-th operation control cycle; Used to represent the second state information of the robot in the i-1th operation control cycle; represents the predictive control amount that needs to be applied when controlling the robot to transition from the second state information to the first state information; Represents the state transfer matrix after linear discretization; represents the control matrix after linear discretization.
6. The robot according to claim 2, characterized in that The control server is further configured to determine the second reference control amount corresponding to the second reference position point from the reference trajectory information.
7. The robot according to claim 6, characterized in that When the control server generates the target control amount based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point, the control server is configured to: The target control amount is obtained by adding the predicted control amount based on the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
8. The robot according to claim 4, characterized in that The control server is further configured to construct an initial kinematic equation that characterizes the relationship between the robot's posture information and the control quantity information; and linearize the initial kinematic equation; Based on the robot operation control cycle, the linearized initial kinematic equation is discretized to obtain the kinematic equation.
9. The robot according to claim 1, characterized in that When the control server controls the robot to move based on the target control amount, the control server is configured as follows: generating a target control instruction based on the target control amount; Execute the target control instruction to control the robot to move.
10. A robot movement control method, characterized in that: include: Obtain the robot's reference trajectory information, the robot's current speed information, and the robot's response time to control commands; Get the current location information of the robot; In a plurality of operation control cycles, based on the reference trajectory information and the current position information of the robot in the current operation control cycle, determining a first reference position point on the reference trajectory of the robot that is closest to the current position of the robot, and determining first reference position information of the first reference position point; Determining a previewed second reference position point on the reference trajectory based on the first reference position information, the current speed information of the robot, and the duration of the robot's response to a control instruction, and determining second reference position information of the second reference position point; generating a target control amount for controlling the movement of the robot based on the second reference position information; Controlling the robot to move based on the target control amount; The method further comprises: obtaining current posture information of the robot; Generating a target control amount for controlling the movement of the robot based on the second reference position information includes: Based on the second reference position information and the reference trajectory information, determining a plurality of third reference position points on the reference trajectory that respectively correspond to a plurality of future operation control cycles; Based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points, a prediction model is applied to determine a target control sequence; the target control sequence includes a predicted control amount corresponding to each of the predicted position points corresponding to each of the third reference position points; The target control amount is generated based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
11. The method according to claim 10, characterized in that The reference trajectory information includes at least one of the following: the first reference position information corresponding to the first reference position point; the second reference position information and second reference posture information corresponding to the second reference position point; The third reference pose information corresponding to each of the third reference position points; the second reference control amount corresponding to the second reference position point; The third reference control amount corresponding to each of the third reference position points.
12. The method according to claim 11, characterized in that The determining, based on the second reference position information and the reference trajectory information, a plurality of third reference position points corresponding to a plurality of future operation control cycles on the reference trajectory includes: Taking the second reference position point as a starting point, a plurality of third reference position points are determined on the reference trajectory based on the second reference position information, the reference trajectory information, and a preset operation control cycle.
13. The method according to claim 11, characterized in that The determining of a target control sequence based on the current position information and the current posture information of the robot, the third reference posture information corresponding to each of the third reference position points, and the third reference control amount corresponding to each of the third reference position points includes: Based on the predetermined kinematic equations, construct the target relationship equations corresponding to multiple future moments that can represent the relationship between posture information and control quantity information; Based on a pre-constructed cost function, the third reference posture information corresponding to each of the third reference position points, and the third reference control quantity corresponding to each of the third reference position points, the target relationship equations corresponding to the multiple future operation control cycles are solved to obtain the predicted control quantities corresponding to the multiple future operation control cycles; the predicted control quantities corresponding to the multiple future operation control cycles constitute the target control sequence.
14. The method according to claim 13, characterized in that The target relationship equation includes: ; in; A positive integer between 1 and N representing the sequence number of the operation control cycle; N represents the number of the operation control cycle; Used to represent the first state information of the robot in the i-th operation control cycle; Used to represent the second state information of the robot in the i-1th operation control cycle; represents the predictive control amount that needs to be applied when controlling the robot to transition from the second state information to the first state information; Represents the state transfer matrix after linear discretization; represents the control matrix after linear discretization.
15. The method according to claim 11, characterized in that The method further comprises: The second reference control amount corresponding to the second reference position point is determined from the reference trajectory information.
16. The method according to claim 15, characterized in that The generating the target control amount based on the predicted control amount of the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point includes: The target control amount is obtained by adding the predicted control amount based on the predicted position point corresponding to the third reference position point closest to the second reference position point and the second reference control amount corresponding to the second reference position point.
17. The method according to claim 13, wherein The method further comprises: Construct the initial kinematic equations that represent the relationship between the robot's posture information and the control quantity information; Linearizing the initial kinematic equations; Based on the robot operation control cycle, the linearized initial kinematic equation is discretized to obtain the kinematic equation.
18. The method according to claim 10, wherein: The controlling the robot to move based on the target control amount includes: generating a target control instruction based on the target control amount; Execute the target control instruction to control the robot to move.
Citation Information
Patent Citations
Vehicle trajectory tracking method, device and equipment and storage medium
CN111547066A