Messen, Steuern, Regeln unter Windows

Von Schnittstellen, DLLs, VB, VBA, Delphi ...


In den Tagen des DOS hat sich der PC zu einer vielseitigen MSR-Maschine gemausert. Die Kommunikation mit externer Hardware über verschiedene Schnittstellen war kein großes Problem. Seit Windows DOS praktisch verdrängt hat, werden neue Wege gesucht. Hier sollen einige dieser Wege und die vorhandene Literatur dazu gezeigt werden.

Verwandte Themen auf dieser Homepage:

- Versuche mit Visual Basic
- DLL-Ansteuerung mit VB
- DLL-Ansteuerung mit Delphi 4
- Portzugriffe unter Windows NT/2000/XP
- Die USB-Schnittstelle



 
Der erste Einstieg gelingt z.B. mit der CD "Elektronik-Start mit dem PC". Hier werden kleine Versuche vorgestellt und die passenden Programme brauchen nur angeklickt werden. Mit der CD wird auch gleich das erforderliche Experimentiermaterial geliefert. Alle Programme wurden in Visual Basis geschrieben und liegen im Quelltext auf der CD. Alle Versuche verwenden Die serielle Schnittstelle. Zum Direktzugriff auf alle Leitungen dient die RSLINE.DLL, die für 16 Bit und für 32 Bit (Win95/98/2000) vorhanden ist.

Die CD und das Versuchsmaterial wurde in Zusammenarbeit mit Franzis, Modul-Bus (Platine und Hardware) und dem CD-Hersteller Hemming zusammengestellt, der sie unter der Bezeichnung ELEXS herausgebracht hat (siehe auch www.elexs.de). Der Unterschied ist der verschiedenen Versionen ist: Franzis hat ein zusätzliches Kapitel zu Grundlagen der RS232-Programmierung aufgenommen und außer einem stabilen Karton auch ein Anleitungsheft mit allen Versuchsbeschreibungen hinzugefügt.


Dieses Thema wurde mit praktisch gleicher Hardware (Steckplatine, Bauteile) unter dem Gesichtspunkt des Elektronik-Einstiegs und zugleich der Windows-Programmierung mit Visual Basic von Elektor in einer Artikelserie "Basiskurs Elektronik am PC" aufgegriffen. Zur Serie gibt es das Buch "Elektronik am PC", das einige Aspekte noch vertieft. Nun wird auch die normale serielle Kommunikation, Datenübertragung mit Licht und Infrarot-Fernbedienungstechnik behandelt. Außerdem bekommt man einen Einblick in die Windows-Aufrufe und den Aufbau einer DLL zur Ansteuerung der RS232.

Die Beispielprogramme aus der Elektor-Serie können hier geladen werden:

Alle VB-Programme aus den Elektor Kurs "Elektronik am PC" (Estart5.zip, 81 KB)


Das Buch "MSR mit dem PC in Haus und Garten" wendet sich an Anwender auch ohne Programmierkenntnisse, die fertige Lösungen suchen. Geräte wie das Relais-Interface, Digital-Multimeter oder der Umwelt-Spion werden mit fertiger Software vorgestellt. Es wird eine breite Übersicht über fertige Software und mögliche Einstiege in die eigene Programmierung gegeben. Ein kleiner Programmierkurs in die Einsteiger-Sprache Do-It vermittelt Basiskenntnisse einfacher Programmstrukturen. Einfache Beispiele in Visual Basic erleichtern den Übergang zu eigenen Entwicklungen.

FAQ-Liste zum Buch

Informationen zum Umwelt-Spion

Freie Windows-Software Do-It und TurboCompakt bei Modul-Bus


Unter dem Titel "Messen, Steuern, Regeln mit Word und Excel" wurde ein Weg beschrieben, mit der integrierten Makrosprache VBA direkt in der Office-Softeware mit externer Hardware zu kommunizieren. Als Bindeglied zwischen VBA und der seriellen Schnittstelle dient die RSAPI.DLL. 

FAQ und Updates zur RSAPI.DLL

In letzter Zeit wird die RSAPI.DLL vermehrt auch in anderen Programmiersprachen wie Visual Basic oder Delphi verwendet. Hier gibt es einige Basisinformationen dazu: 

Verwendung der RSAPI.DLL mit Visual Basic 5

Verwendung der RSAPI.DLL mit Delphi 4

Verwendung der RSAPI.DLL mit C++ (Auf der Homepage von H.-J.Berndt)


Das Buch "PC-Schnittstellen unter Windows" aus dem Elektor-Verlag beschreibt systematisch die Lösung messtechnischer Aufgaben mit Visual Basic und Delphi. Hier wird eine eigene PORT.DLL verwendet, die nicht nur auf die serielle Schnittstelle zugreift, sondern auch beliebige I/O-Adressen ansprechen kann sowie Zugriffe auf den Gameport, die Soundkarte und die Video-Capture-Karte ermöglicht. 

Das Buch ist auch in französischer und niederländischer Sprache erhältlich. 

Das "Universal-Interface" aus Kapitel 8 des Buchs wurde in ELEKTOR 12/1999 zusammen mit dem Anwenderprogramm COMPACT vorgestellt. 

Download: Compact Universal für Windows (Compact.zip, 229K)

Auf einer Fortbildungsveranstaltung des Instituts für Lehrerfortbildung (Mülheim) in Bottrop wurde ein Programmbeispiel zum Universal-Interface von Delphi in VB5 übertragen. Die Lösung steht hier zum Download bereit: 

Download: Universalinterface in VB5 (UniVB5.ZIP, 2K)

Kann die PORT.DLL auch unter Windows NT verwendet werden? Bisher gab es unterschiedliche Erfahrungen. Mit einem zusätzlichen Treiber können aber auch direkte Portzugriffe unter NT4 ausgeführt werden.


Das "Handbuch der PC-Mess- und Steuertechnik" versucht einen möglichst vollständigen Überblick über Hardware-Lösungen, Programmierung und Schnittstellen zu geben. Zahlreiche Schaltungen zur RS232 wurden aus dem älteren Buch "MSR über die RS232" übernommen und mit Visual Basic und Delphi unter Windows verwendet. Fertig erhältliche Interfaces werden im Einsatz gezeigt. Das Buch beschreibt den Einsatz industrieller Mess-Software (ICONNECT) und die Ansteuerung von Gerätetreibern. Der Schwerpunkt zum Thema Mikrocontroller verwendet ein neu entwickeltes Board mit dem Flash-Controller AT89S8252.

Die neue RSCOM.DLL wird im Delphi-Quelltext vorgestellt. Die einzelnen Funktionen entsrechen in vielen Einzelheiten der RSAPI.DLL, es gibt jedoch deutliche Unterschiede in der Verarbeitung von Strings. Der Anwender kann abfragen, wie viele Bytes im Empfangspuffer sind. Strings können zeilenweise ausgelesen werden, ohne dass vorher die Länge bekannt sein muss.

Auf der CD zu diesem Buch ist auch eine freie Version von Visual Basic: VB5CCE. Diese Software kann aber auch direkt von Microsoft geladen werden: www.microsoft.de

Ein Hinweis von Jürgen Heidbreder: "Durch Zufall erfuhr ich, dass ab sofort Borland die Standard-Version von Delphi 6 zum kostenlosen Herunterladen anbietet (www.borland.de). Natürlich gibts einige Einschränkungen; man darf diese Version nur nicht-kommerziell nutzen und bekommt einen Anruf vom Vertrieb nach einiger Zeit."

Freie Version für Delphi 6: www.borland.de


Literaturhinweis: Lars Gollub, Messen, Steuern und Regeln mit TCP/IP, Franzis-Verlag 2003

CompuLAB, das Relaisinterface und der Umweltspion können jetzt auch über das Internet angesteuert werden. Lars Gollub hat in seinem Buch "MSR mit TCP/IP" den Zugang über Delphi beschreiben. Man braucht nicht mehr als Delphi 4 und steuert die Interfaces über die ohnehin im Windows vorhandene WinSock32.DLL. Das Buch beschreibt die Software-Grundlagen ausführlich und leicht verständlich auch für Einsteiger. Die ersten Versuche kommen sogar ganz ohne spezielle Hardware aus. Ein Schalter kann direkt an die COM-Schnittstelle angeschlossen werden und steuert dann über das Internet z.B. eine LED, die irgendwo auf der Welt an der COM-Schnittstelle eines entfernten PCs hängt. Außer verschiedenen Interfaces der Firma Modul-Bus kommt auch eine Webcam zum Einsatz. In eigenen Anwendungen kann ein Anwender die Wirkung seiner Steuerkommandos über das Internet beobachten.

Bestellen über Amazon.de



RS232-Zugriffe mit MSCOMM32.OCX

Ingo Schick zeigt die Verwendung der MSCOMM32 zum Zugriff auf die RS232 am Beispiel einer Ampelsteuerung mit VB: Meine Software LPT-Controll, habe ich nun auch für die serielle Schnittstelle gängig gemacht. Es ist alles in gewohnter Form im Anhang. Die Anbindung erfolgt über ein 9 poliges Sub-D-Verlängerungskabel. Download auf der Seite von Ingo Schick: www.elektronik-bastelecke.de/1481253.htm


Zugriffe über ein USB/RS232-Adapterkabel

Solche Adapter erzeugen einen virtuellen COM-Port, z.B. als COM3: Nicht alles, was an einer normalen RS232 läuft, geht auch hier. Die RSCOM.DLL wurde jedoch erfolgreich getestet. Ein wichtiger Unterschied: Die Handshakeleitungen werden stark verzögert gesteuert und gelesen, man kann also nur langsam mit den Leitungen klappern.

Peter van Erkel schrieb mir, dass mit einen "Eminent" USB Serial Converter eine Baudrate von 230400 möglich war. Die normale Schnittstelle schafft dagegen nur 115200 Baud. Ich habe es noch nicht getestet, aber denkbar ist, dass die meisten Adapter höhere Baudraten erlauben.


COM-Port-I/O mit Visual Basic 2005 Express

H.-J. Böhling hat die Port.dll mit Visual Basic 2005 Express angesteuert. COM-Port-I/O benötigt keine Installation Es werden einfach alle Dateien aus der "COM-Port-I/O.ZIP"-Datei in ein beliebiges Verzeichnis kopiert. Danach kann das Programm durch Doppelklick gestartet werden. Es erlaubt den Zugang auf alle Ein- und Ausgänge.

Download: COM-Port-I/O.zip (80 K)