Motor thermal protection method and device, electronic equipment and storage medium

By combining a sliding time window and a bitmap data structure with a cyclic index, the problems of response lag and high resource consumption in motor thermal protection are solved, achieving efficient and real-time motor thermal risk assessment and protection.

CN121642853APending Publication Date: 2026-03-10SHENTONG TECH GRP CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-27
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Existing motor thermal protection methods suffer from problems such as slow response, low accuracy, and high resource consumption. Traditional temperature sensors have slow response speeds, and the cumulative time method cannot accurately reflect the actual operating duty cycle, resulting in inaccurate protection and high memory consumption.

Method used

By employing a sliding time window and bitmap data structure, the motor state is sampled at fixed intervals through a cyclic indexing mechanism. Single-bit storage is used to calculate the duty cycle in real time. Combined with dynamic updates of the cyclic index, efficient state storage and real-time duty cycle calculation are achieved.

Benefits of technology

It improves the accuracy and response speed of motor thermal protection, reduces memory overhead, and can detect overheating trends in advance to prevent motor damage due to heat accumulation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121642853A_ABST
    Figure CN121642853A_ABST
Patent Text Reader

Abstract

The invention discloses a motor thermal protection method and device, electronic equipment and a storage medium, and relates to the technical field of motor control. The motor thermal protection method comprises the following steps: setting a sliding time window with a fixed time length; sampling the running state of the motor at a fixed time interval; taking the operation state of each sampling as a single bit and storing the single bit in a bit map data structure; the sliding time window is dynamically updated through the loop index, and updating comprises the steps that the influence of the oldest sample state pointed by the loop index on the running state statistical value is removed, the new sample state is written into the position pointed by the loop index, and the running state statistical value is updated; based on the ratio of the running state statistical value to the total sample number in the sliding time window, the running duty ratio of the motor is calculated in real time; and if the duty ratio exceeds a preset threshold value, triggering a thermal protection mechanism. Through a bitmap data structure and a circular index mechanism, efficient state storage and real-time duty ratio calculation are realized, and the protection precision and the response speed are improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of motor control, and in particular relates to a motor thermal protection method and device, an electronic device and a storage medium. BACKGROUND

[0002] Motors are widely used in automotive electronics, industrial control and household appliances, and their thermal protection is crucial to ensure safe operation. Traditional motor thermal protection methods are usually based on temperature sensors or simple cumulative running time, which have the following problems:

[0003] Response lag: temperature sensors rely on physical heat conduction, with slow response speed and inability to predict overheating risks in time;

[0004] Low precision: the cumulative time method cannot reflect the actual running duty cycle, resulting in inaccurate protection;

[0005] Large resource consumption: traditional algorithms require storage of a large amount of historical data, high memory usage and high computational complexity.

[0006] For example, some existing technologies use an array to store the running state at each time point, with each sample occupying 1 byte, resulting in memory waste. In addition, when calculating the duty cycle, the entire window needs to be traversed, resulting in high time complexity and making it unsuitable for scenarios with high real-time requirements. SUMMARY

[0007] To solve the above problems, the present application provides a motor thermal protection method, device, electronic device and storage medium, which realizes efficient state storage and real-time duty cycle calculation through a bitmap data structure and a circular index mechanism, improving protection accuracy and response speed.

[0008] The first technical solution adopted by the present application is to provide a motor thermal protection method, comprising the following steps:

[0009] Setting a sliding time window with a fixed time length; sampling the running state of the motor at a fixed time interval;

[0010] Storing each sampled running state as a single bit in a bitmap data structure;

[0011] Dynamically updating the sliding time window through a circular index, wherein each update includes: removing the influence of the oldest sample state pointed to by the circular index on the running state statistical value, writing the new sample state to the position pointed to by the circular index, and updating the running state statistical value;

[0012] Based on the ratio of the running state statistical value to the total number of samples in the sliding time window, the duty cycle of the motor running is calculated in real time;

[0013] The calculated duty cycle is compared with a preset threshold; if the duty cycle exceeds the preset threshold, a thermal protection mechanism is triggered.

[0014] In an optional embodiment, the bitmap data structure is implemented by an array, each byte of which is used to store the state of a plurality of consecutive samples.

[0015] In an optional embodiment, the removing of the influence of the oldest sample state on the running state statistical value includes: judging whether the oldest sample state is a running state, and if so, performing a minus one operation on the running state statistical value.

[0016] In an optional embodiment, the writing of the new sample state and the updating of the running state statistical value include: judging whether the new sample state is a running state, and if so, performing a plus one operation on the running state statistical value.

[0017] In an optional embodiment, the running state statistical value is the total number of samples in a running state within the sliding time window, and the duty cycle is calculated by dividing the running state statistical value by the total number of samples within the sliding time window, and the time complexity of the calculation process is constant order.

[0018] In an optional embodiment, the length of the sliding time window, the sampling interval and the preset threshold are adjusted based on the type of the motor to be protected.

[0019] The second technical solution adopted in the present application is to provide a motor thermal protection device, comprising:

[0020] A configuration module is configured to set the length of the sliding time window, the sampling interval and the thermal protection triggering threshold;

[0021] A sampling and storage module is configured to acquire the motor running state at the sampling interval and store the state samples in a bitmap data structure;

[0022] A window updating module is configured to maintain the sliding time window through a loop index and dynamically update a running state counter;

[0023] A calculation and judgment module is configured to calculate a real-time duty cycle based on the running state counter and compare it with the thermal protection triggering threshold;

[0024] A protection execution module is configured to control the motor to enter a thermal protection state when the duty cycle exceeds the thermal protection triggering threshold.

[0025] In an optional embodiment, when updating the window, the window updating module reads and modifies the value of a specific bit in the bitmap data structure through a bit operation instruction.

[0026] The third technical solution adopted by the present application is to provide an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the motor thermal protection method of any one of the preceding embodiments when executing the computer program.

[0027] The fourth technical solution adopted by the present application is to provide a computer readable storage medium having a computer program stored thereon, wherein the computer program implements the steps of the motor thermal protection method of any one of the preceding embodiments when executed by a processor.

[0028] Compared with the prior art, the present application has at least one of the following beneficial effects:

[0029] 1. Efficient state storage and real-time duty cycle calculation are achieved through bitmap data structure and cyclic index mechanism, improving protection accuracy and response speed.

[0030] 2. The actual running duty cycle of the motor is used for thermal risk assessment, rather than relying on a lagging temperature sensor or a rough current integration model, which can detect overheating trends in advance and prevent the motor from being damaged due to heat accumulation.

[0031] 3. The sliding window length, sampling interval, and thermal protection threshold can be adjusted according to the thermal characteristics and load characteristics of the specific motor, realizing differentiated and precise thermal protection strategies. BRIEF DESCRIPTION OF DRAWINGS

[0032] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.

[0033] Among them:

[0034] Figure 1 The flowchart of the motor thermal protection method provided by an embodiment of the present application is shown in the figure.

[0035] Figure 2 The frame diagram of the motor thermal protection device provided by an embodiment of the present application is shown in the figure.

[0036] Figure 3 The structure diagram of a computer device embodiment of the present application is shown in the figure.

[0037] Figure 4 The structure diagram of a computer readable storage medium embodiment of the present application is shown in the figure. DETAILED DESCRIPTION

[0038] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It is understood that the specific embodiments described herein are only for explaining this application and not for limiting it. Furthermore, it should be noted that, for ease of description, only the parts related to this application are shown in the accompanying drawings, not all structures. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0039] The terms "first," "second," etc., used in this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.

[0040] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0041] Existing motor thermal protection technologies typically rely on temperature sensors or current-integral-based thermal models, which suffer from drawbacks such as response lag, low protection accuracy, and high resource consumption. Temperature sensors, due to heat conduction delays, cannot reflect the actual thermal load of the motor in a timely manner, while current integration methods struggle to accurately characterize the heat accumulation process under complex operating conditions. Furthermore, traditional software implementations often require frequent traversal of historical data or the use of byte arrays to store states, resulting in high memory consumption and low computational efficiency. These shortcomings make it difficult for the system to quickly and accurately trigger thermal protection in the early stages of motor overheating. The motor thermal protection method proposed in this application is based on a sliding time window and a bitmap data structure. By sampling the operating state at fixed intervals, efficiently storing it with single bits, and dynamically updating it using a circular index while calculating the duty cycle in real time, it achieves a fast response and high-precision thermal risk prediction with low memory overhead and constant time complexity.

[0042] like Figure 1 As shown, Figure 1 A schematic flowchart of a motor thermal protection method provided in an embodiment of this application includes the following steps:

[0043] S1: Set a sliding time window with a fixed duration; sample the motor's operating status at fixed time intervals; in this embodiment, the sliding time window length is set to 120 seconds, meaning the system always monitors the motor's operating status within the last 120 seconds; the sampling interval is set to 250 milliseconds, meaning the motor status is sampled once every 250 milliseconds, and the motor status is either running or stopped; the total number of samples in the window, i.e., the window size, is 120 / 0.25 = 480 samples.

[0044] A fixed-length sliding window acts like a memory cell, focusing only on recent operating data (e.g., 120 seconds). This aligns with the physical characteristics of motor heat accumulation and dissipation—recent workloads have the greatest impact on current temperature, while the effects of older historical data are negligible; this method reflects the motor's actual thermal load more accurately than a simple cumulative running time method. Instead of passively waiting for a temperature sensor to detect overheating (by which time the motor may already be damaged), this method predicts overheating risk by analyzing real-time duty cycles. If the motor starts frequently and operates at a high duty cycle within a short period, the system can predict the impending overheating risk and trigger protection even if the current temperature is not high.

[0045] In traditional programming languages ​​and embedded systems, one byte contains one sample, and one sample contains the running state of one sampling. To store 480 samples completely, 480 bytes are required.

[0046] S2: Store the running state of each sample as a single bit in the bitmap data structure; the state of each sample is actually only two (running or stopped), and only one bit is needed to represent the state of each sample. If one byte is used to store one sample, 87.5% of the storage space (the remaining 7 bits of each byte) will be wasted.

[0047] The bitmap data structure is implemented using an array. Each byte of the array is used to store the state of multiple consecutive samples. Each byte contains 8 bits, and each bit corresponds to the motor running state at a sampling time: 1 indicates that the motor is running at that time, and 0 indicates that it is stopped.

[0048] By utilizing bitwise operations or dedicated bit-band manipulation instructions, the reading or updating of a single sample can be completed within a single CPU instruction, significantly improving execution efficiency, reducing interrupt handling latency, and ensuring real-time performance. As a contiguous memory block, the bitmap, combined with modulo operations, can easily achieve a circular buffer effect. Each update only requires locating the corresponding byte and bit, eliminating the need to move or copy data, resulting in a simple structure, clear logic, and low maintenance costs.

[0049] S3: Dynamically update the sliding time window through a circular index. Each update includes: removing the influence of the oldest sample state pointed to by the circular index on the running status statistics, writing the new sample state to the position pointed to by the circular index, and updating the running status statistics.

[0050] The impact of removing the oldest sample state on the running status statistics includes: determining whether the oldest sample state is a running state, and if so, decrementing the running status statistics by one; writing a new sample state and updating the running status statistics includes: determining whether the new sample state is a running state, and if so, incrementing the running status statistics by one.

[0051] In this embodiment, the sliding time window contains 480 sampling points, corresponding to a 60-byte bitmap storage structure. The system maintains a circular index, initially set to zero, which increments cyclically between zero and 479. At the start of each sampling period, the system first determines the storage bit to be replaced based on the current circular index. This bit corresponds to the earliest stored sample state in the window that is about to expire. The system reads the value of this bit; if it indicates that the motor is running, the running state statistic is decremented by one to eliminate the influence of this sample on the current heat load assessment.

[0052] Subsequently, the system obtains the current actual operating status of the motor. If it is running, the operating status statistic is incremented by one, and the status is written to the aforementioned storage location; if it is stopped, only a zero value is written, and the statistic remains unchanged. After the update is complete, the circular index is incremented by one modulo 480, pointing to the next storage location, thus completing the window sliding.

[0053] The update of running status statistics has the following benefits: It eliminates the need to move or copy historical data, achieving window sliding through in-situ overwriting, significantly reducing computational overhead; the running status statistics are synchronously corrected in each update, always maintaining strict consistency with the current window content, providing an accurate basis for duty cycle calculation; the entire update process involves only constant-order bitwise operations and integer addition and subtraction, with a constant time complexity, suitable for high-frequency sampling and resource-constrained embedded environments; the combination of circular indexes and fixed-size storage structures forms a stable circular buffer mechanism, with constant memory usage and no risk of fragmentation or overflow during long-term operation; the window always focuses on the running behavior within the most recent time period, effectively reflecting the true heat accumulation trend of the motor and improving the timeliness and reliability of thermal protection.

[0054] The running status statistics are the total number of samples in the running state within the sliding time window. The duty cycle is calculated by dividing the running status statistics by the total number of samples within the sliding time window. The time complexity of the calculation process is constant.

[0055] The sliding time window contains a fixed 480 sampling points. The system uses an integer variable to maintain the total number of samples currently in operation within the window. This variable is incremented or decremented by one each time the window is updated, based on the changes in the status of the old and new samples. The duty cycle is calculated simply by dividing this statistical value by 480 to obtain the current motor's operating proportion within the window time. Because the statistical value is dynamically maintained, there is no need to iterate through every bit in the window or re-accumulate historical data when calculating the duty cycle. The entire calculation process involves only one division operation, resulting in a constant time complexity.

[0056] The running status statistics, which represent the total number of samples in the running state within the sliding time window, offer the following advantages: First, the duty cycle is obtained extremely efficiently, with the computation time remaining constant regardless of the window length, making it suitable for control systems with stringent real-time requirements. Second, it avoids processor load fluctuations caused by periodic full-window scanning, resulting in more stable system resource usage. Third, the statistics are always strictly synchronized with the window content, ensuring the accuracy of thermal load assessment and reducing the risk of false triggering or missed protection. Finally, this mechanism, closely integrated with bitmap storage and cyclic index updates, forms a low-memory, low-latency, and highly reliable thermal protection infrastructure, significantly superior to traditional methods that rely on traversal or integral models.

[0057] S4: The duty cycle of the motor is calculated in real time based on the ratio of the operating status statistics to the total number of samples within the sliding time window. In this embodiment, after each sampling update, the system performs a division operation between the maintained operating status statistics and the fixed total number of samples in the sliding time window to directly obtain the current operating duty cycle of the motor within the window time range. For example, when the window contains 480 sampling points and the operating status statistics are 360, the duty cycle is 75%. This calculation is performed once in each sampling cycle and serves as the basis for thermal protection judgment.

[0058] Duty cycle can accurately reflect the load intensity of the motor within a fixed period of time, and can better reflect the heat accumulation trend than instantaneous current or temperature measurement. Since the statistical values ​​of the operating status are maintained in real time during the window sliding process, the duty cycle calculation does not require additional traversal or accumulation, but only one arithmetic division, which is extremely efficient. It simplifies complex thermal behavior into a quantifiable operating ratio, making the protection logic clear, the threshold setting intuitive, and facilitating parameter adaptation for different motor types.

[0059] S5: Compare the calculated duty cycle with a preset threshold; if the duty cycle exceeds the preset threshold, a thermal protection mechanism is triggered. After each duty cycle calculation, the system immediately compares it with a preset threshold. This threshold is determined based on the motor's thermal characteristics, heat dissipation capacity, and application scenario, for example, set to 75%. If the current duty cycle exceeds this threshold, the system determines that the motor has been operating at high load continuously within the recent time window, posing an overheating risk. It then activates the thermal protection mechanism, including prohibiting the motor from restarting, outputting a protection status flag, and initiating a fixed cooling timer. During the protection period, even if the motor stops running, it is not allowed to restart until the cooling timer ends and the system confirms that the thermal risk has been eliminated.

[0060] The length of the sliding time window, the sampling interval, and the preset threshold are adjusted based on the type of motor being protected. Different types of motors differ significantly in terms of thermal time constant, heat dissipation capacity, rated load, starting characteristics, and operating mode (such as continuous operation, short-term operation, or periodic load). For example, small DC motors have low heat capacity and rapid temperature rise, making them suitable for shorter window lengths and higher sampling frequencies to quickly respond to instantaneous overloads; while high-power AC motors have high thermal inertia, allowing for longer windows to smooth short-term fluctuations and avoid false triggering. Furthermore, high-efficiency motors have lower temperature rise under the same load, allowing for higher duty cycle thresholds, while enclosed motors with poor heat dissipation require stricter threshold limits.

[0061] In summary, the motor thermal protection method of this embodiment includes setting a sliding time window with a fixed duration; sampling the motor's operating state at fixed time intervals; storing each sampled operating state as a single bit in a bitmap data structure; dynamically updating the sliding time window through a circular index, the update including: removing the influence of the oldest sample state pointed to by the circular index on the operating state statistics, writing the new sample state to the position pointed to by the circular index, and updating the operating state statistics; calculating the motor's duty cycle in real time based on the ratio of the operating state statistics to the total number of samples within the sliding time window; and triggering a thermal protection mechanism if the duty cycle exceeds a preset threshold. Through the bitmap data structure and circular index mechanism, efficient state storage and real-time duty cycle calculation are achieved, improving protection accuracy and response speed.

[0062] like Figure 2 As shown, Figure 2 A schematic diagram of the frame of a motor thermal protection device provided in an embodiment of this application includes:

[0063] The configuration module is used to set the length of the sliding time window, the sampling interval, and the thermal protection trigger threshold.

[0064] The sampling and storage module is used to acquire the motor operating status at sampling intervals and store the status samples in a bitmap data structure.

[0065] The window update module is used to maintain a sliding time window through a cyclic index and dynamically update the running status counter; when updating the window, the window update module reads and modifies the value of a specific bit in the bitmap data structure through bit operation instructions.

[0066] The calculation and judgment module is used to calculate the real-time duty cycle based on the running status counter and compare it with the thermal protection trigger threshold.

[0067] The protection execution module is used to control the motor to enter the thermal protection state when the duty cycle exceeds the thermal protection trigger threshold.

[0068] Regarding the above embodiments, this application provides a computer device; please refer to [link / reference]. Figure 3 , Figure 3 This is a schematic diagram of the structure of a computer device according to an embodiment of the present application. The computer device includes a memory and a processor, wherein the memory and the processor are coupled to each other. The memory stores program data, and the processor executes the program data to implement the steps of any embodiment of the above-described motor thermal protection method.

[0069] In this embodiment, the processor may also be referred to as a CPU (Central Processing Unit). The processor may be an integrated circuit chip with signal processing capabilities. The processor may also be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. A general-purpose processor may be a microprocessor or any conventional processor.

[0070] The methods described in the above embodiments can be implemented as computer programs; therefore, this application proposes a computer-readable storage medium. Please refer to [link to relevant documentation]. Figure 4 , Figure 4 This is a schematic diagram of the structure of an embodiment of the computer-readable storage medium of this application. The computer-readable storage medium stores program data that can be executed by a processor to implement the steps of any embodiment of the above-described motor thermal protection method.

[0071] In this embodiment, the computer-readable storage medium can be a USB flash drive, a portable hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, or a medium that can store program data. Alternatively, it can be a server that stores the program data. The server can send the stored program data to other devices for execution, or it can run the stored program data itself.

[0072] In the several embodiments provided in this application, it should be understood that the disclosed methods and devices can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed.

[0073] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.

[0074] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0075] The above description is merely an embodiment of this application and does not limit the patent scope of this application. Any equivalent structural or procedural transformations made using the content of this application's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of this application.

Claims

1. A method of thermal protection of an electric machine, characterized in that, The method comprises the following steps: setting a sliding time window with a fixed time length; sampling the running state of the motor at a fixed time interval; storing each sampled running state as a single bit in a bitmap data structure; dynamically updating the sliding time window through a circular index, wherein each update comprises: removing the influence of the oldest sample state on the running state statistical value, writing a new sample state to the position pointed to by the circular index, and updating the running state statistical value; calculating the duty cycle of the motor in real time based on the ratio of the running state statistical value to the total number of samples in the sliding time window; comparing the calculated duty cycle with a preset threshold; if the duty cycle exceeds the preset threshold, triggering a thermal protection mechanism.

2. The motor thermal protection method of claim 1, wherein, The bitmap data structure is implemented by an array, and each byte of the array is used to store the states of multiple consecutive samples.

3. The motor thermal protection method of claim 1, wherein, The removal of the influence of the oldest sample state on the running state statistical value comprises: judging whether the oldest sample state is a running state, and if so, performing a minus one operation on the running state statistical value.

4. The motor thermal protection method of claim 1, wherein, The writing of the new sample state and the updating of the running state statistical value comprise: judging whether the new sample state is a running state, and if so, performing a plus one operation on the running state statistical value.

5. The motor thermal protection method of claim 1, wherein, The running state statistical value is the total number of samples in the running state in the sliding time window, and the duty cycle is calculated by dividing the running state statistical value by the total number of samples in the sliding time window, and the time complexity of the calculation process is constant.

6. The motor thermal protection method of claim 1, wherein, The length of the sliding time window, the sampling interval and the preset threshold are adjusted based on the type of the protected motor.

7. An electric machine thermal protection device, characterized in that, The method comprises: a configuration module for setting the length of the sliding time window, the sampling interval and the thermal protection triggering threshold; a sampling and storage module for obtaining the motor running state at the sampling interval and storing the state samples in a bitmap data structure; a window update module for maintaining the sliding time window through a circular index and dynamically updating a running state counter; a calculation and judgment module for calculating the real-time duty cycle based on the running state counter and comparing it with the thermal protection triggering threshold; a protection execution module for controlling the motor to enter a thermal protection state when the duty cycle exceeds the thermal protection triggering threshold.

8. The motor thermal protection apparatus of claim 7, wherein, When updating the window, the window update module reads and modifies the value of a specific bit in the bitmap data structure through a bit operation instruction.

9. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the computer program to implement the steps of the motor thermal protection method according to any one of claims 1 to 6.

10. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the motor thermal protection method according to any one of claims 1 to 6.