NCP380 Ilim-Widerstand mit Python berechnen
English
Deutsch
Problem
Du möchtest den korrekten Wert für den Ilim-Widerstand für den NCP380-Strombegrenzer-IC mit einem benutzerdefinierten Stromlimit berechnen.
Lösung
Dieses Skript verwendet nicht nur die Formel aus dem Datenblatt zur Berechnung des theoretischen Widerstandswerts, sondern führt auch Bereichsprüfungen durch (der NCP380 unterstützt nur Ströme von 0,1 bis 2,1 Ampere) und berechnet den nächsten E96-Widerstandswert.
Um das Skript auszuführen, musst du Resistors.py im selben Verzeichnis ablegen (siehe diesen vorherigen Beitrag für Details).
compute_ncp380.py
#!/usr/bin/env python3
"""
Ein Skript, das den NCP380-Begrenzungswiderstand berechnet
Siehe http://www.onsemi.com/pub_link/Collateral/NCP380-D.PDF Seite 17
Basierend auf Resistors.py, siehe
https://techoverflow.net/2015/05/19/finding-the-nearest-e96-resistor-value-in-python/
"""
from UliEngineering.Electronics.Resistors import *
from UliEngineering.EngineerIO import format_value
__author__ = "Uli Koehler"
__license__ = "CC0 1.0 Universal"
__version__ = "1.0"
def computeNCP380AdjResistor(ilim):
"""Berechne den genauen Wert für den NCP380-Abgleichwiderstand,
gegeben einen Ilim-Wert in Ampere"""
#Grenzen prüfen
if ilim < 0.100: print("Warnung: NCP380 unterstützt keine Ströme unter 100 Milliampere")
elif ilim > 2.1: print("Warnung: NCP380 unterstützt keine Ströme über 2,1 Ampere")
#Widerstand gemäß Gleichung 5 aus dem Datenblatt berechnen
rlim = -5.2959 * ilim**5 + 45.256 * ilim**4 - 155.25 * ilim**3 + 274.39 * ilim**2 - 267.6 * ilim + 134.21
return rlim * 1000.0 #equation gives us kiloohms
# Anwendungsbeispiel: Berechne E96 Rlim für Ilim=0.23A
if __name__ == "__main__":
# Theoretischen Wert berechnen
rlim = computeNCP380AdjResistor(0.23) #ampere
# Nächsten tatsächlichen Wert berechnen
actual_rlim = nearest_resistor(rlim, sequence=e96)
# Ergebnisse ausgeben
print("Theoretischer rlim-Wert: %s" % (format_value(rlim, "Ω")))
print("Nächster E96-Wert: %s" % (format_value(actual_rlim, "Ω")))Check out similar posts by category:
Electronics, Python
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow