-> Hier kostenlos registrieren
Hallo,
ich brauche wohl einen kleinen Denkanstoß. Irgendwie funzt das nicht wie ich möchte.
FB 34 Steuerung für Achse
- FB 34 wird angesprungen sobald in einem PB M17.4 gesetzt wurde. Die Achse fährt vorwärts.
- FB 34 wird angesprungen sobald in einem PB M17.5 gesetzt wurde. Die Achse fährt rückwärts.
- M0.1 ist logisch 1
- MW78: Endwert vorwärts (im OP hinterlegt)
- MW80: Endwert hinten (im OP hinterlegt)
- MW82: Geschwindigkeit vprwärts
- MW84: Geschwindigkeit rückwärts
Bevor die Achse verfahren werden kann wurde synchronisiert, Referenzfahrt durchgeführt und in die hintere Postion gefahren. A73.7 (Toogle Bit) ist nach der ganzen Aktion auf "1"
Hier mal der originale Code, der funktioniert:
Bei meinem Code zuckt der Antrieb meist nur und es kommt dann die Fehlermeldung $0082. Die steht unter anderem dafür, dass der selbe Auftrag weiderholt gestartet wurde in der Zeit wo der andere noch läuft. Wenn ich es richtig verstanden habe.
Der Hintergrund ist, dass ich die Achse bis zur Endposition weiterfahren lassen möchte wenn die Fahrt zwischendurch durch Not-Aus unterbrochen wurde.
Mit dem aktuellen Code kann ich nur vor und zurück, nicht aber vor und noch einmal vor. Daher möchte ich A73.7 tooglen, da die IP266 nur den Auftrag annimmt wenn ein Signalwechsel an A73.3 auftritt.
Erst dachte ich, dass M17.4 und M17.5 mehrmals hintereinander aufgerufen wird was mit dem aktuellen FB34 keinen Einfluß hätte. Ich hatte das zwischendurch mal mit einem Schmiermerker unterbunden - keine Änderung.
Hier mein Code:
Hucky
ich brauche wohl einen kleinen Denkanstoß. Irgendwie funzt das nicht wie ich möchte.
FB 34 Steuerung für Achse
- FB 34 wird angesprungen sobald in einem PB M17.4 gesetzt wurde. Die Achse fährt vorwärts.
- FB 34 wird angesprungen sobald in einem PB M17.5 gesetzt wurde. Die Achse fährt rückwärts.
- M0.1 ist logisch 1
- MW78: Endwert vorwärts (im OP hinterlegt)
- MW80: Endwert hinten (im OP hinterlegt)
- MW82: Geschwindigkeit vprwärts
- MW84: Geschwindigkeit rückwärts
Bevor die Achse verfahren werden kann wurde synchronisiert, Referenzfahrt durchgeführt und in die hintere Postion gefahren. A73.7 (Toogle Bit) ist nach der ganzen Aktion auf "1"
Hier mal der originale Code, der funktioniert:
Code:
:
:U M17.4
:SPB =M001
:
:L MW80
:T AW76
:L MW84
:T AB75
:U M0.1
:S A73.7
:SPA =M002
:
M001:
:L MW78
:T AW76
:L MW82
:T AB75
:U M0.1
:R A73.7
:
M002:
:U M0.1
:R M17.4
:R M17.5
:
:BE
Bei meinem Code zuckt der Antrieb meist nur und es kommt dann die Fehlermeldung $0082. Die steht unter anderem dafür, dass der selbe Auftrag weiderholt gestartet wurde in der Zeit wo der andere noch läuft. Wenn ich es richtig verstanden habe.
Der Hintergrund ist, dass ich die Achse bis zur Endposition weiterfahren lassen möchte wenn die Fahrt zwischendurch durch Not-Aus unterbrochen wurde.
Mit dem aktuellen Code kann ich nur vor und zurück, nicht aber vor und noch einmal vor. Daher möchte ich A73.7 tooglen, da die IP266 nur den Auftrag annimmt wenn ein Signalwechsel an A73.3 auftritt.
Erst dachte ich, dass M17.4 und M17.5 mehrmals hintereinander aufgerufen wird was mit dem aktuellen FB34 keinen Einfluß hätte. Ich hatte das zwischendurch mal mit einem Schmiermerker unterbunden - keine Änderung.
Hier mein Code:
Code:
:U M17.4
:SPB =M001
:
:L MW80
:T AW76
:L MW84
:T AB75
:U A73.7
:SPB =M003
:U M0.1
:S A73.7
:SPA =M002
M003:
:U M0.1
:R A73.7
:SPA =M002
:
M001:
:L MW78
:T AW76
:L MW82
:T AB75
:
:U A73.7
:SPB =M004
:U M0.1
:S A73.7
:SPA =M002
M004:
:U M0.1
:R A73.7
:
M002:
:U M0.1
:R M17.4
:R M17.5
:
:BE
Hucky
Zuletzt bearbeitet: