Frage zum Flankenwechsel

linuxluder

Level-1
Beiträge
171
Reaktionspunkte
4
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

ich habe eine (für Experten) eine einfache Frage zum Flankenwechsel.

Ich habe den Eingang 1.0. Dieser steht immer auf 1.
Per "Konpfdruck" kann ich den Eingang für z.B. 3 Sekunden auf 0 setzen.

Ich möchte nun dass ein Merker 5.0 einfach seinen Zustand ändert.

Code:
    UN    M 5.0
      UN    E 1.0
      FN    M    102.0
      S      M 5.0

      U     M 5.0
      UN    E 1.0
      FN    M    102.1
      R     M 5.0

Dieser CODE funktioniert. Das Setzen bzw. das Rücksetzen von M 5.0 geschieht mit einer Verzögerung von 3 Sekunden. Kann das sein?

Könnt ihr mir bitte helfen?

Danke Jo
 
So auf die Schnelle würde ich sagen
Code:
U M 102.0
S M 5.0

U M 102.1
R M 5.0
da sonst nicht die Flanke sondern der Zustand verwendet wird.
 
Ich denke was Du meinst geht so :

Code:
u E1.0
FN M6.0
SPBN END

UN M5.0
= M5.0

END: NOP 0

Mit der der negativen Flanke von E1.0 wird einmal die Valenz von M5.0 gedreht.

Viel Spass
 
Sorry, schneller geschrieben als gedacht.
Da E 1.0 immer auf 1 ist und per Knopfdruck 3 Sekunden auf 0 gesetzt wird, wird die FN-Bedingung beim Rücksetzen auch erst nach 3 Sekunden ein VKE = 1 liefern.
Wann soll der Merker seinen Zustand ändern? Bei jedem Flankenwechsel des Eingangs oder bei jedem Tastendruck?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Sorry, schneller geschrieben als gedacht.
Da E 1.0 immer auf 1 ist und per Knopfdruck 3 Sekunden auf 0 gesetzt wird, wird die FN-Bedingung beim Rücksetzen auch erst nach 3 Sekunden ein VKE = 1 liefern.
Wann soll der Merker seinen Zustand ändern? Bei jedem Flankenwechsel des Eingangs oder bei jedem Tastendruck?

Der Merker soll sofort seinen Zustand ändern. Egal, ob E 1.0 3 oder 1 oder 15 Sekunden auf 0 ist.

Danke Rainer schon mal im Voraus

Gruß Jo
 
Hallo Linuxluder,

da Du offensichtlich auf meine, wie ich finde elegantere, Lösung nicht anspringst nehme einfach eine kleine Änderung an Deinem Programm vor

Code:
      UN    M 5.0
      U     E 1.0       // hier UN durch U tauschen
      FN    M    102.0
      S      M 5.0

      U     M 5.0
      U     E 1.0       // hier UN durch U tauschen
      FN    M    102.1
      R     M 5.0
Da durch, dass Du mit FN (also negative Flanke) arbeitest, darfst Du die Valenz von E1.0 nicht auch noch negieren. Sonst kommt so etwas wie eine doppelte Verneinung dabei raus.
 
Nur noch mal zum Verständnis das gleiche in KOP

Code:
Fallende Flanke von E1.0 erkennen

|              M102.0      M102.1
|-----[E1.0]-----(N)---------()-----|
|

Exklusiv Oder mit Ergebniss

|              M102.1       M5.0
|-----[M5.0]-----[/]-------+-()-----|
|                          |
|      M5.0                |
|------[/]-----[M102.1]----+
MfG
Daniel
 
Zurück
Oben