Eine Frage zu einem Programmauszug...

petzi

Level-1
Beiträge
255
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich habe eine Frage zu dem angehängten Ausschnitt aus einem größeren Programm...

Wird der Ausgang A0.1 inaktiv, so soll der Ausgang A0.0 offensichtlich für 2,5s ein 1-Signal führen.

Was ist hier der Sinn der Einschaltverzögerung mit T0?

Das gleiche Ergebnis hätte man doch auch, wenn man den Ausgang A0.1 einfach negiert mit dem Eingang von T1 verbinden würde... ich finde einfach keine logische Erklärung dafür.

Danke!
 

Anhänge

  • Programm.jpg
    Programm.jpg
    26,8 KB · Aufrufe: 154
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo vierlagig... eigentlich ist der fehlende "Auszug" nicht so wichtig - dachte ich zumindest.

Dabei handelt es sich um die Zuweisung des Ausgangs A0.1 - der Einfachheit in AWL nachgeliefert:

U(
O E 0.2
O A 0.1
)
U E 0.1
UN A 0.0
U M 30.0
= A 0.1

E0.1 ist ein Öffner, E0.2 ist ein Schließer!

So, nun noch einmal meine Frage:

Was ist hier der Sinn der Einschaltverzögerung mit T0 - das gleiche Ergebnis hätte man doch auch, wenn man den Ausgang A0.1 einfach negiert mit dem Eingang von T1 verbinden würde?

Danke für eine Erklärung...
 
Zuletzt bearbeitet:
So wie ich das sehe, wir da wird nie ein Timer irgendwas machen.
Um A0.1 auf High zu halten, muss M30.0 immer High sein. Und wenn M30.0
immer High ist, werden beide Timer kontinuierlich rückgesetzt
 
Yep marlob,

du hast natürlich recht... habe die Negierung an den beiden Rücksetzeingängen von Timer T0 und T1 vergessen.

Die Schaltung funktioniert auch - sobald Ausgang A0.1 abgeschaltet wird, ist der Ausgang A0.0 noch für 2,5s aktiv.

Ich verstehe nur nicht, wozu der Timer T0 hier programmiert wurde?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
warum dein A 0.0, 600ms später geschaltet werden darf muss nicht immer
Programmtechnische Gründe haben, es können auch technische gründe in
deiner Maschine sein. Das kannst zur Zeit nur du am besten beurteilen
weil du Sie kennst....wir nicht.

gruß helmut
 
warum dein A 0.0, 600ms später geschaltet werden darf muss nicht immer
Programmtechnische Gründe haben, es können auch technische gründe in
deiner Maschine sein.

Aber A0.0 wird doch nicht später geschaltet. Die Verzögerung von 600ms über T0 kommt doch gar nicht zum tragen, da dazu im NW2 A0.1 den Status 0 haben müsste. Und wenn A0.1 = 0, dann hat auch T0 den Status 0.

Das passt doch nicht, oder?
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber A0.0 wird doch nicht später geschaltet. Die Verzögerung von 600ms über T0 kommt doch gar nicht zum tragen, da dazu im NW2 A0.1 den Status 0 haben müsste. Und wenn A0.1 = 0, dann hat auch T0 den Status 0.

Das passt doch nicht, oder?
Ich seh daß so, das die 2,5sek Nachlauf von A0.0 nicht gestartet werden, wenn aus irgendeinem Grund zwischen Ein- und Ausschalten (mit E0.2 und E0.1) von A0.1 nicht mindestens 600ms Zeitdifferenz liegen.
Wenn man die 600ms verlängert, kann man das gut testen.

Man braucht ja z.B. keine Motorbremse, wenn der Motor gar keine Zeit hatte zu starten.
 
Zuletzt bearbeitet:
Man braucht ja z.B. keine Motorbremse, wenn der Motor gar keine Zeit hatte zu starten.

Ja stimmt, so etwas könnte dahinter stecken!

Noch eine Frage zum Programm:

Ist es eigentlich üblich, dass die Timer nach dem Netzwerk, in dem sie verwendet werden, programmiert werden?

Frohe Weihnachten!
 
Da ich die SPS-Programmierung erst seit einem halben Jahr mache, frag' ich mich sowas auch immer.
Ist wahrscheinlich davon abhängig, wie man es gelernt hat. Denn da gibt's sicher unterschiedliche Philosophien bei den Lehrern.
Ich denke, letztendlich muß das jeder für sich entscheiden, wie es für ihn später am besten nachvollziehbar ist. Ich mach' das momentan von den Zusammenhängen zu den vorhergehenden bzw. nachfolgenden Netzwerken abhängig. Im obigen Beispiel hätte ich es wahrscheinlich umgekehrt programmiert. Hängt aber sicherlich auch davon ab, was man ursprünglich programmiert hat und was dann als Erweiterung dazu kam.
Ich hätte ja auch das Oder-Glied von T0 und T1 im Netzwerk von A0.0 weggelassen, da ja T0 nie 1 ist, ohne daß auch T1 1 ist und somit T1 zum Starten von A0.0 reichen würde. Aber vlt. wurden die Timer einzeln später hinzugefügt und dann löscht man ja nicht unbedingt was von der vorherigen Programmierung.

Ich wünsche ebenfalls allen ein frohes Weihnachtsfest
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@ petzi

Zitat:
Ist es eigentlich üblich, dass die Timer nach dem Netzwerk, in dem sie verwendet werden, programmiert werden?

NÖÖÖ.
Ich mache es eigentlich wegen der Übersichtlichkeit immer umgekehrt.
Immer versuchen den logischen ablauf auch nacheinander in den Netzwerken zu programmieren.
Die Übersichtlichkeit leidet stark wenn man zum Verständnis der Funktion in den Netzweken immer vor und zurückspringen muss.

@ hucky

die Funktion Netzwerk einfügen ist genau dazu da damit man NICHT Änderungen nur hinten anhängt, sondern
sie an sinnvoller Stelle einfügt.


peter(R)
 
Zuletzt bearbeitet:
@ hucky

die Funktion Netzwerk einfügen ist genau dazu da damit man NICHT Änderungen nur hinten anhängt, sondern
sie an sinnvoller Stelle einfügt.
Das ist mir schon klar. So handhabe ich das ja auch. (Und das Hinzufügen war auf die Oder-Verknüpfung von T0 und T1 gemünzt, die ja eigentlich überflüssig ist, da T1 als Einschaltkriterium von A0.0 reichen würde.)
Ich könnte mir aber vorstellen, daß der Programmierer des Pogrammauszug von petzi die gegenseitige Verriegelung von A0.0 und A0.1 mehr in den Vordergrund stellen wollte als die Abhängigkeit von A0.0 zu den Timern, die man ja immer noch wahrnimmt.

Aber wie Du schon sagtest, man sollte hinterher den logischen Ablauf wieder erkennen.
Und es ist ja nur ein Programmauszug. Vlt. gibts ja noch andere Zusammenhänge.

Aber wer weiß schon, was im Kopf eines Programmierers so vor sich geht.:)
 
Zuletzt bearbeitet:
@ hucky

die Frage war ja doch:
Zitat:
Ist es eigentlich üblich, dass die Timer nach dem Netzwerk, in dem sie verwendet werden, programmiert werden?

und die Antwort darauf ist NÖÖ

Zu der Feststellung:
Aber wer weiß schon, was im Kopf eines Programmierers so vor sich geht.

kann ich eigentlich nur sagen ... manchmal überraschend wenig ....

peter(R)
 
Zuletzt bearbeitet:
Zurück
Oben