Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Q&A

Post History

66%
+2 −0
Q&A Estimating the input capacitance of an BLDC motor controller

What is seems you really want to know is how to size a power supply filter capacitor, not what the input capacitance of something is. The objective is to keep the ripple voltage below some value. ...

posted 3y ago by Olin Lathrop‭  ·  edited 3y ago by Olin Lathrop‭

Answer
#2: Post edited by user avatar Olin Lathrop‭ · 2021-04-25T13:16:38Z (almost 3 years ago)
  • What is seems you really want to know is how to size a power supply filter capacitor, not what the input capacitance of something is.
  • The objective is to keep the ripple voltage below some value. To determine ripple voltage, you need to know the characteristics of what charges the capacitor, and what discharges is.
  • It seems in your case, the capacitor will be charged from a reasonably steady supply, but with some series resistance due to the wire. You can model that well enough for most purposes as an ideal voltage source with a resistance in series.
  • The tricky part in your case is to know the characteristics of the discharge current. In this case, that is the current drawn by your motor controller. Since you are designing it, you should know what the maximum current draw is, and whether it uses pulses, and at what frequency.
  • Note that the capacitor can only help with ripple caused by uneven current draw. No amount of capacitance can fix the drop across the resistance to the power supply due to the steady state current. For example, if the resistance of the wires back to the power supply is 1 &Omega; and the motor controller draws a steady 2 A, then the voltage at the motor controller will be 2 V lower than the power supply output, regardless of how much capacitance you add in front of the motor controller. Put another way, the added local power supply filter capacitance can only reduce the AC component of the ripple, not the long term average (DC). Even more specifically, capacitance reduces the ripple proportional to the ripple frequency, with more capacitance merely changing the proportionality constant.
  • To calculate how much capacitance you need, you have to know how much the current can suddenly change and for how long.
  • As an example, let's say the motor controller draws current as a 0 to 2 A square wave at 25 kHz. The period is therefore 1/(25 kHz) = 40 &micro;s. The controller will draw 2 A for 20 &micro;s, then 0 A for 20 &micro;s. Since we intend to make the ripple a small fraction of the total supply voltage, we can make the simplifying assumption that the power supply (with its series resistance) is delivering a steady 1 A to the capacitor.
  • The capacitor current is the charging current minus the discharging current, which is a -1 to +1 A square wave with each level lasting 20 &micro;s. This will result in a triangle voltage waveform. To calculate the peak to peak voltage, we only need to find how much the capacitor voltage changes due to 1 A for 20 &micro;s.
  • One way to see where we're at is to calculate this ripple for a plausible capacitor value of a nice round number. It is then easy to scale the ripple from there inversely proportional to the capacitance.
  • Let's use 1 mF to see where things are at. The basic formula is:
  • &nbsp; &nbsp; V = A s / F
  • where V is the change in voltage, A the applied current in amps, s the time the current is applied in seconds, and F the capacitance in Farads. Plugging in our example values:
  • &nbsp; &nbsp; (1 A)(20 &micro;s)/(1 mF) = 20 mV
  • So a 1 mF capacitor results in 20 mVpp ripple in this example. If you want different ripple, scale the capacitance accordingly. For example, it would take 2 mF to result in 10 mVpp ripple, and 400 &micro;F results in 50 Vpp.
  • There is one more wrinkle, which is equivalent series resistance (ESR) of the capacitor. As a first approximation, you take the 2 App current draw and multiply it by the ESR to get additional ripple on what was calculated above. For example, if the capacitor as 100 m&Omega; ESR, then the actual ripple will be 200 mVpp more than with a pure capacitance (0 ESR).
  • Let's say that in the example above you want to limit the ripple to 100 mVpp. With a 1 mF capacitor, the ripple due to the capacitance is 20 mV. That leaves 80 mV budget for ripple due to the ESR. (80 mV)/(2 A) = 40 m&Omega;, which is the maximum ESR you can tolerate in this hypothetical example.
  • What is seems you really want to know is how to size a power supply filter capacitor, not what the input capacitance of something is.
  • The objective is to keep the ripple voltage below some value. To determine ripple voltage, you need to know the characteristics of what charges the capacitor, and what discharges is.
  • It seems in your case, the capacitor will be charged from a reasonably steady supply, but with some series resistance due to the wire. You can model that well enough for most purposes as an ideal voltage source with a resistance in series.
  • The tricky part in your case is to know the characteristics of the discharge current. In this case, that is the current drawn by your motor controller. Since you are designing it, you should know what the maximum current draw is, and whether it uses pulses, and at what frequency.
  • Note that the capacitor can only help with ripple caused by uneven current draw. No amount of capacitance can fix the drop across the resistance to the power supply due to the steady state current. For example, if the resistance of the wires back to the power supply is 1 &Omega; and the motor controller draws a steady 2 A, then the voltage at the motor controller will be 2 V lower than the power supply output, regardless of how much capacitance you add in front of the motor controller. Put another way, the added local power supply filter capacitance can only reduce the AC component of the ripple, not the long term average (DC). Even more specifically, capacitance reduces the ripple proportional to the ripple frequency, with more capacitance merely changing the proportionality constant.
  • To calculate how much capacitance you need, you have to know how much the current can suddenly change and for how long.
  • As an example, let's say the motor controller draws current as a 0 to 2 A square wave at 25 kHz. The period is therefore 1/(25 kHz) = 40 &micro;s. The controller will draw 2 A for 20 &micro;s, then 0 A for 20 &micro;s. Since we intend to make the ripple a small fraction of the total supply voltage, we can make the simplifying assumption that the power supply (with its series resistance) is delivering a steady 1 A to the capacitor.
  • The capacitor current is the charging current minus the discharging current, which is a -1 to +1 A square wave with each level lasting 20 &micro;s. This will result in a triangle voltage waveform. To calculate the peak to peak voltage, we only need to find how much the capacitor voltage changes due to 1 A for 20 &micro;s.
  • One way to see where we're at is to calculate this ripple for a plausible capacitor value of a nice round number. It is then easy to scale the ripple from there inversely proportional to the capacitance.
  • Let's use 1 mF to see where things are at. The basic formula is:
  • &nbsp; &nbsp; V = A s / F
  • where V is the change in voltage, A the applied current in amps, s the time the current is applied in seconds, and F the capacitance in Farads. Plugging in our example values:
  • &nbsp; &nbsp; (1 A)(20 &micro;s)/(1 mF) = 20 mV
  • So a 1 mF capacitor results in 20 mVpp ripple in this example. If you want different ripple, scale the capacitance accordingly. For example, it would take 2 mF to result in 10 mVpp ripple, and 400 &micro;F results in 50 mVpp.
  • There is one more wrinkle, which is equivalent series resistance (ESR) of the capacitor. As a first approximation, you take the 2 App current draw and multiply it by the ESR to get additional ripple on what was calculated above. For example, if the capacitor has 100 m&Omega; ESR, then the actual ripple will be 200 mVpp more than with a pure capacitance (0 ESR).
  • Let's say that in the example above you want to limit the ripple to 100 mVpp. With a 1 mF capacitor, the ripple due to the capacitance is 20 mV. That leaves 80 mV budget for ripple due to the ESR. (80 mV)/(2 A) = 40 m&Omega;, which is the maximum ESR you can tolerate in this hypothetical example.
  • <hr>
  • <blockquote>What might be the reason behind people recommending low-ESR caps put every 1m at the DC link cables for most of the RC stuff?</blockquote>
  • I haven't seen such a recommendation, nor have you provided evidence of any, so we can't guess what motivation might be behind such advice (if it exists at all).
  • In any case, capacitance lumped at the point of use is never worse than
  • the same capacitance spread out over a length of cable, assuming the purpose of the cable is only to deliver power.
#1: Initial revision by user avatar Olin Lathrop‭ · 2021-04-24T16:16:30Z (about 3 years ago)
What is seems you really want to know is how to size a power supply filter capacitor, not what the input capacitance of something is.

The objective is to keep the ripple voltage below some value.  To determine ripple voltage, you need to know the characteristics of what charges the capacitor, and what discharges is.

It seems in your case, the capacitor will be charged from a reasonably steady supply, but with some series resistance due to the wire.  You can model that well enough for most purposes as an ideal voltage source with a  resistance in series.

The tricky part in your case is to know the characteristics of the discharge current.  In this case, that is the current drawn by your motor controller.  Since you are designing it, you should know what the maximum current draw is, and whether it uses pulses, and at what frequency.

Note that the capacitor can only help with ripple caused by uneven current draw.  No amount of capacitance can fix the drop across the resistance to the power supply due to the steady state current.  For example, if the resistance of the wires back to the power supply is 1 &Omega; and the motor controller draws a steady 2 A, then the voltage at the motor controller will be 2 V lower than the power supply output, regardless of how much capacitance you add in front of the motor controller.  Put another way, the added local power supply filter capacitance can only reduce the AC component of the ripple, not the long term average (DC).  Even more specifically, capacitance reduces the ripple proportional to the ripple frequency, with more capacitance merely changing the proportionality constant.

To calculate how much capacitance you need, you have to know how much the current can suddenly change and for how long.

As an example, let's say the motor controller draws current as a 0 to 2 A square wave at 25 kHz.  The period is therefore 1/(25 kHz) = 40 &micro;s.  The controller will draw 2 A for 20 &micro;s, then 0 A for 20 &micro;s.  Since we intend to make the ripple a small fraction of the total supply voltage, we can make the simplifying assumption that the power supply (with its series resistance) is delivering a steady 1 A to the capacitor.

The capacitor current is the charging current minus the discharging current, which is a -1 to +1 A square wave with each level lasting 20 &micro;s.  This will result in a triangle voltage waveform.  To calculate the peak to peak voltage, we only need to find how much the capacitor voltage changes due to 1 A for 20 &micro;s.

One way to see where we're at is to calculate this ripple for a plausible capacitor value of a nice round number.  It is then easy to scale the ripple from there inversely proportional to the capacitance.

Let's use 1 mF to see where things are at.  The basic formula is:

 &nbsp; &nbsp; V = A s / F

where V is the change in voltage, A the applied current in amps, s the time the current is applied in seconds, and F the capacitance in Farads.  Plugging in our example values:

 &nbsp; &nbsp; (1 A)(20 &micro;s)/(1 mF) = 20 mV

So a 1 mF capacitor results in 20 mVpp ripple in this example.  If you want different ripple, scale the capacitance accordingly.  For example, it would take 2 mF to result in 10 mVpp ripple, and 400 &micro;F results in 50 Vpp.

There is one more wrinkle, which is equivalent series resistance (ESR) of the capacitor.  As a first approximation, you take the 2 App current draw and multiply it by the ESR to get additional ripple on what was calculated above.  For example, if the capacitor as 100 m&Omega; ESR, then the actual ripple will be 200 mVpp more than with a pure capacitance (0 ESR).

Let's say that in the example above you want to limit the ripple to 100 mVpp.  With a 1 mF capacitor, the ripple due to the capacitance is 20 mV.  That leaves 80 mV budget for ripple due to the ESR.  (80 mV)/(2 A) = 40 m&Omega;, which is the maximum ESR you can tolerate in this hypothetical example.