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.

DRV10987: Driving Sinusoidal wave

Part Number: DRV10987
Other Parts Discussed in Thread: DRV10983, DRV10983-Q1

Hello Guys,

Good day.

Our customer is planning to use DRV10987 on their design. However, they are confronted with the following questions:

1) it is mentioned that the driver is driving motors with sinusoidal wave but all they see on the oscilloscope is controlling with PWM. Is there any particular setup for that?

2) How can they initialize the chip that can keep the speed under load? In the other word, how can they initialize the driver to increase the torque in order to keep the speed of the motor when the motor is loaded?

3) For a motor like:

www.faulhaber.com/.../EN_2233_S_DFF.pdf

what would be Kt and Rm values? It sounds like it is not possible to initialize exactly those values into the driver. In these cases, what do you suggest to do if they cannot initialize the exact Kt and Rm values into the driver IC?

Thanks in advance!

Art

  • Hi Art,

    I will respond to your question shortly

    Regards,

    Vishnu.

  • Hi Art,

    Here's my response.

    1. The output voltage amplitude applied to the motor is developed through sine wave modulation so that the phase-to-phase voltage is sinusoidal. As you rightly mentioned, it is a PWM waveform but the fundamental component of the PWM waveform is a sine waveform. You can verify this by filtering the PWM waveform using a Low pass filter and setting the cut-off frequency to around 10 times higher than the fundamental frequency. 

    2. Device should be tuned to ensure the motor spins at rated speed and torque. I guess you want to maintain a constant speed when the motor is loaded. DRV10987 should be able to drive motors with constant loads. For dynamic loads, we recommend to use an external MCU to implement a speed loop. Please check this reference design for more details. Do you see any issues in spinning the motor when the motor loaded? 

    3. I'm not sure which motor in the datasheet you are referring to. What is the Rm and Kt of the motor? Please note that the device takes Kt in mV/Hz as input. Please make sure the units are taken care. Check this FAQ which has equations to convert the torque constant (mNm/A) to BEMF constant Kt (mV/Hz) and also to check if DRV10987 can drive your motor.      

    Regards,

    Vishnu.

  • Hi Art,

    We haven't heard from you in a while. Do you have any updates?

    Regards,

    Vishnu

  • Hi Vishnu,

    Apologies for the delayed response for I was awaiting the customer feedback. Below are their response on your previous answers:

    2) The reference design you have provided is about DRV10983.  He think the major difference between DRV10987 and DRV10983 is that in DRV10987 the registers are 16-bit and in DRv10983 they are 8-bit. Is this the only difference? Rather than that, can he used the same initialization for both of them?

    Unfortunately, their motors are loaded and he cannot maintain the speed when the motors are slightly loaded. he had a hard time to find the info about closed-loop speed control in the datasheet and that is one of the main reason that he decided to reach out to us. The motors are speed up to 50000 RPM but their torque is not high enough that they stop working as soon as a light torque is applied on their shaft.


    3) By Rm and Kt, he meant the resistance of the phase and the back-EMF of the motor. now the resistance of phase-phase of their motor is 60 ohm and the back-EMF is 0.295 mV/min-1. He cannot load these two values in the driver's register as they are beyond the limits.


    He wants to know how he can initialize the CONFIG 1 to CONFIG 7 of the drivers for motor series 12 B of the attached datasheet.

    1205.EN_0620_B_FMM.pdf

    Thanks!

    Art

  • Hello Art,

    Just wanted to let you know that responses might be delayed as a result of the holiday in the US. 

    Also, here's an app note that illustrates the differences between the DRV10983 and DRV10987, which should help: https://www.ti.com/lit/an/sloa274/sloa274.pdf 

    I'll let Vishnu comment on the rest.

    Best,

    -Cole

  • Thanks Cole!

    I'll be waiting for the rest of the information.

    Best regards,

    Art

  • Hi Art,

    The reference design that was provided is for DRV10983-Q1 which is the automotive variant of DRV10987. Both devices are same in terms of register mapping and register length so you can use the same code for device initialization.

    Recommended phase -phase stator resistance for DRV10987 is 38 ohms.  Maximum Rm that can be programmed in the device is 18.624 ohms (refer to Table 3 in datasheet). From the datasheet that you provided, Kt of  12-B motor is 17.72 mV/Hz. With 60 ohms phase-phase resistance, it will be difficult for the device to maintain high speed due to voltage drop across the resistance but I would still recommend to implement a speed loop using external MCU to regulate speed at loaded condition. 

    Regards,

    Vishnu

  • Hello Vishnu,

    Good day.

    Customer have set-up everything as suggested, but now his motor is not getting command from PWM. IT is working but RPM is not changing by changing duty cycle of the PWM. Any thoughts on it?

    Also, it is worthwhile to mention that he activated the control with PWM from SpeedCtrl register.

    Thanks!

    Art

  • Hi Art,

    Thanks for the update. I can think of two reasons as to why the motor speed does not change with the PWM duty cycle.

    1. Check if bit 15 in SpeedCtrl register (reg address: 0x30) is disabled. This bit disables I2C speed control when set to 0.

    2. Check if bit 15 in CONFIG6 register (reg address: 0x95) is enabled. This bit enables PWM input at SPEED pin when set to 1

    Regards,

    Vishnu.

  • Hello Vishnu,

    According to the customer, he already found the culprit. Apparently, Bit 13 of register 0x94 (CONFIG 5) should be enabled which means that the chip sticks into the closed-loop mode.

    It is okay to close this ticket now.

    Thanks for the support!

    Art

  • Thanks for the update.