A method for determining a window motor ripple count and a vehicle

By acquiring and correcting the current ripple during the braking and starting phases of the window motor, and constructing a mapping relationship using key operating parameters, the problem of ripple counting error was solved, thereby improving the accuracy of the window anti-pinch algorithm and the safety of vehicle operation.

CN121596107BActive Publication Date: 2026-06-26ZHEJIANG GEELY HLDG GRP CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
ZHEJIANG GEELY HLDG GRP CO LTD
Filing Date
2026-01-28
Publication Date
2026-06-26

Smart Images

  • Figure CN121596107B_ABST
    Figure CN121596107B_ABST
Patent Text Reader

Abstract

The application relates to a determination method of a window motor ripple count and a vehicle. The method comprises the following steps: acquiring a first current ripple of a window motor of the vehicle in a current brake section and a second current ripple in a next starting section; correcting the first current ripple based on a first mapping relationship between a key operation parameter corresponding to the window motor and the current ripple in the brake section to obtain a third current ripple, and correcting the second current ripple based on a second mapping relationship between the key operation parameter and the current ripple in the starting section to obtain a fourth current ripple; acquiring a first current direction corresponding to the brake section and a second current direction corresponding to the starting section; and determining the ripple count based on the first current direction, the second current direction, the third current ripple and the fourth current ripple. According to the application, the current ripples in the brake section and the starting section are acquired, and the current ripples are corrected, so that the ripple positioning errors in the brake section and the starting section are completely eliminated, and the accurate ripple count is obtained.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of vehicle control technology, specifically to a method for determining the ripple count of a window motor and a vehicle. Background Technology

[0002] With the rapid development of the automotive industry, power windows have become widespread. For passenger safety, power windows must have anti-pinch functionality to prevent fingers, arms, children's heads, and other body parts from being pinched during window closing. Currently, an increasing number of car models directly use the ripple signal of the DC motor current to count the cumulative number of motor rotations, thereby determining the distance from the top edge of the window glass to the top of the window. The accuracy of the DC motor waveform ripple count is one of the key performance indicators for evaluating the performance of the anti-pinch algorithm in the window motor controller.

[0003] During braking and starting, the motor current of the car window experiences a significant jump, which disrupts the ripple waveform superimposed on the current. The controller cannot determine the change in motor angle by counting the ripple waveform. Related technologies usually use empirical values ​​for compensation, but there is a random error between the compensation amount and the actual value of the motor angular displacement generated by each actual movement of the car window. Moreover, the random error generated by each movement is different, resulting in an error accumulation effect. Summary of the Invention

[0004] In view of this, this application provides a method for determining the ripple count of a car window motor and a vehicle, in order to solve the problem of random error that occurs when using empirical values ​​for compensation to determine the change in motor rotation angle by counting ripple waveforms in related technologies.

[0005] In a first aspect, this application provides a method for determining the ripple count of a vehicle window motor, the method comprising:

[0006] Acquire the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase;

[0007] Based on the first mapping relationship between the key operating parameters of the window motor and the current ripple of the braking section, the first current ripple is corrected to obtain the third current ripple; and based on the second mapping relationship between the key operating parameters and the current ripple of the starting section, the second current ripple is corrected to obtain the fourth current ripple.

[0008] Obtain the first current direction corresponding to the braking segment and the second current direction corresponding to the starting segment;

[0009] Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the ripple count of the motor ripple of the window motor between the braking and starting phases is determined.

[0010] Furthermore, the key operating parameters include: the first operating condition parameters and the first operating state parameters corresponding to the braking segment; wherein, the first operating condition parameters include at least one of the following parameters: motor temperature, power supply voltage, window load force, ripple speed and window running direction, and the first operating state parameters include: ripple period before braking and motor current.

[0011] The key operating parameters also include: the second operating condition parameters and the second operating state parameters corresponding to the start-up segment; wherein, the second operating condition parameters include at least one of the following parameters: motor temperature, power supply voltage, window load force, ripple speed and window running direction, and the second operating state parameters include: the peak value of the motor current of the window motor after start-up, and the duration for the motor current to drop from the peak value to the set value.

[0012] Furthermore, before correcting the first current ripple based on the first mapping relationship between the key operating parameters of the window motor and the current ripple of the braking segment, the method also includes:

[0013] Extract the first operating condition parameters and the first operating status parameters from the key operating parameters;

[0014] Obtain the first operating condition parameters and the segmented intervals of the first operating condition parameters, and combine the segmented intervals to obtain multiple calibration intervals;

[0015] Construct the first sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the braking segment;

[0016] The first operating state parameters are combined to obtain multiple correction intervals;

[0017] Construct a second sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the braking segment;

[0018] Based on the first sub-mapping relationship and the second sub-mapping relationship, the first mapping relationship is obtained.

[0019] Furthermore, before correcting the second current ripple based on the second mapping relationship between key operating parameters and the current ripple of the startup phase, the method also includes:

[0020] Extract the second operating condition parameters and the second operating status parameters from the key operating parameters;

[0021] Obtain the second operating condition parameters and the segmented intervals of the second operating condition parameters, and combine the segmented intervals to obtain multiple calibration intervals;

[0022] Construct a third sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the start-up segment;

[0023] The second operating state parameters are combined to obtain multiple correction intervals;

[0024] Construct a fourth sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the start-up segment;

[0025] Based on the third and fourth sub-mapping relationships, the second mapping relationship is obtained.

[0026] Furthermore, based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the ripple count of the motor ripple of the window motor between the braking and starting phases is determined, including:

[0027] Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the current ripple displacement of the window motor between the braking and starting phases is obtained.

[0028] Based on the current ripple displacement, the current ripple alignment result between the braking section and the starting section is determined.

[0029] Based on the current ripple alignment results, the ripple count of the motor ripple is determined.

[0030] Furthermore, based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the current ripple displacement of the window motor between the braking and starting phases is obtained, including:

[0031] Based on the third current ripple, the corresponding braking angle displacement is obtained, and based on the fourth current ripple, the corresponding starting angle displacement is obtained.

[0032] When the directions of the first current direction and the second current direction are the same, the sum of the braking angular displacement and the starting angular displacement is obtained to obtain the current ripple displacement.

[0033] When the directions of the first current direction and the second current direction are opposite, the difference between the braking angular displacement and the starting angular displacement is obtained to obtain the current ripple displacement.

[0034] Furthermore, based on the current ripple displacement, the current ripple alignment result between the braking and starting sections is determined, including:

[0035] Round the current ripple displacement to the nearest integer and obtain the target value contained in the current ripple displacement, where the target value is the value of the current ripple displacement excluding the integer.

[0036] Obtain the comparison result between the target value and the preset threshold;

[0037] Based on the comparison results, the current ripple alignment results are obtained.

[0038] Furthermore, based on the comparison results, the current ripple alignment results are obtained, including:

[0039] If the target value is less than or equal to the preset threshold, it is determined that the third current ripple and the fourth current ripple are aligned.

[0040] If the target value is greater than the preset threshold, it is determined that the third current ripple and the fourth current ripple are not aligned.

[0041] Furthermore, based on the current ripple alignment results, the ripple count of the motor ripple is determined, including:

[0042] If the comparison result indicates that the third current ripple and the fourth current ripple are aligned, then the integer value of the current ripple displacement is retained and added to the ripple count; or,

[0043] If the comparison result indicates that the third current ripple and the fourth current ripple are not aligned, then an alarm message is output and / or an internal state is set. After outputting the alarm message and / or setting the internal state, the random error elimination operation is no longer performed.

[0044] Secondly, this application provides a device for determining the ripple count of a vehicle window motor, the device comprising:

[0045] The first acquisition module is used to acquire the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase.

[0046] The correction module is used to correct the first current ripple based on the first mapping relationship between the key operating parameters of the window motor and the current ripple of the braking section to obtain the third current ripple, and to correct the second current ripple based on the second mapping relationship between the key operating parameters and the current ripple of the starting section to obtain the fourth current ripple.

[0047] The second acquisition module is used to acquire the first current direction corresponding to the braking segment and the second current direction corresponding to the starting segment;

[0048] The determination module is used to determine the ripple count of the motor ripple of the window motor between the braking and starting phases based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple.

[0049] Thirdly, this application provides a computer device, including: a memory and a processor, which are communicatively connected to each other. The memory stores computer instructions, and the processor executes the computer instructions to perform the method for determining the ripple count of a car window motor as described in the first aspect or any corresponding embodiment.

[0050] Fourthly, this application provides a computer-readable storage medium storing computer instructions for causing a computer to execute the method for determining the ripple count of a car window motor according to the first aspect or any corresponding embodiment described above.

[0051] Fifthly, this application provides a vehicle including a controller and a window motor. The controller includes a memory and a processor, which are communicatively connected. The memory stores computer instructions, and the processor executes the computer instructions to perform the method for determining the window motor ripple count described in the first aspect or any corresponding embodiment.

[0052] In this embodiment, the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase are obtained. Then, based on a first mapping relationship between the key operating parameters of the window motor and the current ripple during the braking phase, the first current ripple is corrected to obtain a third current ripple. Similarly, based on a second mapping relationship between the key operating parameters and the current ripple during the starting phase, the second current ripple is corrected to obtain a fourth current ripple. Additionally, the first current direction corresponding to the braking phase and the second current direction corresponding to the starting phase are obtained. Finally, based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the ripple count of the motor ripple between the braking and starting phases is determined. Thus, this embodiment achieves current ripple alignment by obtaining and correcting the current ripples of the braking and starting phases, completely eliminating ripple positioning errors between the braking and starting phases, obtaining a more accurate ripple count, improving the performance of the entire window ripple anti-pinch algorithm, and enhancing vehicle operating safety and reliability. Attached Figure Description

[0053] To more clearly illustrate the technical solutions in the specific embodiments of this application or the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0054] Figure 1 This is a schematic diagram of the electric window structure;

[0055] Figure 2 This is a diagram illustrating the anti-pinch requirements for electric power windows;

[0056] Figure 3 It is the current ripple waveform of the car window motor;

[0057] Figure 4 This is a flowchart illustrating the method for determining the ripple count of a car window motor according to an embodiment of this application;

[0058] Figure 5 This is a flowchart illustrating another method for determining the ripple count of a car window motor according to an embodiment of this application;

[0059] Figure 6 This is a block diagram of a device for determining the ripple count of a car window motor according to an embodiment of this application.

[0060] Figure 7 This is a schematic diagram of the hardware structure of a computer device according to an embodiment of this application. Detailed Implementation

[0061] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0062] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0063] Electric car windows are now commonplace. For passenger safety reasons, electric windows must have anti-pinch features to prevent fingers, arms, children's heads, and other body parts from being pinched during the closing process.

[0064] Early car window drive motors mostly used brushed DC motors with Hall sensors. Each rotation of the motor produced two periodic pulses from the Hall sensor to determine the cumulative number of rotations and the direction of the motor's operating current, thus determining the distance from the top edge of the window glass to the top of the window (the window position was marked as the starting position after the glass was lifted into the slot). In recent years, to reduce costs, more and more car models directly use the ripple signal of the DC motor current to count the cumulative number of rotations, replacing the function of the Hall sensor.

[0065] The waveform quality of DC motor ripple is related not only to the [voltage, motor temperature, and load] during motor operation, but also to factors such as the manufacturing process of the motor commutator, material defects, and wear and aging. The accuracy of ripple counting in the window controller is one of the key performance indicators for evaluating the performance of the window motor controller's ripple anti-pinch algorithm.

[0066] A schematic diagram of the electric window structure is shown below. Figure 1 As shown, the DC motor raises and lowers the car window glass through a drive mechanism consisting of a steel wire rope, a cable sleeve, and a lifting adjuster, and the glass moves up and down within the window guide channel.

[0067] A diagram illustrating the anti-pinch requirements for electric window power supplies is shown below. Figure 2 As shown, the main requirements for anti-pinch are:

[0068] (1) Anti-pinch detection distance range: 4mm-200mm;

[0069] (2) Maximum clamping force: 100N;

[0070] (3) After detecting clamping, reverse and retract;

[0071] (4) Test rod deflection: 5N / mm—20N / mm.

[0072] Based on the acquisition of a current ripple waveform from an actual car window motor using a DC motor, as shown below... Figure 3 As shown, a periodic ripple waveform is superimposed on the direct current. Figure 3 The vertical axis represents the motor current (A), and the horizontal axis represents the time (ms).

[0073] Counting the number of ripples is the foundation of all window ripple positioning and anti-pinch algorithms. The counting error directly affects the positioning performance of the controller for the window glass. When the positioning error exceeds the allowable range, it will cause false anti-pinch (causing the glass to mistakenly fall down on its own when it enters the groove and rises to the top, and it will not be able to enter the groove and rise to the top normally) and no anti-pinch (the object is in the anti-pinch zone, but the glass does not retreat in anti-pinch mode and instead forcibly squeezes the object).

[0074] During braking and starting, the motor current of the car window experiences a significant jump, which disrupts the ripple waveform superimposed on the current. The controller cannot determine the change in motor angle through the ripple waveform and usually uses empirical values ​​for compensation. However, there is a random error between the compensation amount and the actual value of the motor angular displacement generated by each actual movement of the car window, and the random error generated by each movement is different, resulting in an error accumulation effect.

[0075] For example, before and after the window starts to open, the motor is stationary. At the moment of startup, a driving voltage is applied to the motor terminals, generating an impulse voltage. As the motor begins to rotate, it generates a reverse electromotive force, and the motor gradually slows down until it reaches a stable speed. During the initial startup, the ripple waveform is significantly stretched due to the rapid and large changes in current, making it impossible for the controller to perform normal ripple counting. During this period, the angular displacement of the motor is usually compensated by a calibration value. After reaching a certain speed, the ripple is re-established, and the controller can then perform normal counting. Due to factors such as ambient temperature, power supply voltage, the rigidity of the clamped object, and window aging, even after calibration, there is a random error between the stroke compensation amount during the motor startup phase and the actual angular displacement of the motor. Furthermore, this error accumulates with the number of startups.

[0076] For traditional window ripple positioning algorithms, braking and starting actions are the most frequent, and these two actions usually cause the most positioning errors. Therefore, how to eliminate the random errors in ripple positioning during braking and starting is the key to obtaining accurate ripple counts.

[0077] The relationship between braking and starting of the car window motor is as follows: During the several ripples of the braking phase, the motor speed drops to zero, and then the motor stops, waiting for the next starting phase. However, the next starting phase may be a start in the same direction or a start in the opposite direction. Therefore, there are four possible combinations of braking and the next starting phase:

[0078] Braking during descent - initiation of descent;

[0079] Braking during downward movement - starting upward movement;

[0080] Braking during upward movement - initiating downward movement;

[0081] Braking while moving upwards - starting moving upwards.

[0082] Regardless of the combination, due to the self-locking of the worm gear in the window motor and the friction of the window lifting mechanism, the angular position of the motor remains unchanged after braking until the next start. Therefore, the angular position of the motor when it starts is the same as the angular position when it last stopped. If the start is in the same direction (the direction of the current in the previous cycle is the same as the direction of the current in the current cycle, such as raising the window last time and raising it again, or lowering the window last time and lowering it again), the angular displacement of the motor will increase in the same direction, and the ripple cycle that was not completed during the previous braking will continue to be completed during the current start, and then continue to form several new cycles in the same direction. If the start is in the opposite direction (the direction of the current in the previous cycle is opposite to the direction of the current in the current cycle, such as raising the window last time and lowering it again, or lowering the window last time and raising it again), the angular displacement of the motor after starting will reverse along the path of braking, and the ripple cycle that was not completed during braking will no longer continue to be completed but will return to the starting point of the original cycle along the original angular displacement path, and then continue to reverse several new ripple cycles.

[0083] Therefore, although the window motor goes through the process of braking deceleration-stopping-starting acceleration between the braking phase and the next starting phase, the armature rotation of the window motor is continuous, and the motor ripple still has an inherent synchronization relationship.

[0084] Based on this, according to the embodiments of this application, an embodiment of a method for determining the ripple count of a car window motor is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.

[0085] This application provides a method for determining the ripple count of a car window motor, such as... Figure 4 As shown, Figure 4 This is a flowchart of a method for determining the ripple count of a car window motor according to an embodiment of this application. The method includes the following steps:

[0086] Step S401: Obtain the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase.

[0087] In this embodiment of the application, the current braking segment of the vehicle window motor refers to the motor braking process when the window stops moving (such as raising the window to the top, lowering the window to the bottom, or the inertial braking after manually releasing the button); the next starting segment of the vehicle window motor refers to the starting process of the motor from rest to rotation when the window movement is triggered again after the braking segment ends (such as continuing to raise / lower after braking).

[0088] Currently, the vehicle needs current sensors, such as shunt resistors and Hall current sensors, to collect the current signals of the motor in real time during the current braking phase and the next starting phase. Then, the onboard MCU (Microcontroller Unit) uses its ADC (Analog to Digital Converter) to convert the analog current signals collected by the current sensors into digital signals. After basic filtering (such as low-pass filtering) to remove power supply noise and line interference, the first current ripple of the current braking phase and the second current ripple of the next starting phase are finally extracted.

[0089] It should be noted that the current ripple of the window motor during the current braking phase and the next starting phase is obtained because the motor current changes suddenly and significantly during braking and starting of the window. This disrupts the original ripple waveform, making it impossible for the controller to count accurately. Existing algorithms typically use fixed empirical values ​​to compensate for the missing counts during this period, but this compensation method is prone to random errors, and these errors accumulate with the increase in the number of braking and starting operations. More importantly, braking and starting are the most frequent actions in window operation, and the positioning errors they introduce will seriously affect the accuracy of ripple counting, thereby affecting the window's anti-pinch function and positioning effect. Therefore, this embodiment obtains these two ripple segments to eliminate errors and prevent the anti-pinch function from being falsely triggered, such as preventing the glass from descending on its own when it enters the groove and rises, and to ensure accurate positioning of the window glass.

[0090] Step S402: Based on the first mapping relationship between the key operating parameters corresponding to the window motor and the current ripple of the braking segment, the first current ripple is corrected to obtain the third current ripple; and based on the second mapping relationship between the key operating parameters and the current ripple of the starting segment, the second current ripple is corrected to obtain the fourth current ripple.

[0091] In this embodiment of the application, the key operating parameters include: the first operating condition parameters and the first operating state parameters corresponding to the braking segment, and the second operating condition parameters and the second operating state parameters corresponding to the starting segment.

[0092] The first operating condition parameter focuses on the external environment and basic operating conditions of the motor during braking, covering at least one of the following: motor temperature, power supply voltage, window load, ripple speed, and window running direction. It can directly reflect the external variables that affect the motor's operating state. The second operating state parameter focuses on the instantaneous operating characteristics of the motor before braking, specifically including the ripple period and motor current before braking, which can directly characterize the motor's operating speed and the load resistance it experiences before braking.

[0093] For example, selecting motor temperature and supply voltage, specifically a motor temperature of 42℃ (due to conduction from the high-temperature outdoor environment, the motor temperature is higher than normal) and a supply voltage of 13.8V (the vehicle is idling, and the power supply system is outputting stably), these two parameters can quickly reflect the core operating environment and power supply foundation of the motor during braking. Another example: adding the window's direction of movement to these two parameters, specifically a motor temperature of 42℃, a supply voltage of 13.8V, and the window moving downwards, further clarifies the motor's driving direction and more comprehensively outlines the basic operating conditions of the braking phase.

[0094] The second operating condition parameters are consistent with the first operating condition parameters of the braking phase, covering at least one of the following: motor temperature, power supply voltage, window load, ripple speed, and window running direction. They can intuitively reflect the external variables that affect the motor's operating status. The second operating condition parameters involve the motor's power output and attenuation characteristics after startup, specifically including the peak motor current after startup and the duration for the current to drop from the peak value to the set value. They can accurately reflect the motor's working status during the startup phase.

[0095] For example, selecting motor temperature and window load capacity, specifically a motor temperature of 41℃ (continuing the high-temperature state of the braking phase, the motor has not fully cooled down) and a window load capacity of 20N (including the weight of the window itself and slight frictional resistance under high temperature of the glass guide rail), these two parameters can intuitively reflect the temperature environment and load basis of the motor operation during the starting phase. Another example is adding ripple speed to these two parameters, specifically a motor temperature of 41℃, a window load capacity of 20N, and a ripple speed of 0.28m / s (the ripple rate corresponding to the initial speed at which the window rises after startup). This set of parameters supplements the operating speed information of the motor during the starting phase, presenting a more complete picture of the basic operating conditions during the starting phase.

[0096] In this embodiment, the process of correcting the first current ripple of the braking segment is as follows:

[0097] First, the current key operating parameters are obtained. From these parameters, the first target operating condition parameters are extracted, including motor temperature, power supply voltage, window load force, ripple speed, and window operating direction. The first sub-mapping relationship in the first mapping relationship is queried to determine the calibration interval matching the first target operating condition parameters. Then, the basic compensation amount for the braking current ripple corresponding to this calibration interval is obtained. Simultaneously, the basic compensation amount is used to perform preliminary calibration of the first current ripple to offset distortion caused by differences in external operating conditions, resulting in a preliminarily calibrated first current ripple.

[0098] Next, the first target operating state parameter is extracted from the current key operating parameters. The first target operating state parameter includes the ripple period before braking and the motor current. Then, the correction amount corresponding to the first target operating state parameter is queried through the second sub-mapping relationship in the first mapping relationship. The correction amount is used to correct the first current ripple after preliminary calibration to compensate for the error caused by different operating states before braking, so as to obtain the third current ripple that accurately reflects the actual angle change of the motor.

[0099] As an example, when performing the window-raising braking action, the current key operating parameters are first obtained, and the first target operating condition parameters are extracted from them: motor temperature 35℃, power supply voltage 13.8V, window load force 8N, ripple speed 0.2m / s, and window running direction is upward. The first sub-mapping relationship in the first mapping relationship is queried to determine that the calibration range matching this set of operating condition parameters is "temperature 30-40℃, voltage 13.5-14.0V, load force 5-10N, speed 0.15-0.25m / s, upward direction". The basic compensation amount of the braking segment current ripple corresponding to this calibration range is obtained as 0.3 ripple cycles. The basic compensation amount is used to perform preliminary calibration on the collected braking segment first current ripple to offset the ripple distortion caused by external operating condition differences, and the preliminary calibrated first current ripple is obtained.

[0100] Next, the first target operating state parameters are extracted from the current key operating parameters. The ripple period before braking is 10ms and the motor current is 2.5A. By querying the second sub-mapping relationship in the first mapping relationship, the correction amount corresponding to this set of parameters is 0.1 ripple period. At the same time, it is found that the motor current in the braking segment has obvious peak / trough period characteristics. Based on this characteristic, the correction amount is optimized to 0.12 ripple periods. This correction amount is used to correct the first current ripple after the initial calibration, to compensate for the error caused by the different operating states before braking, and finally obtain the third current ripple that accurately reflects the actual angle change of the motor.

[0101] In this embodiment of the application, the process of correcting the second current ripple of the startup segment is as follows:

[0102] First, the current key operating parameters are obtained, from which the second target operating condition parameters are extracted. These parameters include motor temperature, supply voltage, window load, ripple speed, and window operating direction. The third sub-mapping relationship in the second mapping relationship is queried to determine the calibration interval matching the second target operating condition parameters. The basic compensation amount for the starting current ripple corresponding to this calibration interval is then obtained. Simultaneously, this basic compensation amount is used to perform preliminary calibration of the second current ripple to compensate for distortion caused by differences in external operating conditions, resulting in a preliminarily calibrated second current ripple.

[0103] Then, the correction amount corresponding to the second operating state parameter is queried through the fourth sub-mapping relationship in the second mapping relationship. This correction amount is used to correct the second current ripple after preliminary calibration in order to compensate for the error caused by the change of motor operating state during startup. Finally, the fourth current ripple that accurately reflects the actual angle change of the motor is obtained.

[0104] As an example, when starting the window-raising action after completing the window-lowering braking, the current key operating parameters are first obtained, and the second target operating condition parameters are extracted from them: motor temperature 32℃, power supply voltage 13.6V, window load force 7N, ripple speed 0.18m / s, and window running direction is upward. The third sub-mapping relationship in the second mapping relationship is queried to determine that the calibration range matching this set of operating condition parameters is "temperature 30-35℃, voltage 13.4-13.8V, load force 5-8N, speed 0.15-0.20m / s, upward direction". The basic compensation amount of the starting segment current ripple corresponding to this calibration range is obtained as 0.25 ripple cycles. The basic compensation amount is used to perform preliminary calibration on the collected second current ripple of the starting segment to offset the ripple distortion caused by the difference in external operating conditions, and the preliminary calibrated second current ripple is obtained.

[0105] Next, the second target operating state parameters are extracted from the current key operating parameters. The second target operating state parameters include the peak motor current after startup being 3.2A and the duration of the motor current dropping from the peak to the set value (1.6A, i.e., 50% peak value) being 8ms. The correction amount corresponding to this set of parameters is 0.08 ripple cycles, which is queried through the fourth sub-mapping relationship in the second mapping relationship. This correction amount is used to correct the second current ripple after the initial calibration, to compensate for the error caused by the change in motor operating state during startup, and finally obtain the fourth current ripple that accurately reflects the actual change in motor rotation angle.

[0106] Step S403: Obtain the first current direction corresponding to the braking segment and the second current direction corresponding to the starting segment.

[0107] In this embodiment, during the braking and starting phases of the window motor, the ripple may be stretched and deformed by the large jump in motor current or the ripple may be too weak for the MCU to obtain effective ripple waveform information for ripple counting.

[0108] This application embodiment utilizes the inherent law of ripple phase synchronization between the current braking segment and the next starting segment, which can eliminate random errors in ripple positioning under certain conditions.

[0109] Furthermore, regarding the operation of the car windows, the braking and starting actions always occur in pairs after the window glass leaves the top of the window, until it finally returns to the top of the window. As an example, there are four combinations during the braking and starting process:

[0110] Braking during descent - initiation of descent;

[0111] Braking during downward movement - starting upward movement;

[0112] Braking during upward movement - initiating downward movement;

[0113] Braking while moving upwards - starting moving upwards.

[0114] Therefore, there are two directions for the current in a motor: upward or downward.

[0115] This allows us to determine whether the current direction corresponding to the braking phase is the same as or opposite to the current direction corresponding to the starting phase. The current direction corresponding to the braking phase is then referred to as the first current direction, and the current direction corresponding to the starting phase is referred to as the second current direction.

[0116] Understandably, these four brake-start combinations represent a complete enumeration of all possible start-stop transition logics after the car window leaves the top: the car window can only move in two directions, up or down, and the braking phase corresponds to either up or down. The starting phase after braking can either continue the direction of movement before braking or switch to the opposite direction. By arranging and combining the two possibilities of braking and starting directions, we obtain these four combinations that cover all scenarios.

[0117] Step S404: Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, determine the ripple count of the motor ripple of the window motor between the braking and starting phases.

[0118] In this embodiment, the third current ripple and the fourth current ripple are added or subtracted depending on whether the first current direction and the second current direction are in the same or opposite directions.

[0119] Then, based on the summation or subtraction results, the ripple count of the motor ripple between the braking and starting phases of the window motor is obtained.

[0120] In this embodiment, the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase are obtained. Then, based on a first mapping relationship between the key operating parameters of the window motor and the current ripple during the braking phase, the first current ripple is corrected to obtain a third current ripple. Similarly, based on a second mapping relationship between the key operating parameters and the current ripple during the starting phase, the second current ripple is corrected to obtain a fourth current ripple. Additionally, the first current direction corresponding to the braking phase and the second current direction corresponding to the starting phase are obtained. Finally, based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the ripple count of the motor ripple between the braking and starting phases is determined. Thus, this embodiment achieves current ripple alignment by obtaining and correcting the current ripples of the braking and starting phases, completely eliminating ripple positioning errors between the braking and starting phases, obtaining a more accurate ripple count, improving the performance of the entire window ripple anti-pinch algorithm, and enhancing vehicle operating safety and reliability.

[0121] This embodiment provides a method for determining the ripple count of a car window motor. Figure 5 This is a flowchart illustrating another method for determining the ripple count of a car window motor according to an embodiment of this application, as shown below. Figure 5 As shown, the process includes the following steps:

[0122] Step S501: Obtain the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase. See details below. Figure 4 Step S401 of the illustrated embodiment will not be described again here.

[0123] Step S502: Based on the first mapping relationship between the key operating parameters of the window motor and the current ripple of the braking phase, the first current ripple is corrected to obtain the third current ripple; and based on the second mapping relationship between the key operating parameters and the current ripple of the starting phase, the second current ripple is corrected to obtain the fourth current ripple. For details, please refer to [link to details]. Figure 4 Step S402 of the illustrated embodiment will not be described again here.

[0124] Step S503: Obtain the first current direction corresponding to the braking segment and the second current direction corresponding to the starting segment. For details, please refer to [link to relevant documentation]. Figure 4 Step S403 of the illustrated embodiment will not be described again here.

[0125] Step S504: Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, determine the ripple count of the motor ripple of the window motor between the braking and starting phases.

[0126] Specifically, step S504 above includes:

[0127] Step S5041: Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the current ripple displacement of the window motor between the braking and starting phases is obtained.

[0128] Optionally, a fixed number of ripples are generated for every fixed angular displacement of the motor. For example, "8 ripples per revolution of the motor" means that when the motor rotates one revolution (360° angular displacement), the current will simultaneously produce 8 complete ripples, and each ripple corresponds to an angular displacement of 45°. In other words, there is a conversion relationship between current ripple and angular displacement.

[0129] Therefore, after obtaining the third current ripple, the corresponding braking angle displacement can be determined. Similarly, after obtaining the fourth current ripple, the corresponding starting angle displacement can be determined.

[0130] When calculating the distance of the braking segment (i.e. the distance from the window frame), it is necessary to add the braking angle displacement and the distance from the first ripple valley point before braking to the current zero-crossing point to obtain the new braking angle displacement.

[0131] When calculating the distance from the start of the startup segment to a specified ripple valley, the startup angular displacement and the distance between the first ripple valley point after the startup angular displacement need to be added together to obtain a new startup angular displacement. The specified ripple must meet the conditions of stability and no distortion: it must be the first (or second) clear ripple valley point appearing after the startup segment current stabilizes (avoiding ripple deformation / weak areas caused by current jumps in the initial startup phase), and the amplitude and period of this valley point must be consistent with normal ripple characteristics (e.g., a matching degree ≥90% with the pre-calibrated ripple waveform).

[0132] When the current directions of the first current direction and the second current direction are the same, the sum of the new braking angle displacement and the new starting angle displacement is obtained to obtain the current ripple displacement, which represents the total ripple displacement of continuous operation.

[0133] When the current directions of the first current direction and the second current direction are opposite, the difference between the new braking angle displacement and the new starting angle displacement is obtained to obtain the current ripple displacement, which represents the actual change in ripple displacement.

[0134] Step S5042: Based on the current ripple displacement, determine the current ripple alignment result between the braking section and the starting section.

[0135] Optionally, after obtaining the current ripple displacement, the current ripple alignment result between the braking section and the starting section can be obtained based on the current ripple displacement.

[0136] Furthermore, the floor() or ceil() function is used to round the current ripple displacement, and then the decimal value (i.e., the target value) after removing the integer part is selected. The decimal value is compared with a preset threshold (e.g., 0.4). If the target value is less than or equal to the preset threshold, it is determined that the third current ripple and the fourth current ripple are aligned; if the target value is greater than the preset threshold, it is determined that the third current ripple and the fourth current ripple are not aligned.

[0137] It should be noted that the rounding operation in this embodiment of the application refers to directly discarding the decimal part. The reason is that the decimal part represents the displacement that has not reached a complete ripple cycle. This displacement belongs to the random error caused by the ripple synchronization deviation during the motor braking-starting process, rather than the effective ripple displacement caused by the actual rotation of the motor. If the rounding operation uses rounding, this random error will be included in the effective ripple count, causing the ripple count to deviate from the actual angular displacement of the motor. Directly discarding the decimal part can completely eliminate this random error and ensure that the ripple count is accurately matched with the actual angular displacement of the motor.

[0138] Step S5043: Based on the current ripple alignment result, determine the ripple count of the motor ripple.

[0139] In this embodiment of the application, if the comparison result shows that the third current ripple and the fourth current ripple are aligned, the integer in the current ripple displacement is retained and added to the ripple count.

[0140] If the comparison result indicates alignment, the floor() or ceil() function is called to round the current ripple displacement, discarding the decimal part, which represents the displacement that did not reach a complete ripple and is a source of random error. The retained integer part is the accurate ripple displacement that has been verified by alignment. Finally, this integer value is added directly to the current motor ripple count, and subsequent ripple counts will continue based on this value that has eliminated random errors, thus ensuring the accuracy of the window motor ripple count.

[0141] In this embodiment of the application, if the comparison result shows that the third current ripple and the fourth current ripple are not aligned, an alarm message is output and / or the internal state is set. After the alarm message is output and / or the internal state is set, the random error elimination operation is no longer performed.

[0142] If the comparison result is misaligned, it indicates that there is a large error in the correction of the braking and starting current ripples based on key operating parameters, and the ripple phases of the braking and starting sections cannot be effectively synchronized. At this time, the random error elimination mechanism can no longer play a role.

[0143] Therefore, in the event of misalignment, an alarm message is output and synchronized to the vehicle's control system to indicate a potential accuracy risk in the current window motor ripple count. Simultaneously, a corresponding internal state is set, for example, to "alignment failed." After completing the alarm and state settings, subsequent ripple counts by the controller will read this "alignment failed" state and will no longer perform the ripple synchronization to eliminate random errors. Instead, it will continue operating using the basic ripple count rules without error elimination, preventing further impact on the accuracy of the ripple count due to invalid error elimination operations.

[0144] Understandably, the internal state is a flag bit in the controller that records the reliability of phase alignment: when the small value is less than or equal to the preset threshold, the variable is set to "alignment successful"; when the small value is greater than the preset threshold, the variable is set to "alignment failed". Subsequent ripple counting will be based on this state and random error elimination will no longer be performed.

[0145] In another embodiment of this application, the process of constructing the first mapping relationship between key operating parameters and the current ripple of the braking segment is as follows:

[0146] Step a1: Extract the first operating condition parameters and the first operating status parameters from the key operating parameters.

[0147] Optionally, key operating parameters are currently divided into two main types: first operating condition parameters and first operating state parameters. The first operating condition parameters include motor temperature, supply voltage, window load force, ripple speed, and window operating direction. The first operating state parameters include: ripple period before braking (characterizing the ripple speed of the window glass) and motor current (characterizing the resistance of the window operation).

[0148] Step a2: Obtain the first operating condition parameters and the segmented intervals of the first operating condition parameters, and combine the segmented intervals to obtain multiple calibration intervals.

[0149] Optionally, motor temperature, supply voltage, window load, ripple speed, and window running direction can be used as multi-dimensional variables, and segmented into intervals according to the error threshold required by the calibration accuracy:

[0150] For example: Motor temperature: divided into "-20~0℃, 0~25℃, 25~50℃" (with 25℃ as the core, covering high and low temperature conditions); Power supply voltage: divided into "9~11V, 11~13V, 13~15V" (covering the battery voltage fluctuation range); Window load capacity: divided into "light load (initial stage of glass rising), medium load (middle section of glass), heavy load (glass near the top)"; Ripple speed: divided into "low speed, medium speed, high speed" corresponding to the ripple cycle; Window running direction: directly divided into two ranges: "rising" and "falling".

[0151] The segmented intervals corresponding to the above-mentioned motor temperature, power supply voltage, window load, ripple speed, and window running direction are combined. Currently, a Cartesian product full-dimensional coverage method can be used to pair each segment of each parameter with all segments of all other parameters one by one, ensuring that no possible actual operating conditions are missed.

[0152] Total number of calibration intervals = number of temperature segments × number of power supply voltage segments × number of load force segments × number of ripple speed segments × number of running direction segments. Substituting the values: 3 (temperature) × 3 (voltage) × 3 (load) × 3 (speed) × 2 (direction) = 162 calibration intervals.

[0153] Among the 162 combinations, there are a very small number of "invalid intervals that are impossible to occur in engineering," which need to be screened out to ensure calibration efficiency (avoiding wasting calibration resources on non-existent conditions). The screening rules are as follows:

[0154] 1. Eliminate intervals with "physical logical contradictions":

[0155] For example: "Heavy load (near the top) + high speed ripple" → contradiction (when the motor is under heavy load, the motor load is large and the speed must be low, so high speed ripple is impossible), which needs to be eliminated;

[0156] 2. Merge intervals with "similar operating conditions":

[0157] The ripple interference characteristics of some intervals are similar and can be merged into an "equivalent calibration interval" to reduce the calibration workload.

[0158] For example, “-20~0℃+9~11V+light load+high speed ripple+rising” and “-20~0℃+9~11V+light load+high speed ripple+falling” only differ in current direction, but the amplitude / frequency correction of the ripple is the same, so they can be combined into “-20~0℃+9~11V+light load+high speed ripple”.

[0159] Step a3: Construct the first sub-mapping relationship between the calibration interval and the compensation amount of the corresponding current ripple in the braking segment.

[0160] Optionally, after obtaining multiple calibration intervals as described above, each calibration interval (or a valid calibration interval) is made to correspond one-to-one with a unique braking segment current ripple, thus obtaining the first sub-mapping relationship, and finally achieving accurate mapping from operating conditions to ripple correction.

[0161] It can collect the original current ripple of the braking section more than 30 times for each calibration interval, and record the operating parameters simultaneously to ensure that the original ripple is accurately bound to the calibration interval (that is, one interval corresponds to a set of exclusive original ripple data).

[0162] Step a4: Combine the first running state parameters to obtain multiple correction intervals.

[0163] Optionally, the first operating state parameters include: the ripple period before braking and the motor current, and may also include other parameters.

[0164] Taking the first operating state parameters, including the ripple period before braking and the motor current, as an example, the ripple period (reflecting the motor speed before braking) is divided into "long period (low speed), medium period (medium speed), and short period (high speed)" according to the period length, covering the common speed range of the motor before braking.

[0165] Motor current (reflecting the load before braking): It is divided into "small current (light load), medium current (medium load), and large current (heavy load)" according to the current size, to match the load differences of different operating positions of the car window.

[0166] All-dimensional combination:

[0167] Using the Cartesian product method, the three segments of the ripple period are paired one by one with the three segments of the motor current to initially generate 3×3=9 combinations, resulting in 9 correction intervals (such as "long period + small current", "medium period + medium current", etc.).

[0168] Currently, these correction intervals can be effectively filtered to eliminate combinations with contradictory physical logic (such as "long cycle (low speed) + high current (heavy load)", where the load cannot be too large at low speed), and retain effective correction intervals (about 6-7) that conform to actual working conditions.

[0169] Step a5: Construct a second sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the braking segment.

[0170] Optionally, after obtaining multiple correction intervals as described above, each correction interval (which can also be an effective correction interval) is made to correspond one-to-one with a unique braking segment current ripple, thus obtaining a second sub-mapping relationship, and finally achieving accurate mapping from operating conditions to ripple correction.

[0171] Step a6: Based on the first sub-mapping relationship and the second sub-mapping relationship, obtain the first mapping relationship.

[0172] Optionally, the first sub-mapping relation and the second sub-mapping relation can be combined to obtain the first mapping relation.

[0173] In another embodiment of this application, the process of constructing the second mapping relationship between key operating parameters and the current ripple of the startup segment is as follows:

[0174] Step b1: Extract the second operating condition parameters and the second operating status parameters from the key operating parameters.

[0175] Optionally, as can be seen from the above embodiments, the first operating condition parameters are the same as the second operating condition parameters, both including motor temperature, power supply voltage, load force (window load force), speed ripple speed, and window running direction. The second operating condition parameters include the peak value of the window motor current after startup, and the duration for the motor current to drop from the peak value to a set value (e.g., 50% of the peak value).

[0176] Step b2: Obtain the second operating condition parameters and the segmented intervals of the second operating condition parameters, and combine the segmented intervals to obtain multiple calibration intervals.

[0177] Optionally, since the second operating condition parameters are the same as the first operating condition parameters, the process of obtaining the segmented intervals from the second operating condition parameters and combining the segmented intervals to obtain multiple calibration intervals can be referred to step a2, and will not be repeated here.

[0178] Step b3: Construct a third sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the start-up segment.

[0179] Optionally, after obtaining multiple calibration intervals as described above, each calibration interval (or a valid calibration interval) is made to correspond one-to-one with a unique start-up current ripple, thus obtaining a third sub-mapping relationship, and finally achieving accurate mapping from operating conditions to ripple correction.

[0180] It can collect more than 30 original current ripples of the start-up segment for each calibration interval, and record the operating parameters simultaneously to ensure that the original ripples are accurately bound to the calibration interval (i.e., one interval corresponds to a set of exclusive original ripple data).

[0181] Step b4: Combine the second operating state parameters to obtain multiple correction intervals.

[0182] Optionally, the peak motor current is classified into "small peak (light load start), medium peak (medium load start), and large peak (heavy load start)" according to the current amplitude.

[0183] The duration of peak value dropping to 50% is categorized by duration as follows: "short duration (rapid decay, low load / low inertia), medium duration (smooth decay, medium load), and long duration (slow decay, high load / high inertia)".

[0184] Using the Cartesian product method, the three segments of the current peak value are paired one by one with the three segments of the duration to initially generate 3×3=9 basic combinations, resulting in multiple correction intervals (such as "small peak value + short duration", "large peak value + long duration", etc.).

[0185] Currently, multiple correction intervals can be effectively filtered to eliminate combinations that contradict physical logic (such as "large peak value (heavy load) + short duration (rapid decay)", where the motor resistance is large under heavy load and the current decay is necessarily slow, which is contradictory), and retain effective correction intervals (about 6-7) that conform to the actual starting conditions.

[0186] Step b5: Construct the fourth sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the start-up segment.

[0187] Optionally, after obtaining multiple correction intervals from step b4 above, each correction interval (or effective correction interval) is made to correspond one-to-one with the unique start-up segment current ripple, thus obtaining the fourth sub-mapping relationship, and finally achieving accurate mapping from operating conditions to ripple correction.

[0188] Step b6: Based on the third and fourth sub-mapping relationships, the second mapping relationship is obtained.

[0189] Optionally, the third sub-mapping relation and the fourth sub-mapping relation can be combined to obtain the second mapping relation.

[0190] This embodiment provides a device for determining the ripple count of a vehicle window motor, such as... Figure 6 As shown, it includes:

[0191] The first acquisition module 601 is used to acquire the first current ripple of the vehicle's window motor in the current braking phase and the second current ripple in the next starting phase.

[0192] The correction module 602 is used to correct the first current ripple based on the first mapping relationship between the key operating parameters corresponding to the window motor and the current ripple of the braking section to obtain the third current ripple, and to correct the second current ripple based on the second mapping relationship between the key operating parameters and the current ripple of the starting section to obtain the fourth current ripple.

[0193] The second acquisition module 603 is used to acquire the first current direction corresponding to the braking segment and the second current direction corresponding to the starting segment;

[0194] The determination module 604 is used to determine the ripple count of the motor ripple of the window motor between the braking and starting phases based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple.

[0195] In this embodiment, the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase are obtained. Then, based on a first mapping relationship between the key operating parameters of the window motor and the current ripple during the braking phase, the first current ripple is corrected to obtain a third current ripple. Similarly, based on a second mapping relationship between the key operating parameters and the current ripple during the starting phase, the second current ripple is corrected to obtain a fourth current ripple. Additionally, the first current direction corresponding to the braking phase and the second current direction corresponding to the starting phase are obtained. Finally, based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the ripple count of the motor ripple between the braking and starting phases is determined. Thus, this embodiment achieves current ripple alignment by obtaining and correcting the current ripples of the braking and starting phases, completely eliminating ripple positioning errors between the braking and starting phases, obtaining a more accurate ripple count, improving the performance of the entire window ripple anti-pinch algorithm, and enhancing vehicle operating safety and reliability.

[0196] In some optional implementations, key operating parameters include: first operating condition parameters and first operating state parameters corresponding to the braking segment; wherein, the first operating condition parameters include at least one of the following parameters: motor temperature, power supply voltage, window load force, ripple speed and window running direction, and the first operating state parameters include: ripple period before braking and motor current.

[0197] Key operating parameters also include: second operating condition parameters and second operating state parameters corresponding to the start-up phase; wherein, the second operating condition parameters include at least one of the following parameters: motor temperature, power supply voltage, window load force, ripple speed and window running direction, and the second operating state parameters include: the peak value of the window motor current after start-up, and the duration for the motor current to drop from the peak value to the set value.

[0198] In some alternative embodiments, the device further includes:

[0199] The first extraction module is used to extract the first operating condition parameters and the first operating state parameters from the key operating parameters before correcting the first current ripple based on the first mapping relationship between the key operating parameters corresponding to the window motor and the current ripple of the braking section.

[0200] The third acquisition module is used to acquire the first operating condition parameters and the segmented intervals of the first operating condition parameters, and to combine the segmented intervals to obtain multiple calibration intervals.

[0201] The first construction module is used to construct the first sub-mapping relationship between the compensation amount of the calibration interval and the corresponding current ripple of the braking segment;

[0202] The first combination module is used to combine the first operating state parameters to obtain multiple correction intervals;

[0203] The second construction module is used to construct a second sub-mapping relationship between the correction range and the correction amount of the current ripple corresponding to the braking segment;

[0204] The first module is used to obtain the first mapping relationship based on the first sub-mapping relationship and the second sub-mapping relationship.

[0205] In some alternative embodiments, the device further includes:

[0206] The second extraction module is used to extract the second operating condition parameters and the second operating state parameters from the key operating parameters before correcting the second current ripple based on the second mapping relationship between the key operating parameters and the current ripple of the start-up segment.

[0207] The fourth acquisition module is used to acquire the second operating condition parameters and the segmented intervals of the second operating condition parameters, and to combine the segmented intervals to obtain multiple calibration intervals.

[0208] The third construction module is used to construct a third sub-mapping relationship between the compensation amount of the calibration interval and the corresponding current ripple of the start-up segment;

[0209] The second combination module is used to combine the second operating state parameters to obtain multiple correction intervals;

[0210] The third construction module is used to construct the fourth sub-mapping relationship between the correction range and the correction amount of the current ripple corresponding to the start-up segment;

[0211] The second module is used to obtain the second mapping relationship based on the third and fourth sub-mapping relationships.

[0212] In some optional implementations, the determining module 604 is used to obtain the current ripple displacement of the window motor between the braking and starting segments based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple; determine the current ripple alignment result between the braking and starting segments based on the current ripple displacement; and determine the ripple count of the motor ripple based on the current ripple alignment result.

[0213] In some optional implementations, the determining module 604 is used to obtain the corresponding braking angle displacement based on the third current ripple, and to obtain the corresponding starting angle displacement based on the fourth current ripple; when the current directions of the first current direction and the second current direction are the same, the sum of the braking angle displacement and the starting angle displacement is obtained to obtain the current ripple displacement amount; when the current directions of the first current direction and the second current direction are opposite, the difference between the braking angle displacement and the starting angle displacement is obtained to obtain the current ripple displacement amount.

[0214] In some optional implementations, the determining module 604 is used to round the current ripple displacement and obtain the target value contained in the current ripple displacement, wherein the target value is the value of the current ripple displacement excluding integers; obtain the comparison result between the target value and a preset threshold; and obtain the current ripple alignment result based on the comparison result.

[0215] In some optional implementations, the determining module 604 is used to determine that the third current ripple and the fourth current ripple are aligned if the target value is less than or equal to a preset threshold; and to determine that the third current ripple and the fourth current ripple are not aligned if the target value is greater than the preset threshold.

[0216] In some optional implementations, the determining module 604 is configured to retain the integer in the current ripple displacement and add the integer to the ripple count if the comparison result shows that the third current ripple and the fourth current ripple are aligned; or, if the comparison result shows that the third current ripple and the fourth current ripple are not aligned, output an alarm message and / or set an internal state, and after outputting the alarm message and / or setting the internal state, no longer perform the random error elimination operation.

[0217] In this embodiment, the device for determining the ripple count of the car window motor is presented in the form of a functional unit. Here, a unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that execute one or more software or fixed programs, and / or other devices that can provide the above functions.

[0218] This application also provides a computer device having the above-described features. Figure 6 The device shown is for determining the ripple count of the car window motor.

[0219] Please see Figure 7 , Figure 7 This is a schematic diagram of the structure of a computer device provided in an optional embodiment of this application, such as... Figure 7As shown, the computer device includes one or more processors 10, memory 20, and interfaces for connecting the components, including high-speed interfaces and low-speed interfaces. The components communicate with each other via different buses and can be mounted on a common motherboard or otherwise installed as needed. The processors can process instructions executed within the computer device, including instructions stored in or on memory to display graphical information of a GUI on external input / output devices (such as display devices coupled to the interfaces). In some alternative implementations, multiple processors and / or multiple buses can be used with multiple memories and multiple memory modules, if desired. Similarly, multiple computer devices can be connected, each providing some of the necessary operations (e.g., as a server array, a group of blade servers, or a multiprocessor system). Figure 7 Take a processor 10 as an example.

[0220] Processor 10 may be a central processing unit, a network processor, or a combination thereof. Processor 10 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The programmable logic device may be a complex programmable logic device (CAMP), a field-programmable gate array (FPGA), a general-purpose array logic (GDA), or any combination thereof.

[0221] The memory 20 stores instructions executable by at least one processor 10 to cause at least one processor 10 to perform the method shown in the above embodiments.

[0222] The memory 20 may include a program storage area and a data storage area. The program storage area may store the operating system and applications required for at least one function; the data storage area may store data created based on the use of the computer device. Furthermore, the memory 20 may include high-speed random access memory and may also include non-transitory memory, such as at least one disk storage device, flash memory device, or other non-transitory solid-state storage device. In some alternative embodiments, the memory 20 may optionally include memory remotely located relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of such networks include, but are not limited to, the Internet, intranets, local area networks, mobile communication networks, and combinations thereof.

[0223] The memory 20 may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as flash memory, hard disk or solid-state drive; the memory 20 may also include a combination of the above types of memory.

[0224] The computer device also includes a communication interface 30 for communicating with other devices or communication networks.

[0225] This invention also provides a computer-readable storage medium. The methods described above according to embodiments of the invention can be implemented in hardware or firmware, or implemented as computer code that can be recorded on a storage medium, or implemented as computer code downloaded via a network and originally stored on a remote storage medium or a non-transitory machine-readable storage medium and then stored on a local storage medium. Thus, the methods described herein can be processed by software stored on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. The storage medium can be a magnetic disk, optical disk, read-only memory, random access memory, flash memory, hard disk, or solid-state drive, etc.; further, the storage medium can also include combinations of the above types of memory. It is understood that computers, processors, microprocessor controllers, or programmable hardware include storage components capable of storing or receiving software or computer code, which, when accessed and executed by the computer, processor, or hardware, implements the methods shown in the above embodiments.

[0226] Although embodiments of the invention have been described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the invention, and such modifications and variations all fall within the scope defined by the appended claims.

Claims

1. A method for determining the ripple count of a car window motor, characterized in that, The method includes: Acquire the first current ripple of the vehicle's window motor during the current braking phase and the second current ripple during the next starting phase; Based on the first mapping relationship between the key operating parameters corresponding to the window motor and the current ripple of the braking segment, the first current ripple is corrected to obtain a third current ripple. Based on the second mapping relationship between the key operating parameters and the current ripple of the starting segment, the second current ripple is corrected to obtain a fourth current ripple. The first mapping relationship includes a sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the braking segment, and a sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the braking segment. The second mapping relationship includes a sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the starting segment, and a sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the starting segment. The calibration intervals in the first and second mapping relationships are generated based on the operating condition parameters and segmented intervals of the operating condition parameters corresponding to the braking and starting segments, respectively. The correction intervals in the first and second mapping relationships are generated based on the operating state parameters corresponding to the braking and starting segments, respectively. The operating condition parameters and operating state parameters corresponding to the braking and starting segments belong to the key operating parameters. Obtain the first current direction corresponding to the braking segment and the second current direction corresponding to the starting segment; Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the ripple count of the motor ripple of the window motor between the braking segment and the starting segment is determined. The ripple count of the motor ripple is determined based on the current ripple alignment result between the braking segment and the starting segment. The current ripple alignment result is determined based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple to obtain the current ripple displacement of the window motor between the braking segment and the starting segment.

2. The method according to claim 1, characterized in that, The key operating parameters include: the first operating condition parameters and the first operating state parameters corresponding to the braking segment; wherein, the first operating condition parameters include at least one of the following parameters: motor temperature, power supply voltage, window load force, ripple speed and window running direction, and the first operating state parameters include: ripple period before braking and motor current. The key operating parameters also include: the second operating condition parameters and the second operating state parameters corresponding to the start-up segment; wherein, the second operating condition parameters include at least one of the following parameters: motor temperature, power supply voltage, window load force, ripple speed and window running direction, and the second operating state parameters include: the peak value of the motor current of the window motor after start-up, and the duration for the motor current to drop from the peak value to the set value.

3. The method according to claim 1, characterized in that, Before correcting the first current ripple based on the first mapping relationship between the key operating parameters corresponding to the window motor and the current ripple of the braking segment, the method further includes: Extract the first operating condition parameters and the first operating status parameters from the key operating parameters; Obtain the first operating condition parameters and the segmented intervals of the first operating condition parameters, and combine the segmented intervals to obtain multiple calibration intervals; Construct the first sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the braking segment; The first operating state parameters are combined to obtain multiple correction intervals; Construct a second sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the braking segment; The first mapping relationship is obtained based on the first sub-mapping relationship and the second sub-mapping relationship.

4. The method according to claim 1, characterized in that, Before correcting the second current ripple based on the second mapping relationship between the key operating parameters and the current ripple of the startup segment, the method further includes: Extract the second operating condition parameters and the second operating status parameters from the key operating parameters; Obtain the second operating condition parameters and the segmented intervals of the second operating condition parameters, and combine the segmented intervals to obtain multiple calibration intervals; Construct a third sub-mapping relationship between the calibration interval and the compensation amount of the current ripple corresponding to the start-up segment; The second operating state parameters are combined to obtain multiple correction intervals; Construct a fourth sub-mapping relationship between the correction interval and the correction amount of the current ripple corresponding to the start-up segment; The second mapping relationship is obtained based on the third sub-mapping relationship and the fourth sub-mapping relationship.

5. The method according to claim 1, characterized in that, The step of determining the ripple count of the motor ripple of the window motor between the braking and starting phases based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple includes: Based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple, the current ripple displacement of the window motor between the braking segment and the starting segment is obtained. Based on the current ripple displacement, the current ripple alignment result between the braking section and the starting section is determined; Based on the current ripple alignment results, the ripple count of the motor ripple is determined.

6. The method according to claim 5, characterized in that, The method of obtaining the current ripple displacement of the window motor between the braking and starting sections based on the first current direction, the second current direction, the third current ripple, and the fourth current ripple includes: Based on the third current ripple, the corresponding braking angle displacement is obtained, and based on the fourth current ripple, the corresponding starting angle displacement is obtained. When the current directions of the first current direction and the second current direction are the same, the sum of the braking angle displacement and the starting angle displacement is obtained to obtain the current ripple displacement. When the current directions of the first current direction and the second current direction are opposite, the difference between the braking angle displacement and the starting angle displacement is obtained to obtain the current ripple displacement.

7. The method according to claim 5, characterized in that, The determination of the current ripple alignment result between the braking section and the starting section based on the current ripple displacement includes: The current ripple displacement is rounded down, and a target value contained in the current ripple displacement is obtained, wherein the target value is the value of the current ripple displacement excluding the integer. Obtain the comparison result between the target value and the preset threshold; Based on the comparison results, the current ripple alignment results are obtained.

8. The method according to claim 7, characterized in that, The process of obtaining the current ripple alignment result based on the comparison result includes: If the target value is less than or equal to the preset threshold, then it is determined that the third current ripple and the fourth current ripple are aligned. If the target value is greater than the preset threshold, it is determined that the third current ripple and the fourth current ripple are not aligned.

9. The method according to claim 7, characterized in that, The step of determining the ripple count of the motor ripple based on the current ripple alignment result includes: If the comparison result indicates that the third current ripple and the fourth current ripple are aligned, then the integer value of the current ripple displacement is retained, and this integer value is added to the ripple count; or, If the comparison result indicates that the third current ripple and the fourth current ripple are not aligned, then an alarm message is output and / or an internal state is set. After outputting the alarm message and / or setting the internal state, the random error elimination operation is no longer performed.

10. A vehicle, characterized in that, The device includes a controller and a window motor. The controller includes a memory and a processor, which are communicatively connected. The memory stores computer instructions, and the processor executes the computer instructions to perform the method of any one of claims 1 to 8.

Citation Information

Patent Citations

  • Method and system for controlling vehicle body closing part based on direct-current motor ripples

    CN111098808A

  • Motor ripple current testing method and system

    CN114371401A