(19)
(11)EP 3 503 333 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
16.09.2020 Bulletin 2020/38

(21)Application number: 17210129.7

(22)Date of filing:  22.12.2017
(51)International Patent Classification (IPC): 
H02H 7/085(2006.01)
G06F 17/00(2019.01)

(54)

CONTROLLING A MOTOR OF A CLOSURE AND/OR BLIND IN A VEHICLE BODY BASED ON A DISTURBANCE OBSERVER SIGNAL

STEUERN EINES MOTORS EINER SCHLIESSVORRICHTUNG UND/ODER EINER JALOUSIE IN EINER FAHRZEUGKAROSSERIE BASIEREND AUF EINEM STÖRBEOBACHTERSIGNAL

COMMANDE DE MOTEUR D'UN DISPOSITIF DE FERMETURE ET/OU DE STORE DANS UN CORPS DE VÉHICULE EN FONCTION D'UN SIGNAL DE PERTURBATION PAR OBSERVATEUR


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(43)Date of publication of application:
26.06.2019 Bulletin 2019/26

(73)Proprietor: Inalfa Roof Systems Group B.V.
5807 GW Oostrum (NL)

(72)Inventor:
  • Craane, Dennie Wilhelmus Hendrikus
    6536 BA Nijmegen (NL)

(74)Representative: De Vries & Metman 
Overschiestraat 180
1062 XK Amsterdam
1062 XK Amsterdam (NL)


(56)References cited: : 
CN-A- 102 393 867
US-A1- 2003 051 555
  
      
    Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


    Description

    Field of the invention



    [0001] The invention relates to a controller for controlling a motor of a closure and/or blind in a vehicle body and an open roof construction comprising such a controller.

    [0002] The invention further relates to a method of controlling a motor of a closure and/or blind in a vehicle body.

    [0003] The invention also relates to a computer program product enabling a computer system to perform such a method.

    Background of the invention



    [0004] Pinch detection, also referred to as trap detection, is mandatory for open roof constructions in many countries. In the European Union, requirements applying to power-operated windows/roof-panel systems/partition systems to minimize the possibility of injuries caused by accidental or improper operation are listed in Directive 2000/4/EC. Often, open roof constructions are fitted with an auto-reversing device. Directive 2000/4/EC specifies, amongst others, that this auto-reversing device shall reverse the window/roof panel/partition before it exerts a pinch force of more than 100 N within the opening of 200 mm to 4 mm above the top edge of a power-operated window/partition or in front of the leading edge of a sliding roof panel and at the trailing edge of a tilting roof panel.

    [0005] Similar requirements are specified in the United States in Federal Motor Vehicle Safety Standard No. 118. S5.1 of this standard specifies that while closing, the power-operated window, partition, or roof panel shall stop and reverse direction either before contacting a test rod with properties described in S8.2 or S8.3, or before exerting a squeezing force of 100 newtons (N) or more on a semi-rigid cylindrical test rod with the properties described in S8.1, when such test rod is placed through the window, partition, or roof panel opening at any location in the manner described in the applicable test under S7.

    [0006] The paper "Study on Electric Sunroof Pinch Detection of Cars Based on Model Reference Adaptive Cholesky Decomposition Filter" by Yingjie Zhang et al., published in IEEE Transactions on Transportation Electrification issue 99 on 21 September 2017, describes an electric sunroof pinch detection algorithm for cars based on a model reference adaptive cholesky decomposition filter. The model reference method and sliding-fading grey prediction theory are used to estimate noise variances more accurately. The cholesky decomposition is used to avoid filter divergence. The anti-pinch function takes effect when an estimated torque is greater than a threshold.

    [0007] An advantage of this algorithm is that no reference field is used, which results in a limited calibration time during development and production of the auto-reversing device. A drawback of this algorithm is that the behavior of the roof is reflected strongly in the pinch torque signal, which is especially a problem during high disturbance operation. This is expected to make it impossible to meet all the above-mentioned requirements with regard to auto-reversing devices for open roof constructions.

    Summary of the invention



    [0008] It is a first object of the invention to provide a controller, which does not rely on a reference field and meets the current requirements with regard to auto-reversing devices as specified by the European Union and United States.

    [0009] It is a second object of the invention to provide a method of controlling a motor of a closure and/or blind in a vehicle body, which does not rely on a reference field and meets the current requirements with regard to auto-reversing devices as specified by the European Union and United States.

    [0010] According to the invention, the first object is realized in that the controller for controlling a motor of a closure and/or blind in a vehicle body comprises at least one processor configured to determine a reference state signal comprising measurements of at least one of a speed of a rotor of said motor and a current supplied to said rotor, repeatedly estimate motor model parameters of said motor, determine an estimated state signal based on an input signal comprising measurements or estimates of a voltage supplied to said rotor, said estimated motor model parameters, said reference state signal and an error signal, said error signal representing a difference between said reference state signal and said estimated state signal, determine a disturbance observer signal from said error signal, compute a first derivative of said disturbance observer signal at a present moment, detect an undesired obstruction in the path of said closure and/or blind driven by said motor if said first derivative of said disturbance observer signal exceeds a threshold, and reverse said rotor of said motor upon detecting said obstruction.

    [0011] Said controller may be part of a closure system like an open roof construction, for example. Said at least one processor may be configured to repeatedly estimate said motor model parameters of said motor based on said input signal, said error signal, said reference state signal and said estimated state signal. If the reference state signal does not comprise measurements of the current supplied to the rotor, the reference state signal comprises estimates of the current supplied to the rotor. If the reference state signal does not comprise measurements of the speed of the rotor, the reference state signal comprises estimates of the speed of the rotor.

    [0012] Said at least one processor may be configured to compute an absolute value of said first derivative of said disturbance observer signal at said present moment and detect said undesired obstruction if said absolute value is higher than a threshold. Said at least one processor may be configured to detect said undesired obstruction if said first derivative of said disturbance observer signal is higher than a positive threshold or lower than a negative threshold.

    [0013] The inventor has recognized that by using an adapted state observer to estimate motor model parameters and a disturbance observer signal and by reversing the motor if a first derivative of the disturbance observer signal exceeds a threshold, pinching is detected from a signal in which the behavior of the roof is not strongly reflected and detected in a manner that allows the pinching to be detected quickly. This allows the current requirements with regard to auto-reversing devices as specified by the European Union and United States to be met.

    [0014] Furthermore, the invention has as additional advantages:
    • Since no reference field is used, there is a limited calibration time during development and production of the auto-reversing device, which is also known from the prior art.
    • Due to absence of a reference field, no initialization/calibration is needed, which is beneficial in case remote software update is required.
    • No memory is needed to store the reference field.
    • The pinch detection adapts quickly to environmental changes. For example, temperature and humidity variations have less influences.
    • Less influences in production spread, such as variating tolerances of mechanical parts and electric motors.
    • Less force build-up is needed for detection, resulting in faster reaction times to meet the legal requirements for pinch detection.
    • The number of sensors that is needed in the implementation is limited, e.g. voltage plus rotor speed and/or current measurements are sufficient.


    [0015] Said at least one processor may be configured to determine a first disturbance observer signal from said error signal, determine a second disturbance observer signal from said first disturbance observer signal by applying one or more filters and subsequently compute said first derivative of said second disturbance observer signal at said present moment, said one or more filters attenuating or rejecting signals with a frequency below a first frequency or above a second frequency. The one or more filters attenuating or rejecting signals with a frequency below a first frequency or above a second frequency may comprise a band-pass filter or a combination of a low-pass and a high-pass filter in series, for example. These one or more filters ensure that the behavior of the roof is reflected even less in the second disturbance observer signal. Low bandwidth information, e.g. below 10 Hz, is less relevant for pinch detection, i.e. for the disturbance observer signal, because it is mostly produced by internal dynamical effects, as the motor model parameters are normally only slowly time-varying.

    [0016] Said one or more filters may attenuate or reject signals with a frequency below 0.1 Hz or even below 0.5 Hz, for example. Said one or more filters may attenuate or reject signals with a frequency above 500 Hz or even above 250 Hz, for example. This has been found to result in a good decoupling of pinch detection from normal roof behavior.

    [0017] Said at least one processor may be configured to determine a second error signal from a first error signal by applying a low-pass filter and determine said estimated state signal based on said input signal, said estimated motor model parameters, said reference state signal and said second error signal, said first and second error signals each representing a difference between said reference state signal and said estimated state signal, said low-pass filter attenuating or rejecting signals with a frequency above a certain frequency. Low bandwidth information is relevant for estimating the motor model parameters and is therefore used for this purpose. Higher bandwidth information is typically not required to estimate the motor model parameters. The low-pass filter may attenuate or reject signals with a frequency above 10 Hz, for example. The low-pass filter may attenuate or reject signals with a frequency above the certain frequency and pass signals with a frequency below the certain frequency, for example. The above-mentioned one or more filters may attenuate or reject signals with a frequency below the same certain frequency.

    [0018] The controller may be part of a closure system and/or a blind system in a vehicle body. Such a closure system may close or at least partially open an opening in the vehicle body. For instance, the closure system may be a so-called open roof system capable of closing and opening an aperture in the roof of the vehicle body. Another example of a closure system may be a movable window in a vehicle door or a sliding door in a vehicle body or even a tailgate closure, all of which are capable of moving by means of an electric motor being controlled by the controller. The blind system may be a flexible screen type such as a rollo or a solid screen such as a so-called sun shade. The blind system typically extends adjacent to a transparent closure such as a movable panel of an open roof construction or a movable window on the interior side of the vehicle body.

    [0019] According to the invention, the second object is realized in that the method of controlling a motor of a closure and/or blind in a vehicle body comprises determining a reference state signal comprising measurements of at least one of a speed of a rotor of said motor and a current supplied to said rotor, repeatedly estimating motor model parameters of said motor, determining an estimated state signal based on an input signal comprising measurements or estimates of a voltage supplied to said rotor, said estimated motor model parameters, said reference state signal and an error signal, said error signal representing a difference between said reference state signal and said estimated state signal, determining a disturbance observer signal from said error signal, computing a first derivative of said disturbance observer signal at a present moment, detecting an undesired obstruction in the path of said closure and/or blind driven by said motor if said first derivative of said disturbance observer signal exceeds a threshold, and reversing said rotor of said motor upon detecting said obstruction. Said method may be performed by software running on a programmable device. This software may be provided as a computer program product.

    [0020] Determining said disturbance observer signal from said error signal and computing said first derivative of said disturbance observer signal at said present moment may comprise determining a first disturbance observer signal from said error signal, determining a second disturbance observer signal from said first disturbance observer signal by applying one or more filters, said one or more filters attenuating or rejecting signals with a frequency below a first frequency or above a second frequency, and computing said first derivative of said second disturbance observer signal at said present moment.

    [0021] Determining said estimated state signal based on said input signal, said estimated motor model parameters, said reference state signal and said error signal may comprises determining a second error signal from a first error signal by applying a low-pass filter, said first and second error signals each representing a difference between said reference state signal and said estimated state signal, and determining said estimated state signal based on said input signal, said estimated motor model parameters, said reference state signal and said second error signal, said low-pass filter attenuating or rejecting signals with a frequency above a certain frequency.

    [0022] Said one or more filters may attenuate or reject signals with a frequency below 0.1 Hz or above 500 Hz and/or said low-pass filter may attenuate or reject signals with a frequency above 10 Hz.

    [0023] Moreover, a computer program for carrying out the methods described herein, as well as a non-transitory computer readable storage-medium storing the computer program are provided. A computer program may, for example, be downloaded by or uploaded to an existing device or be stored upon manufacturing of these systems.

    [0024] A non-transitory computer-readable storage medium stores at least a first software code portion, the first software code portion, when executed or processed by a computer, being configured to perform executable operations comprising: determining a reference state signal comprising measurements of at least one of a speed of a rotor of said motor and a current supplied to said rotor, repeatedly estimating motor model parameters of said motor, determining an estimated state signal based on an input signal comprising measurements or estimates of a voltage supplied to said rotor, said estimated motor model parameters, said reference state signal and an error signal, said error signal representing a difference between said reference state signal and said estimated state signal, determining a disturbance observer signal from said error signal, computing a first derivative of said disturbance observer signal at a present moment, detecting an undesired obstruction in the path of said closure and/or blind driven by said motor if said first derivative of said disturbance observer signal exceeds a threshold, and reversing said rotor of said motor upon detecting said obstruction.

    [0025] As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a device, a method or a computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit", "module" or "system." Functions described in this disclosure may be implemented as an algorithm executed by a processor/microprocessor of a computer. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied, e.g., stored, thereon.

    [0026] Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a computer readable storage medium may include, but are not limited to, the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of the present invention, a computer readable storage medium may be any tangible medium that can contain, or store, a program for use by or in connection with an instruction execution system, apparatus, or device.

    [0027] A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.

    [0028] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber, cable, RF, etc., or any suitable combination of the foregoing. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java(TM), Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages.

    [0029] Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the present invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor, in particular a microprocessor or a central processing unit (CPU), of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer, other programmable data processing apparatus, or other devices create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

    [0030] These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.

    [0031] The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.

    [0032] The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of devices, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

    Brief description of the Drawings



    [0033] These and other aspects of the invention are apparent from and will be further elucidated, by way of example, with reference to the drawings, in which:
    • Fig. 1 is an isometric view of a car with a slide door construction and side window construction as viewed from the front;
    • Fig. 2 is an isometric view of the car of Fig. 1 as viewed from the back showing a tailgate construction;
    • Fig. 3 is an isometric view of a car with an open roof construction;
    • Fig. 4 shows an embodiment of the open roof construction of the invention;
    • Fig. 5 is a sectional view of a rod pinched between a moveable panel and a fixed roof part;
    • Fig. 6 is a block diagram of an embodiment of the controller of the invention;
    • Fig. 7 is a flow diagram of a first embodiment of the method of the invention;
    • Fig. 8 is a flow diagram of a second embodiment of the method of the invention;
    • Fig. 9 depicts a first embodiment of digital signal processing carried out by an embodiment of the controller;
    • Fig. 10 depicts a second embodiment of digital signal processing carried out by an embodiment of the controller;
    • Fig. 11 depicts a third embodiment of digital signal processing carried out by an embodiment of the controller;
    • Fig. 12 provides equations corresponding to the embodiments of Figs. 9 to 11; and
    • Fig. 13 depicts a digital conversion of speed and voltage signals into a current signal.


    [0034] Corresponding elements in the drawings are denoted by the same reference numeral.

    Detailed description of the Drawings



    [0035] Fig. 1 shows a car as viewed from the front, including a slide door construction 31 and a side window construction 33. Fig. 2 shows the car of Fig. 1 as viewed from the back, including the slide door and side window constructions 31 and 33 shown in Fig. 1 and a tailgate construction 35. The closure systems 31, 33 and 35 shown in these figures comprise a control module, a motor and a closure. The different closure systems typically use different motors, but may use the same control module with different processors, for example. The closure and/or blind system of the invention can be used for other purposes than for opening side windows, side doors or tailgates, e.g. for opening roofs or blinds.

    [0036] Fig. 3 shows a car with a preferred embodiment of the open roof construction of the invention in which a roof has been opened by moving a moveable panel. Fig. 4 shows an exploded view of this open roof construction. The open roof construction 21 comprises a roof control system 11, a moveable panel 23 and cabling 25 for moving the panel 23, and a blind 24 extending below the movable panel 23. The roof control system 11 comprises a motor 13 and a controller 1 (an embodiment of the controller of the invention).

    [0037] The direction of the rotor of the motor 13 determines in which direction the cabling 25 is pulled, which determines the direction in which the panel 23 moves. The cabling 25 can be used to let the panel 23 move vertically in addition to horizontally. In Fig. 4, the controller 1 is located next to the motor 13. In an alternative embodiment, the controller 1 may be located elsewhere, e.g. in the overhead console or as a clip-on on the motor 13.

    [0038] Fig. 5 illustrates how a pinch situation may occur in practice. A rod is shown, resembling a human body part, which is pinched between a moveable (glass) panel and a bulb seal of a fixed part of the open roof construction. The bottom of the fixed part of the open roof construction, i.e. the bottom of Fig. 5, is above the normal position of a driver's head. The panel would need to move to the left and down in order to close the roof, but cannot due to the rod obstructing its way. The force applied to the rod (i.e. the human body part) should stay below 100 newtons (N) according to current requirements.

    [0039] Fig. 6 depicts an embodiment of the controller of the invention. In this embodiment, the controller 1 comprises a printed circuit board on which a processor 3, an input port 5, an output port 7, and power connector 9 are installed. The power connector 9 may be coupled to a vehicle battery, for example. The processor 3 may be an Atmel ATmega8 or ATmega168 microcontroller, for example. The processor 3 is configured to use the output port 7 to control the motor 13. The processor 3 is further configured to determine a reference state signal from the input received on the input port 5, e.g. to extract sampled data from a data stream.

    [0040] The reference state signal comprises measurements of a speed of a rotor of the motor 13 and/or a current supplied to the rotor of the motor 13. If the reference state signal does not comprise measurements of the current supplied to the rotor, the reference state signal comprises estimates of the current supplied to the rotor. If the reference state signal does not comprise measurements of the speed of the rotor, the reference state signal comprises estimates of the speed of the rotor.

    [0041] The processor 3 may be configured to determine the input signal from the input received on the input port 5 as well. The input signal comprises measurements or estimates of a voltage supplied to the rotor of the motor 13. Either a single value or multiples values representing the voltage supplied to the rotor may be received on the input port 5. Alternatively, the voltage supplied to the rotor may be configured/programmed in the processor 3. If the reference state signal does not comprise measurements of the current supplied to the rotor of the motor, the current supplied to the rotor of the motor may be computed from the speed of the rotor and the voltage supplied to the rotor. In an alternative embodiment, multiple processors may be used instead of a single processor. For instance, a first processor may be subjected to control the motor for the movable panel whereas a second processor may control the motor for the blind.

    [0042] The controller 1 may be used in other constructions than roof constructions. For example, the controller 1 may be used to control a motor of a closure (e.g. a movable window) and/or blind in a side door, slide door or tailgate of a vehicle body.

    [0043] In order to detect an undesired obstruction in the path of the closure and/or blind driven by the motor 13 without relying on a reference field, a state observer, known from control theory, may be used as a starting point. An important principle of a state observer is that the difference between the actual and predicted outputs is used, i.e. fed back into the system. Similarly, if at least one of the parameters of the internal state of the system is measured, the difference between the actual and predicted internal state may be used, i.e. fed back into the system. An example of this is described in the paper "A Full Adaptive Observer for DC Servo Motors" by Ata Sevinç, published in Turk J Elec Engin, VOL.11, NO.2 2003.

    [0044] The controller 1 may be programmed to perform the method shown in Fig. 7. In the embodiment of the method of the invention shown in Fig. 7, the difference between the afore-mentioned reference state signal and an estimated state signal is fed back into the system in what will be referred to as an "error signal". In Figs. 7 and 8, the numbers shown in the ovals refer to reference numerals of blocks depicted in Figs. 9 to 11. A block identified in a step (rectangle) is used to carry out this step in the mathematical models represented in Figs. 9 to 11. These blocks will be described later in this specification in the description of Figs. 9 to 11.

    [0045] A step 41 comprises determining a reference state signal comprising measurements of at least one of a speed of a rotor of the motor and a current supplied to the rotor. A step 43 comprises repeatedly estimating motor model parameters of the motor. A step 45 comprises determining an estimated state signal based on an input signal comprising measurements or estimates of a voltage supplied to the rotor, the estimated motor model parameters, the reference state signal and an error signal. As mentioned above, the error signal represents the difference between the reference state signal and the estimated state signal.

    [0046] A step 47 comprises determining a disturbance observer signal from the error signal. A step 49 comprises computing a first derivative of the disturbance observer signal at a present moment. A step 51 comprises detecting an undesired obstruction in the path of the closure and/or blind driven by the motor if the first derivative of the disturbance observer signal exceeds a threshold. A step 53 comprises reversing the rotor of the motor upon detecting the obstruction. These steps will be described in more detail in relation to Fig. 9.

    [0047] The embodiment of the method of the invention shown in Fig. 8 has been extended compared to the embodiment shown in Fig. 7. Steps 47 and 49 have been replaced with steps 61, 63 and 65. Step 61 comprises determining a first disturbance observer signal from the error signal. Step 63 comprises determining a second disturbance observer signal from the first disturbance observer signal by applying one or more filters. The one or more filters attenuate or reject signals with a frequency below a first frequency, e.g. below 0.1 Hz (or even below 0.5 Hz), or above a second frequency, e.g. above 500 Hz (or even above 250 Hz). Step 65 comprises computing the first derivative of the second disturbance observer signal at the present moment. These steps will be described in more detail in relation to Fig. 10.

    [0048] The software that allows the processor 3 of the controller 1 shown in Fig. 6 to perform the method may be developed by first creating a mathematical model and then automatically generating C code from the mathematical model, for example. The generated C code may be optimized for the specific type of processor being used. A high-level representation of a first mathematical model is shown in Fig. 9.

    [0049] The goal of programming a controller to perform the method of Fig. 7 is to configure at least one processor to determine a reference state signal 82 comprising measurements of at least one of a speed of a rotor of the motor and a current supplied to the rotor (the reference state signal 82 must comprise either measurements of both a speed of the rotor and a current supplied to the rotor or a combination of a measurement of one of the speed of the rotor and the current supplied to the rotor and an estimate of the other one of the speed of the rotor and the current supplied to the rotor), repeatedly estimate motor model parameters of the motor, determine an estimated state signal 84 based on an input signal 81 comprising measurements or estimates of a voltage supplied to the rotor, the estimated motor model parameters, the reference state signal 82 and an error signal 83 (which represents a difference between the reference state signal 82 and the estimated state signal 84), determine a disturbance observer signal 85 from the error signal 83, compute a first derivative of the disturbance observer signal 85 at a present moment, detect an undesired obstruction in the path of the closure and/or blind driven by the motor if the first derivative of the disturbance observer signal 85 exceeds a threshold, and reverse the rotor of the motor upon detecting the obstruction. This is reflected in the representation of Fig. 9.

    [0050] Typically, the at least one processor is configured to repeatedly estimate the motor model parameters of the motor based on the input signal 81, the error signal 83, the reference state signal 82 and the estimated state signal 84, as also reflected in the representation of Fig. 9.

    [0051] The behavior of the controller of the invention may be modeled as a system. The state-space model representation of a linear system can assume the following form:





    [0052] x represents the internal state signal. u represents the input signal. y represents the output signal. A, B, C and D are normally predetermined matrices. These equations are typically used to infer the internal state signal based on known input and output signals. In the model represented in Fig. 9, the output signal y is not modeled, but instead, known input and internal state signals are used to estimate matrices A and B, amongst others.

    [0053] The inventor has found that the following equation (equation 151 of Fig. 12) is beneficial for modeling the digital signal processing to be performed by the controller:



    [0054] State observer theory has been applied to form the above equation. x̂ represents the estimated state signal, while x represents the (known) reference state signal. x comprises a vector

    in which ω represents rotor speed and I represents the armature current. u is equal to Ub, which represents the supply voltage. Â and B̂ represent estimates of matrices A and B, which comprise motor model parameters. Ŵ represents a disturbance observer. Am has been defined as follows (see also equation 159 of Fig. 12):



    [0055] The difference between the reference state signal (x) and the estimated state signal (x̂) can be defined as error (signal) e (see also equation 152 of Fig. 12):



    [0056] The error signal is determined in block 91 of Fig. 9. Furthermore, rewriting equation 151 of Fig. 12 results in the following equation (equation 153 of Fig. 12):



    [0057] The first term (-eAm) is represented by block 92 in Fig. 9. The second term (Ax) is represented by block 93 in Fig. 9. The third term (B̂u) is represented by block 94. The fourth term (W) is represented by block 95. The summation of the four terms is represented by block 96. Block 97 represents the integration of

    over time, which results in x̂. Block 98 represents a unit delay and allows e(k) to be determined as x(k) - x̂(k - 1).

    [0058] The inventor has further determined that Â, B̂ and W may be computed with the following equations (shown as equations 154, 155 and 156 in Fig. 12):







    [0059] In order determine  and B̂ from

    and

    , initial values for A and B need to be defined. These initial values A0 and B0 may be the same as the values for A and B that are regularly used to model a DC motor in a state space representation (see also equations 157 and 158 of Fig. 12):





    [0060] B and J are the internal friction and inertia of the motor, respectively. Ra and La are the armature resistance and inductance, respectively. Ke and Kt are motor constants. Ke defines the linear relationship between ω and Ucmf: Ucmf = Keω, in which Ucmf is the electromotive force voltage. Kt defines the linear relationship between armature current and motor torque: Tm=KtI. This high level motor model is described in more detail in "Optimal State Space Control of DC Motor", M. Ruderman et al., Proceedings of the 17th World Congress of the International Federation of Automatic Control, vol. 17, no. 1, pp. 5796-5801, 2008.

    [0061] After the disturbance observer signal 85 (W) has been determined in block 95, the absolute value of the first derivative of the disturbance observer signal 85 (W) at the present moment is computed in block 101 and passed to block 102. In block 102, this absolute value of the first derivative is compared to a threshold. If the absolute value is determined to be higher than the threshold, it is determined that there is an obstruction and that the motor should be reversed. In an alternative embodiment, the first derivative of the disturbance observer signal 85 is compared to both a positive threshold and a negative threshold. If the first derivative of the disturbance observer signal 85 is determined to be higher than the positive threshold or lower than the negative threshold, it is determined that there is an obstruction and that the motor should be reversed. Preferably, the absolute values of the positive threshold and the negative threshold are similar or the same.

    [0062] The threshold is typically determined individually for each vehicle type, e.g. based on test results. In an embodiment, the threshold is set 30% higher than the average evaluation value. In certain situations, an obstruction may be determined not to have taken place despite the threshold being exceeded or pinch detection may be disabled, e.g. during startup of the roof control module. The threshold may be adjusted automatically during operation, e.g. the threshold may be increased in open direction or when voltage increases.

    [0063] Fig. 10 shows a high-level representation of a second mathematical model, which is an extension of the first mathematical model of Fig. 9. Converting this mathematical model into C code results in the at least one processor being programmed differently. In this embodiment, the at least one processor is configured to determine a first disturbance observer signal 111 from the error signal 83 (in block 95), determine a second disturbance observer signal 112 from the first disturbance observer 111 signal by applying one or more filters (e.g. a band-pass filter) 114 and subsequently compute the first derivative of the second disturbance observer signal 112 at the present moment, e.g. the absolute value of the first derivative. The one or more filters, e.g. one or more Butterworth filters, 114 attenuate or reject signals with a frequency below a first frequency, e.g. below 0.1 Hz (or even below 0.5 Hz), or above a second frequency, e.g. above 500 Hz (or even above 250 Hz). For example, signals with certain frequencies may be attenuated while signals with certain other frequencies are rejected. In case multiple filters 114 are applied, these filters are placed in series with regard to each other.

    [0064] Fig. 11 shows a high-level representation of a third mathematical model, which is an extension of the second mathematical model of Fig. 10. Converting this mathematical model into C code results in the at least one processor being programmed differently. In this embodiment, the at least one processor is configured to determine a second error signal 122 from a first error signal 121 (determined in block 91) by applying a low-pass filter 124 and determine the estimated state signal 84 based on the second error signal 122 (in blocks 92-98). The first and second error signals 121 and 122, respectively, each represent a difference between the reference state signal 82 and the estimated state signal 84 and the low-pass filter (e.g. a Butterworth filter) 124 attenuates or rejects signals with a frequency above a certain frequency, e.g. above 10 Hz. For example, signals with certain frequencies may be attenuated while signals with certain other frequencies are rejected.

    [0065] Preferably, this certain frequency is the same as the first frequency described in relation to Fig. 10, e.g. between 0.1 and 10 Hz. In the embodiment of Fig. 11, the at least one processor is configured to determine the first disturbance observer signal 111 from the first error signal 121. In an alternative embodiment, the low-pass filter 124 is added to the mathematical model represented by Fig. 9 without using the one or more filters 114 as described in relation to Fig. 10.

    [0066] The reference state signal 82 must comprise either measurements of both a speed of the rotor and a current supplied to the rotor or a combination of a measurement of one of the speed of the rotor and the current supplied to the rotor and an estimate of the other one of the speed of the rotor and the current supplied to the rotor. If the reference state signal 82 shown in Figs. 9 to 11 does not comprise measurements of the current supplied to the rotor of the motor, the current supplied to the rotor of the motor may be computed from the speed of the rotor and the voltage supplied to the rotor. Fig. 13 shows an example of how to compute the current supplied to the rotor of the motor from the pinion speed and the voltage supplied to the rotor. The rotor speed can be determined from the pinion speed by multiplying the pinion speed with a ratio appropriate for the motor in question.

    [0067] In the example of Fig. 13, the current (mA) at time k is determined by first subtracting the pinion speed (rad/s) multiplied with constant Ke (the motor constant used in equation 157 of Fig. 8) in gain 181 and the current at time k-1 multiplied with constant Ra (the armature resistance) in gain 182 from the voltage (mV) supplied to the rotor in adder 183. The resulting value is then multiplied with the direction of the motor in multiplier 184 in order to obtain the current at time k. The current at time k is fed back to the gain 182 via unit delay 185 to allow the current to be determined at time k+1.

    [0068] Various embodiments of the invention may be implemented as a program product for use with a computer system, where the program(s) of the program product define functions of the embodiments (including the methods described herein). In one embodiment, the program(s) can be contained on a variety of non-transitory computer-readable storage media, where, as used herein, the expression "non-transitory computer readable storage media" comprises all computer-readable media, with the sole exception being a transitory, propagating signal. In another embodiment, the program(s) can be contained on a variety of transitory computer-readable storage media. Illustrative computer-readable storage media include, but are not limited to: (i) non-writable storage media (e.g., read-only memory devices within a computer such as CD-ROM disks readable by a CD-ROM drive, ROM chips or any type of solid-state non-volatile semiconductor memory) on which information is permanently stored; and (ii) writable storage media (e.g., flash memory, floppy disks within a diskette drive or hard-disk drive or any type of solid-state random-access semiconductor memory) on which alterable information is stored. The computer program may be run on the processor 3 described herein.

    [0069] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.

    [0070] The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of embodiments of the present invention has been presented for purposes of illustration, but is not intended to be exhaustive or limited to the implementations in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope of the present invention. The embodiments were chosen and described in order to best explain the principles and some practical applications of the present invention, and to enable others of ordinary skill in the art to understand the present invention for various embodiments with various modifications as are suited to the particular use contemplated.


    Claims

    1. A controller (1) for controlling a motor (13) of a closure (23) and/or blind (24) in a vehicle body, comprising at least one processor (3) configured to:

    - determine a reference state signal (82) comprising measurements of at least one of a speed of a rotor of said motor (13) and a current supplied to said rotor,

    - repeatedly estimate motor model parameters of said motor (13),

    - determine an estimated state signal (84) based on an input signal (81) comprising measurements or estimates of a voltage supplied to said rotor, said estimated motor model parameters, said reference state signal (82) and an error signal (83), said error signal (83) representing a difference between said reference state signal (82) and said estimated state signal (84),

    - determine a disturbance observer signal (85) from said error signal,

    - compute a first derivative of said disturbance observer signal (85) at a present moment,

    - detect an undesired obstruction in the path of said closure (23) and/or blind (24) driven by said motor (13) if said first derivative of said disturbance observer signal exceeds a threshold, and

    - reverse said rotor of said motor (13) upon detecting said obstruction.


     
    2. A controller (1) as claimed in claim 1, wherein said at least one processor (3) is configured to repeatedly estimate said motor model parameters of said motor based on said input signal (81), said error signal (83), said reference state signal (82) and said estimated state signal (84).
     
    3. A controller (1) as claimed in claim 1 or 2, wherein said at least one processor is configured to determine a first disturbance observer signal (111) from said error signal (83), determine a second disturbance observer signal (112) from said first disturbance observer (111) signal by applying one or more filters (114), and subsequently compute said first derivative of said second disturbance observer signal (112) at said present moment, said one or more filters (114) attenuating or rejecting signals with a frequency below a first frequency or above a second frequency.
     
    4. A controller (1) as claimed in claim 3, wherein said one or more filters (114) attenuate or reject signals with a frequency below 0.1 Hz or above 500 Hz
     
    5. A controller (1) as claimed in claim 4, wherein said one or more filters (114) attenuate or reject signals with a frequency below 0.5 Hz or above 250Hz.
     
    6. A controller (1) as claimed in any one of the preceding claims, wherein said at least one processor (3) is configured to determine a second error signal (122) from a first error signal (121) by applying a low-pass filter (124) and determine said estimated state signal (84) based on said input signal (81), said estimated motor model parameters, said reference state signal (82) and said second error signal (122), said first and second error signals (121, 122) each representing a difference between said reference state signal (82) and said estimated state signal (84), said low-pass filter (124) attenuating or rejecting signals with a frequency above a certain frequency.
     
    7. A controller (1) as claimed in claim 6, wherein said low-pass filter (124) attenuates or rejects signals with a frequency above 10 Hz.
     
    8. A controller (1) as claimed in any one of the preceding claims, wherein said at least one processor (3) is configured to compute an absolute value of said first derivative of said disturbance observer signal (85,112) at said present moment and detect said undesired obstruction if said absolute value is higher than a threshold and/or said at least one processor (3) is configured to detect said undesired obstruction if said first derivative of said disturbance observer signal is higher than a positive threshold or lower than a negative threshold.
     
    9. A closure and/or blind system for a vehicle body comprising the controller (1) for controlling a motor (13) of any one of claims 1 to 8, said motor (13) and a closure and/or blind (24) driven by said motor (13), said motor being configured to move said closure and/or blind (24) in said vehicle body.
     
    10. A closure and/or blind system as claimed in claim 9, wherein said closure and/or blind system is an open roof construction (21) and said closure comprises at least one moveable panel (23).
     
    11. A method of controlling a motor of a closure and/or blind in a vehicle body, comprising:

    - determining (41) a reference state signal comprising measurements of at least one of a speed of a rotor of said motor and a current supplied to said rotor;

    - repeatedly estimating (43) motor model parameters of said motor;

    - determining (45) an estimated state signal based on an input signal comprising measurements or estimates of a voltage supplied to said rotor, said estimated motor model parameters, said reference state signal and an error signal, said error signal representing a difference between said reference state signal and said estimated state signal;

    - determining (47) a disturbance observer signal from said error signal;

    - computing (49) a first derivative of said disturbance observer signal at a present moment;

    - detecting (51) an undesired obstruction in the path of said closure and/or blind driven by said motor if said first derivative of said disturbance observer signal exceeds a threshold; and

    - reversing (53) said rotor of said motor upon detecting said obstruction.


     
    12. A method as claimed in claim 11, wherein determining (47) said disturbance observer signal from said error signal and computing (49) said first derivative of said disturbance observer signal at said present moment comprises:

    - determining (61) a first disturbance observer signal from said error signal;

    - determining (63) a second disturbance observer signal from said first disturbance observer signal by applying one or more filters, said one or more filters attenuating or rejecting signals with a frequency below a first frequency or above a second frequency; and

    - computing (65) said first derivative of said second disturbance observer signal at said present moment.


     
    13. A method as claimed in claim 11 or 12, wherein determining (45) said estimated state signal based on said input signal, said estimated motor model parameters, said reference state signal and said error signal comprises:

    - determining a second error signal from a first error signal by applying a low-pass filter, said first and second error signals each representing a difference between said reference state signal and said estimated state signal; and

    - determining said estimated state signal based on said input signal, said estimated motor model parameters, said reference state signal and said second error signal, said low-pass filter attenuating or rejecting signals with a frequency above a certain frequency.


     
    14. A method as claimed in claim 12 or 13, wherein said one or more filters attenuate or reject signals with a frequency below 0.1 Hz or above 500 Hz and/or said low-pass filter attenuates or rejects signals with a frequency above 10 Hz.
     
    15. A computer program or suite of computer programs comprising at least one software code portion or a computer program product storing at least one software code portion, the software code portion, when run on a computer system, being configured for performing the method of any one of claims 11 to 14.
     


    Ansprüche

    1. Steuerung (1) zum Steuern eines Motors (13) einer Schließvorrichtung (23) und/oder Jalousie (24) in einer Fahrzeugkarosserie, aufweisend mindestens einen Prozessor (3), der konfiguriert ist zum:

    - Ermitteln eines Referenzzustand-Signals (82), aufweisend Messungen von zumindest einem von einer Geschwindigkeit eines Rotors des Motors (13) und einem dem Rotor zugeführten Strom,

    - wiederholt Abschätzen von Motormodellparametern des Motors (13),

    - Ermitteln eines Geschätzter-Zustand-Signals (84) basierend auf einem Eingangssignal (81), das Messungen oder Schätzungen einer an den Motor gelieferten Spannung aufweist, den abgeschätzten Motormodellparametern, dem Referenzzustand-Signal (82) und einem Fehlersignal (83), wobei das Fehlersignal (83) eine Differenz zwischen dem Referenzzustand-Signal (82) und dem Geschätzter-Zustand-Signal (84) repräsentiert,

    - Ermitteln eines Störungsbeobachtersignals (85) aus dem Fehlersignal,

    - Berechnen einer ersten Ableitung des Störungsbeobachtersignals (85) zu einem gegenwärtigen Zeitpunkt,

    - Detektieren einer ungewünschten Behinderung in dem Pfad der von dem Motor (13) angetriebenen Schließvorrichtung (23) und/oder Jalousie (24), wenn die erste Ableitung des Störungsbeobachtersignals eine Schwelle überschreitet, und

    - Umkehren des Rotors des Motors (13) bei Detektieren der Behinderung.


     
    2. Steuerung (1) wie beansprucht in Anspruch 1, wobei der mindestens eine Prozessor (3) konfiguriert ist, die Motormodellparameter des Motors basierend auf dem Eingangssignal (81), dem Fehlersignal (83), dem Referenzzustand-Signal (82) und dem Geschätzter-Zustand-Signal (84) wiederholt abzuschätzen.
     
    3. Steuerung (1) wie beansprucht in Anspruch 1 oder 2, wobei der mindestens eine Prozessor konfiguriert ist, ein erstes Störungsbeobachtersignal (111) aus dem Fehlersignal (83) zu ermitteln, ein zweites Störungsbeobachtersignal (112) aus dem ersten Störungsbeobachtersignal (111) zu ermitteln durch Anwenden eines oder mehrerer Filter (114), und nachfolgend die erste Ableitung des zweiten Störungsbeobachtersignals (112) zu dem gegenwärtigen Zeitpunkt zu berechnen, wobei der eine oder die mehreren Filter (114) Signale mit einer Frequenz unterhalb einer ersten Frequenz oder oberhalb einer zweiten Frequenz dämpft/dämpfen oder zurückweist/zurückweisen.
     
    4. Steuerung (1) wie beansprucht in Anspruch 3, wobei der eine oder die mehreren Filter (114) Signale mit einer Frequenz unterhalb 0,1 Hz oder oberhalb 500 Hz dämpft/dämpfen oder zurückweist/zurückweisen.
     
    5. Steuerung (1) wie beansprucht in Anspruch 4, wobei der eine oder die mehreren Filter (114) Signale mit einer Frequenz unterhalb 0,5 Hz oder oberhalb 250 Hz dämpft/dämpfen oder zurückweist/zurückweisen.
     
    6. Steuerung (1) wie beansprucht in irgendeinem der vorhergehenden Ansprüche, wobei der mindestens eine Prozessor (3) konfiguriert ist, ein zweites Fehlersignal (122) aus einem ersten Fehlersignal (121) zu ermitteln durch Anwenden eines Tiefpassfilters (124) und das Geschätzter-Zustand-Signal (84) basierend auf dem Eingangssignal (81), den abgeschätzten Motormodellparametern, dem Referenzzustand-Signal (82) und dem zweiten Fehlersignal (122) zu ermitteln, wobei das erste und zweite Fehlersignal (121, 122) jeweils eine Differenz zwischen dem Referenzzustand-Signal (82) und dem Geschätzter-Zustand-Signal (84) repräsentieren, wobei der Tiefpassfilter (124) Signale mit einer Frequenz oberhalb einer bestimmten Frequenz dämpft oder zurückweist.
     
    7. Steuerung (1) wie beansprucht in Anspruch 6, wobei der Tiefpassfilter (124) Signale mit einer Frequenz oberhalb 10 Hz dämpft oder zurückweist.
     
    8. Steuerung (1) wie beansprucht in irgendeinem der vorhergehenden Ansprüche, wobei der mindestens eine Prozessor (3) konfiguriert ist, einen Absolutwert der ersten Ableitung des Störungsbeobachtersignals (85, 112) zu dem gegenwärtigen Zeitpunkt zu berechnen und die ungewünschte Behinderung zu detektieren, wenn der Absolutwert höher als eine Schwelle ist, und/oder der mindestens eine Prozessor (3) konfiguriert ist, die ungewünschte Behinderung zu detektieren, wenn die erste Ableitung des Störungsbeobachtersignals höher als eine positive Schwelle oder niedriger als eine negative Schwelle ist.
     
    9. Schließvorrichtung- und/oder Jalousie-System für eine Fahrzeugkarosserie, aufweisend die Steuerung (1) zum Steuern eines Motors (13) gemäß irgendeinem der Ansprüche 1 bis 8, den Motor (13) und eine Schließvorrichtung und/oder Jalousie (24), die von dem Motor (13) angetrieben werden/wird, wobei der Motor konfiguriert ist, die Schließvorrichtung und/oder Jalousie (24) in der Fahrzeugkarosserie zu bewegen.
     
    10. Schließvorrichtung- und/oder Jalousie-System wie beansprucht in Anspruch 9, wobei das Schließvorrichtung- und/oder Jalousie-System eine Offenes-DachKonstruktion (21) ist und die Schließvorrichtung mindestens eine bewegbare Platte (23) aufweist.
     
    11. Verfahren zum Steuern eines Motors einer Schließvorrichtung und/oder Jalousie in einer Fahrzeugkarosserie, aufweisend:

    - Ermitteln (41) eines Referenzzustand-Signals, aufweisend Messungen von zumindest einem von einer Geschwindigkeit eines Rotors des Motors und einem dem Rotor zugeführten Strom;

    - wiederholt Abschätzen (43) von Motormodellparametern des Motors;

    - Ermitteln (45) eines Geschätzter-Zustand-Signals basierend auf einem Eingangssignal, das Messungen oder Schätzungen einer an den Motor gelieferten Spannung aufweist, den abgeschätzten Motormodellparametern, dem Referenzzustand-Signal und einem Fehlersignal, wobei das Fehlersignal eine Differenz zwischen dem Referenzzustand-Signal und dem Geschätzter-Zustand-Signal repräsentiert;

    - Ermitteln (47) eines Störungsbeobachtersignals aus dem Fehlersignal;

    - Berechnen (49) einer ersten Ableitung des Störungsbeobachtersignals zu einem gegenwärtigen Zeitpunkt;

    - Detektieren (51) einer ungewünschten Behinderung in dem Pfad der von dem Motor angetriebenen Schließvorrichtung und/oder Jalousie, wenn die erste Ableitung des Störungsbeobachtersignals eine Schwelle überschreitet; und

    - Umkehren (53) des Rotors des Motors bei Detektieren der Behinderung.


     
    12. Verfahren wie beansprucht in Anspruch 11, wobei das Ermitteln (47) des Störungsbeobachtersignals aus dem Fehlersignal und das Berechnen (49) der ersten Ableitung des Störungsbeobachtersignals zu dem gegenwärtigen Zeitpunkt aufweist:

    - Ermitteln (61) eines ersten Störungsbeobachtersignals aus dem Fehlersignal;

    - Ermitteln (63) eines zweiten Störungsbeobachtersignals aus dem ersten Störungsbeobachtersignal durch Anwenden eines oder mehrerer Filter, wobei der eine oder die mehreren Filter Signale mit einer Frequenz unterhalb einer ersten Frequenz oder oberhalb einer zweiten Frequenz dämpft/dämpfen oder zurückweist/zurückweisen; und

    - Berechnen (65) der ersten Ableitung des zweiten Störungsbeobachtersignals zu dem gegenwärtigen Zeitpunkt.


     
    13. Verfahren wie beansprucht in Anspruch 11 oder 12, wobei das Ermitteln (45) des Geschätzter-Zustand-Signals basierend auf dem Eingangssignal, den abgeschätzten Motormodellparametern, dem Referenzzustand-Signal und dem Fehlersignal aufweist:

    - Ermitteln eines zweiten Fehlersignals aus einem ersten Fehlersignal durch Anwenden eines Tiefpassfilters, wobei das erste und zweite Fehlersignal jeweils eine Differenz zwischen dem Referenzzustand-Signal und dem Geschätzter-Zustand-Signal repräsentieren; und

    - Ermitteln des Geschätzter-Zustand-Signals basierend auf dem Eingangssignal, den abgeschätzten Motormodellparametern, dem Referenzzustand-Signal und dem zweiten Fehlersignal, wobei der Tiefpassfilter Signale mit einer Frequenz oberhalb einer bestimmten Frequenz dämpft oder zurückweist.


     
    14. Verfahren wie beansprucht in Anspruch 12 oder 13, wobei der eine oder die mehreren Filter Signale mit einer Frequenz unterhalb 0,1 Hz oder oberhalb 500 Hz dämpft/dämpfen oder zurückweist/zurückweisen und/oder der Tiefpassfilter Signale mit einer Frequenz oberhalb 10 Hz dämpft oder zurückweist.
     
    15. Computerprogramm oder Folge von Computerprogrammen aufweisend mindestens einen Softwarecodeteil, oder Computerprogrammprodukt, das mindestens einen Softwarecodeteil speichert, wobei der Softwarecodeteil, wenn auf einem Computersystem ausgeführt, konfiguriert ist, das Verfahren gemäß irgendeinem der Ansprüche 11 bis 14 durchzuführen.
     


    Revendications

    1. Dispositif de commande (1) pour commander un moteur (13) d'une fermeture (23) et/ou d'un store (24) dans une carrosserie de véhicule, comprenant au moins un processeur (3) configuré pour :

    - déterminer un signal d'état de référence (82) comprenant des mesures d'au moins l'un d'une vitesse d'un rotor dudit moteur (13) et d'un courant fourni audit rotor,

    - estimer de manière répétée des paramètres de modèle de moteur dudit moteur (13),

    - déterminer un signal d'état estimé (84) sur la base d'un signal d'entrée (81) comprenant des mesures ou des estimations d'une tension fournie audit rotor, desdits paramètres de modèle de moteur estimés, dudit signal d'état de référence (82) et d'un signal d'erreur (83), ledit signal d'erreur (83) représentant une différence entre ledit signal d'état de référence (82) et ledit signal d'état estimé (84),

    - déterminer un signal d'observateur de perturbation (85) à partir dudit signal d'erreur,

    - calculer informatiquement une première dérivée dudit signal d'observateur de perturbation (85) à un moment présent,

    - détecter une obstruction non souhaitée dans le trajet de ladite fermeture (23) et/ou dudit store (24) entraînés par ledit moteur (13) si ladite première dérivée dudit signal d'observateur de perturbation dépasse un seuil, et

    - inverser ledit rotor dudit moteur (13) à la détection de ladite obstruction.


     
    2. Dispositif de commande (1) selon la revendication 1, dans lequel ledit au moins un processeur (3) est configuré pour estimer de manière répétée lesdits paramètres de modèle de moteur dudit moteur sur la base dudit signal d'entrée (81), dudit signal d'erreur (83), dudit signal d'état de référence (82) et dudit signal d'état estimé (84).
     
    3. Dispositif de commande (1) selon la revendication 1 ou 2, dans lequel ledit au moins un processeur est configuré pour déterminer un premier signal d'observateur de perturbation (111) à partir dudit signal d'erreur (83), déterminer un second signal d'observateur de perturbation (112) à partir dudit premier signal d'observateur de perturbation (111) par l'application d'un ou de plusieurs filtres (114), et calculer informatiquement par la suite ladite première dérivée dudit second signal d'observateur de perturbation (112) audit moment présent, lesdits un ou plusieurs filtres (114) atténuant ou rejetant des signaux avec une fréquence au-dessous d'une première fréquence ou au-dessus d'une seconde fréquence.
     
    4. Dispositif de commande (1) selon la revendication 3, dans lequel lesdits un ou plusieurs filtres (114) atténuent ou rejettent des signaux avec une fréquence au-dessous de 0,1 Hz ou au-dessus de 500 Hz.
     
    5. Dispositif de commande (1) selon la revendication 4, dans lequel lesdits un ou plusieurs filtres (114) atténuent ou rejettent des signaux avec une fréquence au-dessus de 0,5 Hz ou au-dessus de 250 Hz.
     
    6. Dispositif de commande (1) selon l'une quelconque des revendications précédentes, dans lequel ledit au moins un processeur (3) est configuré pour déterminer un second signal d'erreur (122) à partir d'un premier signal d'erreur (121) par l'application d'un filtre passe-bas (124) et déterminer ledit signal d'état estimé (84) sur la base dudit signal d'entrée (81), desdits paramètres de modèle de moteur estimés, dudit signal d'état de référence (82) et dudit second signal d'erreur (122), lesdits premier et second signaux d'erreur (121, 122) représentant chacun une différence entre ledit signal d'état de référence (82) et ledit signal d'état estimé (84), ledit filtre passe-bas (124) atténuant ou rejetant des signaux avec une fréquence au-dessus d'une certaine fréquence.
     
    7. Dispositif de commande (1) selon la revendication 6, dans lequel ledit filtre passe-bas (124) atténue ou rejette des signaux avec une fréquence au-dessus de 10 Hz.
     
    8. Dispositif de commande (1) selon l'une quelconque des revendications précédentes, dans lequel ledit au moins un processeur (3) est configuré pour calculer informatiquement une valeur absolue de ladite première dérivée dudit signal d'observateur de perturbation (85, 112) audit moment présent et détecter ladite obstruction non souhaitée si ladite valeur absolue est supérieure à un seuil et/ou ledit au moins un processeur (3) est configuré pour détecter ladite obstruction non souhaitée si ladite première dérivée dudit signal d'observateur de perturbation est supérieure à un seuil positif ou inférieure à un seuil négatif.
     
    9. Système de fermeture et/ou de store pour une carrosserie de véhicule comprenant le dispositif de commande (1) pour commander un moteur (13) selon l'une quelconque des revendications 1 à 8, ledit moteur (13) et une fermeture et/ou un store (24) entraînés par ledit moteur (13), ledit moteur étant configuré pour déplacer ladite fermeture et/ou ledit store (24) dans ladite carrosserie de véhicule.
     
    10. Système de fermeture et/ou de store selon la revendication 9, dans lequel ledit système de fermeture et/ou de store est une construction de toit ouvrant (21) et ladite fermeture comprend au moins un panneau mobile (23).
     
    11. Procédé de commande d'un moteur d'une fermeture et/ou d'un store dans une carrosserie de véhicule, comprenant :

    - la détermination (41) d'un signal d'état de référence comprenant des mesures d'au moins l'un d'une vitesse d'un rotor dudit moteur et d'un courant fourni audit rotor ;

    - l'estimation répétée (43) de paramètres de modèle de moteur dudit moteur ;

    - la détermination (45) d'un signal d'état estimé sur la base d'un signal d'entrée comprenant des mesures ou des estimations d'une tension fournie audit rotor, desdits paramètres de modèle de moteur estimés, dudit signal d'état de référence et d'un signal d'erreur, ledit signal d'erreur représentant une différence entre ledit signal d'état de référence et ledit signal d'état estimé ;

    - la détermination (47) d'un signal d'observateur de perturbation à partir dudit signal d'erreur ;

    - le calcul informatique (49) d'une première dérivée dudit signal d'observateur de perturbation à un moment présent ;

    - la détection (51) d'une obstruction non souhaitée dans le trajet de ladite fermeture et/ou dudit store entraînés par ledit moteur si ladite première dérivée dudit signal d'observateur de perturbation dépasse un seuil ; et

    - l'inversion (53) dudit rotor dudit moteur à la détection de ladite obstruction.


     
    12. Procédé selon la revendication 11, dans lequel la détermination (47) dudit signal d'observateur de perturbation à partir dudit signal d'erreur et le calcul informatique (49) de ladite première dérivée dudit signal d'observateur de perturbation audit moment présent comprennent :

    - la détermination (61) d'un premier signal d'observateur de perturbation à partir dudit signal d'erreur ;

    - la détermination (63) d'un second signal d'observateur de perturbation à partir dudit premier signal d'observateur de perturbation par l'application d'un ou de plusieurs filtres, lesdits un ou plusieurs filtres atténuant ou rejetant des signaux avec une fréquence au-dessous d'une première fréquence ou au-dessus d'une seconde fréquence ; et

    - le calcul informatique (65) de ladite première dérivée dudit second signal d'observateur de perturbation audit moment présent.


     
    13. Procédé selon la revendication 11 ou 12, dans lequel la détermination (45) dudit signal d'état estimé sur la base dudit signal d'entrée, desdits paramètres de modèle de moteur estimés, dudit signal d'état de référence et dudit signal d'erreur comprend :

    - la détermination d'un second signal d'erreur à partir d'un premier signal d'erreur, par l'application d'un filtre passe-bas, lesdits premier et second signaux d'erreur représentant chacun une différence entre ledit signal d'état de référence et ledit signal d'état estimé ; et

    - la détermination dudit signal d'état estimé sur la base dudit signal d'entrée, desdits paramètres de modèle de moteur estimés, dudit signal d'état de référence et dudit second signal d'erreur, ledit filtre passe-bas atténuant ou rejetant des signaux avec une fréquence au-dessus d'une certaine fréquence.


     
    14. Procédé selon la revendication 12 ou 13, dans lequel lesdits un ou plusieurs filtres atténuent ou rejettent des signaux avec une fréquence au-dessous de 0,1 Hz ou au-dessus de 500 Hz et/ou ledit filtre passe-bas atténue ou rejette des signaux avec une fréquence au-dessus de 10 Hz.
     
    15. Programme d'ordinateur ou suite de programmes d'ordinateur comprenant au moins une portion de code logiciel ou un produit de programme d'ordinateur stockant au moins une portion de code logiciel, la portion de code logiciel, lorsqu'elle est exécutée sur un système d'ordinateur, étant configurée pour réaliser le procédé selon l'une quelconque des revendications 11 à 14.
     




    Drawing
































    Cited references

    REFERENCES CITED IN THE DESCRIPTION



    This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

    Non-patent literature cited in the description