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.

DRV8838 Continuous Direction Switching

Other Parts Discussed in Thread: DRV8838EVM, DRV8834, DRV8838

We have a project that will require a small DC motor to be operated ~400ms forward, then ~400ms reverse. We'll be using a MSP430 similar to the DRV8838EVM design. We have 2 questions:

  • Do we need any extra filtering or other concerns since the motor will be switching direction so frequently?
  • The design will be battery operated. Would the DRV8834 be a better choice since the motor current draw can be limited? The cost of the DRV8834 is ~2X so we prefer to use the DRV8838, especially since our application only requires 1 motor.

Thanks,

George

  • Hi George,

    The DRV8838 should work in your application. As you mentioned, the DRV8834 has the ability to limit the current but in many cases similar results can be achieved by limiting the PWM duty cycle.

    If you haven't done so, please consider evaluating the part with the DRV8838EVM. If desired, the EVM can be modified to allow external control of the inputs.
  • Hi Rick:

    Thanks for responding to this over the weekend! We definitely do plan on PWMing the duty cycle with the MSP430 but don't have much experience with these small DC motors so we figured it wouldn't hurt to ask.

    We'll definitely get the DRV8838EVM on order. I did a design yesterday and when I went to look for app notes on the DRV8838 I found this EVM and the AD design files. I should have looked first since my design and the EVM are almost identical.

    Just to confirm, you don't foresee any issues by rapidly switching motor direction?

    Thanks,
    George
  • Hi George,

    One concern is the possibility of voltage pumping as the motor quickly decelerates and accelerates. Depending on the voltage of the battery and the current in the motor, this could be an issue for the DRV8838.
  • Hi Rick:

    Yes, that's my concern as well. We're going to either run off a single cell Li Ion (3.7V) or 3-4 AA/AAA batteries. Is there anything you can suggest I can add into our design to try and combat the potential voltage pumping? We've got the schematic done and are just waiting to review and add any last minute ideas before we do the board layout.

    Thanks,
    George
  • Hi George,

    If you are planning to connect VM and VCC together, I would be concerned about VCC. VM can handle up to 12V absolute maximum, but VCC can only handle 7V.

    A possible suggestion is adding footprints for components that separate VCC and VM, and clamp the VCC voltage to < 6V. This will provide options if needed, but does not require the use of the components if you find the voltage does not exceed the rated voltages.

    For the 3-4 AA/AAA batteries, you could consider tapping VCC after 2 cells.
  • Hi Rick:

    No, I've designed in an LDO (TLV70225DBVT) to power the MSP430 and DRV8838 and the battery pack goes to VM. I've added ferrite beads to the input of the LDO and just before the VM pin of the DRV8838 but since the source is coming from batteries and the motor is "switching" at a relatively low frequency, I wonder if their would even be any high frequency noise to filter. I'm just still a little concerned about the motor continually reversing direction and what that might do to the other parts on the board. I'd rather design something into this 1st revision of the board and find that it's not needed than wish I would have added something that I could test.

    George
  • Hi George,

    Agreed. It is best to have the hooks in place on the 1st revision.

    For reference, a blog was written on the subject of VM pumping last year. The link is LINK. Note the interesting fact in the blog:

    An interesting fact is that if we decelerate by decreasing input PWM duty directly to 0% at slow decay mode, then there will be no pumping at all. But, the H bridges should be able to handle the huge current caused by BEMF.

  • Hi Rick:

    Thanks for the link, nice article. I know the DRV8834 datasheet shows how to put the part into slow decay mode but I don't see any talk about slow decay mode in the DRV8838 datasheet. Am I going to be lucky and you'll tell me that the DRV8838 is in slow decay mode??

    Thanks,
    George
  • Hi George

    In DRV8838 datasheet, P11, table2, the "brake" function means exactly the slow decay configuration of the bridge. So, just put EN = LOW while the nSLEEP is HIGH will set the device into slow decay.

    Thanks,

  • Hi Wilson:

    Thanks for clarifying that for me and thanks for writing that blog post! Currently our code just changes direction each 400ms. How long would you recommend staying on brake mode before we change direction?

    Thanks,
    George
  • Hi George

    Normally it will take about 50ms to 300ms for the braking process untill the speed down to zero, depending on the motor inertia and the braking current.

    In your case, maybe you don't need a slow decay braking to avoid the VM pumping. Just monitor the VM voltage during operation especailly the phase changing point. If no serious pumping (Some time a drop on VM), you can leave it the old way.

    Thanks,
  • Consider using a gearbox to effectively increase step time. If 430 mS = 100 steps, then thats only 4.3 mS/step which isn't much time.
    A stepper motor on my desk right now has a winding charge time (L/R) of 1.8 mS.

    If positioning accuracy would not be compromised, divide the motor speed by n to stretch the step time to make control easier by using a 1:n gearbox.
  • Hi David:

    Thank for the idea but cost is large part of this product design so adding a gearbox isn't an option. Our initial tests seem to be OK but I still need to bring the board back to the workbench and monitor VM to see what is looks like at the phase change.

    On a side note, I'd appreciate some input on an idea I have. The design also have 2 white LEDs which forces us to design in a boosting regulator. The cost of a regulator that can supply 20mA or 500mA isn't too different so I was thinking of perhaps using a boost regulator and take it's output to feed both VM and the LED string. In theory this would give us longer run time as well as consistent motor performance but I see potential red flag warnings.

    Anyone have any thoughts on this?

    Thanks,

    George

  • Vm for that IC is -0.3  to + 12V.

    LEDs operate from nominally 1.2 - 2.2 Vdc, (foward Junction voltage, on state) there is no need to boost voltage to operate a  LED from a motor supply voltage source which should be 5-20 Vdc. Do you mean "buck" supply? IN either case, there is no reason to use a regulator that expensive to power a LED.

    All that LEDs need, especially at currents on the order of 1-10 mA is a dropping resistor. LEDs do not require voltage regulation, just current limiting.


    Use leaded LEDs so the body capacitance (~ 50-200 pF) will shunt high speed voltage spikes around the junction, if there are any spikes. The Vm supply should filter them out.

  • You missed my point that this will be using white LEDs, hence the higher forward voltage of 3.5-4.0V is needed. This product is portable and will be operated from batteries, either 3-4 AA or a single cell Li Ion. We've been evaluating different lower voltage motors and have had good success running these under 5V.

    The LEDs will be used as a light source so the current will be more like 20mA, not the 1-10mA you stated.
  • "hence the higher forward voltage of 3.5-4.0V is needed"

    Digi Key has eight white LEDs with less than 3 V junction voltage.

    http://www.digikey.com/product-search/en/optoelectronics/led-lighting-white/525606?k=led

    AA Li-Ion cells (they cells, not batteries)  are nominal 3.6 Vdc, there is :

    1. no reason to use a boost supply, just a small current limit resistor, ive done it with CREE LED flashlights by converting them from alkaline to LiOn cells to get full rated drive current of 1.2A


    2. You cannot boost a 3.6 V supply to operate a 3.5 V LED. We do not use switching power supplies to generate a 0.1V differential. No regulator is needed, just connect it drectly to the supply.

    Since Li-Ions have a flat voltage characteristic across their discharge range, a boost coverter is not needed.

    Boost and buck supplies require a voltage margin. Why use a boost supply to boost a 3.6V supply to operate a 3.5 V LED? Thats pointless, just connect the LED directly to the supply. If the cells are in series (14 volts) then just use a dropping resistor or a buck D-D converter.

    Next error, you specified:

    "3-4 AA or a single cell Li Ion'

    If "AA" means standard alkaline or carbon cell, they dont have enough power density for this application, or will have short life.

    None of what youre posting makes any sense to an engineer experience in designing switching supplies...

  • It's true that Li-Ion cells have a nominal voltage of 3.6V but they typically can safely be discharged to 3.0V or even lower in some cases.

    I stated that I was using 2 white LEDs but I would be configuring them in series, I never said I would be trying to boost 0.1V. By putting the LEDs in series would allow a boosting regulator to provide required voltage needed across any input voltage to the product, from a low of 2.7V for 3 AA batteries to high of 4.8V with 3 fresh AA batteries.

    LEDs are like transistors, you are going to get a range of products when you go into production and you must account for parts that come in at the low end as well as the high end. If you measure the beta of 100 transistors or the forward voltage of 100 LEDs you'll find quote a range of parts.

    Yes, the design is going to support the use of multiple battery types. I don't see how you can state that AA cells do not have enough power density. I never stated what the expected lifetime of the batteries needed to be. Typical current draw of these small DC motors is 200-300mA and AA cells are anywhere from 1800mAh to ~2300mAh.

    In the future it would be appreciated if you kept your tone and comments to a respectful nature. This forum is supposed to be a place to exchange information and be helpful to others.
  • Hi Wilson:

    I had a chance to measure the motor voltage on the board's output pins. If you could comment about what you see I'd appreciate it.

    Thanks,

    George

  • Hi George,

    It is better to have another shot on the VM pin of the device. But anyway the VM voltage usually following the outputs voltage envelop with 0.7V to 1V lower. 

    I can see a short time voltage peek at each turn around of the motor which should be caused by the inductive recirculation of the motor after changed the direction. You should be able to see this peek at VM pin as well. Since your VM still has much headroom, just make sure the MAX peek voltage is within the device operation range.

    Make sure you have good VM bulk caps (could be 10uF + 0.1uF in your case) placed close enough to your VM pin. It will help to absorb and lower the peek voltage seen on the VM pin.

    Best regards,

  • Hi Wilson:

    Here's a few snap shots with the scope probe on the via right next to the VM pin of the device. The power source is 3 AA batteries and I varied the speed for each picture.

    The EVM has the 10uF + 0.1uF but maybe in this application a little more might be better or trying some different code?

    Thanks,

    George

    P.S. I put in a good word for you to Santa Claus!

  • Hi George,

    Thank you of the plots. I don't see issues from the VM pumping point of view. All peak noises on the plot is narture for a brush DC caused by the hard commutation of the brush and the inductive recirculation. A small cap like <= 0.1u parallel with the motor ends could be help if you want to filter the noises. Make sure not to induce fault OCP issue by adding this cap.

    The 10uF + 0.1uFshould be enough just make sure they are placed close to the VM pin of the driver. Of course, higher value of the bulk caps will do better anyway.

    Best regards,