"Hysteresis" is the correct spelling in English, although some may mistakenly write it as "Hysterisis." The name itself can indeed be quite challenging, reminiscent of names from Greek mythology. Perhaps because of this, understanding hysteresis can also be difficult. Today, I'll attempt to write about hysteresis with the expectation of achieving a complete understanding.
The translation of "히스테리시스" into English is "hysteresis." When broken down into Chinese characters, "이력현상" can be interpreted as follows:
- 履(밞을 이): Step, walk
- 歷(지날 력): Pass, go through
- 現(나타날 현): Appear, present
- 象(형태 상): Phenomenon, appearance
Simply put, hysteresis refers to a phenomenon where the current state of a substance or system depends on its past history or changes over time. It's like the expression "밞다 전철" in Korean, which means "to step on the same rake" in English, signifying the repetition of past mistakes or errors. This analogy is used because hysteresis involves a material or system not being solely determined by its current physical conditions but also being influenced by its past state.
I see what you mean. Let's think of hysteresis as "memory."
When we eat a meal, if we once overate and felt not just the happiness of being full but also the pain of an upset stomach, naturally, we would try not to repeat the same mistake and go through a calibration process. So, the next time we eat, we would refer to the memory of the discomfort we felt before and adjust the amount of food we consume. This is similar to the concept of hysteresis.
In the context of systems, when a system encounters a certain situation, a little memory of that situation remains. Consequently, when the system encounters a similar situation again, it reacts differently from before. That's the essence of hysteresis. I hope this helps clarify things a bit.
automotive engineering perspective
But what I'm really curious about is how this hysteresis is applied and used from an automotive engineering perspective.
Hysteresis in automotive engineering refers to the phenomenon where the output value does not change along a single path in response to changes in input values, but rather reacts differently depending on the previous state. This characteristic is utilized across various fields such as physics, electronic engineering, control engineering, and automotive engineering to reduce oscillation or instability and control the desired stability and sensitivity expected by users.
There are various applications of hysteresis functionality in automobiles. Some examples include ADAS (Advanced Driver Assistance Systems), the internal/external air mode of air conditioning systems, and engine control.
When we consider using smart cruise control in a car and setting the target speed, the car accelerates and decelerates repeatedly to match the target speed.
In the internal/external air mode of the air conditioning system, the car adjusts the internal/external air based on specific speed, temperature, and time.
In engine control, hysteresis can be applied to ensure that a function operates within a specified range. For example, if a function is required to operate between 30 km/h and 70 km/h, hysteresis can be applied to turn the function off at 25 km/h and on at 30 km/h, or turn it off if the speed exceeds 75 km/h and turn it back on if it falls below 70 km/h. Then, I was curious about what would happen at values between 26-29 km/h and 71-74 km/h. This is set based on which part is prioritized according to the specifications. If it is set to operate at exceptional values, it will operate, and if it is set not to operate, it will not operate.

The hysteresis range is a segment created to prevent malfunctioning ON/OFF cycles at boundary regions due to noise generated by various factors, rather than producing clean values when voltage and resistance are applied to the hardware characteristics. This range does not maintain a constant value but fluctuates (noise), and it is designed to prevent unintended ON/OFF cycles that do not align with the designer's intent at boundary regions.
It is a technique essential for testing the boundaries of function entry and release regions, allowing the derivation of test cases to check for defects around the boundaries, making it widely used in specifications overall. This technique is mostly used in combination with other methods rather than being used independently for deriving test cases.
Techniques commonly utilized in combination with boundary value analysis include:
- Equivalence Partitioning: This technique is particularly efficient when combined with boundary value analysis for deriving test cases, especially when dealing with stair-step logic cases within hysteresis range testing.
- State Transition Testing: When actions such as System On/Off, restarts, or battery attachment/detachment change based on priority within the hysteresis range, combining state transition testing techniques allows for the derivation of test cases.
Summary: Using equivalence partitioning to verify segment operation before boundary values, along with boundary value analysis to confirm boundary behavior, and employing state transition testing techniques to derive cases for priority operations during vehicle restarts within the hysteresis range.
ref. https://blog.naver.com/suresofttech/222725872934
In fact, hysteresis has a lot to do with electro-magnetism and physics. If you want more fundamental studies and research, I will recommend you a YouTube video that is helpful, so it will be helpful to watch it. I think I understood better after studying electro-magnetism first.
ref. https://www.youtube.com/watch?v=HsPJOwz4z-M&t=685s
Add Content
According to the specification, there are many hysteresis sections as shown in the figure above. The range of values varies greatly. What does that mean? Think of it as a stable range.

In other words, for example, if you talk about the hysteresis section above, you can create a hysteresis section even with an approximation of 45-50 instead of a value between 30 and 70. In that case, wouldn't it be simpler to control on/off with just one value, for example, with a value of 48? You might wonder why they made a specific range, but the data and voltage values usually used in automobile parts are not always constant. It can bounce instantaneously or in a narrow range, but it cannot stand still. Since such a phenomenon uses frequent values, a hysteresis section must be placed to avoid erroneous recognition of the control device when such garbage values occur.
If you think about it, if you say there is a device that turns on after the value of 48, it will naturally turn on if the device has a value of 49. However, since its values are not constant by itself, the film value is
int value[] = {47.8, 47.9, 48.3, 48.8, 49.1, 47.8};
Do you think it makes sense that it can come in like this? It happens very often. Then if you don't set a hysteresis interval within that range, look at the values in that array. If the user actually experiences it, how many times on/off has already occurred, his or her faith in the device and in the company that makes the device will disappear. Simply add a simple code, and that's why we've created a hysteresis interval to prevent such things in advance.