Aus Raspberry Pi Geek 12/2019

Grundlagen der Operationsverstärkung (Seite 2)

Als Raspberry-Geek bauen wir uns unser eigenes kleines Messgerät, das vier verschiedene Spannungen gleichzeitig misst. Den Kern des Aufbaus bildet der MCP3424, den der Artikel “Extrem genau” aus Ausgabe 06/2019 [4] im Detail beschreibt. Der Schaltplan in Abbildung 2 zeigt, wie Sie den MCP3424 anschließen.

Abbildung 2: Schaltplan des MCP3424 zum Aufbau eines einfachen 4-Kanal-Spannungsmessgeräts.

Abbildung 2: Schaltplan des MCP3424 zum Aufbau eines einfachen 4-Kanal-Spannungsmessgeräts.

Die Widerstände vor den Eingängen bilden einen 10-zu-1-Spannungsteiler. Um das richtige Teilerverhältnis zu erreichen, benötigen Sie drei Widerstände. Deren Summe ergibt den Eingangswiderstand unseres Messgeräts, also 100 kOhm, was für unseren Anwendungsfall ausreicht. Je geringer die Toleranz der Widerstände, desto genauer fallen die Messungen aus. Das Messgerät erfasst Spannungen von ±20 Volt – absolut ausreichend für kleine OP-Experimente.

Um das Messgerät aufzubauen, laden Sie zunächst das aktuelle Raspbian (2019-07-12-raspbian-buster-full.zip) herunter, installieren es auf einer SD-Karte und booten den RasPi damit. Dann aktivieren Sie via sudo raspi-config I2C (5 Interfacing Options | P5 I2C | JA). Anschließend scannen Sie den I2C-Bus mittels i2cdetect -y 1. Der MCP3424 meldet sich unter der Adresse 0x68. Jetzt aktivieren Sie mit administrativen Rechten den Kernel-Treiber (Listing 1, erste Zeile). Das müssen Sie nach jedem Neustart wieder erledigen. Anschließend lesen Sie testhalber die Werte des MCP3424 aus (zweite Zeile).

Wir sind nun in der Lage, die vom MCP3424 gemessenen Spannungen auf der Konsole darzustellen. Wünschen Sie es etwas übersichtlicher und scheuen die Arbeit mit der Bash nicht, basteln Sie ein kleines Tk-basiertes Frontend [5] für das Messgerät. Die Vorbereitung dafür zeigen die Zeilen 4 bis 7 von Listing 1.

Listing 1

# echo mcp3424 0x68 > /sys/bus/i2c/devices/i2c-1/new_device
# cat /sys/bus/i2c/devices/1-0068/iio:device0/*raw
[...]
$ sudo apt install tk bc
$ git clone https://github.com/phil294/tkbash.git
$ cd tkbash
$ sudo cp tkbash /usr/bin/

Das Bash-Programm MCP3424.sh aus Listing 2 erlaubt es nun, die Messwerte in einem Fenster darzustellen (Abbildung 3). Die Ausführungsgeschwindigkeit könnte besser ausfallen, dafür war aber die Entwicklungszeit extrem kurz. Machen Sie das Bash-Programm noch mit dem Kommando chmod 750 MCP3424.sh ausführbar und starten Sie es danach mit ./MCP3424.sh.

Abbildung 3: Das grafische Tk-Frontend zeigt das Ergebnis der Messungen übersichtlich strukturiert an.

Abbildung 3: Das grafische Tk-Frontend zeigt das Ergebnis der Messungen übersichtlich strukturiert an.

Listing 2

#!/bin/bash
# MCP3424.sh
tkbash gui --theme clam --title "MCP3424" -w 300 -h 300 --drag 1
tkbash gui label label_c1 -x 30 -y 50 -w 100 -h 40 --text "Channel 1:"
tkbash gui label label_c2 -x 30 -y 100 -w 100 -h 40 --text "Channel 2:"
tkbash gui label label_c3 -x 30 -y 150 -w 100 -h 40 --text "Channel 3:"
tkbash gui label label_c4 -x 30 -y 200 -w 100 -h 40 --text "Channel 4:"
tkbash gui label label_u1 -x 130 -y 50 -w 100 -h 40 --text "$(cat /sys/bus/i2c/devices/1-0068/iio:device0/in_voltage0_raw |awk '{print $1/100}'|bc)"
tkbash gui label label_u2 -x 130 -y 100 -w 100 -h 40 --text "$(cat /sys/bus/i2c/devices/1-0068/iio:device0/in_voltage1_raw |awk '{print $1/100}'|bc)"
tkbash gui label label_u3 -x 130 -y 150 -w 100 -h 40 --text "$(cat /sys/bus/i2c/devices/1-0068/iio:device0/in_voltage2_raw |awk '{print $1/100}'|bc)"
tkbash gui label label_u4 -x 130 -y 200 -w 100 -h 40 --text "$(cat /sys/bus/i2c/devices/1-0068/iio:device0/in_voltage3_raw |awk '{print $1/100}'|bc)"
tkbash gui label label_v1 -x 200 -y 50 -w 100 -h 40 --text "Volt"
tkbash gui label label_v2 -x 200 -y 100 -w 100 -h 40 --text "Volt"
tkbash gui label label_v3 -x 200 -y 150 -w 100 -h 40 --text "Volt"
tkbash gui label label_v4 -x 200 -y 200 -w 100 -h 40 --text "Volt"
tkbash gui button button1 -x 30 -y 250 -w 80 -h 40 --text "REFRESH" --command "./MCP3424.sh"
tkbash gui button button2 -x 200 -y 250 -w 80 -h 40 --text "EXIT" --command "tkbash gui --close"
tkbash gui --hotkey Escape --command 'tkbash gui --close'

Grundschaltungen

Die wichtigsten Grundschaltungen für einen Operationsverstärker zeigen die Schaltpläne in Abbildung 4 und Abbildung 5. Die Spannungsversorgung erfolgt mithilfe des TMH0512 [6]. Er erzeugt aus den 5 Volt des RasPi eine Betriebsspannung von +12 Volt, -12 Volt und Masse. Beachten Sie, dass die vom TMH0512 erzeugte Spannung galvanisch von der Betriebsspannung des RasPi getrennt ist. Sie können die abgebildeten Schaltungen nacheinander aufbauen und damit herumexperimentieren.

Abbildung 4: Verstärker mit OP und der Spannungsversorgung für alle Beispiele.

Abbildung 4: Verstärker mit OP und der Spannungsversorgung für alle Beispiele.

Abbildung 5: Verschiedene Schaltstufen mit OP.

Abbildung 5: Verschiedene Schaltstufen mit OP.

Invertierender Verstärker

Wie der Name verrät, kehrt ein invertierender Verstärker (Abbildung 4, oben rechts) das Eingangssignal um und verstärkt es mit dem Verstärkungsfaktor V. Der Verstärkungsfaktor dieser Schaltung ist V=R1/R2. Die Ausgangsspannung lässt sich mit der Formel UA=-UI*V ermitteln.

Es ist immer etwas knifflig, ein bestimmtes Teilerverhältnis mit den im Handel befindlichen Widerständen herzustellen. Daher verwenden wir in unserem Beispiel für R2 einen 10-kOhm-Widerstand und für R1 zwei in Reihe geschaltete 10-kOhm-Widerstände. Diese Anordnung liefert uns für die Schaltung einen Verstärkungsfaktor von 2.

Abbildung 6 zeigt den kompletten Beispielaufbau auf einem Breadboard. Hier verstärken wir nur eine Gleichspannung, doch der OP könnte stattdessen auch ein Wechselspannungssignal verstärken.

Abbildung 6: Der Versuchsaufbau mit OP und Messgerät auf einer Steckplatine.

Abbildung 6: Der Versuchsaufbau mit OP und Messgerät auf einer Steckplatine.

Nicht invertierender Verstärker

Wundern Sie sich nicht über die quasi doppelte Verneinung in der Bezeichnung nicht invertierender Verstärker (Abbildung 4, unten rechts): Diese Ausdrucksweise trifft man in der Technik oft an. Umgangssprachlich würde man sagen, dass ein solcher OP einfach das Signal verstärkt. Der entsprechende Faktor berechnet sich als V=1+R1/R2, die Ausgangsspannung als UA=UE*V. Obwohl wir die gleichen Widerstandswerte wie beim invertierenden Verstärker verwenden, erhöht sich der Verstärkungsfaktor bei dieser Schaltung auf 3.

Impedanzwandler

Der Impedanzwandler (Abbildung 4, unten links) nimmt keinen Einfluss auf den Signalpegel, sondern verändert die Signalleistungen. Eine Signalquelle, die nur einige Nanoampere Strom liefert, kann nach der Impedanzwandlung den maximalen Ausgangsstrom des OPs liefern. Als Einsatzgebiet dient beispielsweise das Aufbereiten von Sensormesswerten, die häufig nur geringe Ströme liefern.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 6 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben