Widerstandskennlinie und Kapazitätsmessung

  1. Demonstration des Signalhintergrundes bei analogen Messungen (Mikrocontroller).
  2. Überprüfung und Dokumentation der Messumgebung Aufnahme der Kennlinie eines Widerstands.
  3. Messung / Datenaufnahme und Dokumentation einer Kapazität

Material:

  • 10 KΩ Widerstand 0,25
  • 5 x 1 KΩ Widerstand 0,25
  • 220 Ω Widerstand 0,25
  • Widerstand 0,6 W
  • Kondensator
  • unbekannter Kondensator
  • 1 Steckbrett
  • 1 Digitalmultimeter
  • diverse Steckbrücken

1. Überprüfung und Dokumentation der Messumgebung

Überprüfen Sie die elektromagnetischen Einflüsse Ihres Arbeitsplatzes zur Abschätzung der Wirkung, die ein unverbundener oder falschverbundener analoger Messeingang am späteren Prüfaufbau ausüben kann.

Der gezeigte Aufbau enthält die mit dem Analogeingang A0 zu verbindende Steckbrücke.

Den zu verwendenden Sketch (Arduino-Programm) „AnalogReadSerial.ino“ rufen Sie aus der Arduino-IDE auf. (Datei → Basics → „AnalogReadSerial“)

Beachten Sie die korrekten Einstellungen des Mikrocontrollers im Menü „Werkzeuge“.

Werkzeuge → Board → „Arduino Nano“

Nach Anschluss des Arduino-Nano mittel Mikro-USB-Kabel ist zudem der korrekte Prozessor. die korrekte USB-Schnittstelle auszuwählen und unter „Werkeuge“ → Prozessor die Option ATMega „Old Bootloader“ auszuwählen.

Verändern Sie gegebenenfalls den Sketch, sodass er Ihren Bedürfnissen genügt. Compilieren und laden Sie das Programm auf den Mikrocontroller hoch.

Prüfungsdokumentation auf USB-Stick

Ihre Auswertung und Dokumentation erfolgt als grafische Darstellung von etwa 100 sequenziell gewonnenen Messwerten in LibreOffice-Calc oder MS-Excel. Die x-Achse gibt die Zeit, die y-Achse den Messwert wieder. Die Messpunkte sind als durch Linien verbundene Punkte darzustellen.

Anmerk.: Optional können Mittelwert und Standardabweichung der Messwerte berechnet und dokumentiert werden.

2. Potenzialverlauf in einer Reihenschaltung / Kennlinie eines summarischen Widerstands

Dokumentieren Sie die Funktion des ausgewählten Analogeingangs durch Aufnahme des Potenzialverlaufs eines zusammengesetzten Widerstands.

Setzen Sie einen 5 KΩ -Widerstand durch eine Reihenschaltung aus 5 einzelnen 1 KΩ Widerständen zusammen (wahlweise können auch gleichartige, niedrigohmige Widerstände z. B. 220 Ohm verwendet werden).

Bestätigen Sie den Widerstand der Reihenschaltung zunächst durch Überprüfung mittels Digitalmultimeter.

Zu prüfen sind anschließend die Potenziale der Übergänge zwischen den Widerständen vom Eingang der Reihenschaltung bis zum Ausgang der Reihenschaltung.

Die Messwerte können zunächst handschriftlich erfasst und in ein Tabellenarbeitsblatt übertragen werden.

Zu erstellen ist aus den Messwerten ein Diagramm, das auf der x-Achse die fortlaufend nummerierten Messpunkte und auf der y-Achse die zugehörigen Messwerte anzeigt.

Verbinden Sie die eine Seite der Widerstandskette mit GND und die andere Seite mit 5 V. Mittels Arduino NANO ist das Potenzial der Verbindungsstellen zwischen den Widerständen zu bestimmen. Als Messprogramm steht wiederum der Sketch „AnalogReadSerial.ino“ zur Verfügung.

Prüfungsdokumentation auf USB-Stick

Die Dokumentation erfolgt als tabellarische oder grafische Darstellung. In Form eines Textes in LibreOffice oder Word.

Zu erstellen ist aus den Messwerten ein Diagramm, das auf der x-Achse die fortlaufend nummerierten Messpunkte und auf der y-Achse die zugehörigen Messwerte anzeigt. Photographieren Sie den Aufbau, dem ein Label mit Ihrem Namen, dem Datum und dem Versuchsabschnitt beigefügt ist.

3. Messung / Datenaufnahme und Dokumentation einer Kapazität

Die Idee zu diesem Aufbau stammt aus dem Arduino-Tutorial, dessen Quellcode unten ebenfalls verwendet wurde.  (Link unten). Basis des Versuches ist die Bestimmung der Zeitkonstanten eines kapazitiv wirksamen Bauteils (z.B. Kondensator, BNC-Kabel). Die Zeitkonstante einer Kapazität gibt den Zeitraum an, den das kapazitiv wirksame Element benötigt, um ein Potenzial entsprechend 63,2% des Maximalpotenzials zu erreichen.

In der Untersuchung ist der verwendete Widerstand bekannt und die Zeitkonstante wird als Maß für die Kapazität mittels Arduino-Versuchsaufbau bestimmt. Mithilfe der folgenden Schaltung lädt und entlädt der Arduino den zu prüfenden Kondensator.

Bei Keramikkondensatoren muss im Gegensatz zu dem im Schaltplan eingezeichneten Elektrolytkondensator nicht auf eine korrekte Polung geachtet werden.

Der Alternative Aufbau mit dem Arduino UNO könnte in einem ersten Schritt folgendermaßen aussehen:

Bauen Sie einen Steckplatinenaufbau gemäß den Anforderungen des vorliegenden Schaltplans auf und verifizieren / testen die Funktionalität des Aufbaus mit der bekannten Kapazität. Überprüfen Sie die jeweiligen Messergebnisse durch mindestens 10fache Wiederholung. Der Code ist in der Datei: Kapazitaetsmesser.ino auf dem USB-Stick enthalten oder kann von der im Folgenden genannten Quelle übernommen und angepasst werden.

Der folgende Sketch wurde übernommen aus: https://www.arduino.cc/en/Tutorial/CapacitanceMeter Der dortige Link zum Code funktioniert leider nicht mehr. Je nach zu prüfendem Kondensator kann die Größe des Ladewiderstands angepasst werden. Die im Code bezeichneten chargePin und dischargePin sind auf die tatsächlichen Gegebenheiten hin zu aktualisieren.

/*  RCTiming_capacitance_meter
 *   Paul Badger 2008
 *  Demonstrates use of RC time constants to measure the value of a capacitor 
 *
 * Theory   A capcitor will charge, through a resistor, in one time constant, defined as T seconds where
 *    TC = R * C
 * 
 *    TC = time constant period in seconds
 *    R = resistance in ohms
 *    C = capacitance in farads (1 microfarad (ufd) = .0000001 farad = 10^-6 farads ) 
 *
 *    The capacitor's voltage at one time constant is defined as 63.2% of the charging voltage.
 *
 *  Hardware setup:
 *  Test Capacitor between common point and ground (positive side of an electrolytic capacitor  to common)
 *  Test Resistor between chargePin and common point
 *  220 ohm resistor between dischargePin and common point
 *  Wire between common point and analogPin (A/D input)
 */

#define analogPin      0          // analog pin for measuring capacitor voltage
#define chargePin      10         // pin to charge the capacitor - connected to one end of the charging resistor
#define dischargePin   11         // pin to discharge the capacitor
#define resistorValue  10000.0F   // change this to whatever resistor value you are using
                                  // F formatter tells compliler it's a floating point value

unsigned long startTime;
unsigned long elapsedTime;
float microFarads;                // floating point variable to preserve precision, make calculations
float nanoFarads;

void setup(){
  pinMode(chargePin, OUTPUT);     // set chargePin to output
  digitalWrite(chargePin, LOW);  

  Serial.begin(9600);             // initialize serial transmission for debugging
}

void loop(){
  digitalWrite(chargePin, HIGH);  // set chargePin HIGH and capacitor charging
  startTime = millis();

  while(analogRead(analogPin) < 648){       // 647 is 63.2% of 1023, which corresponds to full-scale voltage 
  }

  elapsedTime= millis() - startTime;
 // convert milliseconds to seconds ( 10^-3 ) and Farads to microFarads ( 10^6 ),  net 10^3 (1000)  
  microFarads = ((float)elapsedTime / resistorValue) * 1000;   
  Serial.print(elapsedTime);       // print the value to serial port
  Serial.print(" mS    ");         // print units and carriage return


  if (microFarads > 1){
    Serial.print((long)microFarads);       // print the value to serial port
    Serial.println(" microFarads");         // print units and carriage return
  }
  else
  {
    // if value is smaller than one microFarad, convert to nanoFarads (10^-9 Farad). 
    // This is  a workaround because Serial.print will not print floats

    nanoFarads = microFarads * 1000.0;      // multiply by 1000 to convert to nanoFarads (10^-9 Farads)
    Serial.print((long)nanoFarads);         // print the value to serial port
    Serial.println(" nanoFarads");          // print units and carriage return
  }

  /* dicharge the capacitor  */
  digitalWrite(chargePin, LOW);             // set charge pin to  LOW 
  pinMode(dischargePin, OUTPUT);            // set discharge pin to output 
  digitalWrite(dischargePin, LOW);          // set discharge pin LOW 
  while(analogRead(analogPin) > 0){         // wait until capacitor is completely discharged
  }

  pinMode(dischargePin, INPUT);            // set discharge pin back to input
}

Die Kapazität der unbekannten Kapazität ist zu bestimmen.

Prüfungsdokumentation auf USB-Stick

Die Dokumentation erfolgt als tabellarische Darstellung sowie der Wert der bekannten sowie der von Ihnen bestimmten unbekannten Kapazität. Fassen Sie das Ergebnis In Form eines Textes in LibreOffice oder Word. Fotografieren Sie den Aufbau, dem ein Label mit Ihrem Namen, dem Datum und dem Versuchsabschnitt beigefügt ist.