S5 135/155 mit Intouch - Seltsames Problem

mpexx

Level-1
Beiträge
31
Reaktionspunkte
4
Zuviel Werbung?
-> Hier kostenlos registrieren
Schönen guten Morgen allerseits.
Ich hatte vor eine Intouch Visualisierung so zu erweitern, dass ich den Wert einiger Zähler auf einer S5 (135 oder 155?) ändern kann.
Da man ja nicht direkt auf die Zähler zugreifen kann, habe ich den Umweg über einen DB gewählt.
Intouch (Vers. 6.0) schreibt auch ohne Probleme die Werte in diesen DB. Das Problem ist jetzt, dass das Setzen der Zähler nicht funktioniert. Zum Test habe ich einfach nur folgenden Code verwendet.

Code:
A DB101
L DW0
S Z50
Es tut sich aber nichts. Der Baustein wird allerdings definitv ausgeführt. Auch folgender Code, den ich testweise versucht habe funktioniert nicht:

Code:
UN E 1.4 
SPB =M001 
A DB 101 
L KF 0 
T DW0 
M001: NOP 0
Das DW0 ändert sich nicht...

Woran kann das liegen?
DB 101 übrigens ist der DB, in den Intouch die Werte schreibt.

Danke schonmal

mpexx
 
Hallo,
zunächst muß ich sagen, das "S5" bei mir schon ein bißchen "eingerostet" ist.
Ich meine mich aber erinnern zu können, dass der Zähler BCD arbeitet. Es könnte also sein, dass dein Zahlenwert vom Zähler deswegen nicht "geschluckt" wird, weil er nicht dem BCD-Format entspricht. Auch bin ich mir wegen der Aufruf-Syntax jetzt nicht so sicher, ob das korrekt ist.

Aber Frage :
Mit welchem Wert möchtest du denn den Zähler vorbelegen ?

Gruß
Larry

Nachsatz:
Das dein 2. Code nicht funktioniert kann auch damit zusammen hängen, dass von irgendwo anders immer ein anderer Zahlenwert wieder in das DW geschrieben wird - evntuell sogar von der Visu ...
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja die S5 Programmierung geht bei mir auch nicht mehr ganz so einfach von der Hand. :)

Ich möchte den Zähler einfach mit einem Wert, z.B. 1 belegen.
Also einfach das, was im DB steht.

Das dein 2. Code nicht funktioniert kann auch damit zusammen hängen, dass von irgendwo anders immer ein anderer Zahlenwert wieder in das DW geschrieben wird - evntuell sogar von der Visu ...

Hmm, also wenn ich den DB manuell bearbeite, Sprich in s PG lade, den Wert ändere und wieder zurückspiele, bleibt der manuell eingestellte wert auch im DB.
 
Zum Vorwärts/Rückwärtszählen und zum setzen eines Zählers
braucht er eine positive Flanke.

Ist Dein Eingang E1.4 denn auch mal da?

Pylades
 
Der Einwand von Pylades ist korrekt - das hatte ich gar nicht gesehen. Mit genau so einer Flanke muß natürlich auch das "S Z 50" angesteuert werden - ist das denn der Fall ?

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja. Der Eingang ist da. Es befindet sich ein Taster daran, den ich natürlich auch drücke :)

Aber das Obere der zwei Beispiele wird doch zyklisch aufgerufen, das sollte doch dann mit jedem Programmzyklus ausgeführt werden, oder irre ich mich da?
 
Aber das Obere der zwei Beispiele wird doch zyklisch aufgerufen
aber anscheinend immer mit dem gleichen VKE, S benötigt jedoch eine Flanke.
Versuche doch mal folgenden Code:
Code:
A  DB101
L  DW0
U  M0.0
S  Z50
UN M0.0
S  Z50
M0.0 sollte ein/der Merker "immer false" sein, es müßte aber auch mit einem beliebigen Merker funktionieren.
(ich meine, direkte Operationen zum setzen/rücksetzen/negieren des VKE gab's bei S5 noch nicht)

Harald
 
Hallo nochmal.
Wollte nur kurz Rückmeldung geben.

Der Vorschlag von PN/DP war die Lösung. Funktioniert jetzt.

Danke nochmal ;)
 
Zurück
Oben