I am using simpleFOC with STM32, BLDC motor, 1 PP and M702 absolute encoder
Everything is working great, except for one strange phenomena:
In closed loop speed mode, the current in the positive direction (when rotating CW) is higher at about 100-200mA than the current when I turn the motor CCW.
The gains are the same, there is no mechanical load and the motor is free to move at both directions.
I tried to change the motor.zero_electric_angle value that is found in the startup (which, by the way, is always found to be the same angle), but it only makes things worse (the current gets higher)
It happens in low speeds and also in high speeds. I am well aware of the field weakening concept.
Any ideas as to what could be the problem?
You will experience this type of issue in Voltage mode, When you switch to the current control mode, this problem will be solved.
If you want to solve this issue in Voltage mode, look at the following thread.
Normally I would agree with @MoidKhan , but you specifically mentioned trying to change the electrical angle to check if it was field weakening effects…
So I wonder, do you suspect a software problem to be responsible? It would be very interesting to find it out (and correct it)!
1PP is a very unusual number for us here at SimpleFOC - perhaps it is related to this?
Is it conceivable that the load is different in the different directions? Something like a bearing with more resistance in the one direction than the other?