2025-01-06 06:55 PM
I profiled my motor using the Profiler application while it was not under load. Afterward, I used the obtained values to generate new software. However, during testing on the motor pilot application, the motor does not start under load, regardless of whether it’s in torque mode or speed mode. When it’s not under load, there are no issues. Do I need to perform PID tuning?
here are videos under load and not load https://youtu.be/hOYXae-8l-M?si=RV6EAJ2st8wsGWhU
https://youtu.be/sTGa2zcNCKY?si=5_LyxKUZ59Qp4z13 • The Profiler application cannot obtain values when the motor is under load.
2025-01-06 07:12 PM
Do I need to use open-loop control for a better startup?
2025-01-07 08:24 AM
Hello TKara.2,
Let's first clarify a point :
Motor Profiler is used to get your motor's characteristics. Those characteristics do not change whether the motor is loaded. Exceptions are made for inertia and friction of course, but those are only used for speed PID gains computation. Thus, the Profiler should always be used on the easiest of conditions, that is without any load.
Concerning your issue, at first glance, it looks like everything is working fine : under load, your motor may not turn but the MotorPilot does not return any error, and current is drawn up to your maximal value (50A), it just looks like your load is too high for the input current. However, your power output is a bit strange. At 72V, a 50A current would give you a much higher power value than 80W. Plus, it really looks like on your video that the torque is rapidly lost, with no effective power. There are two different solutions to this :
- Your current is wrongly estimated, which is unlikely since your motor is running nicely once unloaded. Having a look at the current curves would still be a good idea though. You can do that by using the datalog feature on the top right of the Motor Pilot.
- Your VBus is dropping, which can happen undetected only if you are using the Virtual Vbus feature. Is it your case ? If yes, then it means that your power supply may be at fault here, or limited.
2025-01-07 04:11 PM
Hello @Gael A, thank you for replying.
Here is my VBUS feature schematic.
I’m using a Li-ion battery pack (20S10P configuration).
I’m struggling to understand why the output power (W) does not increase under load. This issue occurs in both speed mode and torque mode. When the motor is not under load, I can provide a 50A reference in torque mode and get a corresponding power (W) output. However, under load, it seems like the battery or the software cannot provide the required power (W) momentarily.
When the motor is under load, I expect the inertia and friction forces to increase. Therefore, shouldn’t I adjust the gain? Would PID tuning help resolve this issue?
2025-01-08 01:10 AM - edited 2025-01-08 01:10 AM
Hello TKara.2,
Friction and inertia are only relevant for speed PID gains, which you absolutely don't need in torque mode. Since the issue is also appearing on torque mode, let's put aside speed PID tuning for the moment. We will also assume current PID is correctly tuned thanks to the Profiler values.
After some thinking on my end, I would like to correct myself on what I said earlier.
First, the voltage dropping is unlikely. Your current is stabilising at 50A, a severe voltage drop (to 0V) would also completely put your current to 0A, which is not the case. In your case, current is maxed but no torque is developed.
So we're back to the first statement : is your current measured correctly ? Do you have current probes to measure externally your current values on the three phases and compare them to what the MotorPilot is giving you ?
Lastly, there is another issue that might be at cause here : your Hall Sensors are severely misaligned. You are maybe commanding most of your current in d-direction instead of q-direction, which is why no (or almost no) torque is developed. A quick experiment you can do is start your motor in Torque Mode, no load, to an arbitrary current target. Note the speed at which the motor is rotating. Then apply the same current target but in the opposite direction. If the reached speed is different, then it means your Hall Sensors are not properly aligned and that your commanded q-current is in fact d-current, which does not develop torque.
Another experiment would be to only command d-current while in torque mode, and see if the motor turns or not. If it turns, then your Hall Sensors are not aligned. However, I don't think the MotorPilot allows to command d-current in closed loop torque mode, so you will have to change the code a bit.
Hall Sensors tuning is explained in our wiki and is accessible via MotorProfiler.
2025-01-08 01:12 AM
2025-01-08 01:18 AM