LabVIEWForum.de
Kommunikation mit Webplatine - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenkommunikation (/Forum-Datenkommunikation)
+---- Thema: Kommunikation mit Webplatine (/Thread-Kommunikation-mit-Webplatine)



Kommunikation mit Webplatine - jak888 - 22.04.2010 07:42

Guten Morgen,

ich versuche momentan über LabVIEW eine Verbindung zu einer Webplatine herzustellen. Die Platine kann normalerweise über eine IP Adresse angesteuert werden. Das funktioniert im Browser sehr gut. Auf der Webplatine, befinden sich 16 Relais, die man mit Hilfe von Links schalten kann.

Ich habe versucht mit Hilfe der TCP-Funktionen Verbindung zu der Platine herzustellen.

Wenn ich jetzt versuche über LabVIEW Verbindung zu der Platine herzustellen, erhalte ich die Fehlermeldung 54: LabVIEW: The network address is ill-formed.

Hat jemad schon einmal etwas ähnliches versucht und weiß bescheid?
Oder weiß jemand, wie ich den Fehler 54 beheben kann?

Bin für jede Hilfe Dankbar


Kommunikation mit Webplatine - jak888 - 22.04.2010 08:45

OK, ich hab die Lösung gefunden. Ich arbeite die Lösung aus und poste sie dann.


Kommunikation mit Webplatine - jak888 - 22.04.2010 10:39

Also, hier mal eine Lösung... Ist nicht sonderlich gut, mit den vielen buttons, daran arbeite ich noch.

Das ganze ist in LabVIEW 8.6 geschrieben.


Kommunikation mit Webplatine - jg - 22.04.2010 19:15

' schrieb:Also, hier mal eine Lösung... Ist nicht sonderlich gut, mit den vielen buttons, daran arbeite ich noch.
Dann hier einmal ein Gegenvorschlag:
Lv86_img[attachment=25934]
Gruß, Jens


Kommunikation mit Webplatine - Y-P - 22.04.2010 20:45

Mal 'ne doofe Frage. Was soll das "Öffnen" und sofortige "Schließen" der Datasocket-Funktion bringen? Unsure
Da fehlt doch ein "Datasocket Read" (bzw. ein "Datasocket Write", wenn beim Öffnen "Write" angegeben wird)? Unsure
Oder stehe ich total auf dem Schlauch?

Gruß Markus


Kommunikation mit Webplatine - jak888 - 23.04.2010 08:47

Normalerweise kommuniziert man mit der Platine über ein Interface, das sehr dem eines Routers ähnelt. Dort kann man die 16 Ports anklicken. Wenn man Beispielsweise Port 0 auf ein setzt, dann "surft" das Interface zu der Adresse:
http://192.168.0.103/cgi-bin/menu.cgi?mode...coil0&val=1
Und setzt damit Port 0 auf 1.

So wie ich das verstanden habe, kann man mit Datasocket Open Adressen ansurfen. Normalweise würde man jetzt mit Read Informationen auslesen. Da mich aber nur das ansurfen und damit Schalten der Ports interessiert, langt die Open Funktion.

Die Close Funktion wird benötigt, damit die Verbindung nicht den Programmspeicher zumüllt. Wenn man jeden Port einmal an und aus schaltet hat man ohne Close immerhin 32 Verbindungen offen. Ich hoffe, das stimmt so, sonst bitte ich um Berichtigung.

Zu dem Gegenvorschlag kann ich nur sagen: Wahnsinn. Brilliante Lösung.
Ich muss mich aber auch verteidigen, bin ja nur Anfänger.

Danke für die ganze Hilfe
Edit: Besonderen dank natürlich an den Schnüdel ;-)