![]() Technikerschule Nördlingen |
Programmierung dynamischer Internetseiten
|
![]() |
Zugriff über eine Socket-Verbindung Bisher haben wir unsere Informationen im Netzwerk fast ausschließlich über einen Webserver bezogen. Wir haben eine Domain, einen Rechnernamen oder eine IP-Nummer aufgerufen und von der dort installierten Webserver-Software informationen bezogen. Es ist aber auch möglich über das Netzwerk Informationen von anderen Rechnern zu beziehen, ohne dass dort ein Apache-Webserver läuft. Voraussetzung ist allerdings, dass es dort Programme gibt, die eine Kommunikation über Netzwerkprotokolle erlauben. Die Verbindung wird über eine Socketverbindung hergestellt. Das öffnen einer solchen Verbindung ist ähnlich dem Öffnen einer Datei: Als Parameter werden übergen: IP-Nummer/Name des Zielrechners, der Port des angesprochenen Programms sowie optional ein Variablennamen für eine ggf zurückgegebene Feler-Nummer, den dazugehörigen Fehlertext sowie ein Timout in Sekunden, nach dem bei einem Fehlschlag das Script abgebrochen wird. In unserem Beispiel wird eine Verbindung zum WEB I/O der Firma W&T (www.wut.de) hergestellt. Verwendet wird zunächst der Port 80, über den sich die jeweils 12 Eingabe- und Ausgabe-Kanäle ansprechen lassen. Wir verzichten zunächst auf ein Errorhandling. Beispiel:
Vom Hersteller W&T sind Befehle definiert, wie die Kanäle anzusprechen/abzufragen sind. Die Auflistung aller Kommandostrings finden Sie im PDF zur Übung Ampelschaltung. Im folgenden finden Sie einige Codebeispiele, wie die Kommandostrings über die Sockeverbindung an das Web I/0 übergeben werden.
Zugriff auf die serielle Schnittstelle des Web I/0 Das Web I/0 stellt zusätzlich eine Serielle Schnittstelle zur Verfügung. Auf diese Weise ist es möglich über ein Netzwerk - zum Beispiel auch ein Funknetzwerk - serielle Geräte über das Netzwerk anzusprechen. Am Gerät selbst (Maschine/Meßgerät etc) muss also kein Rechner mehr installiert sein, sondern es reicht unser W6T Interface. Die Verbindung erfolgt über den Port 8000, im Codebeispiel wird bei einer Fehlverbindung an der COM-Schnittstelle automatisch ein Reset ausgeführt um mehrminütige Timeouts zu verhindern.
Zu beachten ist, dass die Com-Schnittstelle des COM-Servers und des Gerätes korrekt konfiguriert sind. Standardmäßig ist der Com-Server auf 9600/8/N/1/H eingestellt. Zu Testzwecken ist es ggf notwendig, das Hardware-Handshaking zu deaktivieren.
|
||||||||||||||||||
|