Vehicle window motor ripple recognition method, device and equipment and storage medium
By collecting and processing the driving current of the window motor, calculating the average value and difference value, and extracting the ripple waveform, the problem of the accuracy of ripple recognition of window motors in the prior art is solved, and the accuracy of window position recognition is improved.
Patent Information
- Application Number
- CN202411360223.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-27
- Publication Date
- 2025-01-10
AI Technical Summary
The prior art is difficult to accurately identify the ripple of the window motor under complex operating conditions, resulting in the accuracy of window position identification.
By obtaining multiple driving current arrays output by the window motor driver in the preset time period, taking the average value of continuous elements, calculating the motor drive ripple waveform, using the difference value comparison to extract the ripple characteristics, and improving the accuracy of ripple recognition .
It realizes more accurate current ripple information acquisition and improves the accuracy of window position recognition.
Smart Images

Figure CN119298740A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of automobile body domain control, and in particular to a window motor ripple recognition method, device, equipment and storage medium. Background Art
[0002] The window ripple anti-pinch technology solution has a better cost advantage than the Hall anti-pinch solution, but the ability to accurately identify the ripple of the window motor and convert it into window position information is the main difficulty of this solution. Therefore, using a reasonable software algorithm to efficiently and accurately identify the ripple generated by the motor is one of the key technologies of the window ripple anti-pinch technology solution.
[0003] The existing solution uses direct identification of the voltage value changes of the motor current to determine the number of ripples. However, since the voltage value of the ripple accounts for less than 1 / 10 of the total voltage value, it is difficult to accurately identify the complete ripple under complex working conditions of the motor, which has a great impact on the accuracy of window position recognition.
[0004] Therefore, how to improve the accuracy of window motor ripple recognition is a problem that needs to be solved urgently. Summary of the invention
[0005] The main purpose of this application is to provide a method, device, equipment and storage medium for identifying ripple of a window motor, aiming to solve the technical problem of how to improve the accuracy of ripple identification of a window motor.
[0006] To achieve the above purpose, the present application proposes a method for identifying a motor ripple signal, the method comprising:
[0007] Acquire multiple drive current arrays output by the window motor driver within a preset time period;
[0008] Taking an average value of a first number of consecutive elements in each driving current array to obtain a current array of a first target number of elements;
[0009] Taking an average value of a second number of consecutive elements located at a preset position in the first number of consecutive elements to obtain a current array of a second target number of corresponding elements;
[0010] A motor driving ripple waveform is obtained according to the current array of the first target number of elements and the corresponding current array of the second target number of elements.
[0011] In one embodiment, the step of obtaining a plurality of drive current arrays output by the window motor driver within a preset time period includes:
[0012] Obtaining a preset acquisition interval and a preset drive current array length;
[0013] Continuously collect the driving current value according to the preset collection interval;
[0014] Storing the driving current value in a queue, wherein the length of the queue is equal to the length of the preset driving current array;
[0015] The queue is treated as a drive current array.
[0016] In one embodiment, before the continuous acquisition of the driving current value according to the preset acquisition interval, the method further includes:
[0017] If it is detected that the motor driver outputs positive and negative voltages, the step of acquiring a plurality of drive current arrays output by the window motor driver within a preset time period is performed;
[0018] If the positive or negative voltage output by the motor driver is not detected, the step of obtaining a plurality of drive current arrays output by the window motor driver within a preset time period is not performed.
[0019] In one embodiment, taking an average value of a first number of consecutive elements in each driving current array to obtain a current array of a first target number of elements includes:
[0020] Get the first target quantity;
[0021] According to the first target quantity, a first quantity is obtained;
[0022] Selecting a first number of continuous elements from the driving current array, and using the first number of continuous elements as a first element group;
[0023] An average value of the first element group is calculated, and the average value is stored in a current array of a first target number.
[0024] In one embodiment, taking an average value of a second number of consecutive elements located at a preset position in the first number of consecutive elements to obtain a current array of a corresponding second target number of elements includes:
[0025] Get the preset position and the second target quantity;
[0026] According to the second target quantity, a second quantity is obtained;
[0027] Taking a second number of consecutive elements located at a preset position among the first number of consecutive elements, and taking the second number of consecutive elements as a second element group;
[0028] An average value of the second element group is calculated, and the average value is stored in a current array of a second target number.
[0029] In one embodiment, the step of obtaining a plurality of drive current arrays output by the window motor driver within a preset time period includes:
[0030] Get the first number of elements;
[0031] Deleting the first value in the first number of elements, and adding the first element in the drive current array that is located after the first number of consecutive elements, to obtain a new first number of elements;
[0032] Taking the new first number of elements as the first element group;
[0033] Taking a second number of consecutive elements located at a preset position among the first number of consecutive elements;
[0034] Delete the second value in the second number of elements, and add the first element in the continuous first number of elements that is located after the continuous second number of elements to obtain a new second number of elements;
[0035] The new second number of elements is used as the second element group.
[0036] In one embodiment, obtaining the motor drive ripple waveform according to the current array of the first target number of elements and the corresponding current array of the second target number of elements includes:
[0037] Obtaining a difference between the current array of the first target number of elements and the current array of the corresponding second target number of elements;
[0038] According to the difference, the characteristics of the motor drive ripple are obtained;
[0039] Based on the motor drive ripple characteristics, a motor drive ripple waveform is obtained.
[0040] In addition, to achieve the above purpose, the present application also proposes a motor ripple signal identification device, the motor ripple signal identification device comprising:
[0041] An acquisition module, used for acquiring a plurality of drive current arrays output by a window motor driver within a preset time period;
[0042] A data processing module is used to take an average value of a first number of continuous elements in each driving current array to obtain a current array of a first target number of elements; take an average value of a second number of continuous elements located at a preset position in the first number of continuous elements to obtain a current array of a corresponding second target number of elements;
[0043] The output module obtains a motor driving ripple waveform according to the current array of the first target number of elements and the current array of the corresponding second target number of elements.
[0044] In addition, to achieve the above-mentioned purpose, the present application also proposes a motor ripple signal identification device, which includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, and the computer program is configured to implement the steps of the motor ripple signal identification method described above.
[0045] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by the processor, the steps of the motor ripple signal identification method described above are implemented.
[0046] In addition, to achieve the above-mentioned purpose, the present application also provides a computer program product, which includes a computer program, and when the computer program is executed by a processor, the steps of the motor ripple signal identification method described above are implemented.
[0047] One or more technical solutions proposed in this application have at least the following technical effects:
[0048] By collecting the driving current and selecting different numbers of driving currents to calculate the average value, we can obtain an array with relatively smooth data and an array with relatively drastic data changes. By comparing the difference between the two arrays, we can extract the ripple waveform generated during the operation of the motor. Compared with the existing technology, more accurate current ripple information can be obtained. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0050] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0051] Figure 1 A schematic diagram of a flow chart provided for the first embodiment of the motor ripple signal identification method of the present application;
[0052] Figure 2 This is a schematic diagram of the driving current array processing strategy in the motor ripple signal identification method of this application;
[0053] Figure 3 This is a schematic diagram of the average value processing strategy in the motor ripple signal identification method of this application;
[0054] Figure 4 This is a logical diagram of reducing CPU load by using the average value first-in-first-out method in the motor ripple signal identification method of this application;
[0055] Figure 5 A schematic diagram of a flow chart provided for the second embodiment of the motor ripple signal identification method of the present application;
[0056] Figure 6 This is a schematic diagram of the module structure of the motor ripple signal identification device according to an embodiment of the present application;
[0057] Figure 7 Schematic diagram of the device structure of the hardware operating environment involved in the motor ripple signal identification method in the embodiment of the present application.
[0058] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0059] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0060] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0061] The main solution of the embodiment of the present application is: obtaining multiple drive current arrays output by the window motor driver within a preset time period; taking the average value of a continuous first number of elements in each drive current array to obtain a current array of a first target number of elements; taking the average value of a continuous second number of elements located at a preset position in the continuous first number of elements to obtain a current array of a corresponding second target number of elements; and obtaining a motor drive ripple waveform based on the current array of the first target number of elements and the current array of the corresponding second target number of elements.
[0062] In this embodiment, for the convenience of description, the following description is made by taking the identification of the motor as the execution subject.
[0063] The existing technology uses direct identification of the voltage value change of the motor current to determine the number of ripples. However, since the voltage value of the ripple accounts for less than 1 / 10 of the total voltage value, it is difficult to accurately identify the complete ripple under complex working conditions of the motor, which has a great impact on the accuracy of window position recognition.
[0064] The present application provides a solution, which enables to obtain a relatively smooth data array and a relatively drastic data array by collecting the driving current and selecting different numbers of driving currents to calculate the average value, and to compare the difference between the two arrays to extract the ripple waveform generated during the operation of the motor. Compared with the prior art, more accurate current ripple information can be obtained.
[0065] It should be noted that the execution subject of this embodiment can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or an electronic device capable of realizing the above functions, etc. The following takes a motor as an example to illustrate this embodiment and the following embodiments.
[0066] Based on this, the present application embodiment provides a method for identifying a motor ripple signal, referring to Figure 1 , Figure 1 This is a flow chart of the first embodiment of the motor ripple signal identification method of the present application.
[0067] In this embodiment, the motor ripple signal identification method includes steps S10 to S40:
[0068] Step S10, obtaining a plurality of drive current arrays output by the window motor driver within a preset time period;
[0069] It should be noted that the preset time period refers to a predetermined time interval for obtaining the drive current array, such as 2ms. The window motor driver is a component in the automotive electrical system, which is responsible for controlling the lifting and lowering of the window. The drive current array is an array used to store the collected drive current values.
[0070] It is understandable that, since the driving current data needs to be processed later, step S10 is performed to provide data support for the subsequent identification of the motor ripple waveform.
[0071] In a feasible implementation, step S10 may include steps A11 to A14:
[0072] Step A11, obtaining a preset acquisition interval and a preset driving current array length;
[0073] It should be noted that the preset acquisition interval is the time interval for the acquisition module of the motor to acquire the drive current value, such as 0.1ms, and the preset drive current array length is the length of the array used to store the acquired drive current values, such as 60.
[0074] Step A12, continuously collecting the driving current value according to a preset collection interval;
[0075] Step A13: storing the driving current value in a queue, wherein the length of the queue is equal to the length of the preset driving current array.
[0076] It should be noted that the drive current value refers to the measurement of the current passing through a motor or other electronic device (such as a window motor driver) under specific conditions. A queue is a data structure that follows the first-in-first-out principle. The core idea of the first-in-first-out principle is that the data item that enters the system first will be the first data item to be processed or leave the system.
[0077] Step A14, using the queue as a driving current array.
[0078] For example, Figure 2 ADC (Analog-to-Digital Converter) can be used to convert analog signals into digital signals. The preset time period is 2ms, the preset acquisition interval is 0.1ms, and the preset drive current array length is 20.
[0079] The ADC (Analog-to-Digital Converter) port of the MCU (Microcontroller Unit) samples the current data of the window motor every 0.1 ms and obtains a 20-element ADC array P1 every 2 ms.
[0080] After three 2ms accumulations, a buffer
[60] of 60 elements is obtained. They are P1, P2, and P3. After that, following the first-in-first-out principle, in the next 2ms cycle, buffer
[60] is composed of P2, P3, P4, and so on. This ensures that there are 20 updated current data for subsequent calculations in each 2ms cycle.
[0081] In this embodiment, by using the first-in-first-out principle, it is ensured that the driving current values are processed in the order in which they are collected.
[0082] The above is only a feasible implementation of step S10 provided in this embodiment, and this embodiment does not specifically limit the specific implementation of step S10.
[0083] Step S20, taking an average value of a first number of consecutive elements in each driving current array to obtain a current array of a first target number of elements;
[0084] It should be noted that the continuous first number of elements refers to a number of continuous driving current values in the driving current array, and the current array of the first target number of elements is obtained by averaging a plurality of driving current values, and the data is relatively smooth.
[0085] It is understandable that, since the obtained driving current data needs to be compared with the difference, performing step S20 can reduce the fluctuation of the original data and make the trend more obvious, thereby improving the accuracy of the driving current ripple waveform recognition.
[0086] In a feasible implementation, step S20 may include steps B11 to B14:
[0087] Step B11, obtaining a first target quantity;
[0088] It should be noted that the first target number is the length of an array to be processed by difference.
[0089] Step B12, obtaining a first quantity according to the first target quantity;
[0090] It should be noted that the first number refers to the number of driving current values involved in calculating the average value, which can be determined by the first target number. For example, when the driving current array length is 60, if the first target number is 20, that is, the array length used for difference processing is 20, then the first number should be 40.
[0091] Step B13, selecting a first number of continuous elements from the driving current array, and using the first number of continuous elements as a first element group.
[0092] It should be noted that the first element group refers to a combination of a number of consecutive elements taken from the driving current array as one element, which facilitates element management.
[0093] Step B14, calculating an average value of the first element group, and storing the average value in a current array of a first target number.
[0094] For example, Figure 3 , Ravg is the current array of the first target quantity, and buffer is the driving current array.
[0095] Ravg[0] is the average value of buffer[0~39]. Ravg[1] is the average value of buffer[1~40].
[0096] And so on...Ravg
[19] is obtained by the average value of buffer[20~59].
[0097] In this implementation, by calculating the average value of a plurality of consecutive elements in the driving current array, the fluctuation of the original data can be reduced, and data with a small variation intensity can be obtained, and the trend is more obvious.
[0098] The above is only a feasible implementation of step S20 provided in this embodiment, and this embodiment does not specifically limit the specific implementation of step S20.
[0099] Step S30, taking an average value of a second number of consecutive elements located at a preset position in the first number of consecutive elements to obtain a current array of a second target number of corresponding elements;
[0100] It should be noted that the continuous second number of elements refers to a number of continuous driving current values within the continuous first number of elements, and the current array of the second target number of elements is obtained by averaging fewer driving current values, and the data changes relatively drastically.
[0101] It is understandable that, since it is necessary to perform a difference comparison on the obtained driving current data, performing step S30 can obtain data with more dramatic changes, thereby improving the accuracy of identifying the driving current ripple waveform.
[0102] In a feasible implementation, step S30 may include steps C11 to C14:
[0103] Step C11, obtaining the preset position and the second target quantity;
[0104] It should be noted that the second target number is the length of another array to be processed by difference.
[0105] Step C12, obtaining a second quantity according to the second target quantity;
[0106] It should be noted that the second number refers to the number of driving current values involved in calculating the average value, which can be determined by the second target number.
[0107] Step C13: taking a second number of consecutive elements located at a preset position in the first number of consecutive elements, and taking the second number of consecutive elements as a second element group.
[0108] It should be noted that the second element group refers to a combination of a number of consecutive elements taken from the consecutive first number of elements as one element, which facilitates the management of elements.
[0109] Step C14, calculating an average value of the second element group, and storing the average value in a current array of a second target number.
[0110] For example, Figure 3 , Savg is the current array of the second target quantity, buffer is the driving current array, and the preset position is the middle position of the first quantity elements.
[0111] Savg[0] is the average value of buffer[18-22]. At this time, the corresponding first element is buffer[0-39]. Savg[1] is the average value of buffer[19-23]. At this time, the corresponding first element is buffer[1-40].
[0112] And so on...Savg
[19] is obtained by the average value of buffer[38~42].
[0113] And so on...Ravg
[19] is obtained by the average value of buffer[20~59].
[0114] In this embodiment, by calculating the average value of a small number of consecutive elements in the driving current array, data with a large variation intensity can be obtained.
[0115] The above is only a feasible implementation of step S30 provided in this embodiment, and this embodiment does not specifically limit the specific implementation of step S30.
[0116] Step S40 , obtaining a motor driving ripple waveform according to the current array of the first target number of elements and the current array of the corresponding second target number of elements.
[0117] It should be noted that the motor drive ripple waveform refers to the periodic fluctuations in the motor current or voltage when the motor driver is working. The size and shape of the ripple waveform can reflect the performance of the motor driver, including its efficiency, stability and possible problems.
[0118] This embodiment provides a method for identifying motor ripple signals. By collecting drive currents and selecting different numbers of drive currents to calculate the average value, a relatively smooth data array and a relatively drastic data array can be obtained. The difference between the two arrays is compared to extract the ripple waveform generated during the operation of the motor. Compared with the prior art, more accurate current ripple information can be obtained.
[0119] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can be referred to the above introduction, and will not be repeated in the following. Figure 5 After step S30, the motor ripple signal identification method further includes steps S31 to S36:
[0120] Step S31, obtaining the first number of elements;
[0121] Step S32, deleting the first value in the first number of elements, adding the first element in the driving current array that is located after the first number of consecutive elements, to obtain a new first number of elements;
[0122] Step S33, taking the new first number of elements as the first element group;
[0123] Step S34, taking the second number of consecutive elements located at a preset position among the first number of consecutive elements;
[0124] Step S35, deleting the second value in the second number of elements, and adding the first element in the continuous first number of elements that is located after the continuous second number of elements, to obtain a new second number of elements;
[0125] Step S36: taking the new second number of elements as the second element group.
[0126] It is understandable that in order to reduce the CPU operating load during data processing, it is considered not to use the traditional method of accumulating and then dividing by the number to calculate the average value. Instead, the first value of the element group is subtracted, and a value behind all elements in the element group is added to obtain the average value. This can effectively reduce the CPU processing load.
[0127] For example, Figure 4 , subtract the value of the oldest element (red), add the value of the newly entered element (green), and get the average value. The specific method is as follows:
[0128] Ref[9]=0.99*Ravg[8]+0.01*Buffer
[49] +Buffer
[49] / 40-Buffer[9] / 40
[0129] Sig[[9]=0.99*Savg[8]+0.01*Buffer
[32] +Buffer
[32] / 4-Buffer
[27] / 4
[0130] That is: the new average value = the previous value * 0.99 + the newly added value * 0.01 + the newly added value / the number of average values - the value removed this time / the number of average values.
[0131] Ravg[8] is obtained by the average value of buffer[9~48], and Ref[9] is obtained by the average value of buffer[10~49].
[0132] Savg[8] is obtained by the average value of buffer[27~31], and Sig[[9] is obtained by the average value of buffer[28~32].
[0133] In this embodiment, the element group is regarded as a sliding window, and each time it slides one position, a new continuous element is obtained. In actual calculation, it is only necessary to subtract the value of the oldest element in the element group and add the value of the newly entered element. That is, the average value is processed by weighting the single added or removed value, which can effectively reduce the computational load.
[0134] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the motor ripple signal identification method of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.
[0135] This application also provides a motor ripple signal identification device, please refer to Figure 6 , the motor ripple signal identification device comprises:
[0136] The acquisition module 10 is used to acquire a plurality of drive current arrays output by the window motor driver within a preset time period.
[0137] The data processing module 20 is used to take the average value of the continuous first number of elements in each driving current array to obtain a current array of the first target number of elements; take the average value of the continuous second number of elements located at a preset position in the continuous first number of elements to obtain a current array of the corresponding second target number of elements.
[0138] The output module 30 obtains a motor driving ripple waveform according to the current array of the first target number of elements and the current array of the corresponding second target number of elements.
[0139] The motor ripple signal identification device provided by the present application adopts the motor ripple signal identification method in the above embodiment, which can solve the technical problem of motor ripple signal identification. Compared with the prior art, the beneficial effects of the motor ripple signal identification device provided by the present application are the same as the beneficial effects of the motor ripple signal identification method provided by the above embodiment, and other technical features in the motor ripple signal identification device are the same as the features disclosed in the above embodiment method, which will not be repeated here.
[0140] In one embodiment, the acquisition module 10 is further used to obtain a preset acquisition interval and a preset drive current array length; continuously acquire drive current values according to the preset acquisition interval; store the drive current values in a queue, wherein the length of the queue is equal to the preset drive current array length; and use the queue as a drive current array.
[0141] In one embodiment, the acquisition module 10 is also used to execute the step of obtaining multiple drive current arrays output by the window motor driver within a preset time period if it is detected that the motor driver outputs positive and negative voltages; if no positive and negative voltages are detected that the motor driver outputs, the step of obtaining multiple drive current arrays output by the window motor driver within a preset time period is not executed.
[0142] In one embodiment, the data processing module 20 is also used to obtain a first target quantity; obtain a first quantity based on the first target quantity; select a first number of consecutive elements from the driving current array, and use the first number of consecutive elements as a first element group; calculate an average value of the first element group, and store the average value in a current array of the first target quantity.
[0143] In one embodiment, the data processing module 20 is also used to obtain a preset position and a second target quantity; obtain a second quantity based on the second target quantity; take the continuous second quantity elements located at the preset position among the continuous first quantity elements, and use the continuous second quantity elements as a second element group; calculate the average value of the second element group, and store the average value in a current array of the second target quantity.
[0144] In one embodiment, the data processing module 20 is also used to obtain the first number of elements; delete the first value in the first number of elements, add the first element in the driving current array that is located after the continuous first number of elements, to obtain a new first number of elements; use the new first number of elements as the first element group; take the continuous second number of elements located at a preset position in the continuous first number of elements; delete the second value in the second number of elements, add the first element in the continuous first number of elements that is located after the continuous second number of elements, to obtain a new second number of elements; use the new second number of elements as the second element group.
[0145] In one embodiment, the output module 30 is further used to obtain the difference between the current array of the first target number elements and the current array of the corresponding second target number elements; obtain the characteristics of the motor drive ripple based on the difference; and obtain the motor drive ripple waveform based on the motor drive ripple characteristics.
[0146] The present application provides a motor ripple signal identification device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the motor ripple signal identification method in the above-mentioned embodiment one.
[0147] Reference below Figure 7, which shows a schematic diagram of the structure of a motor ripple signal recognition device suitable for implementing the embodiment of the present application. The motor ripple signal recognition device in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 7 The motor ripple signal identification device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0148] like Figure 7 As shown, the motor ripple signal recognition device may include a processing device 1001 (such as a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM: Read Only Memory) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM: Random Access Memory) 1004. Various programs and data required for the operation of the motor ripple signal recognition device are also stored in the RAM 1004. The processing device 1001, the ROM 1002, and the RAM 1004 are connected to each other via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 can allow the motor ripple signal recognition device to communicate with other devices wirelessly or by wire to exchange data. Although the figure shows a motor ripple signal recognition device with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or have instead.
[0149] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.
[0150] The motor ripple signal identification device provided by the present application adopts the motor ripple signal identification method in the above embodiment, which can solve the technical problem of motor ripple signal identification. Compared with the prior art, the beneficial effects of the motor ripple signal identification device provided by the present application are the same as the beneficial effects of the motor ripple signal identification method provided by the above embodiment, and other technical features in the motor ripple signal identification device are the same as the features disclosed in the method of the previous embodiment, which will not be repeated here.
[0151] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0152] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0153] The present application provides a computer-readable storage medium having computer-readable program instructions (ie, computer programs) stored thereon, and the computer-readable program instructions are used to execute the motor ripple signal identification method in the above-mentioned embodiment.
[0154] The computer-readable storage medium provided in the present application may be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, 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 disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.
[0155] The computer-readable storage medium may be included in the motor ripple signal identification device; or may exist independently without being assembled into the motor ripple signal identification device.
[0156] The computer-readable storage medium carries one or more programs. When the one or more programs are executed by the motor ripple signal identification device, the motor ripple signal identification device: obtains multiple drive current arrays output by the window motor driver within a preset time period; takes the average value of a continuous first number of elements in each drive current array to obtain a current array of a first target number of elements; takes the average value of a continuous second number of elements located at a preset position in the continuous first number of elements to obtain a current array of a corresponding second target number of elements; obtains a motor drive ripple waveform based on the current array of the first target number of elements and the current array of the corresponding second target number of elements.
[0157] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0158] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0159] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.
[0160] The readable storage medium provided in the present application is a computer-readable storage medium, which stores computer-readable program instructions (i.e., computer programs) for executing the above-mentioned motor ripple signal identification method, and can solve the technical problem of motor ripple signal identification. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided in the present application are the same as the beneficial effects of the motor ripple signal identification method provided in the above-mentioned embodiment, and will not be repeated here.
[0161] The present application also provides a computer program product, including a computer program, which implements the steps of the motor ripple signal identification method as described above when executed by a processor.
[0162] The computer program product provided in this application can solve the technical problem of motor ripple signal identification. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as the beneficial effects of the motor ripple signal identification method provided in the above embodiment, which will not be repeated here.
[0163] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A method for identifying ripples in a vehicle window motor, characterized in that: The method includes: Acquire multiple drive current arrays output by the window motor driver within a preset time period; Taking an average value of a first number of consecutive elements in each driving current array to obtain a current array of a first target number of elements; Taking an average value of a second number of consecutive elements located at a preset position in the first number of consecutive elements to obtain a current array of a second target number of corresponding elements; A motor driving ripple waveform is obtained according to the current array of the first target number of elements and the corresponding current array of the second target number of elements.
2. The method according to claim 1, characterized in that The step of obtaining a plurality of drive current arrays output by the window motor driver within a preset time period includes: Obtaining a preset acquisition interval and a preset drive current array length; Continuously collect the driving current value according to the preset collection interval; Storing the driving current value in a queue, wherein the length of the queue is equal to the length of the preset driving current array; The queue is treated as an array of drive currents.
3. The method according to claim 2, characterized in that Before continuously collecting the driving current value according to the preset collection interval, the method also includes: If it is detected that the motor driver outputs positive and negative voltages, the step of acquiring a plurality of drive current arrays output by the window motor driver within a preset time period is performed; If the positive or negative voltage output by the motor driver is not detected, the step of obtaining a plurality of drive current arrays output by the window motor driver within a preset time period is not performed.
4. The method according to claim 1, characterized in that The step of taking an average value of a first number of consecutive elements in each driving current array to obtain a current array of a first target number of elements includes: Get the first target quantity; According to the first target quantity, a first quantity is obtained; Selecting a first number of continuous elements from the driving current array, and using the first number of continuous elements as a first element group; An average value of the first element group is calculated, and the average value is stored in a current array of a first target number.
5. The method according to claim 1, characterized in that The step of taking an average value of a second number of consecutive elements located at a preset position in the first number of consecutive elements to obtain a current array of a corresponding second target number of elements includes: Get the preset position and the second target quantity; According to the second target quantity, a second quantity is obtained; Taking a second number of consecutive elements located at a preset position among the first number of consecutive elements, and taking the second number of consecutive elements as a second element group; An average value of the second element group is calculated, and the average value is stored in a current array of a second target number.
6. The method according to claim 4 or 5, characterized in that The step of obtaining a plurality of drive current arrays output by the window motor driver within a preset time period includes: Get the first number of elements; Deleting the first value in the first number of elements, and adding the first element in the drive current array that is located after the first number of consecutive elements, to obtain a new first number of elements; Taking the new first number of elements as the first element group; Taking a second number of consecutive elements located at a preset position among the first number of consecutive elements; Delete the second value in the second number of elements, and add the first element in the continuous first number of elements that is located after the continuous second number of elements to obtain a new second number of elements; The new second number of elements is used as the second element group.
7. The method according to claim 1, characterized in that The step of obtaining a motor drive ripple waveform according to the current array of the first target number of elements and the corresponding current array of the second target number of elements comprises: Obtaining a difference between the current array of the first target number of elements and the current array of the corresponding second target number of elements; According to the difference, the characteristics of the motor drive ripple are obtained; Based on the motor drive ripple characteristics, a motor drive ripple waveform is obtained.
8. A window motor ripple identification method and device, characterized in that: The device comprises: An acquisition module, used for acquiring a plurality of drive current arrays output by a window motor driver within a preset time period; A data processing module is used to take an average value of a first number of continuous elements in each driving current array to obtain a current array of a first target number of elements; take an average value of a second number of continuous elements located at a preset position in the first number of continuous elements to obtain a current array of a corresponding second target number of elements; The output module obtains a motor driving ripple waveform according to the current array of the first target number of elements and the current array of the corresponding second target number of elements.
9. A vehicle window motor ripple identification method and device, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the window motor ripple identification method according to any one of claims 1 to 7.
10. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the window motor ripple identification method according to any one of claims 1 to 7 are implemented.
Citation Information
Cited By
Hall and ripple integrated detection method and system based on vehicle body control platform
CN121114751A