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.

DRV8889-Q1: open load detection and tall detection

Part Number: DRV8889-Q1

Hi team,

Here's an issue from the customer may need your help:

When driving the Nidec motor MSRPC20B09, coil disconnection, stall, and missing steps will happen. And as per the manual, "The stall detection algorithm is only valid if the device is programd to operate in smart tune ripple control decay mode. "(on page 36 of Chinese manual, could you please help check the correspond manual in English?)

However, during implementation, after setting to decay mode, the motor is unplugged and the chip (DRV8889) cannot detect.

Could you please help check this case? Thanks.

Best Regards,

Cherry

  • Cherry,

    Is the question referring to "open load" or stall?  The text above seems to only refer to stall.  Open load is a different topic all together.

    Regards,

    Ryan

  • Hi Cherry,

    Like Ryan mentioned it is not clear what the question is referring to, please clarify. Meanwhile I have a couple of comments based on the info in your posting.

    You mentioned "And as per the manual, "The stall detection algorithm is only valid if the device is programmed to operate in smart tune ripple control decay mode. "(on page 36 of Chinese manual, could you please help check the correspond manual in English?)". Yes this is correct. Stall detection will work only in Smart Tune Ripple Control STRC decay mode (default decay mode). For all other decay modes stall detection will not work even if it was enabled.

    It seems like there's some confusion regarding stall and open load detect. These are two different features. Unplugging / disconnecting the stepper while active will trigger an OL (open load) fault if enabled. Stall may or may not be detected for this. Stall is detected when the motor is mechanically stalled while stall detection is properly setup  and the motor reaches a mechanical stop or a stall based on overload. 

    I'm unable to see the motor specs for the mentioned Nidec MSRPC20B09 stepper with a simple internet search. Can you send the datasheet for this motor? As well as supply voltage used, target full scale current setting, and microstep setting used for testing the motor. Was the tests done with the DRV8889-Q1EVM or customer's hardware? 

    Regards, Murugavel

  • Hi Ryan and Murugavel,

    Thanks for your support.

    I'm unable to see the motor specs for the mentioned Nidec MSRPC20B09 stepper with a simple internet search. Can you send the datasheet for this motor? As well as supply voltage used, target full scale current setting, and microstep setting used for testing the motor. Was the tests done with the DRV8889-Q1EVM or customer's hardware? 

    I'm trying to get all these info, please give me some time.

    Is the question referring to "open load" or stall?  The text above seems to only refer to stall.  Open load is a different topic all together.

    Both stall and open load need to be detected. The customer will start with open load and is going to study stall after debugging is complete.

    The following are some of the parameters set (registers not listed use the default values, which are not written here): 

    1. TRQ_DAC = 0xA;//37.5% current

    2. MICROSTEP_MODE = 0x0A;//256 micro step mode

    3. EN_OL = 0x01;//enable open load detection

    Enable PWM outputs (step to DRV8889) 
    4. STL_LRN = 0x1;//learn stall count for stall detection
    5. EN_STL = 0x1;//enable stall detection
    6. STL_REP = 0x1;//stall detection is reported on nFAULT
    Thanks and Regards,
    Cherry
  • Hi Murugavel,

    The voltage is 12V. The microstep is 256, and the current is not sure if it is 37.5% of the setting. And they use custom hardware for test.

    https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/121/MSRPC20B09_D54ED869F8662800C253038028752900_.pdf

    Thanks and regards,

    Cherry

  • Hi Cherry,

    Thank you for all the information. You mentioned current is 37.5% of the setting (to be confirmed). I'm assuming VREF = 3.3V which would translate to full scale current FSI of 1.5A x 0.375 = 0.5625A. There is a known issue with OL detection under the following conditions for this device. OL will not be detected when FSI < 0.96A and 1/64 or higher uSteps, FSI <= 1.5A and 1/128 & 1/256 uSteps. So for OL detect to work with the customers current setting we recommend to use 1/64 uSteps or lesser microsteps values 1/32, 1/16 etc. Also note the following conditions (below snippet from the datasheet) must be avoided when OL detection is enabled to avoid a false OL detection.

    Regarding stall detection, was the customer able to perform the learn process successfully? What is the torque count value (from the register) while the motor is running at constant target velocity as well as when the motor is stalled?

    Regards, Murugavel 

  • Hi Cherry,

    I also want to add, the stepper datasheet mentions the DC resistance (DCR) of the winding is 20 ohms. A DCR value higher than 10 ohms and when combined with higher microsteps such as 1/256, 1/128 or 1/64 may result with very low torque count at steady state target velocity of the stepper and stall detection may not work because of very low SNR on the back emf generated by the motor. In addition to this, mechanically this motor has an integrated gear box according to the datasheet. Under these circumstances it may not be possible to reliably detect stall with this motor using the DRV8889-Q1. Anyways please find out the torque count values I requested in my previous reply. Thanks.

    Regards, Murugavel

  • Hi Murugavel,

    I'm assuming VREF = 3.3V

    Correct and the customer is tuning the program (OL) as suggested.

    Anyways please find out the torque count values I requested in my previous reply

    The torque count value read from the register (TRQ_count) is almost always 0.

    Regarding stall, they didn't tune it carefully. There is a reducer in the motor and it should not be appropriate to rely on the DRV8889-Q1 to detect a step loss. And we could discuss it later and close this thread.

    Thanks and Regards,

    Cherry