# Kann WAGO 750-841 mit Delphi auslesen aber nicht ändern



## einheit141 (22 März 2011)

Hallo zusammen!

Ich bin eigentlich kompletter SPS Neuling. Wir haben bei uns einen WAGO 750-841, der bei uns Haustechnik steuert. Das ganze System ist von einer Fa. eingebaut und eingerichtet worden. Lediglich die GUI zur Steuerung ist sehr gewöhnungsbedürftig und nicht wirklich auf unsere Bedürfnisse angepasst. Da ich mich mit SPS Programmierung (CoDeSys ist vorhanden) nicht wirklich auskenne, sondern mein Wissen sich eher auf Delphi bezieht, habe ich mich schlau gemacht, wie man eine eigenes Programm mit eigener GUI realisieren kann. Die benötigte MBT.dll von Wago ist auch vorhanden und ich habe die Verbindung zu unserem WAGO Knoten herstellen können. Auch das Auslesen der Momentanzustände funktioniert. Lediglich wenn ich einen Binärwert von 0 auf 1 setzen möchte, funktioniert das nicht. Die Anweisung läuft praktisch ins Leere. Ist das irgendwie eine Frage der Berechtigung zum schreiben auf dem Controller oder eine Konfigurationseinstellung? Wäre schön, wenn mir da jemand helfen könnte, der sich auch etwas mit der Kommunikation Wago <-> Delphi auskennt. Kann euch auch gerne den Quelltext mal posten.

Grüße einheit141


----------



## Oberchefe (22 März 2011)

welche Adresse willst Du beschreiben?


----------



## einheit141 (22 März 2011)

Ich habe auf 4 Ausgangsmodulen mit jeweils 4 Ports 8Tore hängen. Und hierbei möchte ich immer nur die Funktion Tor Auf ansprechen.


----------



## MSB (22 März 2011)

einheit141 schrieb:


> Ich habe auf 4 Ausgangsmodulen mit jeweils 4 Ports 8Tore hängen. Und hierbei möchte ich immer nur die Funktion Tor Auf ansprechen.



Das wird so nicht funktionieren, da die Ausgänge zyklisch vom Programm welches in der Steuerung läuft
beschrieben werden, und somit deinen Befehl ins Leere laufen lassen.

Ich kann mir fast nicht vorstellen, das du ohne Programmanpassungen in  der Steuerung vorzunehmen,
eine Chance haben wirst.

Mfg
Manuel


----------



## einheit141 (22 März 2011)

Naja das ganze funktioniert ja momentan schon mit einer anderen GUI. Aber die ist sehr unschön gemacht. Ein SPS Programm läuft meines Erachtens nicht auf der WAGO. Ich müsste doch dann genau wie Daseine Programm das momentan macht einfach die Ausgänge ansprechen können oder?

MfG einheit141


----------



## MSB (22 März 2011)

einheit141 schrieb:


> Naja das ganze funktioniert ja momentan schon mit einer anderen GUI.


Worauf basiert dieses GUI?
Webvisu, eigene Software ... ?



> Aber die ist sehr unschön gemacht. Ein SPS Programm läuft meines Erachtens nicht auf der WAGO.


Glaubst du, oder weißt du, das ist hier die Frage ... ich sag mal ganz vereinfacht,
wenn darauf kein Programm läuft, ist der 750-841 rausgeschmissenes Geld.
Zum Test:
Du hast unter der Kappe am 841 einen kleinen Schiebeschalter, bringe diesen in die untere Position,
damit ist die SPS auf Stop, und versuche dann nochmal auf einen Ausgang zu schreiben.



> Ich müsste doch dann genau wie Daseine Programm das momentan macht einfach die Ausgänge ansprechen können oder?


Ich wage schwer zu bezweifeln, das sein Programm die Ausgänge direkt beeinflusst,
vermutlich werden eher über irgendwelche Merker die div. Funktionen ausgelöst,
diese zufällig herauszufinden ist aber eher aussichtslos.

Mfg
Manuel


----------



## einheit141 (22 März 2011)

Die GUI ist ein eigenes Programm. Wobei dieses Programm als Client auf einen (auf dem selben Rechner laufenden) Server zugreift. Ich habe über einen selbst geschriebenen Server die entsprechenden Ports abgehört und bei jedem Schaltbefehl über die GUI wird ein String - AT*UPLtz,0,5,0 (als Beispiel für ein Tor)- an den Server geschickt. Bis hierhin ist das alles nachvollziehbar. Nur weiß ich eben nicht wie dieser String an die Wago übergeben wird. Wie sieht denn so ein Marker aus?selbst definierbar? Aber ich muss doch eine Möglichkeit haben mir das aktuelle Programm auf der Wago anzusehen? Auf dem ftp der Wago ist zumindest nichts drauf...

Das mit der SPS muss ich dann mal ausprobieren.


----------



## einheit141 (23 März 2011)

Eine Frage habe ich da aber dann noch: Wenn ich davon ausgehe, dass der String, den mir der Client sendet einen Merker anspricht, wie kann ich das denn aus einem Delphi Programm heraus machen? Geht das auch über eine Funktion der MBT.dll?


----------

