-> Hier kostenlos registrieren
Hallo Zusammen,
mit dem Move-Befehl kann ich einen Wert aus einem Datenbaustein schreiben, soweit ist das kein Problem. Nun zum Problem: ich versuche, einen zweiten Wert aus einem anderen Datenbaustein in das gleiche Merkerwort zu schreiben, im gleichen FC. Der Wert verändert sich schon, nur sollte ich keine 0 als Resultat bekommen. Sprich: irgendwo liegt ein Fehler beim Transferieren vor, den ich so nicht finde. Ich kann mir das nicht ergründen, ein Merker kann ja auch in einem beliebigen Netzwerk im gleichen FC gesetzt werden, warum funktioniert das nicht mit einem Merkerwort? Es handelt sich sowohl im DB wie auch beim MW um das Format Integer, also sollten eigentlich keine Probleme von dieser Seite auftreten.
Verwendete Hardware: CPU 315SB von der Firma Vipa (sehr interessantes Produkt ), OP 277, verbunden via Profibus.
Hier die beiden Move-Befehle (programmiert mit FUP, angezeigt als AWL)
Den Wert benötige ich für einen Counter (SFB2, CTUD), mit welchem ich die Position auf einem OP 277 von verschiedenen Elementen ändern kann.
Es geht um eine Umsetzung von Rushhour auf einem Panel, wobei mir abgesehen von dem Problem nur noch ein DB mit Kollisionsdaten fehlt.
Mfg zingarra
mit dem Move-Befehl kann ich einen Wert aus einem Datenbaustein schreiben, soweit ist das kein Problem. Nun zum Problem: ich versuche, einen zweiten Wert aus einem anderen Datenbaustein in das gleiche Merkerwort zu schreiben, im gleichen FC. Der Wert verändert sich schon, nur sollte ich keine 0 als Resultat bekommen. Sprich: irgendwo liegt ein Fehler beim Transferieren vor, den ich so nicht finde. Ich kann mir das nicht ergründen, ein Merker kann ja auch in einem beliebigen Netzwerk im gleichen FC gesetzt werden, warum funktioniert das nicht mit einem Merkerwort? Es handelt sich sowohl im DB wie auch beim MW um das Format Integer, also sollten eigentlich keine Probleme von dieser Seite auftreten.
Verwendete Hardware: CPU 315SB von der Firma Vipa (sehr interessantes Produkt ), OP 277, verbunden via Profibus.
Hier die beiden Move-Befehle (programmiert mit FUP, angezeigt als AWL)
Code:
NW1
A "EL"
A "NG"
JNB _00a
L "REF_DB".RB10POS
T "RPB10"
_00a: NOP 0
NW2
A "HL"
A "NG"
JNB _019
L "REF_DB2".PB10
T "RPB10"
_019: NOP 0
Den Wert benötige ich für einen Counter (SFB2, CTUD), mit welchem ich die Position auf einem OP 277 von verschiedenen Elementen ändern kann.
Code:
NW3
A "CUV"
A(
A "RS"
R "B10S"
A(
A "B10S"
L S5T#500MS
SE T 11
NOP 0
NOP 0
NOP 0
A T 11
)
S "B10S"
A "B10S"
)
= L 0.0
BLD 103
A "CDV"
A "B10S"
= L 0.1
BLD 103
A "NG"
= L 0.3
BLD 103
CALL "CTUD" , DB20
CU :=L0.0
CD :=L0.1
R :=
LOAD:=L0.3
PV :="RPB10"
QU :=
QD :=
CV :="POS_BLOCK".B10POS
NOP 0
Es geht um eine Umsetzung von Rushhour auf einem Panel, wobei mir abgesehen von dem Problem nur noch ein DB mit Kollisionsdaten fehlt.
Mfg zingarra
Zuletzt bearbeitet: