TDK Electronics · TDK Europe

NTC-Thermistor-Klassen-Bibliothek für Python 3 oder C++

Auslesen und digitales Trimmen von Heißleitern (NTCs) mit Python 3 oder C++

Aufgrund der Kombination aus geringem Energiebedarf, hoher Empfindlichkeit und hoher Langzeitstabilität sind Heißleiter (NTCs, Negative Temperature Coefficient) die bevorzugten Temperatursensoren für das Batterie-Management sowie für die Motor- und Klimasteuerung im Automotive-Bereich wie auch für die Fabrikautomatisierung und die industrielle Feldmesstechnik.

In der folgenden Application Note werden die grundlegenden Überlegungen zum Schaltungsentwurf erläutert, wie sich die Widerstandsänderung des NTCs in eine digitale Temperaturanzeige umwandeln lässt.

Verglichen werden unterschiedliche Berechnungsmöglichkeiten von Widerstand zu Temperatur: Exponentialkurven, Lookup-Tabellen und die Steinhart-Hart-Gleichung. Für alle Fälle ist unten Python 3-Code zum Download verfügbar, der sich für andere Anwendungen und andere NTC-Kurven in eigenen Projekten auf Plattformen wie RaspberryPi oder Mikrocontrollern mit CircuitPython anpassen lässt.

Dank der Klassendefinitionen für NTCs in Python können Entwickler die Temperatur aus Widerstandswerten ableiten und umgekehrt. Vier verschiedene Klassen stehen in drei unabhängigen Bibliotheken zur Verfügung:

  1. NTC.py: Eine einfache auf dem B-Wert basierende Berechnung und eine Zwei-Punkt-Definition von R/T-Kurven
  2. NTC_SH.py: Das Steinhart-Hart-Modell mit drei Datenpunkten
  3. NTC_LT.py: eine Klasse von Lookup-Tabellen mit mehreren Datenpunkten

Alle Klassen-Definitionen enthalten eine Klassen-Funktion, mit der sich ein vorgegebener NTC in einem einzigen Schritt per Software trimmen lässt. Ein Codebeispiel zeigt, wie die csv-Ausgabe der webbasierten Anwendung  NTC R/T Calculation 5.0 - Web-based Application dazu dient, die Klassen für einen bestimmten NTC zu definieren. Ein zweites Codebeispiel demonstriert, wie die Klassen in einer typischen Schaltung mit NTC und A/D-Wandler verwendet werden.


Downloads

 Appnote Image

Detaillierte Informationen zu den Grundlagen des digitalen Auslesens und der Trimmung von NTC-Thermistoren

PDF - 598.6 KB Download
 Appnote Image

Detaillierte Informationen zur Schaltkreisoptimierung für das digitale Auslesen von NTC-Thermistoren

PDF - 472.7 KB Download
 Class Lib image

Python 3 Klassen-Tool hier herunterladen

ZIP - 13.8 KB Download
 Class Lib image

C++ Klassen-Tool hier herunterladen

ZIP - 17.5 KB Download