Technical experts, I use the f28027f evaluation board to verify the project. I have correctly identified the motor parameters and applied it to the lab5b project. As I know, the 5b project is used for the speed loop. I will use the speed reference value Set to a fixed value. When my load drives the motor to rotate at a speed that exceeds the speed set by the speed loop, because of the speed error, the motor seems to produce a force in the opposite direction to the load to prevent the load from driving the speed of the motor. The current will eventually reach the value of USER_MOTOR_MAX_CURRENT, which is exactly what our project wants, but, as I said before, when the load exceeds the speed set by the speed loop and drives the motor to rotate in the same direction, a "resistance" will be generated , The peak value of this resistance depends on USER_MOTOR_MAX_CURRENT, and the size of the resistance seems to be proportional to the error and speed of the speed, then I would like to ask:
1. If the resistance depends on the speed error, it must be a curve to reach the peak of resistance. Our project hopes to reduce the length of this curve or when the load drives the motor to exceed the setting of the speed loop, how can I force the peak of the output resistance? Modify and test this in the code?
2. Our motor is an unmanned aerial vehicle motor with a pole pair number of 7. When testing this motor, the load has been driving it to rotate, and the resistance generated by the motor has always maintained its peak value, but it can only last for about 1 minute, and the resistance will change The ammeter clearly reflects this (4.5a drops to 0.2a). It seems that the motor is out of step. After the load stops, the motor can be driven again to return to the peak resistance. How can I solve this phenomenon? Is it because the number of pole pairs is not enough? I am using a sensorless kit.