Hallo! Ich möchte mit einem atTiny85 überwachen, ob ein Lüfter dreht. Dazu habe ich mir die Schaltung im Anhang überlegt. Generelle Funktionsbeschreibung: Die Schaltung soll zwischen die Spannungsquelle und den Lüfter (12V-24V) gesteckt werden und hat eine seperate 5V-Versorgung für den atTiny85. Mittels Optokopplers frage ich ab, ob die Spannung für den Lüfter anliegt und setze damit einen Eingang des atTiny auf HIGH. Das Tachosignal auf der anderen Seite wird bei normalen PC-Lüftern ja als OC-Ausgang bereitgestellt. Die Flanken dieses Signals leite ich über eine RC-Kombination ebenfalls an einen Eingang des atTiny85 weiter. Das Programm des atTiny vergleicht, ob eine Spannung anliegt und somit der Lüfter drehen müsste. Nur dann wird das Tachosignal erfasst und überwacht. Weicht das Signal von voreingestellten Parametern ab, gibt der atTiny ein Signal aus. Meine Frage ist nun, ob ich das so realisieren kann oder ob ich etwas übersehen habe. Speziell bei der RC-Kombination zur Erfassung des Tachosignals bin ich mit etwas unsicher, ob ich mir mit der anliegenden hohen Lüfterspannung von 12V-24V nicht den µC zerstöre. Der Eingang ist intern auf Pullup geschaltet. Ich habe die Schaltung so schon hier aufgebaut, allerdings komplett auf 5V und das funktioniert. Kann ich gefahrlos die 24V-Variante probieren oder kommt dann der magische Rauch aus dem atTiny? :D
René J. schrieb: > Speziell bei der RC-Kombination zur Erfassung des > Tachosignals bin ich mit etwas unsicher, ob ich mir mit der anliegenden > hohen Lüfterspannung von 12V-24V nicht den µC zerstöre. Der Eingang ist > intern auf Pullup geschaltet. Du fürchtest dich zu Recht! 220Ω an 24V auf einen µC-Eingang geht nicht! Wenn das Tachosignal auf einem OC herauskommt und nicht intern im Lüfter noch ein Pullup versteckt ist, dann lege deinen Pullup auf 5V anstatt auf 24V! Auch sind die 220Ω reichlich niederohmig, könnte der Lüfter-OC überhaupt 24V/200Ω = 120mA? Also: nehme ≈5kΩ als Pullup an 5V und fertig. Es fließt dann aktiv immer noch 1mA und auch das ist reichlich. Es sind aber noch andere Ungereimtheiten in deinem Schaltplan. Nach dem Schaltplan kann das nicht funktioniert haben: - Pin 1 ist nicht 5V, sondern Pin 8. An Pin1 liegt Reset - an Pin4 kann kein Signal sein, sondern muss GND sein - Wozu ein Optokoppler für die Erkennung der Lüfterversorgung? Ein Spannungsteiler auf einen Analogeingang (Komparator mit 1.25V Schwelle, 24V → 5V, damit 12V → 2.5V) oder ein Widerstand + 4V7-Z-Diode auf einen Digitaleingang tun es auch. - wozu brauchst du C1? - wo sind die obligatorischen 100n an der Tiny-Versorgung?
HildeK schrieb: > > Du fürchtest dich zu Recht! > 220Ω an 24V auf einen µC-Eingang geht nicht! > Wenn das Tachosignal auf einem OC herauskommt und nicht intern im Lüfter > noch ein Pullup versteckt ist, dann lege deinen Pullup auf 5V anstatt > auf 24V! > Auch sind die 220Ω reichlich niederohmig, könnte der Lüfter-OC überhaupt > 24V/200Ω = 120mA? > Also: nehme ≈5kΩ als Pullup an 5V und fertig. Es fließt dann aktiv immer > noch 1mA und auch das ist reichlich. Das was du schreibst, war auch mein Gedanke. Ich habe die RC-Kombination so aus einer anderen Schaltung, die hier im Forum vorgeschlagen wurde übernommen. Thread: Beitrag "Schaltung für Lüfter-Tachosignal auswertung" Ich hatte die Erklärung dazu so verstanden, dass ein Tachosignal als OC am Eingang eines µC den Pin des µC auf Masse zieht oder eben nicht. Nach meinem Verständnis dürfte damit nur Strom aus dem Pin "herausfließen" und nicht hinein. Somit hatte ich die 220Ohm für 5V ausgelegt. Meine Idee dahinter war eigentlich, dass im Falle eines anderen Lüfters der vielleicht das Tachosignal nicht als OC abgibt, sondern als 24V-HIGH-Pegel, so trotzdem eine Flanke erzeugt hätte. Scheinbar habe ich da einen Denkfehler und muss mir das nochmal genauer anschauen. Ich habe das mal abgeändert, wie von dir vorgeschlagen. > Es sind aber noch andere Ungereimtheiten in deinem Schaltplan. Nach dem > Schaltplan kann das nicht funktioniert haben: > - Pin 1 ist nicht 5V, sondern Pin 8. An Pin1 liegt Reset > - an Pin4 kann kein Signal sein, sondern muss GND sein Da hast du Recht, das habe ich in der Eile der Zeichnung für diesen Thread hier falsch gezeichnet, aber auf meinem Breadboard richtig gesteckt. Ich habe die Zeichnung dementsprechend angepasst. > - Wozu ein Optokoppler für die Erkennung der Lüfterversorgung? Ein > Spannungsteiler auf einen Analogeingang (Komparator mit 1.25V Schwelle, > 24V → 5V, damit 12V → 2.5V) oder ein Widerstand + 4V7-Z-Diode auf einen > Digitaleingang tun es auch. Der Optokoppler war meine Idee, wie ich eine variable Lüfterspannung von 12-24V auf 5V Logik-Spannung reduziert bekomme. Ich bin nicht sehr versiert was die Möglichkeiten dazu angeht. Ich hoffe, das ist nicht zu sehr "mit Kanonen auf Spatzen geschossen". > - wozu brauchst du C1? C1 dient zum entstören des Pegels, das habe ich ebenfalls aus dieser Schaltung übernommen: Beitrag "Schaltung für Lüfter-Tachosignal auswertung" > - wo sind die obligatorischen 100n an der Tiny-Versorgung? war obligatorisch nicht vorhanden - Aber jetzt :D Aber danke für den Hinweis, genau wegen solcher Tipps habe ich hier nachgefragt. Wärst du so freundlich und würdest dir die abgeänderte Schaltung noch einmal anschauen, ob ich deine Vorschläge richtig verstanden habe?
René J. schrieb: > Wärst du so freundlich und würdest dir die abgeänderte Schaltung noch > einmal anschauen, ob ich deine Vorschläge richtig verstanden habe? Ja gerne. René J. schrieb: > Der Optokoppler war meine Idee, wie ich eine variable Lüfterspannung von > 12-24V auf 5V Logik-Spannung reduziert bekomme. Ich bin nicht sehr > versiert was die Möglichkeiten dazu angeht. Ich hoffe, das ist nicht zu > sehr "mit Kanonen auf Spatzen geschossen". Doch, das sind Kanonen auf Spatzen. :-) Du hast 12/24V für den Lüfter, wenn er an ist und 0V wenn er aus ist. Mach es doch einfach so:
1 | 12V/24V oder 0V |
2 | | |
3 | .-. |
4 | | | |
5 | | | 15k |
6 | '-' |
7 | 10k.--o------ E |
8 | .-. | |
9 | | | z |
10 | | | A 4V7 oder 5V1 |
11 | '-' | |
12 | | | |
13 | ====== |
14 | GNDGND |
15 | (created by AACircuit v1.28.6 beta 04/19/05 www.tech-chat.de) |
Bei 12V ist die Z-Diode wirkungslos, bei 24V begrenzt sie die Eingangsspannung auf ca. 4.5V ... 5V (ausreichender HIGH-Pegel für den Tiny). Wenn 0V anliegen, dann ist E auch sicher auf 0V wegen des Widerstands parallel zur Z-Diode. E geht direkt auf den Tiny. Ein OK ist zwar ein nettes Ding, man nimmt ihn aber nur, wenn Potentialtrennung gefordert ist. Außerdem: R10 = 220Ω ist auch hier unnötig niederohmig. Auch R7 und R9 sind sehr klein gewählt. Wenn du R10 für 1mA auslegst (4k7 z.B.), dann muss man auch der OK-LED nicht mehr als 2..5mA geben, du kannst sie für 2mA bei 12V und dann rund 4mA bei 24V auslegen und benötigst die 12V/24V-Umschaltung des LED-Stromes nicht. Also, einfach R7 entfallen lassen und R9 fest anschließen und zu etwa 3k9 ... 4k7 wählen. C2 ist jetzt da, verbinde den aber direkt und kurz zwischen Pin 4 und 8 des Tiny. Für den Pullup des OC-Ausgangs sind die 220Ω noch immer unnötig niedrig gewählt. Der Ausgang wird das sicher schaffen, aber 1k oder 5k vergeuden nicht unnötig Leistung. Bei dem Buzzer musst du natürlich klären, ob ein Tiny-Ausgang den treiben kann. Mehr als 20mA solltest du dem Ausgang nicht zumuten. Im Zweifel wäre ein Transistor als Treiber richtig. Wenn dein Tachosignal auch ohne Pullup ein Signal zeigen sollte (dann ist es kein OC, sondern eine Push-Pull-Stufe), dann könntest du die selbe Schaltung wie oben für die Spannungsdetektion auch für das Tachosignal nutzen. Die ist auch verwendbar, wenn du unbedingt auf 12V/24V einen Pullup legen willst/musst, dann schließe den OC an E an und auch den Tiny-Eingang. Die Z-Diode sorgt wieder dafür, dass die maximale Eingangsspannung des Tiny nicht überschritten werden kann. Sorge aber mit der Wahl des Widerstands dafür, dass nicht viel mehr als 1mA fließt - mehr wäre einfach Verschwendung. Egal, ob es 500µA oder 2mA sind, aber so der Bereich ist sinnvoll und völlig ausreichend. C1 mit 1n kannst du zwar zur Not lassen, aber ich halte ihn für nicht notwendig - er belastet nur unnötig den Tachoausgang. Schließlich muss der bei jedem Puls von 12V oder 24V auf 0V entladen werden. Das gibt nette Peak-Ströme. Das Tachosignal sollte sowieso nicht prellen und wenn doch, dann kannst du das auch zuverlässiger in SW abhandeln.
Leg doch noch eine Diode in die Tacholeitung, dann muss sich der Tiny nicht vor zu hohen Spannungen fürchten:
1 | Tiny Pin 7 Tacho Signal |
2 | o--------|>|---------o |
3 | A K |
4 | Diode |
Pin 7 sollte den aktivierten Pullup haben.
Vielen Dank schon einmal vorab für die wahnsinnig ausführliche Erklärung und die Tipps. Ich werde gleich versuchen, dass geschriebene umzusetzen. Dazu habe ich aber noch eine Frage: Was sind denn eigentlich so die "typischen 08/15-Bauteil-Typen" der genannten Z-Diode und der Diode (N4004)? Ich mag jetzt ungern die dutzenden Datenblätter der in EAGLE vorhandenen Zener-Dioden durchlesen und mir dann daraus dann eine der 3 passenden raussuchen nur um dann festzustellen, dass es die nur in den USA zu kaufen gibt, wenn in 99% der Fälle immer "die eine" benutzt werden kann, die es dann auch bei reichelt für z.B. 0,10€ gibt. Ihr merkt schon, Schaltkreise mach ich nicht so oft ;)
:
Bearbeitet durch User
So, dann hier noch einmal der überarbeitete Plan. Sieht auch irgendwie direkt "einfacher" aus. Danke schon einmal für die Hilfe bis hier her. Ich habe jetzt die Spannungsteiler/Z-Dioden-Kombination an Eingang 2 des atTiny85 verwendet, den Buzzer über einen NPN-Transistor geschaltet, damit ich den Ausgang nicht überlaste und die Diode (D4) in die Tacholeitung eingebaut wie von Matthias Sch. vorgeschlagen. Zusätzlich habe ich noch eine Diode (D2) in die GND Leitung der 5V-Versorgung eingebaut, da ich dort theoretisch über den 3-Pin Connector die Polung vertauschen könnte. Noch einmal die Frage zur Z-Diode, da ich quasi noch nie damit gearbeitet habe: Suche ich die nur nach Ptot und der Spannung aus? Für 4,7V dann z.B. diese: https://www.conrad.de/de/z-diode-zpd47v-gehaeuseart-halbleiter-do-35-diotec-zener-spannung-47-v-leistung-max-p-tot-506-mw-180084.html (ausgesucht, weil günstigste)
Sieht ganz gut aus. Ich vermisse eine Verbindung von GND des Lüfters und der 5V Versorgung. D2 sollte in die 5V-Leitung. Eine 1N4004 ist eine billige, überall verfügbare 1A-Si-Diode und für diesen Zweck geeignet. Für D4 kann man sie auch nehmen, wenngleich ein 1A-Typ unötig ist. Ich nehme da z.B. die 1N4148. 150mA und kleinere Bauform. Die ist auch für D2 verwendbar, wenn der Buzzer nicht viel mehr als 100mA benötigt. Als Z-Diode ist ein 500mW-Typ (wie verlinkt) die ZPD oder auch ein 250mW- Typ ideal. Die gibt es von verschiedenen Herstellern mit variierenden Bezeichnungen. Ich schau immer nach den BZX84 für solche Zwecke, weil die kleiner sind und die 250mW bei weitem reichen und auch gut zu bekommen sind. Ja, die wesentlichen Parameter sind Ptot und die Z-Spannung.
Noch eines: der Buzzer gehört auf die Kollektorseite, der Emitter an GND. So erhält er nur rund 2V. Sollte der Buzzer induktiv sein, muss ihm noch eine Freilaufdiode parallel gelegt werden - auch eine 1N400x!
HildeK schrieb: > Noch eines: der Buzzer gehört auf die Kollektorseite, der Emitter an > GND. So erhält er nur rund 2V. Wenn der TE den 'Buzzer' auf die so bezeichneten 2 Pfostenfeldanschlüsse legt und SG1 (wasn das?) durch eine Brücke ersetzt, sollte es klappen. R1 kann übrigens entfallen, weil der Transistor von alleine abregelt (ist ja ein stromgesteuertes Bauteil).
HildeK schrieb: > Sollte der Buzzer induktiv sein, muss ihm noch eine Freilaufdiode > parallel gelegt werden - auch eine 1N400x! Als Gleichrichterdiode mögen die 1N400x recht bewährt sein, aber als Freilaufdiode sind die Dinger nun wirklich denkbar ungeeignet. Innerhalb der 30µs, die so ein Ding als reverse recovery time besitzt, kann der Tiny schon 10-mal abbrennen. Die 1N4148 ist mehr als einen Faktor 1000 (in Worten: eintausend) schneller und verhindert auch kurze Induktionsspitzen - nur muss man gucken, ob sie mit der Stromstärke zurecht kommt.
Also der Doppelpfosten ist eine Jumper-Brücke zum manuellen ein- und ausschalten des Buzzers (SG1 "Signalgeber") - durch simples auftrennen des Strompfades. Ich dachte dabei daran, einen Piezzo-Buzzer zu nehmen, daher sollte die Diode nicht nötig sein. Nachtrag: Mir ist wieder eingefallen, warum ich am Anfang noch den Optokoppler eingesetzt habe: Der 12-24V-Kreis für den Lüfter kann (von außerhalb) nicht nur mit z.B. einem Relais, sondern auch mit einem mosFET ein- und ausgeschaltet werden, sodass dann immer 12-24V anliegen würden und lediglich GND geschaltet wird. Ich muss aber innerhalb der angegebenen Schaltung feststellen, ob der Lüfter laufen "sollte" oder nicht. Da ich mit dem Optokoppler parallel zum Lüfter quasi eine LED habe, die nur leuchtet, wenn 12-24V UND GND vorhanden sind, erreiche ich die Überwachung von 12-24V als auch von GND der Lüfterspannung.
René J. schrieb: > Ich dachte dabei daran, einen Piezzo-Buzzer zu nehmen, > daher sollte die Diode nicht nötig sein. Da Piezo Buzzer elektrisch nahezu wie ein Kondensator aussehen, solltest du ihm dann allerdings einen Arbeitswiderstand parallelschalten oder (besser) eine Induktivität, die mit der Kapazität des Piezos zusammen auf Resonanz abgestimmt ist. Dann werden die Dinger richtig laut, aber du brauchst dann auch wieder eine Freilaufdiode.
Wolfgang schrieb: > Als Gleichrichterdiode mögen die 1N400x recht bewährt sein, aber als > Freilaufdiode sind die Dinger nun wirklich denkbar ungeeignet. Innerhalb > der 30µs, die so ein Ding als reverse recovery time besitzt, kann der > Tiny schon 10-mal abbrennen. Dem Tiny tut das gar nichts, der Transistor wird dadurch geschützt - und der hält erst mal die ersten 45V aus. Und die Kapazität, die die große reverse recovery time verursacht, nimmt einen Teil der Energie auf. Ich glaube zwar nicht, dass die 1N400x hier ungeeignet ist, werde es aber bei Gelegenheit mal ausmessen. Die 1N4148 geht nur dann, wenn der Buzzer (was oben noch nicht bekannt war, das hätte ja auch was kräftiges sein können) eine Stromaufnahme von <100mA...200mA hat. Sie muss den Strom können ... Matthias S. schrieb: > SG1 (wasn das?) SG1 sollte der Buzzer sein, das Pfostenfeld diente zum Unterbrechen.
So, hier nochmal eine Rückmeldung von mir. So sieht die Schaltung jetzt aus. Gesteckt funktioniert sie bisher tadellos. Noch einmal vielen Dank an alle, die mir hier mit Rat und Tat beiseite gestanden haben.
Hallo, ich würde die Überwachung gerne nachbauen und würde dazu das Programm für den atTiny85 benötigen. Kannst Du das bitte mal posten. Danke
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.