Ausgabe 25, September 1999

Messen, Steuern, Regeln mit Modul-Bus Interfaces über das Internet
Von Andrè Bresges und Markus Pötter

Im Jahr 1998 entwickelten das Fach Technologie und Didaktik der Technik der Universität Duisburg und der Fachbereich Technik der Willy-Brandt-Schule, Gesamtschule der Stadt Mülheim an der Ruhr, eine Infrastruktur zur gemeinsamen Durchführung von Experimenten über das Internet. Die dafür entwickelte Software, die auf der RSAPI.DLL der Firma Modul-Bus aufbaut, soll nun auch anderen Nutzern von Produkten aus der Modul-Bus Serie zur Verfügung gestellt werden.

Die Infrastruktur

Bestandteile der entwickelten Telemetrie-Infrastruktur an der Willy-Brandt-Schule und der Universität Duisburg sind:

Auf allen angesprochenen Windows-Rechnern ist die Videokonferenz-Software Microsoft Netmeeting installiert. Die Schüler-Arbeitsstationen verwenden als Programmierumgebung Microsoft Visual Basic.

Aufbau

Wie aus der Abbildung ersichtlich, bildet den Kernpunkt dieser Infrastruktur eine an der Universität Duisburg entwickelte Server-Software, die die Spannungswerte an den Ein- und Ausgängen der MSR-Schnittstellen erfasst und übermittelt sowie Steuerungsbefehle entgegennimmt.

Da als Transportprotokoll das verbreitete TCP/IP Protokoll benutzt wird, kann die Übertragung sowohl in einem lokalen Netzwerk als auch über das Internet erfolgen. Auf der Gegenseite, den Rechnern der Schüler, nimmt eine kleine Softwarekomponente die Daten entgegen. Sie wird auf allen Rechnern der Schüler installiert und kann einfach in eigenständig entwickelte Mess- und Steuerungssoftware integriert werden. Aus programmiertechnischer Sicht ist es dabei unerheblich, ob sich das zu überwachende Experiment am eigenen Rechner befindet, auf einem anderen Rechner im Klassenraum oder auf einem weit entfernten Rechner im Internet: Solange sich auf dem direkt an das MSR-Interface angeschlossenen Rechner auch die Server-Software befindet, kann von überall steuernd, messend und regelnd auf das Experiment zugegriffen werden.

Für Experimente mit räumlicher Trennung bietet es sich aber an, eine optische Kontrolle des Experimentes einzurichten. Etablierte Videokonferenzsoftware wie Microsoft Netmeeting bietet in Verbindung mit der entsprechenden Hardware alle Möglichkeiten dazu und stellt gleichzeitig eine gute Plattform zur Kommunikation der Experimentierenden bereit, die sogar die Übermittlung und gemeinsame Erstellung von Programmbestandteilen oder technischen Zeichnungen beinhaltet.

Installation und Bedienung

Systemvoraussetzungen:

Auf jedem Rechner, der am Experiment beteiligt wird, muss die Software "Telemetrie-Server" installiert werden. Dazu führt man einfach das Programm "Setup.exe" aus, und folgt den Anweisungen. Dabei wird auch die notwendige RSAPI.DLL ins Windows-Systemverzeichnis kopiert. Nach erfolgreicher Installation befindet sich das Server-Programm standardmäßig in dem Ü Unterverzeichnis "Start\Programme\ SIOS". Soll das MSR-Interface fest an einem Rechner angeschlossen werden, so empfiehlt es sich, den Telemetrie-Server dort in die Windows-Autostart-Gruppe einzubinden.

Nach dem Programmaufruf benötigt der Server einige Sekunden, um das angeschlossene MSR-Interface zu initialisieren. Das Ende dieser Prozedur wird durch die Meldung "bereit" im Programm-Icon der Startleiste angezeigt. Nun ist der Server in der Lage, sämtliche Ein- und Ausgänge des Interfaces zu steuern bzw. abzufragen.

Auf der jeweiligen Gegenseite, z.B. den Rechnern der Schüler, nimmt eine ActiveX-Komponente - das Steuerelement "Modul-Bus-Interface" - die Daten entgegen. Diese wird zusammen mit der Server-Software automatisch installiert und kann einfach in eigenständig entwickelte Mess- und Steuerungssoftware integriert werden. Dies erfolgt unter der Programmiersprache "Visual Basic" von Microsoft™, indem dort das Steuerelement "Modul-Bus-Interface" implementiert wird (Rechtsklick auf die Werkzeugleiste, "Komponenten...", "Modul-Bus-Interface"-Kontrollkasten aktivieren, Übernehmen).

Das Steuerelement selbst kann dann auf dem Programmformular plaziert, und mit der Syntax "Modbus1.<Befehl>" angesprochen werden. Die ActiveX-Komponente läuft unter Windows 95 und NT in einem eigenen Thread, kann also auch noch Daten senden und empfangen, wenn das Programm, in das sie eingefügt wurde, längst abgestürzt ist. Dies ist bei der Fehlersuche zu beachten.

Der zwingend notwendige Befehl "Modbus1.IP "a.b.c.d" wird sinnvollerweise in der Sub "Form_Load" bzw. "userControl_initialize" untergebracht und übergibt die IP-Nummer des Servers an das Programm. Im Anschluss daran stehen die in der Tabelle dargestellten Befehle zur Verfügung:

Der Wertebereich erstreckt sich jeweils von 0-255, wobei der Analogeingang seine maximale Eingangsspannung von 5V als 255 interpretiert.

Befehl Wirkung Beispiel
Ausgabe (Digitalausgang) Digitalen Wert setzen Modbus1.Ausgabe (1) = Wert
Eingabe (Digitaleingang) Digitalen Wert lesen Wert = Modbus1.Eingabe (1)
Analogwert (Analogeingang) Analogen Wert lesen Wert = Analogwert (1)
IP "a.b.c.d" Server wechseln Modbus1.IP = "127.0.0.1"

Da die Server-Software auf jedem Rechner mit installiert wird, ist ein Funktionstest auch ohne Verbindung an ein MSR-Interface möglich. Der Telemetrie-Server auf dem lokalen PC ist nach seinem Start unter der IP "127.0.0.1" zu erreichen. Ohne angeschlossene Hardware-Schnittstelle liefert das Interface Zufallswerte zurück.

Für ein ausführliches Programmierbeispiel beachten Sie bitte den folgenden Artikel "Lichtblick: Automatische Ausrichtung einer Solaranlage nach dem momentanen Sonnenstand über das Internet" im gleichen Heft.

Ausblick

Die Software ist bis jetzt mit dem SIOS-Interface und der RS232-Box getestet worden. Grundsätzlich sollte unter Windows95/98 und Windows NT mit jeder Hardware funktionieren, die auf die von H.J. Berndt und B. Kainka in ihrem Buch "Messen, Steuern und Regeln mit Word und Excel" ausführlich beschriebene RSAPI.DLL aufsetzt.

In der Praxis hat sich gezeigt, dass die Aufrufe der Befehle in einem Abstand von etwa 300ms erfolgen sollten, da sonst Messwerte unterschlagen werden oder es sogar zu Komplikationen mit dem IP-Stack kommen kann. Bei schlechten Internetverbindungen kann sich dieser Mindestabstand stark erhöhen, bei schnellen Rechnern im lokalen Netzwerk auch wesentlich kleiner sein – hier empfiehlt sich vorsichtiges Herantasten.

Für Experimente, bei denen es auf schnelle und zeitkritische Messwertaufnahme ankommt, empfiehlt es sich, das MSR-Interface direkt vom Server aus anzusprechen, und die Messwerte später in Dateiform zu übergeben. In der Universität Duisburg wird dafür derzeit an einem Steuerelement mit erweiterten Befehlssatz gearbeitet.

Für das Projekt wurde an der Universität Duisburg eine Helpline eingerichtet unter der Adresse: "telemet@uni-duisburg.de". Dort sind Fragen und Anregungen willkommen. An die gleiche Adresse können Sie sich wenden, wenn Sie mit der auf der CD enthaltenen Software auf die Experimente in der Gerhard-Mercator-Universität Duisburg zugreifen wollen.

Die Autoren sind Mitarbeiter der Fächer Technologie und Didaktik der Technik und Didaktik der Physik der Gerhard-Mercator-Universität – GH-Duisburg.

Mit den vorgestellten Techniken können Experimente aus der Ferne gesteuert und angesehen werden. Damit werden Experimente zugänglich gemacht, die zu gefährlich oder zu aufwendig sind, um sie vor Ort durchzuführen. Oder man baut Experimente mit teurem Equipment an einer Stelle auf, nutzt sie aber mehrfach. Bilder einer per TCP/IP gesteuerten Internetkamera lassen sich an anderer Stelle mit einem Projektor auf großer Leinwand darstellen, sodass auch der Einsatz im Hörsaal sinnvoll wird. Die Kamera kann z.B. mit einem Schrittmotor gesteuert werden.

Zurück zum CompaS-Archiv
Zurück zur Startseite AK-Modul-Bus