spirit
Level-1
- Beiträge
- 961
- Reaktionspunkte
- 23
-> Hier kostenlos registrieren
Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Also ich kenne TIA nicht. Was ist ein Merker in einem DB? Das wird doch auch nur ein normales Datenbit sein, also ein DBX y.z.
Was meinst Du mit Flankenmerker? Den Flankenhilfsmerker oder die eigentliche Flanke?
Was genau funktioniert nicht? Gibts einen Code?
Den DB beschreibst Du ja sicher nicht anderswo?
U "Sicherheit_Ein"
FP "DB_Merker".M10[0]
S "Ausgang"
U "Sicherheit_Ein"
FP M30.0
S "Ausgang"
Zeigt die CPU irgendeinen Fehler an?
Denn der Code ist in Ordnung. Da kann es also noch sein, dass der DB nicht geladen ist (dann müsste ein Fehler anstehen), Dass irgendein Pointer draufzeigt (sonst würdest es in der Referenz sehen).
mfG René
Könnte es evtl. damit zu tun haben, dass ich eine 300er CPU im TIA einsetze?
Ansonsten habe ich keine Idee mehr!
nö das funktioniert bei der 300er genauso.
mfG René
Dann bin ich mit meiner Weisheit mal wieder am Ende ... muss halt Merker aus der Tabelle nehmen. Trotzdem sehr seltsam.
Das muss so funktionieren. Da spielt offenbar was anderes rein. Kopier den DB mal und mach die Flankenverweise auf den neuen DB.
Der Code selber ist völlig in Ordnung und muß funktionieren.Code:U "Sicherheit_Ein" FP "DB_Merker".M10[0] S "Ausgang"
Dieser Code funktioniert nicht (Ausgang wird nicht gesetzt).
SET //vorsichtshalber VKE-Abgrenzung
U "Sicherheit_Ein"
FP "DB_Neu".boolvar
S M30.1
U "Sicherheit_Ein"
FP "DB_Neu".M10[0]
S M30.2
Gibt es nicht, denn es macht keinen Unterschied. Es darf keinen Unterschied machen, ob ein Merker oder ein DB-Bit benutzt wird.gibt es eine logische Erklärung warum es bei einem Merker ohne VKE-Abgrenzung geht und bei dem DB nicht.
Das glaube ich nicht. Teste nochmal richtig. Oder kannst Du uns das irgendwie zeigen?Wenn ein Merker genutzt wird spielt es keine Rolle ob VKE da ist oder nicht. (Bausteinoptimierung ist auch egal)
U "Tag_1"
U "Tag_2"
[COLOR="#FF0000"]//= %Q0.0 //(zum Test) auskommentiert, damit Q0.0 nicht schaltet :-)
//dadurch geht jetzt die Verknüpfung in die nächste Verknüpfung mit ein! =:([/COLOR]
U "Tag_3"
U "Tag_4"
= %Q0.1
Hi Harald,
gibt es eine logische Erklärung warum es bei einem Merker ohne VKE-Abgrenzung geht und bei dem DB nicht.
LAR1 P#0.0
AUF "DB_Meldung"
L DBD [ AR1 , P#0.0 ]
L DBD [ AR1 , P#4.0 ]
OD
L DBD [ AR1 , P#8.0 ]
OD
L DBD [ AR1 , P#12.0 ]
OD
U <>0
= "Störung"
U "Anlage_Ein"
[COLOR=#ff0000] FP "DB_Merker".M10[5][/COLOR]
O
U "Quittierung"
SPBN Ende
L 0
T DBD [ AR1 , P#0.0 ]
T DBD [ AR1 , P#4.0 ]
T DBD [ AR1 , P#8.0 ]
T DBD [ AR1 , P#12.0 ]
Ende: NOP 0
Es kommt ja noch besser:
Wenn ich bei folgendem Code
Code:LAR1 P#0.0 AUF "DB_Meldung" [COLOR=#008000]// Hier öffnest du den DB für die AR bearbeitung[/COLOR] L DBD [ AR1 , P#0.0 ] L DBD [ AR1 , P#4.0 ] OD L DBD [ AR1 , P#8.0 ] OD L DBD [ AR1 , P#12.0 ] OD U <>0 = "Störung" U "Anlage_Ein" [COLOR=#ff0000] FP "DB_Merker".M10[5] [/COLOR][COLOR=#008000]// hier öffnest du einen weiteren DB. Der geöffnete wird ersetzt[/COLOR][COLOR=#ff0000][/COLOR] O U "Quittierung" SPBN Ende L 0 T DBD [ AR1 , P#0.0 ][COLOR=#008000] // Jetzt wird auf den DB "DB_Merker" geschrieben. Ist dieser so lang?[/COLOR] T DBD [ AR1 , P#4.0 ] T DBD [ AR1 , P#8.0 ] T DBD [ AR1 , P#12.0 ] Ende: NOP 0
einen Flankenmerker aus dem DB benütze, dann geht die CPU auf Störung und meldet einen Bereichslängenfehler.
Weitere Hinweise zum Ereignis: Prüfen Sie, ob der DB außerhalb der Operandengrenzen der verwendeten CPU liegt ...
Funktioniert das ganze mit einem Merker? Scheint auf den ersten Blick, als wäre der DB_Meldung zu kurz.... einen Flankenmerker aus dem DB benütze, dann geht die CPU auf Störung und meldet einen Bereichslängenfehler.
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Siehe weitere Informationen und konfiguriere deine Einstellungen