Step 7 Ein Taster, zwei Funktionen

kuti

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

ich habe eine kleine Aufgabe, wo ich noch nach einer Lösung suche. Und zwar habe ich zwei Endlagen (oben und unten), zwei Ausgänge und einen Taster von der Visu. Wenn man in der unteren Endlage ist, soll der Ausgang ZU automatisch immer angesteuert werden. Wenn ich jetzt auf den Visu-Taster drücke (Tippbetrieb) soll der Ausgang ZU nicht mehr angesteuert werden, sondern der Ausgang AUF und das solange mein Finger auf der Schaltfläche ist. Tue ich in dieser Position meinen Finger weg, soll natürlich kein Ausgang angesteuert werden.
So jetzt kommt das Knifflige. Wenn man in der oberen Stellung angekommen ist und der Finger liegt noch immer auf der Schaltfläche, dann soll der Ausgang AUF weiterhin angesteuert werden, auch wenn mein Finger nicht mehr auf dem Taster ist. Erst wenn ich noch mal auf die Schaltfläche drücke, soll dann der Ausgang ZU angesteuert werden.

Ich hoffe, ich habe mich verständlich genug ausgedrückt :smile:

Gruß
 
Hallo,

so ganz verstehe ich das nicht. Nach dieser Beschreibung würden dann die Endschalter überfahren.
Welchem Zweck dienst diese Anlage?

Warum soll der Ausgang ZU in der unteren Endlage immer angesteuert bleiben?
Warum soll der Ausgang AUF in der oberen Endlage immer angesteuert bleiben?


Gruß
Oliver
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

nein, die Endlagen können mechanisch nicht überfahren werden. Die Ausgänge müssen SO angesteuert werden. Ich suche nur ein kleines Progrämmchen, das mir diese Funktion realisiert.
 
Meinst Du so:
- wenn Du in Deinem Tipp-Betrieb bis auf die Endlage fährst, dann soll beim Loslassen der entsprechende Ausgang eingeschaltet bleiben
- wenn Du zwischen den Endlagen losläßt, dann soll kein Ausgang eingeschaltet bleiben
- wenn Du zwischen den Endlagen tippst, dann soll in der letzten Richtung weitergefahren werden? Oder soll grundsätzlich nur in AUF-Richtung tipp-gefahren werden?

Harald
 
- wenn Du in Deinem Tipp-Betrieb bis auf die Endlage fährst, dann soll beim Loslassen der entsprechende Ausgang eingeschaltet bleiben

Ja.


- wenn Du zwischen den Endlagen losläßt, dann soll kein Ausgang eingeschaltet bleiben

Ja, kein Ausgang.

- wenn Du zwischen den Endlagen tippst, dann soll in der letzten Richtung weitergefahren werden? Oder soll grundsätzlich nur in AUF-Richtung tipp-gefahren werden?

Wenn man zwischen den Endlagen tippt, dann soll in der letzten Richtung tipp- weitergefahren werden, was sowohl für AUF, als auch ZU gilt. Also beides Tippbetrieb. Ich fahre in eine Richtung, bis die entsprechende Endlage erreicht wird. Wenn die Endlage erreicht wurde und mein Finger liegt noch auf dem Taster, dann soll trotzdem der Ausgang angesteuert bleiben. Erst wenn ich den Taster loslasse und noch mal den Taster betätige, soll dann der andere Ausgang angesteuert werden usw.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

wie sieht denn deine Lösung bisher aus? Hast du dir Gedanken gemacht?
Du kannt es eigentlich alles über SR Flip Flops lösen. Diese müssen natürlich entsprechend verknüpft sein.
Musst mal genau überlegen wann welche Bedingung kommen darf und wann nicht.

Falls du schon etwas hast kannst es ja mal hochladen.

Ich habe das alles im OB1 gelöst. Noch einen OB100 der bei Wiederanlauf eventuelle Merker zurücksetzt.

Gruß
Olli
 
Du kannt es eigentlich alles über SR Flip Flops lösen. Diese müssen natürlich entsprechend verknüpft sein.
Musst mal genau überlegen wann welche Bedingung kommen darf und wann nicht.
[...]
Noch einen OB100 der bei Wiederanlauf eventuelle Merker zurücksetzt.
Also ich stehe mehr darauf, so wenig wie möglich S/R zu benutzen, nur da wo es wirklich nötig ist.
Programme mit vielen S/R und noch extra-S/R bei allen möglichen und unmöglichen Situationen und zusätzlich im OB100 zeugen eher davon, daß der Programmierer nicht in der Lage ist, eine klare Logik zu formulieren, und auch sonst seinem Programm wohl nicht traut.

Bei der Aufgabe hier ist nur für das Merken der Tipp-Richtung ein S/R-Flipflop nötig. Für das Ansteuern der Ausgänge reichen einfache Verknüpfungen ohne Gedächtnis.

Der Ausgang Q_Auf soll Ein sein, wenn der Tipp-Button (S_Tipp) gedrückt ist und die gemerkte Richtung Aufwärts ist, oder wenn der Tipp-Button nicht gedrückt ist und die Endlage oben (ES_Auf) erreicht ist. Noch die übliche Verriegelung mit der Gegenrichtung dazu ergibt z.B. diese einfache Verknüpfung:
Code:
U(
U   S_Tipp
U   M_Richtung_Auf
O
UN  S_Tipp
U   ES_Auf
)
UN  Q_Zu
=   Q_Auf

Das Umformen für den Ausgang Q_Zu überlasse ich mal dem TE.

Das Umschalten der Tipp-Richtung in die Gegenrichtung erfolgt, wenn eine Endlage aktiv ist und nicht (mehr) getippt wird, z.B. so:
Code:
U   ES_Zu
UN  S_Tipp
S   M_Richtung_Auf
U   ES_Auf
UN  S_Tipp
R   M_Richtung_Auf
NOP 0     //damit der Code in KOP/FUP darstellbar ist

Harald
 
Hallo,

das sieht ja einfacher aus, wie gedacht. Vielen Dank.
Stimmt, Speicherglieder sollte man wirklich vermeiden, ich spreche aus Erfahrung :oops:.

Freundliche Grüße und noch einen schönen Feiertag.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

habe das mal gerade in PLCSIM getestet. Einfach kurz und genial !

Das ist jetzt für den anderen Ausgang.

U(
U "S_Tipp"
U "M_Richtung_Zu"
O
UN "S_Tipp"
U "End_Zu"
)
UN "Q_Auf"
= "Q_Zu"

und

U "End_Auf"
UN "S_Tipp"
S "M_Richtung_Zu"
U "End_Zu"
UN "S_Tipp"
R "M_Richtung_Zu"
NOP 0

Danke dir noch mal, Harald.
 
Schön daß Du es hingekriegt hast.
icon14.png

Ich hatte es allerdings ein kleines bisschen anders gemeint. Den Richtungsmerker braucht man eigentlich nur einmal. Es muß das zweite Netzwerk für "Q_Zu" nur etwas anders formuliert werden: 3.Zeile "UN Richtungsmerker"
Code:
//Network: Ansteuerung AUF
U(
U   "S_Tipp"
U   "M_Richtung_Auf"
O
UN  "S_Tipp"
U   "End_Auf"
)
UN  "Q_Zu"
=   "Q_Auf"

//Network: Ansteuerung ZU
U(
U   "S_Tipp"
UN  "M_Richtung_Auf"
O
UN  "S_Tipp"
U   "End_Zu"
)
UN  "Q_Auf"
=   "Q_Zu"

//Network: Umschaltung Tipp-Richtung
U   "End_Zu"
UN  "S_Tipp"
S   "M_Richtung_Auf"
U   "End_Auf"
UN  "S_Tipp"
R   "M_Richtung_Auf"
NOP 0

PS: Programmcode läßt sich hier schöner posten, wenn man ihn in [CODE]-Tags einfügt (der #-Button im Beitragseditor).

Harald
 
Ok..., aber ich glaube, kürzer geht es nicht mehr :).

Aber mit zwei Merkern geht es auch und ist irgendwie verständlicher. Aber das ist nur meine Meinung.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aber mit zwei Merkern geht es auch und ist irgendwie verständlicher.
Bei Deinen zwei Merkern ist aber nicht sichergestellt, daß die Merker antivalent sind und daß nach einem Neustart eine Richtung aktiv ist.
Wenn schon zwei Merker, dann den zweiten Merker aus dem ersten Merker ableiten:
Code:
UN  "M_Richtung_Auf"
=   "M_Richtung_Zu"

Harald
 
Das stimmt, es sei denn man nimmt für beide Merker einen remanenten Bereich, oder? Na, ja am besten sollten ich nur einen Merker verwenden.
 
Zurück
Oben