Erkennung von tippen und gedrückt halten in CFC

Darkghost

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

ich möchte gern bei einem Schalter erkennen, ob jemand den Schalter nur kurz gedrückt hat oder den Schalter gedrückt hält.
Klingt eigentlich recht einfach nur ich (Anfänger) bekomme, dass irgendwie nicht komplett hin...

Von der Programmierung her sollte es eigentlich nicht so schwer sein, die Zeit messen zwischen steigender und fallender Flanke.
Wenn nach ca. 1s keine fallende Flanke kommt dann ist es gedrückt halten.

Nur in CFC bekomme ich das mit den Bausteinen nie komplett in der Reihen folge hin.
Komischerweise funktioniert auch nur R_trg und f_trg erkennt keine fallende Flanke.

Naja egal. Wenn ihr da ne gute Lösung hättet würde ich mich freuen, wenn ihr mir kurz erklärt, wie man das am besten umsetzt.

Grüße
Stefan
 
Hallo,
schau dir mal den Baustein "Einschaltverzögerung" TON an.
Damit kann man das umsetzen.
z.B. Fallende Flanke Taster gedrückt & TON.Q =false => Taster wurde nur kurz gedrückt
Fallende Flanke Taster gedrückt & TON.Q =true => Taster wurde lange gedrückt
 
Vielen Dank für Eure Tipps.

Ich konnte das mit
z.B. Fallende Flanke Taster gedrückt & TON.Q =false => Taster wurde nur kurz gedrückt
Fallende Flanke Taster gedrückt & TON.Q =true => Taster wurde lange gedrückt
jetzt umsetzten. Warum F_TRIG vorher nicht funktioniert hat keine Ahnung.

Unbenannt.jpg

Unbenannt.jpg

Ich habe jetzt eigentlich noch 2 Probleme.
1. Warum obwohl ich auf GE abfrage kann ich den def. Wert noch überschreiten?
2. Bei gedrückt Halten ist es so, dass der Wert zu schnell noch zählt. Wie kann ich das verlangsamen?
Ich habe daran gedacht einen Wert zu nehmen der kleiner 1 ist,. Das funktioniert aber nicht da ich für target_position_mm ein Int brauche,
Ok, ich könnte jetzt einen kleineren Wert nehmen und vor der Zuweisung diesen noch mal auf eine Ganzzahl runden....
Gibt es evtl. eine bessere Alternative?

@Shrimps:
Wenn das mit der Steuerung klappt werde ich mir das mal mit der Einbindung von OSCAT anchauen.

Grüße
Stefan

 
Zuletzt bearbeitet:
Zurück
Oben