hat jemand eine Idee, ob/wie man folgendes Problem mit ein paar Gattern lösen kann:
ich habe zwei Quellen, die jeweils Pulse mit einem Tastverhältnis von ca 50/50 liefern (12V, Frequenz ist variabel, grob im Bereich 0 … ~40Hz). Ich möchte einen Ausgang, an dem ein neues Signal ansteht, welches der kleineren der beiden Eingangsfrequenzen enstpricht. Das Tastverhältnis des Augangssignals ist unkritisch.
Kann man so etwas mit ein paar Gattern aufbauen?
Thx
Armin.
Für die Praktiker: es geht um zwei baugleiche, temperaturgeregelte PC Ventilatoren mit je einem Tachosignal (3-Pin Stecker). Ich möchte den Lüfteranschluss (mit Drehzahlüberwachung) des Mainboards nützen, dieser generiert einen Alarm, wenn am Eingang eine Frequenz unterhalb einer einstellbaren Schwelle anliegt. Dummerweise hat das Mainboard nur noch einen solchen Eingang frei, und ich habe zwei Lüfter. Gottseidank liegen die beiden aber unmittelbar nebeneinander und belüften parallel das selbe Gehäuse. Wenn einer ausfällt ist das nicht weiter tragisch, auf Grund der Temperaturregelung wird dann eben der Andere etwas schneller drehen. Aber einige abgelegene Ecken werden nicht mehr richtig belüftet werden. Also möchte ich darauf aufmerksam gemacht werden, damit ich Ersatz besorge. Ich muss also nur sicherstellen, dass beide drehen. Normalerweise drehen sie ungefähr gleich schnell mit etwa 600-1200 U/min. Wenn nun einer über den Jordan geht, oder blockiert wird, wird er langsamer werden oder sogar stehenbleiben. Was der Andere tut ist mir wurscht. Es reicht also, die kleinere der beiden Drehzahlen zu überwachen. Gesucht ist deshalb eine Schaltung aus ein paar Gattern zum Zwischenschalten, die das kleinere Tachosignal der beiden an das Mainboard weitermeldet. Tanzt ein Lüfter aus der Reihe, triggert das den Mainboard Alarm, und ich schaue dann nach, welcher Zicken macht. Soweit der Plan
eine Lösung könnte folgende sein:
Schalte das eine der beiden Tachosignale an den „SET“ und das andere an den „RESET“-Eingang eines positiv flankengesteuerten RS-FF. Den „Q“ oder „Q-Nicht“ Ausgang des RS-FF schaltest Du an eine positiv flankengetriggerte, nicht nachtriggerbare, monostabile Kippstufe, deren Impulszeit in etwa auf die positive Impulsdauer eines der beiden Tachosignale eingestellt wird.
Funktion der Schaltung:
Solange die beiden Tachosignale in etwa die gleiche Frequenz haben, wechselt das RS-FF mit der gleichen Frequenz seinen Ausgangszustand, wobei das Tastverhältnis von der Phasenverschiebung der beiden Tachosignale abhängt. Damit aber das Tastverhältnis für die Weiterverarbeitung nicht zu klein oder zu groß wird, wird das Monoflop an das RS-FF geschaltet: es dient dazu, selbst sehr kurze HIGH-Pegel am Q oder Q-Nicht-Ausgang zu verlängern, weil es eben nur auf die Flanke reagiert.
Wenn nun die Frequenz eines der beiden Tachosignale abnimmt, wird das RS-FF seinen Zustand nur noch im Takt der langsamer werden Frequenz ändern. Je nachdem, welches Tachosignal langsamer wird (entweder das Signal am SET oder am RESET-Eingang), wird das Ausgangssignal am Q oder Q-Nicht Ausgang des RS-FF sowohl seine Frequenz als auch das Tastverhältnis ändern.
Durch das Monoflop erreichst Du wiederum, dass das Tastverhältnis lange Zeit unter 50% bleibt, selbst wenn die Frequenz eines der beiden Tachosignale schon stark abgenommen hat.
Für die Praktiker: es geht um zwei baugleiche,
temperaturgeregelte PC Ventilatoren mit je einem Tachosignal
(3-Pin Stecker). Ich möchte den Lüfteranschluss (mit
Drehzahlüberwachung) des Mainboards nützen, dieser generiert
einen Alarm, wenn am Eingang eine Frequenz unterhalb einer
einstellbaren Schwelle anliegt. Dummerweise hat das Mainboard
nur noch einen solchen Eingang frei, und ich habe zwei Lüfter.
Gesucht ist deshalb eine Schaltung
aus ein paar Gattern zum Zwischenschalten, die das kleinere
Tachosignal der beiden an das Mainboard weitermeldet. Tanzt
ein Lüfter aus der Reihe, triggert das den Mainboard Alarm,
und ich schaue dann nach, welcher Zicken macht. Soweit der
Plan
Ich hätte dazu folgenden Vorschlag:
1. Von jedem Impulsausgang geht man auf je ein retriggerbares
Monoflop (z.B. 74HC123 mit 2 Monoflops)
Evtl. sollte man ein Differenzierglied davor setzen.
2. Die Monoflops werden genau so eingestellt, das sie bei
Unterschreiten der gewünschten Frequenz kurz abfallen.
Bei ausreichend hoher Drehzahl bleiben die Monoflops immer aktiv.
Das kann man mit einem Poti/Trimmer einstellen.
3. Die beiden Ausgänge der Monoflops werden logisch ODER-verknüpft
Dazu kann man ein Gatter-IC benutzen oder einfache Dioden-Logik.
Da die Monoflops nichtnegierte und negierte Ausgänge haben,
hat man die Wahl.
4. Das verknüpfte Signal wird mit einem weiteren Monoflop mit
länger Taktzeit (z.B. einige Sek.) verlängert.
Im einfachsten Fall reicht hier auchg eine Diode und
ein RC-Tiefpass
5. Mit einem Hilfstakt (einfache RC-Generator mit z.B. 74HC00 oder NE555)
wird dem PC-Eingang ein Tachosignal vorgegaukelt.
6. Mit dem verlängerten Taktsignal aus Pkt. 4 wird der Hilfstakt
abgeschaltet, so dass der PC kein Tachosignal mehr bekommt.
Ich hoffe, dass ich keinen systematischen Fehler in meinen
Überlegungen habe.
Wenn ich es aber recht überlege, geht es wohl noch einfacher.
1. Von einem Lüfter-Impulsausgang geht man man über ein Gatter
auf den Impulseingang des PC.
2. Der zweite Lüfter-Impulsausgang geht auf ein retriggerbares MF.
Das wird wieder wie oben so eingestellt, dass es bei Unterschreiten
einer Grenzfrequenz regelmäßig abfällt.
3. Nach dem erste Monoflop wir eine evtl. Auslösung mit
einem zweiten MF verlängert.
4. Damit geht man auf das Gatter (Pkt. 1.), um die Impulse
abzuschalten.
Wenn also der erste Lüfter ausfällt, wirkt das quasi direkt.
Wenn der 2. Lüfter unter die Grenzfrequenz abfällt, wird über
die Monoflops das Impulssignal unterdrückt.
Problem ist dabei aber, dass bei völlig still stehenden Lüfter
das erste MF zwar dauerhaft abfällt, aber das 2. MF zur Impuls-
Verlängerung nicht mehr auslöst.
Um das zu unterdrücken, kann man auch noch einen Ausgang vom 1. MF
mit auf das Gatter schalten, um auch dann das Impulssignal zu
unterdrücken.
Gruß Uwi
Flanken und Jitter-Problem bei RS-FF beheben
Hallo Armin,
habe nochmal über das flankengetriggerte RS-FF nachgedacht: statt der Flankentriggerung am SET- und RESET- Eingang wäre es besser, nur einen Eingang flankengetriggert zu machen (also z.B. den SET-Eingang), und den anderen Pegelgetriggert auszuführen. Gleichzeitig ist eine Verriegelung der Eingänge notwendig um eine unter allen Umständen stabile Funktion zu gewährleisten.
Die Verriegelung der Eingänge geschieht mittls Ver-UND-ung mit den entsprechenden Ausgangspegeln: der RESET-Eingang wird mit dem „Q“-Ausgang ver-UND-et, der SET-Eingang mit dem „Q-Nicht“-Ausgang des RS-FF (zwei UND-Gatter mit je zwei Eingängen sind dazu nötig).
Begründung:
Wenn die Ausgangsfrequenzen der beiden Tachosignale sehr nah beieinander liegen, entsteht nicht nur das Problem, dass die SET und RESET-Flanken extrem dicht aufeinanderfolgen, und somit das RS-FF einen (am Oszilloskop) kaum noch sichtbaren (und womöglich auch nicht mehr wirksamen) Ausgangsimpuls zum Triggern des Monoflops erzeugt, sondern es tritt höchstwahrscheinlich auch das Problem des Jitters auf. Jitter bedeutet, dass die Periodendauer der Tachosignale von Periode zu Periode etwas schwanken kann. Damit würde sich aber auch die Phasenverschiebung zwischen den beiden Tachosignalen von Periode zu Periode verändern, was dazu führen könnte, dass z.B. die SET-Flanke einmal VOR und einmal NACH der RESET-Flanke am RS-FF anliegt (wobei sie ohne Jitter immer NACH der RESET-Flanke anliegen sollte), was dazu führt, dass das Ausgangssignal des RS-FF „Aussetzer“ bekommt, und zwar in Form einer plötzlichen Halbierung der Ausgangsfrequenz, was dem Motherboard unter Umständen einen defekten Lüfter vortäuschen könnte. Unter Umständen deshalb, weil dieser Effekt ein Zufallsprodukt ist, und nicht genau gesagt werden kann, ob und wann das Motherboard auf diesen Effekt mit einer „Lüfter defekt“-Meldung reagiert. Dieser Zufall kann mit den oben beschriebenen Maßnahmen ausgeschlossen werden.
Ohne Jitter würden die SET- und RESET-Flanken am RS-FF z.B. folgendermaßen aussehen:
SET_RESET____SET_RESET____SET_RESET____SET_RESET____usw.
Das RS-FF würde folgendermaßen reagieren:
__HI_LOW________HI_LOW_______HI_LOW________HI_LOW______usw.
Mit Jitter könnte aber folgendes passieren:
SET_RESET____RESET_SET____SET_RESET____RESET_SET____usw.
Das RS-FF würde folgendes liefern:
__HI_LOW_____________HI_________LOW_____________HI_____usw.
Es würden also Schaltwechsel „verschluckt“ werden.
Wenn Du aber das RS-FF mit den oben beschriebenen Modifikationen aufbaust, dann wird kein Schaltwechsel mehr verschluckt.
Man werte aus, ob sich der Ventilator dreht oder nicht mittels Lichtschranke (oder Reflexionslichtschranke, egal). Bleibt er stehen, so fällt das pulsierende Signal der Lichtschranke weg und es gibt Alarm. Ist mit einem 555er und ein, zwei Transistoren vielleicht schon zu erledigen.