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.

Instaspin Motion Current limits

Other Parts Discussed in Thread: MOTORWARE

Are there specific concerns regarding the drive of a large motor with lab12?

We Have :

USER_ADC_FULL_SCALE_CURRENT_A (400.0)

USER_IQ_FULL_SCALE_CURRENT_A (204.0)

I'm concerned about Q24 scaling issues, can you point out any problems that we should expect?

Thanks

  • No, you have USER_IQ_FULL_SCALE_CURRENT_A >= 0.5 * USER_ADC_FULL_SCALE_CURRENT_A

    so you are fine.

    note that for max current the only limit we bring out is

    USER_MOTOR_MAX_CURRENT

    but this is just the maximum output of the Speed Controller (PI or SpinTAC) as an IqRef_A command.  It isn't the true current of the motor.

    You can monitor the total current with Is_A (see proj_lab10) or you can set-up some sort of trip / fault in your hardware (either from an IPM, or in your case probably a current sum circuit through a comparator to a trip zone pin).

     

     

  • Ok but when I set USER_MOTOR_MAX_CURRENT greater that 120ish I start seeing erratic motor behavior(sudden jerks etc) Is this possibly caused by a q24 overflow somewhere? The IGBT's in my design are rated for 200 amps.

  • hmmm.

    check your PID structures to see if it looks like Kp, outMin, or outMax have rolled over.

    let me check on the Q24

  • Jeff,

    When you adjust the current are you ever putting it into Amps?  Or are you always leaving it in scaled (PU) values?

  • Adam,

    I'm using the standard Lab12 code.

    Chris,

    Let me check those values and see If I can determine.

  • Jeff,

    I did some digging on this, and as long as your per unit values are <= 1.0 you are fine.

    since max_current / IQ_CURRENT is always < 1.0 you are good

    and IQ_CURRENT >= 0.5 * ADC_CURRENT all data will be bound.

     

  • Ok Thanks Chris,

    I was thinking that too!

    Unfortunately I'm still seeing a problem with current control above approximately 110 for 

    USER_MOTOR_MAX_CURRENT

    Do you have a Lab Motor that you could try and reproduce this? My ACIM motor seems to run well up-to this value and then the current control gets unstable causing a very large back emf to be created which for now is faulting out the system.

      

  • we don't have any motors or loads for 110A+...we don't even have an inverter than does more than 40A.

    you are seeing this only when you are drawing 110A, or even when it is drawing less but the variable is 110?

     

    BTW - I know a customer who has a 300A +design and he is NOT seeing this issue.

    I'm leaning toward this being an actual control issue happening at high load/current.....so could be a PI control issue or perhaps the Rs is changing (are you running RsOnline?) or your Ls is not ID'd correctly (you can try lowering it 20% and see if it moves your margin up some).  Also note your Flux value. Is it stable and similar at constant speeds?

     

     

  • Yes the problem starts occurring when the motor is fully loaded. I'm thinking you are correct with the tuning being the problem.

    I dropped LS to :

    #define USER_MOTOR_Ls_q (0.00319)

    and that indeed seemed to give some more headroom. The flux is stable around 5.7V. Im not doing RSOnline.


    Also this application needs dynamic braking can you provide any code example of dumping to Id when needed?

  • Around what speeds?

    If in the lower speed range you MUST use RsOnline.  With full load it's likely that your Rs is changing....even 20% change could effect your angle estimate enough to casuse control issues.  In motors that are driven beyone their rating (their are customers that do this) we see Rs values TRIPLE.

     

    If at higher speeds your Ls value will dominate....perhaps your Ls value is a bit off.  You can try using more IND_EST_CURRENT during ID to get a better idea of the true Ls value at higher loads (when more current is being used).  You will always have more stability with an Ls value that is a factor too low, even if you give up a bit of angle estimation (efficiency) at lighter loads.

    Someday we would like to have an LsOnline feature to be able to update Ls during motor usage....

     

  • RS calibration is occurring on startup but I don't think I have it enabled for after that.

    What speeds? I'm running fairly low speeds for now around 100 RPM.

    Did you see my comment on dynamic braking? I would like to dump this back into the motor.

  • Jeff,

    At low speeds and full loads your Rs is changing rapidly. You need to use the RsOnline feature as discussed in the full load start section of SPRUHJ1

     

    Regarding dynamic breaking, this is possible and we have implemented for a customer, but it's not something we are putting into the MotorWare release at this point due to support.  You can certainly add your own state control logic to dump your current into Id.

     

  • Thanks Again,

    We have verified that we do not have a problem with current limits

  • Chris,

    Would you be able to share with me offline a sample of how to do Id dumping?

    Jeff

  • Jeff, I can't share the code for regenerative braking with you. I'm going to see if we can share some general guidelines / pointers so you can implement yourself.

     

     

     

  • Thanks Chris,

    Please let me know.

  • Hi Chris,

    Thanks for any information you may be able to provide with this. Were you able to determine if you can share any pointers here?

  • sorry, Jeff. We aren't able to do this.