I start this new thread to share the results of my TSDZ2 Motor Firmware optimization work.
This work started out as a low priority activity, but along the way I realized that there were many things that could be improved, and in the end, I have to say that the result went beyond my expectations.
In this post I just want to share the results of some tests I did to compare the results against the original OSF firmware I started from.
The next three images show the battery current when the motor runs with a fixed duty cycle. In this situation, if the motor is well controlled, the current (and the motor speed) should be almost constant. High current ripples are a typical sign of a poor motor control.
The first image is with the original OSF Firmware, the last two with the new Firmware.
In the first two images the motor is running at the same speed (400 ERPS). In the third image the motor speed was increased to 500 ERPS (close to the maximum nominal speed of 533 ERPS or 4000 rpm) in order to measure a higher current. But also, in this situation the current shows only few spikes
The following images show the results of a test where the current consumption was measured running the motor without load at different speeds.
As you can see, in this situation the current consumption at the same speed is 25-30% lower than the original firmware.
Surely the same result cannot be obtained even in the case of high load. But even if the gain were only 5%, the impact on motor temperature would still be significant since the less current consumption correspond exactly to less Power losses. To carry out measurements under load I would need tools that I do not have available such as a power meter capable of measuring high continuous currents and a training roller capable of measuring power
Due to the cold and snow, I have not yet had the opportunity to test the new firmware on the road for a long time. As soon as the weather allows it, I want to try it uphill and under stress.
At the end of the work I must say that, even if our controller does not allow to do a true Field Oriented Control, by putting in place a whole series of tricks it is still possible to obtain an excellent result that is close to a true FOC.
The code is available on Github on my TSDZ2_ESP32 Project page (TSDZ2-ESP32)
For those interested in the technical details, in the next coming posts I will describe the changes introduced with the new firmware.
Edit:
Technical details 1: SW optimization
Technical details 2: Hall Sensors optimization
Technical details 3: SW motor control parameters optimization
This work started out as a low priority activity, but along the way I realized that there were many things that could be improved, and in the end, I have to say that the result went beyond my expectations.
In this post I just want to share the results of some tests I did to compare the results against the original OSF firmware I started from.
The next three images show the battery current when the motor runs with a fixed duty cycle. In this situation, if the motor is well controlled, the current (and the motor speed) should be almost constant. High current ripples are a typical sign of a poor motor control.
The first image is with the original OSF Firmware, the last two with the new Firmware.
In the first two images the motor is running at the same speed (400 ERPS). In the third image the motor speed was increased to 500 ERPS (close to the maximum nominal speed of 533 ERPS or 4000 rpm) in order to measure a higher current. But also, in this situation the current shows only few spikes
The following images show the results of a test where the current consumption was measured running the motor without load at different speeds.
As you can see, in this situation the current consumption at the same speed is 25-30% lower than the original firmware.
Surely the same result cannot be obtained even in the case of high load. But even if the gain were only 5%, the impact on motor temperature would still be significant since the less current consumption correspond exactly to less Power losses. To carry out measurements under load I would need tools that I do not have available such as a power meter capable of measuring high continuous currents and a training roller capable of measuring power
Due to the cold and snow, I have not yet had the opportunity to test the new firmware on the road for a long time. As soon as the weather allows it, I want to try it uphill and under stress.
At the end of the work I must say that, even if our controller does not allow to do a true Field Oriented Control, by putting in place a whole series of tricks it is still possible to obtain an excellent result that is close to a true FOC.
The code is available on Github on my TSDZ2_ESP32 Project page (TSDZ2-ESP32)
For those interested in the technical details, in the next coming posts I will describe the changes introduced with the new firmware.
Edit:
Technical details 1: SW optimization
Technical details 2: Hall Sensors optimization
Technical details 3: SW motor control parameters optimization
Last edited: