Grafische Programmiersprachen in der Computergestützten Hochschullehre

Jürgen Berkemeier

Institut für Angewandte Physik
Westfälische Wilhelmsuniversität Münster

Rechnereinsatz in der Physik

Seit es Rechner gibt, werden sie in der Physik in der Forschung eingesetzt. Sowohl bei der theoretischen als auch bei der experimentellen Arbeit sind sie nicht mehr wegzudenken. Aber auch in der Lehre kommen Rechner zum Einsatz. In Vorlesungen helfen sie bei der Wissensvermittelung, in Praktika unterstützen sie die Studierenden bei aufwendigen Messreihen. Die Studierenden sollen aber nicht nur lernen, beim Computereinsatz auf schon vorhandene Softwarelösungen zurückzugreifen, auch die Fähigkeit, selbst Programme zu erstellen soll in Lehrveranstaltungen vermittelt werden. Sowohl beim Einsatz im Labor als auch in Lehrveranstaltungen haben sich grafische Programmiersprachen sehr gut bewährt. Sie sind leicht zu erlernen und die umfangreichen Programmbibliotheken mit Funktionen zur grafischen Darstellung, für Numerik und zur Messwerterfassung erlauben es, mit geringem Aufwand Software für Demonstrationen oder zur Messwerterfassung zu erstellen.

In Vorlesungen werden Rechner eingesetzt, um komplizierte, oft auch zeitabhängige Vorgänge durch Visualisierung zu veranschaulichen. So kann z. B. das Verhalten theoretischer Modelle bei Parameteränderung direkt in der Vorlesung durch eine numerische Simulation berechnet und als Film dargestellt werden. Diese Programme können den Studierenden dann auch im Internet für Übungen zur Verfügung gestellt werden. In Experimentalvorlesungen könne die Ergebnisse durch rechnergesteuerte Messwerterfassung präsentiert werden. Zusätzlich sind auch sofort Auswertungen möglich, die von Standardmessgeräten nicht durchgeführt werden können, wie z. B. eine Poincaréabbildung. Durch den Rechnereinsatz in Vorlesungen kann man die Aussage: "Ein Bild sagt mehr als tausend Worte" erweitern zu: "Ein Film sagt mehr als tausend Bilder".

In experimentellen Übungen werden Rechner eingesetzt, wenn die gleiche Messprozedur oft wiederholt werden muss. Dieses ist z. B. der Fall, wenn die Abhängigkeit eines Effektes von verschiedenen Parametern systematisch untersucht oder verschiedene Proben vermessen werden sollen. Durch Automatisierung dieser Messungen gewinnt man Zeit für die Diskussion der zu untersuchenden Effekte. Darüber hinaus sind aufwendige Auswertungen und die Visualisierung der Ergebnisse schon während der Messung möglich. Die Studierenden können so schon bei der Messung die Ergebnisse beurteilen.

Aber gerade in den Naturwissenschaften, insbesondere in der Physik, kann man nur selten auf fertige Softwareprodukte zurückgreifen. Dieses gilt sowohl für den Theoretiker wie für den Experimentator. Daher ist es wichtig, dass Naturwissenschaftler in der Lage sind, auch selbst Programme für die eigene Arbeit oder für Lehrveranstaltungen zu erstellen.

Die Programmiersprache

Als Programmierwerkzeug bieten sich hier grafische Programmiersprachen wie z. B. LabVIEW an. Im Gegensatz zu den "klassischen" Programmiersprachen, wie z. B. Fortran oder C, werden bei LabVIEW die Programme nicht textbasiert geschrieben, sondern in einem Grafikeditor "gemalt"1. Die Abbildung 1 zeigt ein kleines Programm, das die Fakultät einer Zahl berechnet. Man sieht, dass die Rechenoperationen durch Symbole dargestellt werden, die Schleife durch einen Kasten. Der Datenfluss zwischen den Symbolen geschieht durch die Linien. LabVIEW-Programme sehen wie Schaltpläne aus, oder besser noch wie Datenflussdiagramme.


Abb. 1: LabVIEW Programm, das die Fakultät einer Zahl berechnet

Das Erlernen einer grafischen Programmiersprache ist sehr leicht, da keine Statements mit komplizierter Syntax gelernt werden müssen. Die Symbole für die verschiedenen Sprachelemente sind selbsterklärend und können Auswahlmenüs entnommen werden. Hierdurch wird LabVIEW zur idealen Programmiersprache für Praktika, da von den Studierenden keine Vorkenntnisse verlangt werden müssen. In der Abbildung 2 sind einige Sprachelemente von LabVIEW dargestellt. Zum Programmieren werden die Symbole mit der Maus an der gewünschten Stelle positioniert und dann verdrahtet.

Rechnen:
Vergleich:
Strukturen:for:while:
 case(if):  
Abb. 2: Einige Sprachelemente von LabVIEW

Gerade für den Einsatz im experimentellen Bereich sind grafische Programmiersprachen interessant, da sich messtechnische Aufgaben sehr gut auf Datenflussdiagramme abbilden lassen. Daher ist es nicht verwunderlich, dass diese Art zu programmieren von Messtechnikfirmen entwickelt wurde. Die Unterstützung beim Zugriff auf Messtechnikhardware und Messgeräte ist sehr gut. Die nötigen Funktionen sind direkt in den Sprachumfang integriert. Ebenso gut ist die Einbindung der Soundkarte, wodurch auch ohne teure Spezialhardware zumindest die Prinzipien der rechnergesteuerten Messwerterfassung gelernt werden können. In der folgenden Auflistung sind die Vorteile von der grafischen Programmiersprache LabVIEW gegenüber anderen textbasierten Sprachen aufgelistet:

  • Grafische Programmierung, die Studierenden müssen keine Statements lernen
  • Funktionen werden aus Menüs gewählt
  • Zu allen Funktionen ist Hilfe verfügbar
  • Funktionsparameter werden beim Verbinden geprüft
  • Programme sind Struktur- und Datenflussdiagramme
  • Es existieren viele Bibliotheksfunktionen, z. B. für die grafische Ausgabe und für die Schnittstellen-Programmierung
  • Unterprogramme können direkt und ohne Testumgebung getestet werden

LabVIEW in der Computergestützten Hochschullehre

In der Physikausbildung wird LabVIEW neben den Anleitungen zum wissenschaftlichen Arbeiten in einigen Vorlesungen zur Darstellung und zur sofortigen Auswertung von Demonstrationsexperimenten sowie für einfache numerische Rechnungen eingesetzt. Abbildung 3 zeigt als Beispiel ein Programm, das in der Vorlesung "Nichtlineare dynamische Systeme" eingesetzt wird, um die verschiedenen Typen von Fixpunkten anschaulich zu erklären2.


Abb. 3: Dieses Programm löst eine einfache Differentialgleichung, um die unterschiedlichen Fixpunkttypen zu veranschaulichen

In den Experimentellen Übungen zum Wahlfach "Angewandte Physik" erstellen die Studierenden ein Programm, das die Übertragungsfunktion von Filtern bzw. Verstärkern misst, grafisch darstellt und abspeichert3. Dabei muss ein Funktionsgenerator gesteuert und ein Oszillograph ausgelesen werden. Selbst Studierende ohne Programmierkenntnisse bewältigen diesen Komplex, bei dem das Messproblem analysiert, das Programm geschrieben und getestet und das Messprogramm durchgeführt werden muss, in der vorgesehenen Zeit von 3 Tagen.

Im "Computerpraktikum zur Angewandten Physik", das sich Inhaltlich besonders an Studierende für das Lehramt richtet, wird berücksichtigt, dass in den Schulen normalerweise keine Messgeräte mit Rechnerinterface zur Verfügung stehen. Hier wird das in LabVIEW eingebaute Interface zur Soundkarte eingesetzt. Die in allen modernen Computern eingebaute Soundkarte ersetzt zwar kein Messgerät, aber die Grundlagen der Messwerterfassung und besonders der Weiterverarbeitung können sehr gut geübt werden. Als Stichworte seien hier nur Abtasttheorem, Fourieranalyse und digitale Filter genannt.

CHL in der Physik

Die Computergestützte Hochschullehre hat in der Physik zwei Einsatzbereiche:

  • Hilfe bei der Wissensvermittlung
    Hier werden durch den Einsatz von entsprechenden Programmen in Vorlesungen oder Seminaren die Inhalte durch Visualisierungen und einfache Numerik veranschaulicht.
  • Einsatz in experimentellen Übungen
    Hier lernen die Studierenden, selbst Software zur Rechner gesteuerten Messwerterfassung und -verarbeitung zu erstellen. Sie werden so in die Lage versetzt, eine Messumgebung mit Rechnersteuerung aufzubauen.

Physiker sollen den Computer nicht nur als Werkzeug benutzen können. Sie müssen auch in der Lage sein, selbst Software zu erstellen, je nach Studienschwerpunkt im numerischen oder experimentellen Bereich. Gerade im experimentellen Bereich erleichtern grafische Programmiersprachen den Einstieg in die Programmierarbeit.

Literatur

  1. G. W. Johnson
    LabVIEW
    Graphical Programming
    McGraw-Hill 1994
  2. St. H. Strogatz
    Nonlinear Dynamics and Chaos
    Addison-Wesley 1994
  3. H. D. Lüke
    Signalübertragung
    Springer 1992


Folien zum Vortrag im PDF-Format (78 KB)