Cálculo ainda mais simples de regulador buck usando Python
Em Seleção de indutor para regulador buck simples usando Python mostramos um método baseado em Python para determinar matematicamente faixas adequadas de indutores.
V
⚠
V
⚠
Hz
⚠
H
⚠
A
⚠
No entanto, esse método requer que muitos parâmetros sejam escolhidos ou inseridos a partir do datasheet, que às vezes não estão disponíveis. Além disso, às vezes o valor do indutor já é conhecido (por exemplo, a partir de uma tabela no datasheet).
Com base nisso, a abordagem simplificada a seguir foca em calcular a ondulação da corrente do indutor e a ondulação da tensão de saída para um conjunto dado de parâmetros, usando um valor de indutor fixo.
3V3-Buck-Calculation.py
#!/usr/bin/env python3
# IMPORTANTE: Usamos os limites de corrente de vale
from UliEngineering.Electronics.SwitchingRegulator import *
from UliEngineering.EngineerIO import *
Vin = normalize_numeric("12V")
Vout = normalize_numeric("3.3V")
fsw = normalize_numeric("600kHz")
Ioutmax = normalize_numeric("3A")
inductance = normalize_numeric("4.7uH")
Cout = normalize_numeric("22uF")
#
# FIM DOS PARÂMETROS
#
inductance_current = buck_regulator_inductor_current(
vin=Vin, vout=Vout, inductance=inductance, frequency=fsw, ioutmax=Ioutmax
)
output_ripple = buck_regulator_output_voltage_ripple(
ripple_current = inductance_current.ripple,
frequency=fsw, capacitance=Cout, esr=1e-3 # Estimativa para ESR de cerâmica paralelo
)
# Imprimir resultados
print("Inductance:", format_value(inductance, "H"))
print("\tRipple current: ", format_value(inductance_current.ripple, "A"))
print("\tPeak current: ", format_value(inductance_current.peak, "A"))
print("\nInductor minimal ratings:")
print("\tSaturation current: ", format_value(inductance_current.peak, "A"))
print("\tThermal (RMS) current: ", format_value(inductance_current.rms, "A"))
print("\nRipple with Cout =", format_value(Cout, "F"))
print("\tVoltage ripple (P-P): ", format_value(output_ripple.pp, "V"))
print("\tVoltage ripple (RMS): ", format_value(output_ripple.rms, "V"))Exemplo de saída
Buck-Calculation-Output.txt
Inductance: 4.70 µH
Ripple current: 848 mA
Peak current: 3.42 A
Inductor minimal ratings:
Saturation current: 3.42 A
Thermal (RMS) current: 3.01 A
Ripple with Cout = 22.0 µF
Voltage ripple (P-P): 8.88 mV
Voltage ripple (RMS): 2.56 mVCheck out similar posts by category:
Calculators, Electronics
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow