Hey Leute,
Es gibt ja in PL eine Schaltverzögerung die bei einem anliegenden Highsignal das Durchschalten um den intern eingestellten Zeitfaktor*50ms verzögert. Nun benötige ich aber ansich selbiges Bauteil, nur dass der Benutzer auf dem Frontpanel die Schaltverzögerungszeit manuell einstellen soll. Mit dem einstellbaren Monoflop funktioniert das nicht ( oder ich bin zu blöd ) da es entweder FÜR die eingestellte Zeit auf High oder Low bleibt.
Also Aufgabe: High Signal abwarten-> Zeit x verstreichen lassen(im FP einstellbar) -> Highsignal durchschalten
Ich hoffe Ihr versteht die Problematik, würde mich sehr über einen Lösungsansatz freuen.
Grüße
Benutzereinstellbare Schaltverzögerung
Re: Benutzereinstellbare Schaltverzögerung
Hallo nochmal...
circa 5 Minuten nachdem ich hier geschrieben habe, ist mir die Lösung eingefallen.
Für alle die es interessiert, habe ich die Lösung als Bild gespeichert. Taster 3 ist dabei mein auftretenes Highsignal, welches die Stoppuhr auslöst. Dann wird mittels Vergleicher geschaut ob der Stoppuhrwert größer oder kleiner als die Benutzereingabe am Vergleichereingang ist. Sobald der Wert größer ist, greife ich am Vergleicherausgang A>B einfach ab
Grüße
circa 5 Minuten nachdem ich hier geschrieben habe, ist mir die Lösung eingefallen.
Für alle die es interessiert, habe ich die Lösung als Bild gespeichert. Taster 3 ist dabei mein auftretenes Highsignal, welches die Stoppuhr auslöst. Dann wird mittels Vergleicher geschaut ob der Stoppuhrwert größer oder kleiner als die Benutzereingabe am Vergleichereingang ist. Sobald der Wert größer ist, greife ich am Vergleicherausgang A>B einfach ab
Grüße
- Dateianhänge
-
- Verzögerung.jpg (19.61 KiB) 7418 mal betrachtet
Re: Benutzereinstellbare Schaltverzögerung
Der Vollständigkeit halber sei auch erwähnt, dass Einstellungen in Eigenschaftsdialogen
(wie hier z.B. die "Schaltverzögerung"), auch über die Optionen "Zur Laufzeit einstellbar"
und "Konfiguration: Anwendung" dem Endanwender verfügbar gemacht werden können. Hat man die beiden obigen Option aktiviert, hat der Anwender ZUR LAUFZEIT dann die Möglichkeit
die Eigenschaften der Komponente(n) (hier die Schaltverzögerung) abzuändern, indem er auf den
"Schraubendreher" klickt... Dies gilt natürlich in gleicher Weise auch für andere Komponenten mit Konfigurationsdialogen.
Diese Vorgehensweise bietet sich an bei Konfigurationsparametern an denen nur gelegentlich
"gedreht" werden muss oder soll, ohne dass die Frontplatte "überladen" d.h. unübersichtlich wird.
Benennt man die Schaltverzögerung dann noch in die tatsächliche Funktion um, die dahinter steckt
(also z.B. "Belichtungsdauer", "Alarmverzögerung", o.ä.) wird die Konfiguration sehr übersichtlich.
(wie hier z.B. die "Schaltverzögerung"), auch über die Optionen "Zur Laufzeit einstellbar"
und "Konfiguration: Anwendung" dem Endanwender verfügbar gemacht werden können. Hat man die beiden obigen Option aktiviert, hat der Anwender ZUR LAUFZEIT dann die Möglichkeit
die Eigenschaften der Komponente(n) (hier die Schaltverzögerung) abzuändern, indem er auf den
"Schraubendreher" klickt... Dies gilt natürlich in gleicher Weise auch für andere Komponenten mit Konfigurationsdialogen.
Diese Vorgehensweise bietet sich an bei Konfigurationsparametern an denen nur gelegentlich
"gedreht" werden muss oder soll, ohne dass die Frontplatte "überladen" d.h. unübersichtlich wird.
Benennt man die Schaltverzögerung dann noch in die tatsächliche Funktion um, die dahinter steckt
(also z.B. "Belichtungsdauer", "Alarmverzögerung", o.ä.) wird die Konfiguration sehr übersichtlich.
ABACOM support
Re: Benutzereinstellbare Schaltverzögerung
Hallo Support
Danke für die Antwort. So ginge es natürlich auch, aber das ist etwas zu umständlich da esöfter mal verstelllt werden muss. Das Ganze Programm ist sowieso schon kompliziert genug ( was ich geschrieben habe ) deshalb mache ich es jetzt so wie ich es im 2 Post geschrieben habe. Bin ich auch etwas stolz drauf
Danke für eure Mühe
Gruß
Danke für die Antwort. So ginge es natürlich auch, aber das ist etwas zu umständlich da esöfter mal verstelllt werden muss. Das Ganze Programm ist sowieso schon kompliziert genug ( was ich geschrieben habe ) deshalb mache ich es jetzt so wie ich es im 2 Post geschrieben habe. Bin ich auch etwas stolz drauf
Danke für eure Mühe
Gruß
Re: Benutzereinstellbare Schaltverzögerung
Kein Problem. Der Beitrag war auch nicht speziell nur für Sie. Ich wollte es aber für alle "Mitleser" noch einmal deutlich darstellen und Ihr Thema war ein guter "Aufhänger" dafür. So kann jeder den Weg beschreiten, der für sein Projekt passend ist.
ABACOM support
Flexibler Timer
Guten Abend,
die Systemzeit T (unter Anzeige/Uhren) wird aus der RTC des PC ausgelesen. Damit ist sie absolut, und nicht abhängig von der Ausführungszeit des PL-Samples.
Das angehängte Beispiel stellt einen Timer dar (Einschaltverzögerung), die Funktion kann natürlich vielfältig erweitert werden.
Der Timer ist mittels Sollwert (kann auch fraktional eingegeben werden) und Zeitbereichseinheit komfortabel einstellbar und eben - genau !
Die Auflösung bleibt beim Umschalten der Zeitbereichseinheit konstant (15 ms, gegeben durch Systemzeit T), und der Einfluss von fast/slow (Systemzykluszeit) auf den Timer bleibt sehr klein.
Der Start/Reset des Timers erfolgt mit kleiner Latenz (flankengesteuert, auf Basis Abacoms Vorschlag on_change) und kann natürlich aus anderen Quellen als vom Handtaster abgeleitet werden,
zum Beispiel nach Ablauf sich selbst zurücksetzen für Periodizität (oder könnte einfach synchronisiert werden, auf die volle Stunde ... oder ... oder)
Ein kleiner oder je nach Verwendung grosser Pferdefuss der vorliegenden Schaltung:
beim Übergang um Mitternacht passiert etwas .... - aber findet es selbst heraus
Gewisse Abhilfe kann die zusätzliche Aufrechnung des Datums D (ebenfalls unter Anzeige/Uhren) bieten.
Viel Spass !
Viele Grüsse von Thomas
die Systemzeit T (unter Anzeige/Uhren) wird aus der RTC des PC ausgelesen. Damit ist sie absolut, und nicht abhängig von der Ausführungszeit des PL-Samples.
Das angehängte Beispiel stellt einen Timer dar (Einschaltverzögerung), die Funktion kann natürlich vielfältig erweitert werden.
Der Timer ist mittels Sollwert (kann auch fraktional eingegeben werden) und Zeitbereichseinheit komfortabel einstellbar und eben - genau !
Die Auflösung bleibt beim Umschalten der Zeitbereichseinheit konstant (15 ms, gegeben durch Systemzeit T), und der Einfluss von fast/slow (Systemzykluszeit) auf den Timer bleibt sehr klein.
Der Start/Reset des Timers erfolgt mit kleiner Latenz (flankengesteuert, auf Basis Abacoms Vorschlag on_change) und kann natürlich aus anderen Quellen als vom Handtaster abgeleitet werden,
zum Beispiel nach Ablauf sich selbst zurücksetzen für Periodizität (oder könnte einfach synchronisiert werden, auf die volle Stunde ... oder ... oder)
Ein kleiner oder je nach Verwendung grosser Pferdefuss der vorliegenden Schaltung:
beim Übergang um Mitternacht passiert etwas .... - aber findet es selbst heraus
Gewisse Abhilfe kann die zusätzliche Aufrechnung des Datums D (ebenfalls unter Anzeige/Uhren) bieten.
Viel Spass !
Viele Grüsse von Thomas
- Dateianhänge
-
- prog_timer.prj
- (7.43 KiB) 491-mal heruntergeladen
Curiousity makes us progress !