This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello Team,
I am working on the 48V Hall motor with DRV8353Rs and launchpad.
I am able to run the motor with hall feedback and I am using the universal motor code (UMC).
1. When I am running the motor by setting the any speedRef_Hz value, motor is not running in the mentioned value in the first attempt. After some oscillation it will run in the mentioned speed.
For reducing those oscillations, I am calibrating the Kp and Ki values of the motor and startup current.
Can you please mention which parameters I need to calibrate for the above issue.
2. whenever I am running the motor in Build level 4, motor is not running smoothly as compared to the Build level 2. It is making some noise.
Can I know what all the parameters are I need to adjust for the smooth running of the motor with feedback.
Regards,
Kirana H P
Hi Kirana,
Which build level are you using?
For reducing those oscillations, I am calibrating the Kp and Ki values of the motor and startup current.
Can you please mention which parameters I need to calibrate for the above issue.
See below for Kp/Ki gains and relevant start-up parameters.
2. whenever I am running the motor in Build level 4, motor is not running smoothly as compared to the Build level 2. It is making some noise.
Can I know what all the parameters are I need to adjust for the smooth running of the motor with feedback.
Have you verified the sensing and HALL algorithm are working properly in BL#2 and #3? Tuning Kp_spd/Ki_spd should be sufficient assuming your motor parameters are already set appropriately.
Best,
Kevin
Hello Kevin,
1. I have calibrated the above mentioned Kp and Ki values, now I am not getting any oscillations in motor. Now motor is running in the mentioned speed in the first attempt and using build level 4.
2. But when I set the speed_ref value in positive motor is not running in that direction suddenly, first it will try to run in the opposite direction and then it is running in the mentioned direction.
Can you please suggest for this issue which parameters I need to calibrate?
3. For build level 2 and 3 sensing is working fine.
4. One more issue I am facing is when I set the negative speed_ref value motor is running and it is taking more current from the supply and when I set the speed_ref value = 0 in this case also I am facing same issue.
Please suggest me the method to resolve this issue.
Regards,
Kirana H P
Hi Kirana,
1. I have calibrated the above mentioned Kp and Ki values, now I am not getting any oscillations in motor. Now motor is running in the mentioned speed in the first attempt and using build level 4.
Ok, that's good. And the calculated speed is accurate in the expressions window?
2. But when I set the speed_ref value in positive motor is not running in that direction suddenly, first it will try to run in the opposite direction and then it is running in the mentioned direction.
Can you explain this behavior further for me? Is the motor making many full rotations in the opposite direction, just one, or not even a full rotation? Maybe some calibration functions is not working properly during start-up. Will need to review the code further.
Best,
Kevin
Hi Kevin,
1. Yes speed is accurate in expression window.
2. Yes, motor making one full rotation in the opposite direction.
3. One more issue I am facing is when I set the negative speed_ref value, motor is not running, and it is taking more current from the supply and when I set
the speed_ref value = 0 in this case also I am facing same issue.
Can you suggest which parameters we need to calibrate for this.
4. I have enabled the POT in the UMC and by using POT I am able to control the motor speed but, in this case, also we are facing the same issue like in
starting time motor making one full rotation in the opposite direction.
Can you suggest which parameters we need to calibrate for this.
I'll send the revised UMC code over via private chat. Please review the file and let me know where we're making mistakes.
Regards,
Kirana H P
Hi Kirana,
The motor behavior during start-up might be part of the state machine in the motor1CtrlISR(). Could be part of the MOTOR_SEEK_POS or MOTOR_ALIGNMENT states to detect HALL sensor pulses, not certain at this moment.
You may want to try running the HALL calibration routine (HALL_CAL) while running FAST estimator. See below:
// Enable HALL_CAL pre-defined symbols, run the motor with FAST for angle // calibration // Copy hall_M1.thetaCalBuf[] to hallAngleBuf[] // 1->1, 2->2, 3->3, 4->4, 5->5, 6->6, 6->0 // Disable HALL_CAL pre-defined symbols after calibration for normal operation // 6 1 2 // 3 4 5 // 6 #if (USER_MOTOR1 == Teknic_M2310PLN04K) const float32_t hallAngleBuf[7] = { 2.60931063f, -0.45987016f, -2.57219672f, \ -1.50797582f, 1.59862518f , 0.580176473f, 2.60931063f };
Best,
Kevin