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,
When I run motor control build level 3 (DMC_BUILDLEVEL DMC_LEVEL_3) my Idq out and in vectors graphed using datalog look like this:
When I switch to build level 4, they look like this:
This seems extremely bad, since Id should be constantly referenced to zero while Iq should be the non-zero commanded current.
The fact they swap places when I redefine the build level for the lab is also worrying.
I am also now thoroughly confused as to which part of the vector is the direct and quadrature axis.
Any insight on this?
Hi,
Which estimator type are you using? Do you have field weakening control (FWC) enabled?
In your first waveforms (Build Level 3) you can see that idq_out_A.value[0] (Id) is properly set to zero.
For Build Level #4 can you check what 'IdRated_A' value is set to (Assuming FWC is disabled)? I think this may be the reason idq_out_A.value[0] (Id) isn't set right at zero, it is constant however.
The fact they swap places when I redefine the build level for the lab is also worrying.
Not sure what you mean by this.
I am also now thoroughly confused as to which part of the vector is the direct and quadrature axis.
[0] parameters will refer to Id and [1] parameters will refer to Iq.
Best,
Kevin
Which estimator type are you using?
I am using FAST estimator and PMSM style BLDC motor.
Do you have field weakening control (FWC) enabled?
FWC is currently disabled, and there are no plans to use this particular motor faster than rated RPM.
The fact they swap places when I redefine the build level for the lab is also worrying.Not sure what you mean by this.
It is a blunt observation: in the first set of graphs, Id_out_A.value[0] appears a constant offset value and Id_out_A.value[1] appears to follow zero.
In the second set of graphs, Id_out_A.value[0] appears to follow constant zero and Id_out_A.value[1] appears a constant offset value.
For Build Level #4 can you check what 'IdRated_A' value is set to (Assuming FWC is disabled)? I think this may be the reason idq_out_A.value[0] (Id) isn't set right at zero, it is constant however.
Reiterating FWC should be disabled.
I set the build level back to 4, and this is the value of the IdRated_A expression:
Running the motor, 'Id' sets to 0.5:
It appears that 'Id' is being set by motorVars_M1.fluxCurrent_A
I just set this to zero, and now 'Id' is following zero instead of 0.5
Anyway, this particular situation is much clearer now. Thank you!