The present application claims priority to and the benefit of German patent application no. 10 2012 209 384.2, which was filed in Germany on Jun. 4, 2012, the disclosure of which is incorporated herein by reference.
The present invention relates to control methods for position transducers, in particular adaptive control methods for position control of a position transducer.
The position of actuators in position transducer systems in an internal combustion engine is generally ascertained with the aid of a control method as a function of one or more internally or externally predefined setpoint variables. However, manufacturing tolerances as well as environmental influences and aging result in the response of the actuator and of the position transducer system deviating from the expected response or if there are changes in same. The position transducer system to be controlled thus changes as a function of its operating conditions.
In general, a control method should achieve a compromise between all possible states of the actuator, so that the control system achieves a good response with respect to bandwidth, stability, precision and robustness in all operating states. However, adapting the control method and its control parameters to a position transducer having certain properties results in an undesirable system response when the tolerances and the environmental effects on and aging of the actuator become too great and therefore the properties of the position transducer differ too much from those of a position transducer to which the control method and its control parameters are adapted. It is therefore necessary to adapt the control accordingly to achieve an optimal system response over the entire lifetime of the position transducer.
Publication WO 2007/096327 A1 discusses an adaptive control method for a throttle valve in which a pilot control is adapted as a function of measured operating conditions, for example, temperature, air mass flow and pressure drop across a throttle valve.
Publication U.S. Pat. No. 6,668,214 discusses an adaptive control method having online parameter identification. The identified parameters are used to compensate for dead time in the control loop and to adapt a sliding mode controller.
According to the present invention, a method for operating a controller of a position transducer system, in particular a throttle valve position transducer in an engine system having an internal combustion engine according to the description herein is provided, and a control device and a computer program product according to the other descriptions herein are also provided.
Additional advantageous embodiments of the present invention are stated in the further descriptions herein.
According to a first aspect, a method for operating a controller for a position transducer system is provided, the control being carried out to obtain a manipulated variable for triggering an actuating drive of the position transducer system, the control being carried out by initially applying a transfer function to a system deviation to obtain an adapted system deviation and subsequently a transfer function is applied to the adapted system deviation to obtain the manipulated variable, the transfer function being a function which indicates a deviation of a model of a nominal position transducer system having predefined nominal parameters from the model of the position transducer system to be controlled, an adaptation of the control process being carried out by adapting the transfer function in that the parameters of the model of the position transducer system to be controlled are adapted.
One aspect of the above method is to configure the controller of the position transducer system in such a way that an adaptation is carried out in that a system deviation is adapted before a transfer function is applied. For this purpose, the transfer function is adapted to a transfer function for adaptation of the system deviation so that the adapted system deviation takes into account only the deviation of the response of the physical position transducer system from a reference position transducer system or a nominal position transducer system, while the transfer function is configured for the reference position transducer system or the nominal position transducer system in accordance with the control process. The control parameters used there may be disregarded in an adaptation of the control process. This has the advantage that an adaptation of the control process may be carried out rapidly and without intervention into the control process in that merely the transfer function using the model parameters of the position transducer system, which change due to the change in the physical response of the position transducer system, may be adapted.
In addition, the transfer function may be a control function having constant predefined control parameters, which have been ascertained with respect to a nominal position transducer system and are invariant for the adaptation of the control process.
In particular it may be provided that only linear components are taken into account as the model of the nominal position transducer system and as the model of the position transducer system to be controlled.
According to one specific embodiment, the transfer function may also take into account a pilot control variable which is ascertained as a function of an inverse model of the position transducer system to be controlled and of the model parameters which are ascertained and adapted online.
In addition, a nonlinear component of the model of the position transducer system to be controlled may be taken into account in the pilot control to compensate for nonlinearities in the position transducer system.
It may be provided that the transfer function is implemented as a discrete recursive equation with the aid of Tustin's method.
According to another aspect a control system for operating a controller for a position transducer system is provided, the control being carried out to obtain a manipulated variable for triggering an actuating drive of the position transducer system, including
According to another aspect, a computer program having program code means is provided to carry out all steps of the above method when the computer program is executed on a computer or an appropriate arithmetic unit, in particular in the above control system.
According to another aspect, a computer program product is provided, containing program code which is stored on a computer-readable data medium and carries out the above method when executed on a data processing system.
Specific embodiments of the present invention are explained in greater detail below on the basis of the accompanying drawings.
Actuator 2 is connected to an actuating drive 6, which may be configured as an electromechanical actuating drive, for example. Actuating drive 6 may be triggered by electrical triggering signals to exert an actuating torque or an actuating force on actuator 2, so that the latter is moved. Actuating drive 6 may be configured as a dc motor, as an electrically commutated motor or as a stepping motor, for example, each of which may be triggered by suitable pulse width-modulated trigger signals. Actuating drive 6 is able to provide the actuating torque via the trigger signals, which may be generated by a driver circuit using one or more H bridge circuits.
The actual position of actuator 2 may be detected by a position sensor 4 connected to actuator 2 and may be provided as actual position indication y. Additional state variables of position transducer system 1, such as a motor current, which is picked up for providing an actuating torque by actuating drive 6 and the like, may be detected with the aid of an additional sensor 12 connected to actuating drive 6.
Position transducer system 1 is generally exposed to environmental influences and aging in the area of application. Furthermore, the individual components are subject to tolerances during their manufacture. This may result in the system response of position transducer system 1 possibly deviating from a desired nominal system response. Since a controller for position transducer system 1 must usually be adapted to the nominal system response of a position transducer, this may result in maladjustments, which has a negative effect on the quality of the control process.
In addition, control device 5 receives measured variables x such as the motor current or the like from position transducer system 1, for example. Control device 5 generates a manipulated variable u from the obtained information and uses it to trigger actuating drive 6 of position transducer system 1. Manipulated variable u may be, for example, a pulse duty factor for a pulse width-modulated triggering of a driver circuit for actuating drive 6, which corresponds to the effective level of the voltage applied to actuating drive 6. The pulse duty factor is able to determine the ratio of a period of time during which a motor current flows through actuating drive 6 to a cycle duration, the cycle duration corresponding to a period of cyclic triggering of actuating drive 6.
Filtering of setpoint position indication r into a filtered setpoint position indication rp and generating a pilot control variable ur for manipulated variable u are carried out in prefilter and pilot control block 7. For this purpose, instantaneous determined parameters Θ of a computation model of position transducer system 1 as well as a few additional measured and modeled states x and z and instantaneous actual position indication y of actuator 2 are needed.
Manipulated variable u for actuating drive 6 is generated in control unit 8 with the aid of pilot control variable ur, filtered setpoint position rp, instantaneous actual position indication y of actuator 2, repeatedly determined model parameters Θ of a computation model G of position transducer system 1 and optionally a few additional measured and modeled state variables z of the system as a whole and one or more state variables x of position transducer system 1.
Prefilter block 10 is implemented in such a way that it low-pass filters the setpoint position indication r to provide filtered setpoint position indication rp and to provide a vector dkrp having k of 1 to n in the case of filtered setpoint position indication rp. Vector dkrp is a vector of the derivations from rp to the order n. For n=3, vector dkrp is composed of d1rp as the first derivation from rp over time, d2rp as the second derivation from rp over time and d3rp as the third derivation from rp over time. Prefilter block 10 uses pilot control variable ur and a few other measured and modeled state variables z of the system as a whole such as, for example, battery voltage Ubat and other variables to calculate its output variable anew, when pilot control variable ur reaches its voltage limit, which is a function of the additionally measured and modeled state variables z. Prefilter block 10 implements primarily the low-pass function, which is necessary to permit usable derivations since setpoint position indication rp may contain noise.
Pilot control block 11 is configured as a flatness-based pilot control block. Pilot control block 11 carries out a calculation of an inverse function G−1 of computation model G of position transducer system 1 with the aid of instantaneously determined model parameters Θ and derivations dkrp of filtered setpoint position indication rp. Pilot control block 11 may also take into account the additionally measured and modeled state variables x and z to carry out an adaptation.
Adaptive filter 15 carries out an adaptation of system deviation E to adapted system deviation εa in such a way that control block 16 always controls a similar system. Linear computation model G of actuator 2 may correspond to a transfer function H of the order n, which is characterized by instantaneously determined model parameters Θ.
Control block 16 corresponds to a transfer function C, which may be implemented as a discrete recursive equation with the aid of Tustin's method for discretization. Depending on the type of control, at least one of control parameters Kp, Ki, Kd may be implemented for the proportional component, the integration component and the differential component, which are provided as constant nonadaptable control parameters. Fundamentally any type of control is conceivable here.
As an alternative, it may be provided that control block 16 is configured using variable control parameters instead of fixed control parameters Kp, Ki, Kd, so that the adaptation of adaptive filter 15 may also be carried out in control block 16.
Transfer function C is created for a computation model Gnom of a nominal position transducer system 1 to obtain a desired response βnom=C·Gnom of the open control loop. Computation model Gnom of nominal position transducer system 1 is based on nominal parameters, so that computation model Gnom maps nominal position transducer system 1. Computation model Gnom of nominal position transducer system 1 may take into account only linear components, so the computation model is generally in the following form for n=3:
where anom, bnom, cnom, dnom correspond to model parameters Θnom for the nominal position transducer system 1.
In addition, computation model G of position transducer system 1 to be controlled may take only linear components into account, so the computation model is generally in the following form for n=3:
where a, b, c, d correspond to model parameters Θ for position transducer system 1 to be controlled.
Adaptive filter 15 carries out the transfer function
using system deviation c in such a way that response β=H˜C·G of the open control loop always reverts to desired response βnom=C·Gnom of the open control loop. Transfer function H of adaptive filter 15 is implemented as a discrete recursive equation with the aid of Tustin's method for discretization. An adapted system deviation εa results from this discrete recursive equation.
Control block 16 calculates manipulated variable u as a function of the discrete recursive equation of the implemented transfer function C of the controller and as a function of pilot control variable ur. Control block 16 includes an anti-integration saturation mechanism to calculate its outputs and internal states anew when the absolute value of manipulated variable u exceeds the voltage limits which are a function of additionally measured and modeled state variables z such as battery voltage Ubat and the like.
This transfer function may be discretized with the aid of the Tustin transformation. The resulting differential equation yields relationships among the instantaneous values of filtered setpoint position indication rp, its derivations according to vector dkrp and their preceding values:
{rp(k),d1rp(k), . . . ,dnrp(k)}=f(rp(k−1),d1rp(k−1), . . . ,dnrp(k−1))
Although the k−1th values are used in Tustin's method proposed above, it is fundamentally possible to use the k−ith values with iε{1 . . . n}.
In
{rp(k−1),d1rp(k−1), . . . ,dnrp(k−1)}
are initialized in an initializing block 18 using predefined initialization values. The initialization values are provided with the aid of a vector of initialization variables pmem0. The function of initialization block 18 is called up only once, namely at the start of the control process, to initialize a value vector of preceding values pmem. The preceding values {rp(k−1), d1rp(k−1), . . . , dnrp(k−1)} are subsequently copied into value vector pmem after their recalculation.
The variables required by the prefilter and pilot control block 7 for the calculation are input into read-in block 19, in particular the measured and modeled state variables x (of the position transducer system) and z (of the overall system), the value vector pmem for the preceding values of rp and dkrp, the setpoint position indication r and the parameter vector of the instantaneously valid parameters Θ.
The differential equation
{rp(k),d1rp(k), . . . ,dnrp(k)}=f(rp(k−1),d1rp(k−1), . . . ,dnrp(k−1))
is calculated in calculation block 20 to calculate the filtered setpoint position indication rp and its derivations dkrp.
In a compensation block 21, compensation of the nonlinearities of position transducer system 1 and the calculation of an unlimited pilot control variable ur_unlim are carried out prior to their limitation to pilot control variable ur. The nonlinearities to be compensated correspond to the emergency operation, for example, and/or the frictional behavior of actuator 2. The compensation of compensation block 21 ensures through a pilot control that nonlinearities do not have a negative effect on the control process. For example,
At a trigger voltage of 0 V, which may occur in the event of failure of the trigger system, for example, actuator 2 should assume a position y0 which allows a certain gas mass flow rate through position transducer system 1 to ensure the emergency operation. In the area around position y0 of actuator 2, a return spring acts on actuator 2 with an increased spring constant. The increased spring constant in particular acts on actuator 2 in a range yLHmin<y0<yLHmax whereas a lower spring constant acts on actuator 2 in the outside areas.
Unlimited pilot control variable Ur_unlim is compared with battery voltage Ubat in limitation block 22. If the absolute value of battery voltage Ubat is not exceeded, then pilot control variable ur is set to the value of unlimited pilot control variable ur_unlim. If the absolute value of battery voltage Ubat is exceeded, unlimited pilot control variable ur_unlim is limited to the value of battery voltage Ubat and filtered setpoint position indication rp and its derivations dkrp {rp(k−1), d1rp(k−1), . . . , dnrp(k−1)} are calculated anew, taking into account the fact that pilot control variable ur is limited to the value of battery voltage Ubat.
Pilot control variable ur and filtered setpoint position indication rp are transferred to control block 8 in a transfer block 23.
The instantaneous values of vector pmem are stored in a memory block 24 to be available for the next calculation by prefilter and pilot control block 7.
including constant control parameters Kp, Ki, Kd for the proportional component, the integration component, the differential component of the control and time constant τd. The control parameters remain unchanged even during adaptation of the control process and constitute the optimal control parameters, i.e., those ascertained previously with respect to a reference position transducer system.
This transfer function C may be discretized with the aid of Tustin's transformation. Tustin's discretization method has the advantage that the resulting differential equation includes only simple computation operations, which may be executed in real time even on a low-power control unit. The resulting differential equations define a relationship between the instantaneous values of adapted system deviation εa and their preceding values. In addition, manipulated variable u corresponds to a function of the results of the differential equations and of pilot control variable ur:
u(k)=g1(ur(k),εu(k),εa(k−1))
In
In a provision block 26, the variables required for the calculation in control block 16 are input, i.e., measured and modeled state variables z, value vector cmem of the preceding values, adaptive system deviation εa and pilot control variable ur.
The differential equation
uunlim(k)=g2(ur(k),εa(k),εa(k−1))
is calculated in a calculation block 27 to ascertain unlimited manipulated variable uunlim.
In limitation block 28, the anti-integration saturation function is taken into account to carry out a new calculation when unlimited manipulated variable uunlim reaches a predefined voltage limit. The predefined voltage limit may be calculated according to a predefined function of the additionally measured and modeled state variables z such as battery voltage Ubat and the like, for example. A traditional anti-integration saturation function involves freezing the integration part of the control, so that the integration part does not diverge. Unlimited manipulated variable uunlim may also be compared to battery voltage Ubat. If battery voltage Ubat is not exceeded, manipulated variable u is set at the value of unlimited manipulated variable uunlim. If battery voltage Ubat is exceeded, manipulated variable u is limited to the value of battery voltage Ubat and the integration part of the control is frozen.
In a transfer block 29, manipulated variable u is transferred to actuating drive 6 of position transducer system 1. As described above, the manipulated variable may correspond to a pulse duty factor T.
In a memory block 30, the instantaneous values of value vectors cmem are stored for the next calculation by control block 16.
Number | Date | Country | Kind |
---|---|---|---|
10 2012 209 384 | Jun 2012 | DE | national |
Number | Name | Date | Kind |
---|---|---|---|
4622936 | Junginger | Nov 1986 | A |
4827937 | Kohler | May 1989 | A |
4849896 | Burk | Jul 1989 | A |
5033431 | Poirier | Jul 1991 | A |
5333109 | Oo | Jul 1994 | A |
6484693 | Kanno | Nov 2002 | B1 |
6502545 | Ganser | Jan 2003 | B1 |
6636783 | Yasui | Oct 2003 | B2 |
6668214 | Yasui et al. | Dec 2003 | B2 |
6830032 | Yasui | Dec 2004 | B2 |
7463936 | Baumann | Dec 2008 | B2 |
7533654 | Zurawski | May 2009 | B1 |
7905213 | Fokkelman | Mar 2011 | B2 |
20030047148 | Unger | Mar 2003 | A1 |
20040123850 | Baeuerle | Jul 2004 | A1 |
20040231641 | Wind | Nov 2004 | A1 |
20050046375 | Maslov | Mar 2005 | A1 |
20060201487 | Mallebrein | Sep 2006 | A1 |
20080120017 | Rodatz | May 2008 | A1 |
20090138183 | Fokkelman | May 2009 | A1 |
20100256891 | Weiss | Oct 2010 | A1 |
20110010072 | Burkhardt | Jan 2011 | A1 |
20130269319 | Rodatz | Oct 2013 | A1 |
20130325294 | Wagner | Dec 2013 | A1 |
Number | Date | Country |
---|---|---|
2221796 | Mar 1996 | CN |
1275216 | Nov 2000 | CN |
1828458 | Sep 2006 | CN |
101384808 | Mar 2009 | CN |
378093 | Jul 1990 | EP |
660017 | Jun 1995 | EP |
113624 | Sep 1998 | RO |
2007096327 | Aug 2007 | WO |
Number | Date | Country | |
---|---|---|---|
20130325294 A1 | Dec 2013 | US |