Method for actuating an electric drive motor of a hydraulic system
The hybrid feedforward control method using an inverse physical plant model and machine learning-based model addresses the challenge of precise trajectory tracking in hydraulic systems, reducing computing power and manual intervention, and adapting to system changes.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- ROBERT BOSCH GMBH
- Filing Date
- 2025-12-02
- Publication Date
- 2026-06-25
AI Technical Summary
Existing hydraulic systems in industrial manufacturing facilities face challenges in precisely tracking desired trajectories without manual adjustments, as conventional control methods are inadequate for handling complex physical effects and disturbances, requiring significant computing power and time-consuming manual tuning.
A hybrid feedforward control method combining an inverse physical plant model with a machine learning-based model to determine manipulated variables, allowing for precise trajectory tracking with reduced computing power and adaptive system tuning.
Enables precise tracking of desired trajectories in hydraulic systems with minimal computing resources, eliminating the need for manual adjustments and adapting to specific system properties, thus enhancing automation in industrial applications.
Smart Images

Figure EP2025085102_25062026_PF_FP_ABST
Abstract
Description
[0001] R.416795
[0002] Method for controlling an electric drive of a hydraulic system
[0003] Description
[0004] The present invention relates to a method for controlling an electric drive of a hydraulic system, as well as a computing unit and a computer program for carrying out the method.
[0005] Background of the invention
[0006] Industrial manufacturing facilities may employ machines equipped with a hydraulic system or hydraulic drive system. This system may include, for example, a hydraulic actuator (hydraulic cylinder or hydraulic motor) used to move workpieces or to move or drive a tool. Such hydraulic systems may also incorporate an electric drive that powers a component influencing or controlling the flow of hydraulic fluid within the system. The control of the hydraulic system, and particularly the electric drive, is largely automated in industrial manufacturing facilities.
[0007] Disclosure of the invention
[0008] According to the invention, a method for controlling an electric drive of a hydraulic system, as well as a computing unit and a computer program for carrying out the method, are proposed, comprising the features of the independent claims. Advantageous embodiments are the subject of the dependent claims and the following description.
[0009] The invention relates to a hydraulic system with an electric drive controlled by a manipulated variable, which drives the movement of a component that causes and / or influences a flow or volumetric flow rate of a hydraulic fluid. To control the drive by a control system that includes a feedforward algorithm (or feedforward control), manipulated values for the manipulated variable are determined in order to control a controlled variable of the hydraulic system according to a target trajectory.
[0010] Page 1 of 24 R.416795, wherein an inverse physical plant model, included in the feedforward control algorithm, determines first values for the manipulated variable from the target trajectory values, and a machine learning-based model, also included in the feedforward control algorithm, determines second values for the manipulated variable from input values that include the first values and the target trajectory values. The manipulated variable values used to control the electric drive are determined as a function of the second values. They can, for example, be equal to the second values (i.e., an identity function) or determined according to another function of the second values (e.g., as a sum with other values, etc.).
[0011] The proposed hybrid feedforward control, combining an inverse physical plant model with a machine learning-based model, enables more precise tracking of the desired trajectory. This is particularly advantageous for hydraulic systems used in industrial manufacturing plants (so-called industrial hydraulics), as these are typically controlled automatically (e.g., by specifying desired trajectories), thus eliminating the need for manual adjustments by a human operator. Relatively little computing power is required because, due to the addition of the machine learning-based model, an inverse physical plant model can be used, which, depending on the available computing power, does not fully model all physical effects or subsystems. The machine learning-based model requires less processing power during evaluation (i.e.,Interference) typically requires little computing power. Furthermore, the machine learning-based model can be adapted to specific properties of the hydraulic system through training, so that no time-consuming manual adjustment of the system is necessary.
[0012] The electric drive can be a linear drive, i.e., a drive that powers a linear motion of the component, or a rotary drive, i.e., a drive that powers a rotary motion of the component. An example of a linear electric drive is an electromagnet that causes the linear movement or adjustment of a piston or slide (as a component) in a control valve (directional control valve), such as a proportional valve or electro-proportional valve. An example of a rotary electric drive is an electric machine that drives or is coupled to a hydraulic machine or a conveyor component (as a component). In the case of a
[0013] Page 2 of 24 R.416795 In a linear drive, the manipulated variable is, for example, the magnitude of an electric current or the level of an electric voltage applied to an electromagnet of the linear drive. In the case of a rotary drive, i.e., an electric machine, the manipulated variable can be, for example, a desired torque, from which a controller (processing unit) of the electric machine, such as an inverter controller, determines the voltages to be applied to the windings of the electric machine in order to achieve the torque. Rotational speed is also conceivable as a manipulated variable for a rotary electric drive.
[0014] In addition to the electric drive and the component, and optionally an element in which the component is located (e.g., a control valve whose piston is the component), the hydraulic system generally includes one or more further elements, in particular at least one hydraulic consumer (i.e., at least one hydraulic cylinder and / or at least one hydraulic motor) and / or a reservoir for hydraulic fluid and / or hydraulic lines or channels and / or a hydraulic accumulator or reservoir. The movement of the component, driven by the electric drive, causes and / or influences the flow of hydraulic fluid to and / or from this one or these elements. For example, a control valve can influence or control the flow of hydraulic fluid to a hydraulic cylinder or a hydraulic motor by adjusting its piston. A hydraulic machine can, for example,The flow rate of pressure medium (e.g., from a tank into a pressure line of the hydraulic system, which is connected to hydraulic consumers, possibly via one or more valves) is achieved by appropriately driving the hydraulic machine with an electric motor.
[0015] The quantity to be controlled is a quantity that can be measured in the hydraulic system (and, if training data is recorded or a controller is used in addition to feedforward control, actually measured) or a quantity that can be calculated from measurable quantities, which is directly (e.g., position of the piston of a control valve) or indirectly (e.g., movement of a hydraulic cylinder supplied with pressure medium via the control valve) influenced by the component or its movement or position.
[0016] The variable to be controlled can be, for example, one of the following (although other variables are not excluded): the position of the piston of a hydraulic cylinder, a
[0017] Page 3 of 24 R.416795
[0018] Speed of the piston of a hydraulic cylinder, acceleration of the piston of a hydraulic cylinder, pressure (of the hydraulic medium) in the hydraulic system, pressure (so-called pump pressure) at a pressure port of a hydraulic machine, in particular a hydraulic pump, rotational speed of a hydraulic machine, swivel angle of a variable-speed hydraulic machine, flow rate of a hydraulic machine (in the case of a constant-speed machine determined from the rotational speed, in the case of a variable-speed hydraulic machine determined from swivel angle and rotational speed), in particular taking into account leakage, position of a piston or spool of a control valve (i.e. a directional control valve), speed of a piston or spool of a control valve (i.e. a directional control valve), acceleration of a piston or spool of a control valve (i.e. a directional control valve), current through windings of an electromagnet, through which the piston or spool moves.The movement of a control valve's spool (i.e., a directional control valve), the rotational speed of a hydraulic motor, and the torque generated by a hydraulic motor are all relevant factors. The hydraulic cylinder and / or the hydraulic motor are hydraulic consumers integrated into the hydraulic system and / or supplied with hydraulic fluid by the hydraulic system.
[0019] In a control valve, the variable to be controlled can be, for example, the position of the piston or the strength of the electric current flowing through the electromagnet. If a hydraulic cylinder is supplied with hydraulic fluid via the control valve, the variable to be controlled can be the position and / or speed of the cylinder piston. Furthermore, if the hydraulic cylinder is an actuator of a variable displacement hydraulic machine (i.e., a hydraulic machine with adjustable displacement or swivel angle), the variable to be controlled can also be the swivel angle or the pressure (pump pressure) of the hydraulic fluid delivered by the hydraulic machine (e.g., measured at a pressure outlet).
[0020] In a hydraulic system where the electric drive powers a hydraulic machine or hydraulic pump, the variable to be controlled can be, for example, the pressure (pump pressure) of the hydraulic fluid at a pressure port of the hydraulic machine. If a hydraulic cylinder is supplied with hydraulic fluid directly from the electrically driven hydraulic machine (without an intermediate control valve), the variable to be controlled can be, for example, the position or speed of the cylinder piston. The latter can be the case, for instance, with a so-called compact axis, i.e., a closed hydraulic system.
[0021] Page 4 of 24 R.416795 in which the chambers of a hydraulic cylinder are connected to the pressure ports of the hydraulic machine (which in particular has a constant displacement) and the cylinder piston is moved in different directions depending on the direction of rotation of the hydraulic machine or the electric drive, wherein in the event that the two chambers of the hydraulic cylinder have different effective cross-sections, a compensating reservoir for pressure medium (hydraulic pressure accumulator) may be provided.
[0022] The formulation that the control values for the manipulated variable are determined as a function of the second values refers in particular to the fact that in addition to the feedforward control, a controller may be provided in the control system (see below) which reduces any remaining control deviation to zero and determines third values for the manipulated variable, which can be added to the second values.
[0023] The machine learning-based model is in particular a locally linear model (LoLiMot model, i.e., a "tree" of local linear models) or a Gaussian process model.
[0024] The target trajectory values of the target trajectory include, in particular, a time course of target values for the quantity to be controlled and a time course of derivative values for one or more time derivatives up to a highest order (of the time derivatives) of the time course of the target values, wherein the highest order is in particular equal to an order of the inverse physical system model.
[0025] The term "trajectory" or "target trajectory" refers to a desired temporal profile or target profile of the controlled variable. The target trajectory is defined by a temporal sequence of "target trajectory values." These target trajectory values can include values for the controlled variable itself, referred to as "target values," and values representing time derivatives of the target trajectory for the controlled variable, referred to as "derivative values." In other words, the target trajectory values comprise a temporal sequence of target values (for the controlled variable) and one or more temporal sequences of derivative values (for time derivatives of the controlled variable, up to a highest derivative).
[0026] Page 5 of 24 R.416795
[0027] According to one embodiment, the target trajectory values are determined from a target value for the controlled variable by a filter, wherein the filter is, in particular, a low-pass filter whose order is one higher than the highest order (of the time derivatives of the target trajectory), or includes such a filter. The use of a filter is advantageous because, in the event of a sudden change in the target value with a rate of change for the controlled variable that is technically unfeasible for the hydraulic system, a target trajectory can be obtained that exhibits a rate of change that is technically feasible.
[0028] In one embodiment, the machine learning-based model is trained using training data that includes the target trajectory values and corresponding actual values of the controlled variable. The training is performed to minimize a cost function determined from the deviations (or differences) between the target and measured actual values of the controlled variable. Generally, the training data comprises a large number of data points relating to corresponding target and actual values (i.e., pertaining to the same point in time). The cost function can be, for example, a weighted sum of the differences between corresponding target and actual values, or the magnitude of these differences, such as the mean squared deviation.
[0029] According to one embodiment, the training data is acquired during operation of the hydraulic system as actual target trajectory values and measured actual values of the controlled variable, or the training data is determined using a physical path model that has a higher accuracy than the inverse path model. Training data acquired during operation can, for example, be used to adapt the hydraulic system to a specific application, such as different machining processes. Training data determined with a high-accuracy physical path model can, for example, be used to establish a preset value.
[0030] According to one embodiment, if during the operation of the hydraulic system it is determined that a time average of the magnitude of a control deviation between the setpoints and measured actual values exceeds a predetermined threshold or by more than a predetermined factor greater than 1.0, and in particular greater than 1.5 or greater than 2, exceeds a previous time average of the magnitude of the
[0031] Page 6 of 24 R.416795
[0032] If the control deviation increases, new training data is acquired during operation of the hydraulic system, and the machine learning-based model is trained using this new data. The time-averaged data is calculated over a predetermined period, enabling automatic detection of when retraining is required. Training can be performed using only the newly acquired training data, or it can be combined with existing training data.
[0033] According to an embodiment in which the hydraulic system is used in a (e.g., industrial) manufacturing plant where various machining processes are repeatedly performed, with the same machining steps being carried out using the hydraulic system in each repetition of each machining process, and the machining steps of different machining processes being at least partially different, training data is collected during one or more repetitions of the new machining process after a change to a new one. The machine learning-based model is then trained using this data. For example, during a machining process...A workpiece is subjected to specific machining steps, whereby a hydraulic cylinder (e.g., as part of a compact axis) or hydraulic motor, which moves or drives the workpiece or a tool, is part of the hydraulic system or supplied with hydraulic fluid by it. The same machining process can be carried out for a large number of workpieces, so that this design allows for automatic adaptation to the respective, different machining processes.
[0034] According to one embodiment, the control system further includes a controller that determines third values for the manipulated variable from a control deviation between the setpoints and measured actual values of the controlled quantity, whereby the second and third values are added to determine the manipulated values; or wherein the third values are added to the first values to obtain modified first values that are used as input values for the machine learning-based model (instead of the modified first values determined by the inverse physical plant model); or wherein the setpoint trajectory values are at least partially modified by the third values; or wherein the input values of the machine learning-based model
[0035] Page 7 of 24 R.416795 includes the third values. The controller can compensate for any remaining control deviation, e.g., caused by disturbances.
[0036] In one implementation, the controller is not used during the acquisition of training data, or the third values for the manipulated variable are not considered (or are set to zero). This can improve the adaptation of the machine learning-based model during training.
[0037] A computing unit according to the invention, e.g. a control unit of a hydraulic system or a machine in which the hydraulic system is used, is, in particular in terms of programming, equipped to carry out a method according to the invention.
[0038] Implementing a method according to the invention in the form of a computer program or computer program product with program code for carrying out all method steps is also advantageous, as this incurs particularly low costs, especially if an executing control unit is already available for other tasks. Suitable data carriers for providing the computer program are, in particular, magnetic, optical, and electrical storage media, such as hard drives, flash memory, EEPROMs, DVDs, etc. Downloading a program via computer networks (Internet, intranet, etc.) is also possible.
[0039] Further advantages and embodiments of the invention will become apparent from the description and the accompanying drawing.
[0040] It is understood that the features mentioned above and those to be explained below can be used not only in the combinations specified, but also in other combinations or on their own, without leaving the scope of the present invention.
[0041] The invention is schematically illustrated in the drawing using exemplary embodiments and is described in detail below with reference to the drawing.
[0042] Character description
[0043] Page 8 of 24 R.416795
[0044] Figure 1 shows a control structure according to an exemplary embodiment of the invention.
[0045] Figure 2 shows exemplary quantities that are relevant for the physical modeling of a valve system.
[0046] Figure 3 shows a flowchart of a method according to embodiments of the invention.
[0047] Detailed description of the drawing
[0048] Figure 1 shows a control structure according to an exemplary embodiment of the invention.
[0049] The diagram shows the physical system (controlled system), i.e., the hydraulic system 2, and a control system 4, i.e., a control algorithm, which is implemented, for example, by a computer program running in an electronic controller (processing unit) of the hydraulic system or in a machine into which the hydraulic system is integrated. It is also conceivable that the control algorithm is implemented partially or entirely by hardware switching elements, e.g., on an FPGA (Field-Programmable Gate Array) or an ASIC (Application-Specific Integrated Circuit).
[0050] Hydraulic system 2 has an electric drive that powers the movement of a component which causes and / or influences a flow or volumetric flow rate of hydraulic fluid (hydraulic fluid, in particular hydraulic oil) (not shown in detail). Hydraulic system 2, or rather its electric drive, is controlled by a manipulated variable or by values of the manipulated variable designated as manipulated values 10. In hydraulic system 2, actual values 12 of a controlled quantity are measured or recorded, e.g., as measured values from a suitable sensor or as values derived from such measured values. The electric drive can power a linear or a rotary movement of the component. Hydraulic system 2 can, for example, include a hydraulic machine (as a component) coupled to an electric machine (as an electric drive).In another example, the hydraulic system 2 can include an electromagnetically actuated control valve, such as an electroproportional valve, whose piston
[0051] Page 9 of 24 R.416795 or slide (as a component) is moved by an electromagnet (as an electric drive). In addition to the electric drive and the component, the hydraulic system can generally include other elements, e.g., one or more of the following: at least one hydraulic consumer (hydraulic cylinder, hydraulic motor), a reservoir for hydraulic fluid, a hydraulic accumulator, hydraulic lines and / or hydraulic channels, at least one valve.
[0052] Hydraulic system 2 represents a physical system that can be modeled by a physical system model, e.g., by differential equations or, in the discrete-time case, by difference equations, which describe the physics of the system and are generally nonlinear. The physical system model essentially describes how the actual values 12 of the controlled quantity develop as a function of the given control inputs, whereby additional unknown quantities (which can be internal to the hydraulic system, e.g., friction, or external, e.g., a load moved by the hydraulic system) can be included. Such unknown quantities represent so-called disturbance variables. Depending on which and how many physical effects are considered, the physical system model is more or less accurate.
[0053] For example, for a hydraulic system in which a hydraulic cylinder is directly supplied with hydraulic fluid by a constant displacement hydraulic machine (constant pump) (compact axis), the differential equations of the path model could look like this:
[0054] 1 x = — (pA — d v x + sin a)mg — F L ~) m
[0055] 1 p = —(V G n - Ax - Cip)
[0056] Here, x is the position of the cylinder piston, m is the mass of the cylinder piston, p is the pressure, A is the area of the cylinder piston, d v a friction constant, a an inclination angle of the hydraulic cylinder relative to gravity, g the acceleration due to gravity, C H the hydraulic capacity, which can depend on the position x and the pressure p, V G the displacement of the hydraulic machine (i.e., the volume of hydraulic fluid delivered per revolution), n the rotational speed of the hydraulic machine, C t a leakage coefficient, F La force exerted by a load (the
[0057] Page 10 of 24 R.416795 unknown, i.e., a disturbance variable, may be). Points over a quantity denote time derivatives as usual.
[0058] The control values 10 are determined by the control system 4. The control system 4 is based on setpoint trajectory values 14 of a setpoint trajectory for the controlled quantity (and its derivatives). The term trajectory of a quantity is intended to denote a temporal evolution of the quantity, i.e., a temporal sequence of trajectory values. The setpoint trajectory values include values, referred to as setpoints, for the quantity itself and may include values, referred to as derivative values, for the time derivatives of the quantity, up to a highest order. If the highest order is, for example, two, the setpoint trajectory values include the setpoints, the derivative values of the first time derivative, and the derivative values of the second time derivative. The highest order is determined by the order of the physical system model or the inverse physical system model and should therefore be equal to it.The order of the physical line model or the inverse physical line model is determined by the highest time derivative appearing in it.
[0059] The control system 4 includes a feedforward control or feedforward control algorithm 6 and may include a controller 8, which, in particular, compensates for any remaining control deviation after the feedforward control. The feedforward control algorithm 6 includes an inverse physical plant model 16 and a machine learning-based model 18. The inverse physical plant model 16 is the inverse of the aforementioned physical plant model; that is, it determines values for the manipulated variable from a desired development or profile of the controlled variable, with which the desired profile of the controlled variable is achieved within the framework of the inverse physical plant model, and in particular its accuracy. The inverse physical plant model 16 is hereinafter also referred to simply as the inverse plant model. The values for the manipulated variable determined by the inverse plant model 16 are referred to as the first values 20.The target trajectory values 14 are corresponding input variables of the inverse plant model 16 and the first values 20 for the manipulated variable are output variables of the inverse plant model 16.
[0060] The machine learning-based model 18, hereinafter also referred to simply as the ML model, uses as input variables both the target trajectory values 14 as
[0061] Page 11 of 24 R.416795 also the first values 20 for the manipulated variable. The output of the ML model 18 are values for the manipulated variable, which are referred to as the second values 22 for the manipulated variable. The second values 22 can be used directly as manipulated values 10 or (as shown) values for the manipulated variable determined by the controller 8 can be taken into account.
[0062] The machine learning (ML) model 18 is designed to compensate for errors in the inverse plant model 16. Errors in the inverse plant model 16 occur because, generally, the underlying description using differential or difference equations cannot account for all physical effects (due to the associated increase in complexity), and disturbances that are inherently unknown act on the system. The ML model 18 can be trained accordingly to minimize a cost function based on a control deviation. If the control system 4 includes the controller 8, it can be provided that the controller 8 is not used during the acquisition of training data. The training data includes, for example, the input values of the ML model 18, i.e., the setpoint trajectory values and the initial values, as well as actual values of the controlled variable and / or a control deviation (difference between setpoints and actual values). This data, or rather...Values are acquired at numerous points in time during the operation of the hydraulic system (and while the control system is active) to obtain training data or a training dataset that can be used for training. This acquisition can occur during test operation, for example, to determine an initial training setting for the machine learning (ML) model, and / or during regular operation, for example, to further adapt the ML model's training settings to changing characteristics of the hydraulic system, such as wear or, particularly when the hydraulic system is used in an industrial manufacturing plant (industrial hydraulics), to different, repeatedly performed work processes.
[0063] The ML model 18 is specifically a Gaussian process model or a locally linear model, i.e., a so-called LoLiMot (Local Linear Model tree). Both share the characteristic of localizing the functional dependencies determined based on the training data. This means that, in the present application, the corrections to the initial values (of the inverse path model) essentially affect a small or local area relative to the entire space of possible target trajectory values (i.e., they decrease sharply, for example exponentially, outside of the respective area). This is advantageous because, within these areas, the corrections from the
[0064] Page 12 of 24 R.416795
[0065] Training data are known and encoded in the machine learning model 18. The second value 22 for the manipulated variable within the machine learning model or its training is relatively exactly equal to the manipulated variable actually required for the desired trajectory (e.g., with only a small remaining control deviation). Outside these ranges, the essentially unchanged first values 22 are relatively good manipulated variables (corresponding to the inverse linear model). The terms "within," "outside," and "essentially" refer here to the localization, e.g., using Gaussian functions (LoLiMot) or Gaussian distributions (Gaussian process model), which decrease exponentially with increasing distance from the respective mean.
[0066] Both the LoLiMot and Gaussian process models are familiar to those skilled in the art. In the locally linear model (LoLiMot), an unknown function, whose values are only known at specific points (from the training data), is approximated by linear (or affine) functions. Each of these linear functions is multiplied by its corresponding multidimensional Gaussian function (corresponding to the dimension of the space of input values for the machine learning model), which can be seen as localizing the linear function. The products are then added. The coefficients of the linear functions can be determined from the training data using a weighted least squares method with closed-form formulas (the weighting is based on the Gaussian functions). The dimension of the Gaussian functions and the linear functions corresponds to the dimension of the space, i.e., the number, of input values for the machine learning model.During training, each multidimensional Gaussian function can be assigned a hyperrectangle (i.e., a multidimensional rectangle: two-dimensional rectangle, cuboid, etc.) in this space, where the expected value of the Gaussian function coincides with the center of the hyperrectangle and the standard deviations correspond to the extents of the hyperrectangle in different directions. If a desired maximum error (corresponding to the cost function) is not exceeded during training, one of these hyperrectangles, particularly the one in which a local error is greatest, can be split into two hyperrectangles, and two corresponding Gaussian functions and two corresponding linear functions can be used, so that the approximation can be improved by introducing further linear functions.
[0067] Training LoLiMot requires relatively little computing power, as it uses closed-form expressions and performs certain steps (dividing the hyper-rectangles) according to a known rule. This training can, for example, also
[0068] Page 13 of 24 R.416795 by a control unit of the hydraulic system. Higher accuracy can be achieved with the Gaussian process model because it also takes non-linear approximations into account. The Gaussian process model uses an expectation function and a covariance function. For simplification, it is possible to determine the expectation function and the covariance function using example functions (e.g., as sums of example functions and / or products of example functions), where the example functions are determined, for example, using an inverse physical plant model that has higher accuracy (i.e., takes more physical effects into account) than the inverse plant model used in the control system. This can be done, for example, in a computer system with high computing power. The actual training with the training data then requires relatively little computing power and can, for example,this is done by a control unit of the hydraulic system.
[0069] The controller 8 determines values for the manipulated variable, referred to as third values 26, from a control deviation 24, i.e., differences between the actual values 12 and the corresponding (i.e., pertaining to the corresponding time) setpoints of the desired trajectory. The controller 8 can be designed, for example, as a P controller, a PI controller, or a PID controller, using the usual notations P: proportional, I: integral, and D: differential. The third values 26 can be added (as shown) to the corresponding second values 22 to determine the manipulated values 10. Alternatively, the third values can also be added to the first values 20, so that in the ML model 18, the modified first values are already used as inputs. Another alternative is that the third values can be used to change desired trajectory values, i.e., either the setpoints or the derivative values of a specific derivative. This is, for example,This is useful if the desired trajectory or one of its derivatives, in particular the highest-order derivative, is directly related to the manipulated variable, which can be seen from the differential or difference equations of the inverse path model.
[0070] The figure also shows a module designated as trajectory planning 28 or trajectory module, which is designed to determine the target trajectory or target trajectory values from predefined values 30 for the controlled variable. The predefined values 30 are given, in particular, as a temporal sequence of predefined values, which are determined by a higher-level control system (especially an automatic control system, e.g., in an industrial plant).
[0071] Page 14 of 24 R.416795
[0072] manufacturing plant) and / or based on a control signal generated by a user interface (corresponding to a control instruction from an operator).
[0073] Trajectory planning 28 can be implemented, in particular, by a filter that is a low-pass filter whose order is one greater than the highest order (of the inverse path model or the derivatives of the desired trajectory), or includes such a filter. If the highest order (highest derivative appearing in the inverse path model) is approximately two, a third-order low-pass filter is used. The low-pass filter can, for example, be formed by a number of first-order (PT1) elements arranged in series, equal to the order of the low-pass filter. Additional elements (besides the low-pass filter) can be included in the filter, such as a limiting element that restricts the magnitude of certain signals, such as the highest derivative (e.g., to avoid trajectories that are technically impossible, for example, due to excessively high accelerations required).
[0074] Figure 2 shows exemplary quantities relevant for the physical modeling of a valve or valve system 36, which serves as an example of a hydraulic system 2. The valve system 36 is electromagnetically actuated or adjusted; that is, a piston or slide, which blocks or opens passages for hydraulic fluid depending on the adjustment and changes their cross-section, is either directly adjusted or moved by an electromagnet or, in the case of an electromagnetically pilot-operated hydraulically actuated valve system, indirectly adjusted by hydraulically adjusting the (main) piston with a control pressure, whereby the control pressure (i.e., the hydraulic fluid under it) is provided by a pilot valve that is electromagnetically adjusted.
[0075] Figure 2 illustrates several physical subsystems or effects that can be considered in the modeling and whose dynamics can be described by differential equations, so that the physical path model can be obtained as a system of differential equations. In general, the number of subsystems or effects described and the accuracy of the description (i.e., which physical effects are considered) can vary.
[0076] The input variable, i.e., the manipulated variable, is approximately an electric current with which the electromagnet of the valve system is supplied, with the strength 38 of the current corresponding to the manipulated values.
[0077] Page 15 of 24 R.416795
[0078] 10 (see Figure 1). The output variable, i.e., the variable to be controlled with actual values 12, is approximately the position 40 of the valve (main valve in the case of an electromagnetically controlled hydraulically actuated valve system), but can also be the actual, measured strength of the electric current (where the position can be deduced, for example, via a characteristic map). The output variable, or variable to be controlled, is measured with a sensor.
[0079] One subsystem is the electromagnet, for which the dynamics 42 of the electric current and the dynamics 44 of the magnetic field can be described (by corresponding differential equations). This results, for example, in a force of the electromagnet, which is at least part of the force 46 acting on the valve (main valve or pilot valve valve). Furthermore, the dynamics 48 of the (main) valve, which includes the position 40 of the valve, and, if applicable, the dynamics 50 of the pilot valve valve are illustrated. The position 40 of the valve and its changes, in turn, affect the flow of the hydraulic fluid. Effects of the hydraulic fluid are illustrated, for example, in dynamics 52 for the braking fluid dynamics (friction between the valve and the hydraulic fluid) and in dynamics 54 for the flow of the hydraulic fluid and the resulting force on the valve.These effects of the pressure medium in turn provide part of the force acting on the slide 46.
[0080] The aforementioned dynamics for physical subsystems or effects can, as mentioned, be described by differential equations, which together form a system of differential equations representing a physical path model. From this, the inverse path model can be determined, which, in the given example of the valve system, makes it possible to determine the magnitude of the electric current (as the control value) with which these predetermined values are achieved within the accuracy limits of the physical model, based on given values for the position of the valve and derivatives of this position (as target trajectory values).
[0081] In physical modeling, for example, a different number of physical subsystems and / or effects can be considered, depending on requirements and / or available computing power.
[0082] Page 16 of 24 R.416795
[0083] From the position 40 of the slide, using an opening characteristic 56 of the valve and a flow equation 58 for the valve at a given pressure 60 of the pressure medium, a volume flow rate 62 (or its value, e.g. in liters per minute) for the flow of pressure medium through the valve or valve system can be determined.
[0084] It is also possible to include the opening characteristic 56 and the flow equation 58 in the physical system model. The variable to be controlled can then be, for example, the volume flow rate 62. Furthermore, the speed of movement of a hydraulic consumer (piston speed of a hydraulic cylinder or rotational speed of a hydraulic motor), which is supplied with the volume flow rate of hydraulic fluid and whose speed of movement is therefore directly related to the volume flow rate (apart from leakage), can be used as the variable to be controlled, whereby either a fixed relationship (proportionality) between the volume flow rate and the speed of movement can be used or the dynamics of the hydraulic consumer can be taken into account in the physical system model.
[0085] The following are possible exemplary model elements that can be optionally included or omitted depending on the desired accuracy. Within the scope of valve dynamics: electrical current and / or current controller dynamics, solenoid dynamics, jet and / or flow force dynamics, braking fluid dynamics ("valve under oil"), pilot and / or main valve dynamics (equation of motion). Within the scope of volume flow dynamics: opening characteristic, flow equation. Nonlinearities: dead zone (opening characteristic), valve solenoid hysteresis, hydraulic capacitance, saturation effects, manipulated variable limitations, static friction, flow-induced nonlinearities, temperature dependencies, dead times.
[0086] In general, especially given finite computing power, it is not possible to consider all these physical effects. The proposed additional use of the machine learning model corrects inaccuracies (in the physical plant model or the inverse plant model) and supplements the missing dynamics. The physical model component, i.e., the inverse physical plant model, ensures, in particular, the robustness and explainability of the control system. Likewise, the inverse physical plant model covers all ranges (of the target trajectory values), including ranges...
[0087] Page 17 of 24 R.416795 for which no training data is available and which are not or only inadequately considered in the ML model.
[0088] Figure 3 shows a flowchart of a method according to embodiments of the invention. As described above, the illustrated method relates to the control of a hydraulic system with an electric drive, which is controlled by a manipulated variable and drives a component of the hydraulic system. The component influences and / or causes a flow of hydraulic fluid in the hydraulic system.
[0089] In the optional step 110, trajectory planning takes place, in which a target trajectory or target trajectory values are determined from predefined values 30 for a controlled variable (or controlled variable) of the hydraulic system. A low-pass filter can be used for this purpose, for example. Alternatively, instead of determining the target trajectory in step 110, the target trajectory and target trajectory values can already be known, for example, specified by a higher-level controller. This can be the case, in particular, if the hydraulic system is used in an industrial manufacturing plant where the same target trajectory is repeatedly followed in the machining process; this target trajectory could, for example, be the movement of a tool or workpiece moved by a hydraulic consumer of the hydraulic system.
[0090] In step 120, which includes substeps 122, 125, and optionally 128, a control process is performed to determine manipulated values for the manipulated variable in order to control the hydraulic system variable according to the desired trajectory. Substeps 122 and 125 together constitute a feedforward control algorithm.
[0091] In sub-step 122, an inverse physical path model is used to determine initial values for the manipulated variable from the target trajectory values. The inverse physical path model is configured and defined to calculate those manipulated variable values which, within the framework of the physical modeling, result in the desired trajectory being achieved when the electric drive is controlled with these (initial) values.
[0092] Page 18 of 24 R.416795
[0093] In sub-step 125, a machine learning-based model determines second values for the manipulated variable from the first values and the target trajectory values (which are the input values of the machine learning-based model).
[0094] The machine learning-based model is trained to minimize a cost function that represents a control deviation (between target and actual values of the controlled variable). Specifically, in optional step 140, training data can be collected during operation of the hydraulic system and used in optional step 150 to train the machine learning-based model. The training data includes the target trajectory values, the initial values, and (measured) actual values of the controlled variable (each for several corresponding time points).
[0095] In optional substep 128, a controller determines third values for the manipulated variable, specifically from a control deviation or control difference between the (measured) actual values of the controlled variable and the actual values (each referenced to the same time). The control deviation is determined, for example, in step 160 by calculating the difference between the actual values and the corresponding setpoint values. Specifically, while training data is being acquired, i.e., during the execution of step 140, substep 128 will not be performed, and the third values will not be used (or will be set to zero).
[0096] Step 128 can be omitted, for example, in an application within an industrial manufacturing plant where the recurring conditions in machining processes are precisely known and adequately accounted for in the inverse physical plant model and the machine learning-based model, resulting in only a negligible control deviation. If step 128, or the controller itself, is omitted, the control (step 120) becomes a simple feedforward control or pure feedforward control.
[0097] In step 130, the electric drive is controlled using setpoints for the manipulated variable. If sub-step 128 is not performed, the setpoints are equal to the second values for the manipulated variable determined in sub-step 125. If sub-step 128 is performed, the third values (from sub-step 128) are added to the second values (from sub-step 125) to obtain the setpoints.
[0098] Page 19 of 24 R.416795
[0099] In optional step 170, it can be specified that a new acquisition of training data (step 140) and a new training session (step 150) should be performed using the newly acquired training data. This can occur, for example, in response to an external signal 70, e.g., from a higher-level controller. Alternatively or additionally, the existing control deviations (which are determined, for example, in step 160) can be evaluated, and if they meet a predetermined condition, e.g., that the average value of the control deviation over a certain period of time exceeds a threshold, or that this average increases by a factor greater than one compared to a previous period, the reacquisition of training data and the subsequent training are triggered.
[0100] Page 20 of 24
Claims
R.416795 Claims 1. Method for controlling an electric drive of a hydraulic system (2, 36) which drives the movement of a component of the hydraulic system that causes and / or influences the flow of a pressure medium, wherein the electric drive is controlled by a manipulated variable; wherein, by means of a control system (4), manipulated values (10) for the manipulated variable are determined (120) in order to control a controlled quantity of the hydraulic system according to a target trajectory, wherein the control system includes a feedforward control algorithm (6) which includes an inverse physical system model (16) of the hydraulic system and a machine learning-based model (18); wherein, by means of the inverse physical system model (16), first values (20) for the manipulated variable are determined from target trajectory values (14) of the target trajectory (122);wherein the machine learning-based model (18) determines second values (22) for the manipulated variable from input values, which include the first values (20) and the target trajectory values (14) (125); wherein the manipulated values (10) for the manipulated variable are determined as a function of the second values (22); and wherein the electric drive is controlled by the manipulated values (10) (140).; 2. The method of claim 1, wherein the machine learning-based model (18) is a locally linear model or a Gaussian process model.
3. Method according to one of the preceding claims, wherein the target trajectory values (14) of the target trajectory include a time course of target values for the quantity to be controlled and a time course of derivative values for one or more time derivatives up to a highest order of the time course of the target values; wherein the highest order is in particular equal to an order of the inverse physical path model (16).
4. Method according to claim 3, wherein the target trajectory values (14) of the target trajectory are determined by a filter from a target specification (30) for the quantity to be controlled. Page 21 of 24 R.416795 become (110); wherein the filter is in particular a low-pass filter whose order is one higher than the highest order, or includes such a filter.
5. Method according to claim 3 or 4, wherein the machine learning-based model (18) is trained using training data (150) which includes the target trajectory values and associated actual values (12) of the quantity to be controlled; wherein the training is carried out such that a cost function determined from deviations between the target values and measured actual values (12) of the quantity to be controlled is minimized.
6. Method according to claim 5, wherein the training data are acquired during the operation of the hydraulic system as actual target trajectory values (14) and measured actual values (12) of the quantity to be controlled (140); or wherein the training data are determined by means of a physical path model which has a higher accuracy than the inverse physical path model (16).
7. Method according to claim 6, wherein, if during the operation of the hydraulic system it is determined (170) that a time average of the magnitude of a control deviation between the setpoints and measured actual values (12) increases above a predetermined threshold or increases by more than a predetermined factor greater than 1.0 and in particular greater than 1.5 or greater than 2 above a previous time average of the magnitude of the control deviation, new training data are acquired during the operation of the hydraulic system (140) and the machine learning-based model (18) is trained using the new training data (150); wherein the time average is taken over a time period of a predetermined length.
8. Method according to one of claims 6 or 7, wherein the hydraulic system (2, 36) is used in a manufacturing plant in which different machining processes are repeatedly carried out, wherein in each machining process in each repetition the same machining steps are carried out using the hydraulic system and the machining steps of different machining processes are at least partially different; Page 22 of 24 R.416795 wherein after a change of the processing process to a new processing process, training data are collected during one or more iterations of the new processing process and the machine learning-based model (18) is trained using the training data collected during the new processing process.
9. Method according to any one of claims 3 to 8, wherein the control (4) further includes a controller (8) by which third values (26) for the manipulated variable are determined from a control deviation (24) between the setpoints (12) and measured actual values (12) of the quantity to be controlled (128); - where the second values (22) and the third values (26) are added to determine the setpoints (10); or - wherein the third values (26) are added to the first values (20) to obtain modified first values which are used as input values to the machine learning-based model (18); or - where the target trajectory values (14) are at least partially modified by the third values (26); or - where the input values of the machine learning-based model (18) include the third values (26).
10. Method according to claim 9, and depending on claim 6, wherein during the acquisition (140) of the training data the controller (8) in the control (4) is not used or the third values (26) for the manipulated variable are not taken into account in the control.
11. Computing unit comprising a processor configured to perform the method according to any of the preceding claims.
12. Computer program comprising instructions which, when the program is executed by a computer, cause it to execute the method according to claims 1 to 10.
13. Computer-readable data carrier on which the computer program according to claim 12 is stored. Page 23 of 24