Control method and device of moving trajectory, equipment and storage medium
Through the calculation model of pre-aiming and iterative optimization, combined with genetic optimization and deep learning, the trajectory control offset problem caused by hysteresis of tower cranes and other operating machinery in unmanned driving scenarios is solved, and high precision and low complexity are achieved Trajectory control.
Patent Information
- Application Number
- CN202411251048.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-06
- Publication Date
- 2024-12-27
- Estimated Expiration
- 2044-09-06
AI Technical Summary
In unmanned driving scenarios, due to hysteresis, the hook trajectory control is difficult to accurately control, and the existing PID control method is difficult to apply to nonlinear, large inertia and large hysteresis control systems, resulting in position and time offset problems. .
By pre-enabling, the trajectory point is determined, the iteratively optimized calculation model is used to construct the objective function based on position deviation, obtain the target control amount, combine the genetic optimization algorithm and deep learning model, optimize the pre-enabling time and control amount, reduce complexity, and improve control accuracy.
It effectively reduces the position deviation after the hook is running, improves the accuracy and real-time nature of trajectory control, and reduces the system complexity and implementation difficulty.
Smart Images

Figure CN119191099A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of engineering machinery, and in particular to a method, device, equipment and storage medium for controlling a running trajectory. Background Art
[0002] In operating machinery such as tower cranes, truck cranes, and aerial work machinery, there is usually a need to control the running trajectory of the operating device. For example, in the unmanned tower crane loading operation scenario, accurately controlling the running trajectory of the tower crane's hook through the tower crane's power system so that the hook reaches the destination at the right time is one of the key technologies for realizing automated lifting operations. At present, the trajectory control of the hook generally adopts the Proportional Integral Differential (PID) control method. Although it is easy to implement in engineering, due to the large hysteresis phenomenon in the tower crane operation scenario, the trajectory control belongs to a multi-input and multi-output system, and PID control is a linear control technology, which is difficult to apply to the tower crane trajectory control system. Summary of the invention
[0003] The present application provides a method, device, equipment and storage medium for controlling an operation trajectory, which are used to solve the problems of position offset and time offset caused by hysteresis in the operation scene of an operating machine.
[0004] In a first aspect, an embodiment of the present application proposes a method for controlling a running trajectory, comprising:
[0005] Previewing the target trajectory at the first trajectory point to determine a second trajectory point; wherein the target trajectory is a trajectory pre-planned for the upper working device of the working machine, and the first trajectory point and the second trajectory point are two different trajectory points in the target trajectory;
[0006] Acquire a plurality of third trajectory points in the target trajectory, wherein the plurality of third trajectory points include the second trajectory point and at least one trajectory point after the second trajectory point;
[0007] The plurality of third trajectory points are input into a preset calculation model to obtain a target control amount for the upper load working device to reach the second trajectory point from the first trajectory point; wherein the calculation model is used to determine a plurality of control amounts corresponding to the plurality of third trajectory points respectively, predict a plurality of fourth trajectory points corresponding to the plurality of third trajectory points respectively based on the plurality of control amounts, construct an objective function about the plurality of control amounts based on the plurality of third trajectory points and the plurality of fourth trajectory points, and obtain the target control amount by solving the objective function;
[0008] The target control amount is used to control the operation of the upper loading working device.
[0009] Based on the above scheme, in order to solve the hysteresis phenomenon existing in the upper loading working device, the present application proposes to first predict the tracked trajectory points forward for a period of time through preview aiming, and determine the multiple trajectory points obtained after preview aiming. Further, the predicted trajectory points corresponding to the multiple trajectory points are predicted according to the control quantities of the multiple trajectory points, and the objective function is constructed based on the position deviation between the predicted trajectory points and the trajectory points in the actual target trajectory. The objective function is solved by iterative optimization to obtain the target control quantity for controlling the operation of the hook. On the one hand, since the target control quantity is obtained based on the position deviation, the position deviation is minimized after the hook is in operation. On the other hand, compared with the traditional solution of constructing a prediction model, the solution of constructing the objective function and solving the objective function through position deviation in the present application is less complex and easy to implement.
[0010] In one or more possible embodiments, the calculation model is further used to construct the objective function based on changes in adjacent control quantities among the multiple control quantities.
[0011] In one or more possible embodiments, the fourth trajectory point corresponding to the third trajectory point is determined in the following manner:
[0012] Acquire multiple fitting functions pre-constructed for different upper-body working device loads and different control amount ranges; wherein any one of the fitting functions is used to characterize the mapping relationship between the control amount and the acceleration of the upper-body working device;
[0013] Selecting a target fitting function from the plurality of fitting functions based on the current load of the upper attachment working device and the control amount range to which the first control amount belongs; wherein the first control amount is the control amount corresponding to the third trajectory point;
[0014] Determining a target acceleration corresponding to the first control amount by using the target fitting function;
[0015] The fourth trajectory point is determined based on the target acceleration.
[0016] In one or more possible embodiments, multiple fitting functions between the acceleration of the upper attachment working device and the control amount under the load of the first upper attachment working device are constructed in the following manner:
[0017] Acquire multiple data groups of historical records under the load of the first upper loading working device; each data group includes an acceleration and a control variable;
[0018] According to the distribution of the multiple data groups in a coordinate system with acceleration as the ordinate and control amount as the abscissa, the multiple data groups are segmented to obtain multiple segments; wherein the distribution is used to characterize the slope of a curve obtained by combining points corresponding to the multiple data groups in the coordinate system, and the order of a function used to characterize the curve fitting; different segments include different slopes and orders corresponding to data groups;
[0019] Function fitting is performed on the data of the first segment to determine the fitting function corresponding to the load of the first upper working device and the first control amount range; the first segment is any one of the multiple segments, and the first control amount range is determined based on the control amount in the data group included in the first segment.
[0020] Based on the above scheme, segmenting the data and then performing function fitting can not only improve the local accuracy of the function, but also reduce the order of the function, thereby improving the computing speed of the device.
[0021] In one or more possible embodiments, the step of previewing the target trajectory at the first trajectory point to determine the second trajectory point specifically includes:
[0022] Based on a genetic optimization algorithm, a position deviation between the first trajectory point and a trajectory point in the target trajectory that is located after the first trajectory point is used as a fitness function to determine a preview time;
[0023] Determine the second trajectory point at a second moment according to a first moment corresponding to the first trajectory point and the preview time.
[0024] Based on the above scheme, the present application proposes to obtain the preview time through a genetic optimization algorithm, increase the matching of the preview time with the operation scene, and avoid the problem of inaccurate control output caused by too short or too long preview time.
[0025] In one or more possible embodiments, the step of determining the preview time based on a genetic optimization algorithm and using a deviation between an actual position and a planned position of a trajectory point located after the first trajectory point in the target trajectory as a fitness function specifically includes:
[0026] Generate an initial population based on a preset boundary value; each individual in the initial population has an initially set preview time;
[0027] Calculate the fitness value according to the distance between the trajectory point corresponding to each individual and the first trajectory point, and take the individuals in the primary population whose fitness value is less than a set threshold as the parent individuals;
[0028] The crossover operator and mutation operator in the genetic optimization algorithm are used to perform genetic operations on the parent individuals to generate a new population, and the step of calculating the fitness value is returned based on the new population until the number of genetic operations reaches a threshold number, and the preview time corresponding to the optimal individual is output; the optimal individual is the individual with the smallest fitness value.
[0029] In one or more possible embodiments, after determining the fourth trajectory point, the method further includes:
[0030] Acquire a predicted trajectory point obtained when predicting the first trajectory point at a fifth trajectory point; the fifth trajectory point is a trajectory point previous to the first trajectory point;
[0031] The fourth trajectory point is corrected based on the predicted trajectory point and the first trajectory point.
[0032] In one or more possible embodiments, the modifying the fourth trajectory point based on the predicted trajectory point and the first trajectory point specifically includes:
[0033] Acquire a second control amount determined at the fifth trajectory point; the second control amount is a control amount for controlling the upper load working device to reach the predicted trajectory point from the fifth trajectory point;
[0034] Inputting the second control amount, the predicted trajectory point and the first trajectory point into a pre-trained deep learning model, and outputting a correction value for correcting the fourth trajectory point; wherein the deep learning model is trained using historical data of the operation of the upper loading operation device;
[0035] The correction value is compensated to the fourth trajectory point to obtain the corrected fourth trajectory point.
[0036] In a second aspect, the present application proposes a control device for a running trajectory, the device is a working machine, or the device is applied to the working machine, and the device includes:
[0037] A processing unit, configured to preview a target trajectory at a first trajectory point to determine a second trajectory point; wherein the target trajectory is a trajectory pre-planned for an upper working device of the working machine, and the first trajectory point and the second trajectory point are two different trajectory points in the target trajectory;
[0038] an acquisition unit, configured to acquire a plurality of third trajectory points in the target trajectory, wherein the plurality of third trajectory points include the second trajectory point and at least one trajectory point after the second trajectory point;
[0039] The processing unit is further used to input the plurality of third trajectory points into a preset calculation model to obtain a target control amount for the upper load working device to reach the second trajectory point from the first trajectory point; wherein the calculation model is used to determine a plurality of control amounts corresponding to the plurality of third trajectory points respectively, predict a plurality of fourth trajectory points corresponding to the plurality of third trajectory points respectively based on the plurality of control amounts, construct an objective function about the plurality of control amounts based on the plurality of third trajectory points and the plurality of fourth trajectory points, and obtain the target control amount by solving the objective function;
[0040] The processing unit is also used to control the operation of the upper loading operation device using the target control amount.
[0041] In one or more possible embodiments, the calculation model is further used to construct the objective function based on changes in adjacent control quantities among the multiple control quantities.
[0042] In one or more possible embodiments, the acquisition unit is further used to acquire a plurality of fitting functions pre-constructed for different upper-body working device loads and different control amount ranges; wherein any one of the fitting functions is used to characterize the mapping relationship between the control amount and the acceleration of the upper-body working device;
[0043] The processing unit is further used to select a target fitting function from the multiple fitting functions based on the current load of the upper body working device and the control amount range to which the first control amount belongs; wherein the first control amount is the control amount corresponding to the third trajectory point;
[0044] The processing unit is further used to determine a target acceleration corresponding to the first control amount through the target fitting function;
[0045] The processing unit is further configured to determine the fourth trajectory point based on the target acceleration.
[0046] In one or more possible embodiments, the acquisition unit is further used to acquire a plurality of data groups of historical records under the load of the first upper loading working device; each data group includes an acceleration and a control amount;
[0047] The processing unit is further used to segment the multiple data groups into multiple segments according to the distribution of the multiple data groups in a coordinate system with acceleration as the ordinate and control amount as the abscissa; wherein the distribution is used to characterize the slope of a curve obtained by combining points corresponding to the multiple data groups in the coordinate system, and the order of a function used to characterize the curve fitting; different segments include different slopes and orders corresponding to data groups;
[0048] The processing unit is also used to perform function fitting on the data of the first segment to determine the fitting function corresponding to the load of the first upper working device and the first control amount range; the first segment is any one of the multiple segments, and the first control amount range is determined based on the control amount in the data group included in the first segment.
[0049] In one or more possible embodiments, the processing unit is specifically configured to:
[0050] Based on a genetic optimization algorithm, a position deviation between the first trajectory point and a trajectory point in the target trajectory that is located after the first trajectory point is used as a fitness function to determine a preview time;
[0051] Determine the second trajectory point at a second moment according to a first moment corresponding to the first trajectory point and the preview time.
[0052] In one or more possible embodiments, the processing unit is specifically configured to:
[0053] Generate an initial population based on a preset boundary value; each individual in the initial population has an initially set preview time;
[0054] Calculate the fitness value according to the distance between the trajectory point corresponding to each individual and the first trajectory point, and take the individuals in the primary population whose fitness value is less than a set threshold as the parent individuals;
[0055] The crossover operator and mutation operator in the genetic optimization algorithm are used to perform genetic operations on the parent individuals to generate a new population, and the step of calculating the fitness value is returned based on the new population until the number of genetic operations reaches a threshold number, and the preview time corresponding to the optimal individual is output; the optimal individual is the individual with the smallest fitness value.
[0056] In one or more possible embodiments, the acquisition unit is further used to acquire a predicted trajectory point obtained when the first trajectory point is predicted at a fifth trajectory point; the fifth trajectory point is a previous trajectory point of the first trajectory point;
[0057] The processing unit is further configured to correct the fourth trajectory point based on the predicted trajectory point and the first trajectory point.
[0058] In one or more possible embodiments, the processing unit is specifically configured to:
[0059] The second control amount determined at the fifth trajectory point is acquired by the acquisition unit; the second control amount is a control amount for controlling the upper load working device to reach the predicted trajectory point from the fifth trajectory point;
[0060] Inputting the second control amount, the predicted trajectory point and the first trajectory point into a pre-trained deep learning model, and outputting a correction value for correcting the fourth trajectory point; wherein the deep learning model is trained using historical data of the operation of the upper loading operation device;
[0061] The correction value is compensated to the fourth trajectory point to obtain the corrected fourth trajectory point.
[0062] In a third aspect, the present application provides an electronic device, including:
[0063] A memory for storing program instructions;
[0064] The processor is used to call the program instructions stored in the memory, and execute the steps included in any one of the methods in the first aspect according to the obtained program instructions.
[0065] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a computer, the computer executes any one of the methods described in the first aspect.
[0066] In a fifth aspect, the present application provides a computer program product, comprising: a computer program code, when the computer program code is run on a computer, the computer executes any one of the methods described in the first aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0067] The drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification are used to explain the principles of the present application, and do not constitute an improper limitation on the present application.
[0068] Figure 1 is a structural schematic diagram of a tower crane according to an embodiment;
[0069] Figure 2 A schematic diagram of a control method for a running trajectory provided in an embodiment of the present application;
[0070] Figure 3 A schematic diagram of a preview process provided in an embodiment of the present application;
[0071] Figure 4 A schematic diagram of the implementation process of a genetic optimization algorithm provided in an embodiment of the present application;
[0072] Figure 5 A schematic diagram of the architecture of a tower crane system provided in an embodiment of the present application;
[0073] Figure 6 A schematic diagram of a correction effect provided in an embodiment of the present application;
[0074] Figure 7 A schematic diagram of the architecture of a trajectory control system provided in an embodiment of the present application;
[0075] Figure 8 A schematic diagram of the structure of a control device for a running trajectory provided in an embodiment of the present application;
[0076] Fig. 9 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0077] In order to make the purpose, technical scheme and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0078] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0079] The solution of the present application is applied to the upper loading operation scene of unmanned working machinery, and is used to control the running trajectory of the upper loading operation device of the working machinery. Exemplarily, the working machinery may be a tower crane, a mobile crane, an aerial working device, a pump truck, an excavator, a fire truck, a boom robot, etc. Among them, the mobile crane may be a truck crane, a crawler crane, etc. Exemplarily, when the working machinery is a tower crane or a mobile crane, the upper loading operation device of the working machinery may be a hook. When the working machinery is an excavator, the upper loading operation device of the working machinery may be a bucket. When the working machinery is an aerial working machinery or a fire truck, the upper loading operation device of the working machinery may be a working bucket. When the working machinery is a boom robot, the upper loading operation device of the working machinery may be an actuator at the end of the boom.
[0080] For ease of description, the following description will be made by taking an operating machine as a tower crane and an upper operating device as a hook as an example.
[0081] Tower cranes, also known as tower cranes or tower cranes, are mainly used for vertical and horizontal transportation of materials in housing construction and installation of building structures. They are mainly composed of three parts: metal structure, working mechanism and electrical system. The metal structure includes the tower body, boom, base, attachment rod, trolley and other structures. The working mechanism mainly includes lifting, luffing and rotation. Some tower cranes may also include walking parts. The electrical system includes motors, inverters, controllers, distribution boxes, connecting lines and lighting devices. As an example, see Figure 1 , is a structural schematic diagram of a tower crane provided in an embodiment of the present application. The hoisting process of the tower crane mainly relies on the lifting, rotation and luffing movement of the hook. The electrical system determines the frequency that the controller needs to output at each track point in the track according to the pre-planned track of the hook, so that the hook can accurately reach the next track point from the current track point within the set time.
[0082] Among them, trajectory planning refers to planning the path between the starting point and the end point of the hook as a series of trajectory points in the hoisting operation scenario, and the time length between any two trajectory points is fixed. The trajectory planning process needs to reasonably plan the distance between each two trajectory points based on factors such as the speed and acceleration of the tower crane hook movement. For example, the speed of the hook is slow in the starting stage, and the distance between the two trajectory points needs to be set small when the time length is fixed; the speed of the hook is fast in the middle stage, and the distance between the two trajectory points needs to be set large when the time length is fixed. The output frequency of the tower crane controller needs to make the hook move from the current trajectory point to the next trajectory point within a fixed time length. However, tower cranes have large hysteresis phenomena, such as communication delays, delays caused by mechanical structures (for example, there is a gap between the gears in the slewing mechanism, which causes a delay in the gear rotation process during the slewing process), and delays in motor start-up. The hysteresis phenomenon of the tower crane will cause the hook to be unable to reach the next trajectory point at the set time when the hook is controlled to move according to the calculated output frequency at the current trajectory point.
[0083] In order to solve the above-mentioned hysteresis phenomenon, various trajectory automatic control schemes such as PID control, feedforward-feedback control, intelligent control and model predictive control have been proposed in the relevant technology. Among them, PID control is a commonly used linear control technology, which is easy to implement in engineering, but its regulation effect lags behind the interference and the regulation lags, resulting in unstable control output value, which is difficult to apply to nonlinear, large inertia and large hysteresis control systems such as tower cranes. In feedforward-feedback control, feedforward control uses the input quantity to directly act on the output, which has a fast response, but is prone to overcompensation and undercompensation. The stability of the control scheme combining feedforward and feedback is poor. Intelligent control schemes include neural network control, fuzzy control and control based on deep learning. Intelligent control has good robustness and adaptability, but requires a lot of professional experience and a lot of data support, takes a long time to prepare for training in advance, and lacks rigorous stability proof, and there may be uncertainty in the actual control process. Model predictive control is widely used to deal with nonlinear systems with constraints and multi-input and multi-output systems. The established model is used to predict future dynamic behavior. On this basis, the optimal control is solved and implemented according to the constraints and performance indicators. Then, the real-time information is updated at each rolling step to correct the prediction of future dynamic behavior. At present, most studies use Lagrange equations to model the dynamics of tower cranes and determine the output frequency based on model prediction. However, the process of building the model is very complicated, so the real-time performance of the application is poor.
[0084] In view of this, the present application proposes a motion trajectory control scheme. To solve the hysteresis phenomenon, the present application proposes to select the tracking trajectory point through pre-aiming, use the iterative optimization calculation model to determine the optimal control amount to reach the tracking trajectory point, and use the optimal control amount to control the hook to move from the current trajectory point to the tracking trajectory point, so as to minimize the position deviation after arrival.
[0085] The solution of this application is described in detail below. Figure 2 , is a schematic flow chart of a method for controlling a running trajectory provided in an embodiment of the present application. Optionally, Figure 2 The method flow shown is applied to a tower crane and can be executed by any controller in the tower crane. Figure 2 The execution subject of the method flow shown is not limited. Figure 2 The method flow shown specifically includes:
[0086] 201 , preview the target trajectory at the first trajectory point to determine the second trajectory point.
[0087] The target trajectory is a trajectory pre-planned for the tower crane hook, and the target trajectory includes multiple trajectory points, and the interval between any two adjacent trajectory points is fixed. Alternatively, it can also be called a fixed period between any two trajectory points, that is, the trajectory control is performed periodically, and the trajectory control is performed once each time a trajectory point is reached, so that the hook can reach the next trajectory point at the time of the next trajectory point.
[0088] Optionally, when performing preview aiming, first determine the preview aiming time, then delay the preview aiming time from the first moment corresponding to the first trajectory point to obtain a second moment, and the trajectory point corresponding to the second moment is the second trajectory point obtained by preview aiming. Figure 3 , which is a schematic diagram of a preview process provided in an embodiment of the present application.
[0089] like Figure 3 As shown, the first moment corresponding to the first trajectory point is set as moment k. Under normal circumstances (such as Figure 3 The first time axis shown in the figure), after the hook is controlled by the set control amount at time k, it can reach the trajectory point at time (k+n), and k-(k+n) is the reference trajectory. Among them, n is the fixed time interval between any two trajectory points introduced in the above embodiment. However, due to the existence of hysteresis and the influence of external factors, the preview time m is used for preview, see Figure 3 The second time axis in , after applying the set control amount at time (k+m), the trajectory point at time (k+m+n) can be reached. The reference trajectory is (k+m)-(k+m+n). Further, update the reference trajectory, see Figure 3 The third time axis in the graph, the updated reference trajectory is: m—(m+n).
[0090] 202, obtaining a plurality of third track points in the target track.
[0091] The plurality of third trajectory points include the second trajectory point and at least one trajectory point in the target trajectory that is located after the second trajectory point.
[0092] 203, input the plurality of third trajectory points into a preset calculation model to obtain a target control amount for the hook to reach the second trajectory point from the first trajectory point.
[0093] The calculation model is used to determine multiple control quantities corresponding to multiple third trajectory points, and predict multiple fourth trajectory points corresponding to multiple third trajectory points based on the multiple control quantities. The control quantity is used to control the movement of the hook, and the acceleration of the hook movement controlled by different control quantities is different. When predicting the fourth trajectory point, the acceleration of the hook movement can be determined according to the control quantity of the third trajectory point, and the position that the hook can reach, that is, the fourth trajectory point, can be calculated according to the acceleration.
[0094] Furthermore, the computational model is also used to construct objective functions of multiple control quantities based on multiple third trajectory points and multiple fourth trajectory points. Exemplarily, the fourth trajectory point is a predicted trajectory point, and there is a position deviation with the third trajectory point in the actual target trajectory. The objective function is constructed based on the position deviation between the third trajectory point and the fourth trajectory point, that is, the objective function is constructed based on the deviation between the predicted position and the pre-planned position. After the objective function is constructed, the objective function is iteratively optimized to obtain the target control quantity.
[0095] It should be noted that the specific implementation of the control quantity corresponding to different operating machines is different. The embodiment of the present application is introduced by taking a tower crane as an example. In the tower crane scenario, the control quantity is the power output by the motor of the tower crane. Different powers output by the motor (that is, different control quantities) can control the hook to move with different accelerations. If the operating machine is a mobile crane, for example, the operating machine is a truck crane, and the truck crane is controlled by a hydraulic system, then the control quantity can be the opening of the hydraulic valve, and different openings of the hydraulic valve can control the hook to move with different accelerations. The tower crane will still be used as an example for introduction later. In the tower crane scenario, the control quantity includes the slewing control quantity, the amplitude control quantity and the lifting control quantity.
[0096] 204, the target control quantity is used to control the operation of the hook.
[0097] For example, according to the introduction in step 201, the trajectory control is performed periodically, and the control period is the fixed time interval between any two trajectory points. Therefore, when the target control amount is used to control the hook operation, the hook operation can be controlled for a fixed time. After the operation is completed, the next trajectory control will be started.
[0098] Based on the above scheme, in order to solve the hysteresis phenomenon existing in the tower crane system, the present application proposes to first predict the tracked trajectory points forward for a period of time through preview, and determine the multiple trajectory points obtained after preview. Further, the predicted trajectory points corresponding to the multiple trajectory points are predicted based on the control quantities of the multiple trajectory points, and the objective function is constructed based on the position deviation between the predicted trajectory points and the trajectory points in the actual target trajectory. The objective function is solved by iterative optimization to obtain the target control quantity for controlling the operation of the hook. On the one hand, since the target control quantity is obtained based on the position deviation, the position deviation is minimized after the hook is in operation. On the other hand, compared with the traditional solution of constructing a prediction model, the solution of constructing the objective function and solving the objective function through position deviation in the present application is less complex and easy to implement.
[0099] Before solving the target control amount of the hook operation, it is necessary to preview the trajectory first. During the preview process, the preview time is a key parameter that affects trajectory tracking. If the preview time is too long, the distance between the second trajectory point obtained after the preview and the current first trajectory point will be too large, so that the control amount is large and the tracked trajectory point will be ahead; conversely, if the preview time is too short, the control amount is small, which will result in the inability to accurately reach the trajectory point. Based on this, the present application proposes that a genetic optimization algorithm can be used to construct a fitness function based on the current first trajectory point to determine the appropriate preview time.
[0100] Genetic optimization algorithm is an adaptive global optimization probability search algorithm. The basic idea of genetic algorithm can be expressed by borrowing the terminology of biological genetics: genetic optimization algorithm starts with a population representing the potential solution set of the problem, which is composed of a certain number of individuals encoded by genes. Each individual is actually an entity with characteristics of chromosomes. As the main carrier of genetic material, chromosomes are a collection of multiple genes. Their internal expression (i.e. genotype) is a certain gene combination, which determines the external expression (i.e. trait) of individuals. Therefore, at the beginning, it is necessary to realize the mapping from phenotype to genotype, i.e. encoding. After the first generation of population is generated, according to the principle of "survival of the fittest", better and better individuals are produced from generation to generation. In each generation, individuals are selected according to the fitness of individuals in the problem domain, and combined crossover and mutation are performed with the help of genetic operators to generate a population representing a new solution set. This process will cause the population to be more adapted to the environment than the previous generation, just like natural evolution. The best individuals in the last generation of population can be decoded and used as the approximate optimal solution to the problem. As an example, the implementation process of genetic optimization algorithm can be seen in Figure 4 As shown below. Figure 4 Introduce the implementation process of genetic optimization algorithm:
[0101] Step 1: Initialization. Set the evolution parameters and randomly generate the initial population.
[0102] Step 2: Calculate the fitness value of each individual in the initial population. Different fitness functions are used for different problems. You can set the corresponding fitness function according to the specific problem scenario and input each individual into the fitness function to obtain the corresponding fitness value.
[0103] Step 3: Determine whether the optimization criteria are met. If so, the evolution ends and the approximate optimal solution is output; if not, the evolution continues.
[0104] Step 4: Selection. A selection algorithm can be pre-set to select excellent individuals from the current population and use them as parents to reproduce the next generation.
[0105] Step 5: Crossover. Apply the crossover operator to the parent population. The crossover operation is the most important genetic operation in the genetic optimization algorithm. Through the crossover operation, a new generation of individuals can be obtained, and the new individuals combine the characteristics of their parent individuals.
[0106] Step 6: Mutation. Apply the mutation operator to the current population. First, randomly select an individual in the population, and then randomly change the data value of the selected individual with a certain probability to obtain a new individual.
[0107] After selection, crossover and mutation operations, a new population will be obtained and the process will return to step 2 until an approximate optimal solution is output.
[0108] In one possible implementation, when a genetic optimization algorithm is used to determine the preview time, a fitness function may be set first. Exemplarily, the position deviation between the current first trajectory point and the trajectory point located after the first trajectory point in the target trajectory may be used as the fitness function. Further, a primary population is generated according to a preset boundary value. Each individual in the primary population has an initially set preview time. Further, the trajectory point corresponding to each individual is determined. Exemplarily, when determining the trajectory point corresponding to each individual, the preview time of each individual may be divided by the fixed duration between any two trajectory points to determine which trajectory point in the future each individual corresponds to.
[0109] Furthermore, the fitness value of the trajectory point corresponding to each individual can be determined based on the position deviation between the trajectory point corresponding to each individual and the first trajectory point. The individuals whose calculated fitness values are less than the set threshold are taken as the parent individuals, and the individuals whose fitness values are not less than the set threshold are eliminated. Furthermore, the crossover operator and mutation operator in the genetic optimization algorithm are used to perform genetic operations on the parent individuals to generate a new population, and the step of calculating the fitness value is returned based on the new population until the number of genetic operations reaches the number threshold, and the preview time corresponding to the optimal individual with the smallest fitness value is output.
[0110] After the preview time is determined, the second trajectory point corresponding to the preview time can be determined, and a plurality of third trajectory points can be further obtained. The plurality of third trajectory points include the second trajectory point and at least one trajectory point in the target trajectory that is located after the second trajectory point. Further, the plurality of third trajectory points are input into the calculation model to determine the target control amount.
[0111] Exemplarily, in the process of determining the target control amount, the calculation model first determines the fourth trajectory points corresponding to the plurality of third trajectory points according to the control amounts of the plurality of third trajectory points. Exemplarily, the calculation model can predict the position that the hook can reach according to the control amount of the third trajectory point, and the predicted position is the fourth trajectory point.
[0112] In some embodiments, when determining the fourth trajectory point corresponding to the third trajectory point, a plurality of fitting functions pre-constructed for different hook loads and different control amount ranges can be obtained, wherein each fitting function is used to characterize the mapping relationship between the control amount and the hook acceleration. For example, taking the tower crane scenario as an example, the hook of the tower crane moves under the control of the motor of the tower crane, and different output powers of the motor can control the hook to move with different accelerations. The output power of the motor is determined based on the output frequency of the controller of the tower crane, and the output frequency of the controller has a fixed mapping relationship with the output power of the motor. Therefore, it can be considered that different output frequencies of the controller can control the hook to move with different accelerations.
[0113] Based on this, the fitting function between the control quantity and the hook acceleration constructed in the tower crane scenario can be expressed as a fitting function between the output frequency of the controller and the acceleration of the hook, that is, a fitting function between the output frequency and the hook acceleration is constructed under different hook loads and different output frequency ranges. When selecting a fitting function, the corresponding target fitting function can be selected from the pre-constructed fitting functions based on the current hook load and the output frequency range to which the first output frequency belongs. Among them, the first output frequency is the output frequency corresponding to the third trajectory point (that is, the control quantity of the third trajectory point in the previous text).
[0114] Further, the first output frequency is input into the target fitting function to obtain the target acceleration corresponding to the first output frequency, and the fourth trajectory point is determined based on the target acceleration. Exemplarily, according to the description in the above embodiment, it can be known that there is a one-to-one correspondence between the plurality of third trajectory points and the plurality of fourth trajectory points. When determining each of the plurality of fourth trajectory points, it is determined according to the output frequency of the third trajectory point corresponding to each fourth trajectory point. The determination process of the fourth trajectory point A is taken as an example for description below:
[0115] The target acceleration corresponding to the output frequency of the third trajectory point A is determined based on the pre-constructed fitting function. The third trajectory point A is a third trajectory point corresponding to the fourth trajectory point A among the plurality of third trajectory points.
[0116] Further, the fourth trajectory point A is calculated according to the fourth trajectory point B, the fixed time interval between any two adjacent trajectory points in the target trajectory, the target acceleration and the current speed of the hook. For example, the fourth trajectory point B + fixed time interval * speed + 1 / 2 * target acceleration 2 *Fixed duration=fourth track point A. The fourth track point B is the fourth track point preceding the fourth track point A, and the fourth track point preceding the first fourth track point among the plurality of fourth track points is the first track point.
[0117] Below, the process of constructing a fitting function between the output frequency of the controller and the acceleration of the hook is introduced. The process of establishing a dynamic model in the traditional solution is complicated, and the modeling process is difficult to implement because the system parameters such as the inverter parameters, motor parameters, and trolley friction cannot be accurately measured. Based on this, the present application proposes to construct a fitting function based on historical data to reduce complexity. The present application proposes to ignore friction and air resistance when constructing a fitting function, ignore the influence of the roll, pitch and deformation of the tower crane, ignore the coupling relationship between the rotation, amplitude change and lifting of the tower crane, treat the load, hook and trolley as point masses, treat the tower crane arm as a non-deformable rigid body, and ignore the elastic deformation of the wire rope. The process of constructing a fitting function can be seen in the following steps one to four:
[0118] Step 1: Obtain multiple data sets of historical records under different hook loads.
[0119] Each data group includes an acceleration and an output frequency. For example, the hook load can be divided into three situations: light load, medium load and heavy load, and each situation is analyzed and processed separately.
[0120] Step 2: Cluster the data groups and segment the data based on the slope of the data group distribution trajectory and the order of the polynomial function.
[0121] Exemplarily, after acquiring the data, the data group can be characterized as discretely distributed points in a coordinate system with acceleration as the ordinate and output frequency as the abscissa. Further, the discrete points are clustered, and the present application does not limit the clustering algorithm, such as the mean shift clustering algorithm, the K-Means clustering algorithm, the density-based spatial clustering of applications with noise (DBSCAN), the expectation maximization (EM) clustering algorithm, the agglomerative hierarchical clustering algorithm, etc.
[0122] After clustering, the data set is segmented according to the slope of the curve obtained by combining points in the coordinate system and the order of the function of the curve fitting. The curve slopes and function orders corresponding to data sets in different segments are different.
[0123] Step 3: Perform function fitting for data groups of different segments and determine the fitting function for each segment.
[0124] Optionally, the fitting function may be a high-order polynomial fitting function. Function fitting methods are not limited to: least squares method, Fourier series fitting, sine function fitting, etc. As an example, the expression between acceleration and output frequency obtained after function fitting can be shown in the following formula (1):
[0125]
[0126] Among them, k is any time in the trajectory control process, a k+1 is the acceleration at time k+1, u k is the output frequency at time k. 1 、f 2 、f n They are fitting functions for different segments. The number of segments for rotation, amplitude change and lifting can be different. 1min 、F 1max 、F 2min 、F 2max 、F nmin 、F nmax are the critical values of the output frequency of each segment.
[0127] Step 4: Smooth the boundaries of each segment.
[0128] Based on the above scheme, since fitting the function of the whole will make the function expression complicated, local details will be ignored. Therefore, this application proposes to fit the data after segmentation, which can reduce the function order and improve the calculation rate, while focusing on local details to improve the accuracy of the function, and filter out outliers in the data clustering process to reduce the impact of disturbance errors.
[0129] After determining the plurality of fourth trajectory points based on the pre-constructed fitting function and the control amounts of the plurality of third trajectory points, an objective function for the plurality of control amounts may be further constructed according to the position deviations between the plurality of third trajectory points and the plurality of fourth trajectory points, and the objective function may be solved to obtain the target control amount. As an example, the objective function may refer to the following formula (2):
[0130]
[0131] Among them, J(k) is the objective function value at time k, x ref (k+i) is the trajectory point in the target trajectory at time (k+i), x pre (k+i) is the predicted trajectory point at time (k+i), P is the predicted time domain, q i It is the weight coefficient of the preset state quantity.
[0132] In some embodiments, an objective function may also be constructed based on the changes in the control quantities corresponding to the third trajectory points. For example, an objective function is constructed based on the change between the control quantity corresponding to the third trajectory point A and the control quantity corresponding to the third trajectory point B. The third trajectory point A and the third trajectory point B are two trajectory points among the third trajectory points, and the third trajectory point B is the third trajectory point before the third trajectory point A. As an example, the objective function with the control quantity change added can be referred to in the following formula (3):
[0133]
[0134] Among them, J(k) is the objective function value at time k, x ref (k+i) is the trajectory point in the target trajectory at time (k+i), x pre (k+i) is the predicted trajectory point at time (k+i), Δu(k+j) is the change between the control amount at time (k+j) and the control amount at time (k+j-1), P is the prediction time domain, q i is the weight coefficient of the preset state quantity, M is the control time domain, r j is the weighted coefficient of the preset control quantity. Exemplarily, the weighted coefficient of the control quantity and the weighted coefficient of the state quantity can be obtained by dichotomy. Among them, the control time domain M≤prediction time domain P. If the value of the prediction time domain P is too small, the tower crane system will not be able to respond to sudden changes in the trajectory; conversely, if the value of the prediction time domain P is too large, the system will react too slowly to disturbances. Therefore, the present application proposes that the value of the prediction time domain P needs to be greater than the adjustment time of the system response, and the value of the control time domain M can be 10%-20% of P.
[0135] In one possible implementation, constraints may be added during the process of solving the objective function, such as state constraints, control quantity constraints, speed constraints, acceleration constraints, and initial position constraints, etc., to accurately determine the target control quantity.
[0136] In some embodiments, after determining the target control amount, the hook can be controlled to move from the first trajectory point to the second trajectory point according to the target control amount, and the duration of the controlled movement is the fixed duration between any two adjacent trajectory points, that is, the cycle of trajectory control. For example, after controlling the hook to run, the actual trajectory point reached after the run can be recorded, and based on the deviation between the actual trajectory point reached and the second trajectory point, the predicted trajectory point can be corrected in the next control cycle to achieve rolling optimization of the predicted trajectory point.
[0137] For example, the actual trajectory point reached after each control of the hook movement can be obtained by the sensor of the tower crane. As an example, see Figure 5, is a schematic diagram of the architecture of a tower crane system provided in an embodiment of the present application, which specifically includes: a controller, a frequency converter, a motor, an actuator and a sensor. Among them, the controller is used to perform operations such as trajectory planning and trajectory control, Figure 5 What is not shown is that the controller may include an industrial computer of a tower crane, a programmable logic controller (PLC) under the tower, and a PLC controller on the tower. The sensor is used to collect the actual operating status of the hook and report it to the controller, so that the controller can correct the current trajectory control according to the operating status collected by the sensor in real time. Below, the correction of the predicted trajectory point obtained by predicting the k moment at the k-1 moment and the trajectory point actually reached at the k moment is introduced as an example:
[0138] Exemplarily, the predicted trajectory point predicted at time k at time k-1, the trajectory point actually reached at time k, and the target control amount required to reach the trajectory point corresponding to time k determined at time k+1 can be obtained. The various parameters obtained are input into a pre-trained deep learning model, and a correction value is output to correct the predicted trajectory point at time k+1 obtained by predicting time k+1. When performing trajectory control at time k, after predicting the predicted trajectory point at time k+1, the correction value can be used to compensate for the predicted trajectory point at time k+1, and then trajectory control can be performed based on the corrected predicted trajectory point at time k+1. Exemplarily, the corrected predicted trajectory point at time k+1 can be determined using the following formula (4):
[0139] x pre (k+1)=x k+1 +f(x pre (k), x fb (k), u(k)) Formula (4)
[0140] Among them, x pre (k+1) is the corrected predicted trajectory point at time k+1, x k+1 is the predicted trajectory point at time k+1, x pre (k) is the predicted trajectory point at time k, x fb (k) is the actual arrival trajectory point at time k, u(k) is the target control value at time k, and f is the pre-trained deep learning model.
[0141] It should be noted that the present application does not limit the model of the output correction value. It can be a deep learning model, a convolutional neural network model, a stacked autoencoder network model, etc. For the sake of ease of description, the deep learning model is still used as an example for introduction.
[0142] As an example, see Figure 6 , is a schematic diagram of a correction effect provided in an embodiment of the present application. Figure 6 As shown, curve 1 is the trajectory after control at time (k-1). Without correction, the hook will run along the trajectory shown in curve 1. Point A is the trajectory point actually reached at time k, and point B is the predicted trajectory point obtained by predicting the trajectory point at time k at time k-1. The distance between point A and point B is the prediction error at time k-1. At time k, point A, point B, and the target control amount determined at time k-1 are input into the deep learning model to obtain the correction value. Furthermore, at time k, the correction value is used to compensate and correct the predicted trajectory point at time k+1 before control is executed. As shown in FIG. Figure 6 As shown in the figure, curve 2 is the trajectory before correction at time k, where point C is the predicted trajectory point at time k+1 before correction. Curve 3 is the trajectory after correction at time k, where point D is the predicted trajectory point at time k+1 after correction. The distance between point C and point D is the correction value output by the deep learning model.
[0143] Optionally, the deep learning model can be trained by using the actual position and predicted position at each historical moment and the target control amount at each moment as model input, and using the position deviation at each moment as model output. The following is a detailed introduction to the training process of the deep learning model:
[0144] Step 1: Collect data offline.
[0145] Specifically, the actual arrival trajectory points and predicted arrival trajectory points at each moment in the past are collected.
[0146] Step 2: Train the model.
[0147] For example, a training sample can be created first: the predicted trajectory point at time k predicted at time k-1, the actual trajectory point at time k, and the target control amount at time k-1 are used as the model input samples in the training sample, and the deviation between the predicted trajectory point at time k+1 predicted at time k and the actual trajectory point at time k+1 is used as the model output sample in the training sample. Further, the model input sample is input into the model, and the loss function value of the model is calculated based on the difference between the output result and the model output sample, and the various parameters of the model are optimized based on the loss function value to obtain the trained model.
[0148] Step 3: Offline verification.
[0149] For example, after the model is obtained, a validation sample set may be used to validate and evaluate the model to determine whether the model can be put into use.
[0150] Optionally, the methods described in the above embodiments may be executed by a controller of a tower crane, or by a specific processing module in the controller. Figure 7 , is a schematic diagram of the architecture of a trajectory control system provided in an embodiment of the present application, including: a trajectory processing module, a model prediction module, an execution module, and a predicted position correction module, wherein the model prediction module includes a prediction unit and a function solving unit.
[0151] exist Figure 7 In the embodiment, the trajectory processing module is used to obtain each trajectory point included in the real-time planned target trajectory. Further, the trajectory planning module is used to preview the target trajectory based on the current first trajectory point to obtain multiple third trajectory points. Among them, the process of determining the preview time and the preview process can be referred to the introduction in the above embodiment, which will not be repeated here. Furthermore, the trajectory planning module outputs the determined multiple third trajectory points to the model prediction module.
[0152] The model prediction module receives multiple third trajectory points and determines multiple control quantities corresponding to the multiple third trajectory points. The prediction unit in the model prediction module is used to predict multiple fourth trajectory points corresponding to the multiple third trajectory points based on the multiple control quantities. The prediction process is implemented by a pre-constructed fitting function. The specific prediction process can also be referred to the introduction in the above embodiment, which will not be repeated here. Exemplarily, after predicting the multiple fourth trajectory points, the prediction unit can also transmit the multiple fourth trajectory points to the predicted position correction module.
[0153] The function solving unit in the model prediction module is used to construct an objective function based on the position deviations between the plurality of third trajectory points and the plurality of fourth trajectory points, and the variation between adjacent control quantities in the plurality of control quantities, and solve the objective function to obtain the target control quantity. Exemplarily, after obtaining the target control quantity, the prediction unit in the model prediction module can also store the target control quantity for subsequent optimization of the pre-constructed fitting function.
[0154] After obtaining the target control amount, the model prediction module sends the target control amount to the execution module and the predicted position correction module.
[0155] The execution module may include the motor described in the above embodiment, and use the received target control amount to control the operation of the hook, and the operation time is the fixed time interval between any two trajectory points, that is, the fixed cycle of trajectory control. The execution module also includes the sensor described in the above embodiment, which is used to transmit the trajectory point actually reached by the hook to the predicted position correction module after the hook runs for a fixed time.
[0156] The predicted position correction module receives the target control amount and multiple predicted fourth trajectory points from the model prediction module, as well as the actual arrived trajectory points from the execution module, and is used to obtain a correction value based on the received parameters and a pre-trained deep learning model, and transmit the correction value to the model prediction module, so that the model prediction module can correct the predicted trajectory points at the next moment based on the correction value.
[0157] Based on the same concept as the above method, see Figure 8 , is a running track control device 800 provided in an embodiment of the present application, the device 800 is used to implement each step in the above method embodiment, and in order to avoid repetition, it is not described here. The device 800 includes: an acquisition unit 801 and a processing unit 802.
[0158] The processing unit 802 is configured to preview the target trajectory at the first trajectory point to determine a second trajectory point; wherein the target trajectory is a trajectory pre-planned for the upper working device of the working machine, and the first trajectory point and the second trajectory point are two different trajectory points in the target trajectory;
[0159] An acquiring unit 801 is configured to acquire a plurality of third trajectory points in the target trajectory, wherein the plurality of third trajectory points include the second trajectory point and at least one trajectory point after the second trajectory point;
[0160] The processing unit 802 is further configured to input the plurality of third trajectory points into a preset calculation model to obtain a target control amount for the upper load working device to reach the second trajectory point from the first trajectory point; wherein the calculation model is configured to determine a plurality of control amounts corresponding to the plurality of third trajectory points respectively, predict a plurality of fourth trajectory points corresponding to the plurality of third trajectory points respectively based on the plurality of control amounts, construct a target function for the plurality of control amounts based on the plurality of third trajectory points and the plurality of fourth trajectory points, and obtain the target control amount by solving the target function;
[0161] The processing unit 802 is also used to control the operation of the upper loading operation device using the target control amount.
[0162] In one or more possible embodiments, the calculation model is further used to construct the objective function based on changes in adjacent control quantities among the multiple control quantities.
[0163] In one or more possible embodiments, the acquisition unit 801 is further used to acquire a plurality of fitting functions pre-constructed for different upper-body working device loads and different control amount ranges; wherein any one of the fitting functions is used to characterize the mapping relationship between the control amount and the acceleration of the upper-body working device;
[0164] The processing unit 802 is further configured to select a target fitting function from the plurality of fitting functions based on the current load of the upper load working device and the control amount range to which the first control amount belongs; wherein the first control amount is the control amount corresponding to the third trajectory point;
[0165] The processing unit 802 is further configured to determine a target acceleration corresponding to the first control amount by using the target fitting function;
[0166] The processing unit 802 is further configured to determine the fourth trajectory point based on the target acceleration.
[0167] In one or more possible embodiments, the acquisition unit 801 is further used to acquire multiple data groups of historical records under the load of the first upper loading working device; each data group includes an acceleration and a control amount;
[0168] The processing unit 802 is further used to segment the multiple data groups into multiple segments according to the distribution of the multiple data groups in a coordinate system with acceleration as the ordinate and control amount as the abscissa; wherein the distribution is used to characterize the slope of a curve obtained by combining points corresponding to the multiple data groups in the coordinate system, and the order of a function used to characterize the curve fitting; different segments include different slopes and orders corresponding to data groups;
[0169] The processing unit 802 is also used to perform function fitting on the data of the first segment to determine the fitting function corresponding to the load of the first upper working device and the first control amount range; the first segment is any one of the multiple segments, and the first control amount range is determined based on the control amount in the data group included in the first segment.
[0170] In one or more possible embodiments, the processing unit 802 is specifically configured to:
[0171] Based on a genetic optimization algorithm, a position deviation between the first trajectory point and a trajectory point in the target trajectory that is located after the first trajectory point is used as a fitness function to determine a preview time;
[0172] Determine the second trajectory point at a second moment according to a first moment corresponding to the first trajectory point and the preview time.
[0173] In one or more possible embodiments, the processing unit 802 is specifically configured to:
[0174] Generate an initial population based on a preset boundary value; each individual in the initial population has an initially set preview time;
[0175] Calculate the fitness value according to the distance between the trajectory point corresponding to each individual and the first trajectory point, and take the individuals in the primary population whose fitness value is less than a set threshold as the parent individuals;
[0176] The crossover operator and mutation operator in the genetic optimization algorithm are used to perform genetic operations on the parent individuals to generate a new population, and the step of calculating the fitness value is returned based on the new population until the number of genetic operations reaches a threshold number, and the preview time corresponding to the optimal individual is output; the optimal individual is the individual with the smallest fitness value.
[0177] In one or more possible embodiments, the acquisition unit 801 is further configured to acquire a predicted trajectory point obtained when the first trajectory point is predicted at a fifth trajectory point; the fifth trajectory point is a previous trajectory point of the first trajectory point;
[0178] The processing unit 802 is further configured to correct the fourth trajectory point based on the predicted trajectory point and the first trajectory point.
[0179] In one or more possible embodiments, the processing unit 802 is specifically configured to:
[0180] The second control amount determined at the fifth trajectory point is acquired by the acquisition unit 801; the second control amount is a control amount for controlling the upper load operation device to reach the predicted trajectory point from the fifth trajectory point;
[0181] Inputting the second control amount, the predicted trajectory point and the first trajectory point into a pre-trained deep learning model, and outputting a correction value for correcting the fourth trajectory point; wherein the deep learning model is trained using historical data of the operation of the upper loading operation device;
[0182] The correction value is compensated to the fourth trajectory point to obtain the corrected fourth trajectory point.
[0183] Fig. 9 The electronic device 900 provided in the embodiment of the present application is shown in the structural diagram. The electronic device 900 in the embodiment of the present application may further include a communication interface 903, which is, for example, a network port, through which the electronic device can transmit data.
[0184] In the embodiment of the present application, the memory 902 stores instructions that can be executed by at least one controller 901. The at least one controller 901 can be used to execute each step in the above method by executing the instructions stored in the memory 902. For example, the controller 901 can implement the above Figure 8 The functions of each unit in it.
[0185] Among them, the controller 901 is the control center of the electronic device, which can use various interfaces and lines to connect various parts of the entire electronic device, by running or executing instructions stored in the memory 902 and calling data stored in the memory 902. Optionally, the controller 901 may include one or more processing units, and the controller 901 may integrate an application controller and a modem controller, wherein the application controller mainly processes the operating system and application programs, and the modem controller mainly processes wireless communications. It is understandable that the above-mentioned modem controller may not be integrated into the controller 901. In some embodiments, the controller 901 and the memory 902 may be implemented on the same chip, and in some embodiments, they may also be implemented separately on independent chips.
[0186] The controller 901 may be a general controller, such as a central processing unit (CPU), a digital signal controller, an application-specific integrated circuit, a field programmable gate array or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component, and may implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present application. The general controller may be a microcontroller or any conventional controller, etc. The steps disclosed in the embodiments of the present application may be directly executed by a hardware controller, or may be executed by a combination of hardware and software modules in the controller.
[0187] The memory 902 is a non-volatile computer-readable storage medium that can be used to store non-volatile software programs, non-volatile computer executable programs and modules. The memory 902 may include at least one type of storage medium, such as a flash memory, a hard disk, a multimedia card, a card-type memory, a random access memory (Random Access Memory, RAM), a static random access memory (Static Random Access Memory, SRAM), a programmable read-only memory (Programmable Read Only Memory, PROM), a read-only memory (Read Only Memory, ROM), an electrically erasable programmable read-only memory (Electrically Erasable Programmable Read-Only Memory, EEPROM), a magnetic memory, a disk, an optical disk, etc. The memory 902 is any other medium that can be used to carry or store a desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 902 in the embodiment of the present application can also be a circuit or any other device that can realize a storage function, for storing program instructions and / or data.
[0188] By designing and programming the controller 901, for example, the code corresponding to the method introduced in the above embodiment can be solidified into the chip, so that the chip can execute the steps of the above method when running. How to design and program the controller 901 is a technology well known to those skilled in the art and will not be repeated here.
[0189] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0190] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a controller of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the controller of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0191] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0192] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0193] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications falling within the scope of the present application.
[0194] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the spirit and scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A method for controlling a running trajectory, characterized in that: The method is applied to a working machine, comprising: Previewing the target trajectory at the first trajectory point to determine a second trajectory point; wherein the target trajectory is a trajectory pre-planned for the upper working device of the working machine, and the first trajectory point and the second trajectory point are two different trajectory points in the target trajectory; Acquire a plurality of third trajectory points in the target trajectory, wherein the plurality of third trajectory points include the second trajectory point and at least one trajectory point after the second trajectory point; The plurality of third trajectory points are input into a preset calculation model to obtain a target control amount for the upper load working device to reach the second trajectory point from the first trajectory point; wherein the calculation model is used to determine a plurality of control amounts corresponding to the plurality of third trajectory points respectively, predict a plurality of fourth trajectory points corresponding to the plurality of third trajectory points respectively based on the plurality of control amounts, construct an objective function about the plurality of control amounts based on the plurality of third trajectory points and the plurality of fourth trajectory points, and obtain the target control amount by solving the objective function; The target control amount is used to control the operation of the upper loading working device.
2. The method according to claim 1, characterized in that: The calculation model is also used to construct the objective function based on the change amount of adjacent control quantities in the multiple control quantities.
3. The method according to claim 1 or 2, characterized in that: The fourth trajectory point corresponding to the third trajectory point is determined in the following manner: Acquire multiple fitting functions pre-constructed for different upper-body working device loads and different control amount ranges; wherein any one of the fitting functions is used to characterize the mapping relationship between the control amount and the acceleration of the upper-body working device; Selecting a target fitting function from the plurality of fitting functions based on the current load of the upper attachment working device and the control amount range to which the first control amount belongs; wherein the first control amount is the control amount corresponding to the third trajectory point; Determining a target acceleration corresponding to the first control amount by using the target fitting function; The fourth trajectory point is determined based on the target acceleration.
4. The method according to claim 3, characterized in that The following method is used to construct various fitting functions between the acceleration of the upper installation working device and the control amount under the load of the first upper installation working device: Acquire multiple data groups of historical records under the load of the first upper loading working device; each data group includes an acceleration and a control variable; According to the distribution of the multiple data groups in a coordinate system with acceleration as the ordinate and control amount as the abscissa, the multiple data groups are segmented to obtain multiple segments; wherein the distribution is used to characterize the slope of a curve obtained by combining points corresponding to the multiple data groups in the coordinate system, and the order of a function used to characterize the curve fitting; different segments include different slopes and orders corresponding to data groups; Function fitting is performed on the data of the first segment to determine the fitting function corresponding to the load of the first upper working device and the first control amount range; the first segment is any one of the multiple segments, and the first control amount range is determined based on the control amount in the data group included in the first segment.
5. The method according to claim 1 or 2, characterized in that: The step of previewing the target trajectory at the first trajectory point to determine the second trajectory point specifically includes: Based on a genetic optimization algorithm, a position deviation between the first trajectory point and a trajectory point in the target trajectory that is located after the first trajectory point is used as a fitness function to determine a preview time; Determine the second trajectory point at a second moment according to a first moment corresponding to the first trajectory point and the preview time.
6. The method according to claim 5, characterized in that The method of determining the preview time based on the genetic optimization algorithm by using the deviation between the actual position and the planned position of the trajectory point located after the first trajectory point in the target trajectory as a fitness function specifically includes: Generate an initial population based on a preset boundary value; each individual in the initial population has an initially set preview time; Calculate the fitness value according to the distance between the trajectory point corresponding to each individual and the first trajectory point, and take the individuals in the primary population whose fitness value is less than a set threshold as the parent individuals; The crossover operator and mutation operator in the genetic optimization algorithm are used to perform genetic operations on the parent individuals to generate a new population, and the step of calculating the fitness value is returned based on the new population until the number of genetic operations reaches a threshold number, and the preview time corresponding to the optimal individual is output; the optimal individual is the individual with the smallest fitness value.
7. The method according to claim 3, characterized in that After determining the fourth trajectory point, the method further includes: Acquire a predicted trajectory point obtained when predicting the first trajectory point at a fifth trajectory point; the fifth trajectory point is a trajectory point previous to the first trajectory point; The fourth trajectory point is corrected based on the predicted trajectory point and the first trajectory point.
8. The method according to claim 7, characterized in that The correcting the fourth trajectory point based on the predicted trajectory point and the first trajectory point specifically includes: Acquire a second control amount determined at the fifth trajectory point; the second control amount is a control amount for controlling the upper load working device to reach the predicted trajectory point from the fifth trajectory point; Inputting the second control amount, the predicted trajectory point and the first trajectory point into a pre-trained deep learning model, and outputting a correction value for correcting the fourth trajectory point; wherein the deep learning model is trained using historical data of the operation of the upper loading operation device; The correction value is compensated to the fourth trajectory point to obtain the corrected fourth trajectory point.
9. A control device for a running trajectory, characterized in that: The device is a working machine, or the device is applied to the working machine, and the device includes: A processing unit, configured to preview a target trajectory at a first trajectory point to determine a second trajectory point; wherein the target trajectory is a trajectory pre-planned for an upper working device of the working machine, and the first trajectory point and the second trajectory point are two different trajectory points in the target trajectory; an acquisition unit, configured to acquire a plurality of third trajectory points in the target trajectory, wherein the plurality of third trajectory points include the second trajectory point and at least one trajectory point after the second trajectory point; The processing unit is further used to input the plurality of third trajectory points into a preset calculation model to obtain a target control amount for the upper load working device to reach the second trajectory point from the first trajectory point; wherein the calculation model is used to determine a plurality of control amounts corresponding to the plurality of third trajectory points respectively, predict a plurality of fourth trajectory points corresponding to the plurality of third trajectory points respectively based on the plurality of control amounts, construct an objective function about the plurality of control amounts based on the plurality of third trajectory points and the plurality of fourth trajectory points, and obtain the target control amount by solving the objective function; The processing unit is also used to control the operation of the upper loading operation device by using the target control amount.
10. An electronic device, characterized in that: The electronic device comprises a controller and a memory, The memory is used to store computer programs or instructions; The controller is used to execute the computer program or instructions in the memory so that the method according to any one of claims 1 to 8 is performed.
11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer-executable instructions, and when the computer-executable instructions are called by a computer, the computer executes the method according to any one of claims 1 to 8.
12. A computer program product, characterized in that The computer program product comprises: a computer program code, and when the computer program code is run on a computer, the computer is caused to execute the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Unmanned driving equipment trajectory planning method and device, electronic equipment and storage medium
CN111121777A
Control system and method of tower crane
CN115072568A
Safe trajectory planning and control method for container port machine lifting appliance in shortest time
CN117208770A
Vehicle tracking control method and system, storage medium and unmanned vehicle
CN118466317A
Cited By
Flight trajectory prediction method, system and device and medium
CN120633486A
Operation trajectory control method and apparatus, device, and storage medium
WO2026052017A1
