hallo, ich muss das tachosignal eines cpulüfters in einem atmega128 einlesen und die flanken auswerten, das signal hat 8V und über einem 390K widerstand fallen genau 5V ab (also I=12uA), wenn ich diese 5V an den int0 hänge und die grounds verbinde kann ich aber keine flanken zählen als probe habe ich ein pin auf 1 gesetzt und mit int0 über einen schalter verbunden, dann werden alle flanken (prellen) gezählt ich habe keine ahnung wie ich den int 0 zum zählen bekomme, muss ich einen optokoppler für die übertragung verwenden? würde ein optokoppler mit so einem geringen strom überhaupt funktionieren? emjay
Also normalerweise ist das Tachosignal eines solchen Lüfters einfach ein Open Collector Ausgang. Zuerst mal blöd anfangen: :) Hast du die Masse vom Rechner mit der des ATMEGAS verbunden Ich hätte in dem Fall eine 5V ZDiode genommen. zeig mal einen schaltplan wenn du einen hast... mfg
Man kann durch einen einzigen geeignet hohen Widerstand auch 230V auf den Pin legen. Dafür gibts sogar eine Atmel-Appnote. Dabei werden die Klemmdioden zur Ableitung genutzt, und am Widerstand fällt dann die entsprechende Spannung ab. Solange hier ganz wenig Strom fließt, beschweren sich die Klemmdioden auch nicht. (Ich glaub für 230V hatten die 1Meg benutzt)
also der lüfter steckt nicht in einem rechner, er ist nur symbolisch :-) den lüfterground hatte ich schon mit dem GND verbunden, aber ich konnte nichts messen muss ich irgendetwas mit (externen?) pullups beachten @ferrice wofür soll die zdiode gut sein?
Hi Ich denk mal, dass du einen kleineren Widerstandswert nehmen solltest. Es könnte ja sein das durch die Eingangsimpedanz (Re) des Controller- Eingangs die Spannung heruntergezogen wird, wodurch die Spannung unter den High Pegel liegt =>Strom durch den R=390k zu gering. Ich würde mal während dem Betrieb mit dem Oszi(wenn du eine hast) oder Multimeter nachmessen. Wo ich mal mit Lüftern rumgebastelt habe, nahm ich einfach einen Wert von 10k(schätzwert), hat gefunzt. Mit freundlichen Grüßen dotstyler
mit dem oszi habe ich schon nachgemessen ergebnis: ein sauberes rechtecksignal, 0-5V (über dem 390K) und dann das signal an int0 und die grounds zusammen
*****@ferrice *****wofür soll die zdiode gut sein? Ich dachte der Lüfter hängt schon im PC drinnen und dort hast du ein 8V tachosignal. Das hättest du dann mit einer Zdiode begrenzen können das du für deinen mega genau 0-5v pegel hast. Ich verstehe nicht ganz warum du dann das tachosignal auf 8v hängst wenn du den pc lüfter sowieso nicht im pc betreibst. schau mal auf die HP vom matthias weißer der hat einen Drehzahlmesser gebaut. http://www.matwei.de/lib/exe/detail.php?id=de%3Aelektronik%3Adrehzahlmesser&cache=cache&media=images:elektronik:elek_dreh_schalt.png Einfach den Tachosignalspin mit der Versorgungsspannung des megas über einen 10k pullup und das ding müsste laufen.
@ferrice thx für den interessanten link kannst du mir sagen, wofür der timer(TLC555D) in der linken unteren ecke gut ist und was SJ2 bedeutet das original tachosignal scheint im timer irgendwie vorverarbeitet zu werden, bevor es in PD6 eingelesen wird die beschreibung sagt darüber nichts aus den pullup (r5) habe ich gesehen, das werde ich morgen mal ausprobieren das tachosignal kommt übrigens mit 8v aus dem lüfter, wenn man ihn mit 12v betreibt, die 12v werden auch so bleiben, ich weiß nur noch nicht genau, ob das mit den 8v und dem pullup funzt emjay
Ich hab da einfach den internen Pullup (10k) an gemacht und diesen beliebigen Pin so oft wie möglich gepollt.
***kannst du mir sagen, wofür der timer(TLC555D) in der linken unteren ***ecke gut ist und was SJ2 bedeutet SJ 2ist nichts anderes als ein Lötbarer Jumper. Damit kannst du den 555er überbrücken. Und der TLC555 ist das gleiche wie der NE555. Das ist ein Timer IC und kann für verschiedenste Anwendungen verwendet werden. In dieser Schaltung ist er als Monoflop geschalten um das Tachosignal zu verschönern. Nachdem der Lüfter über den Q6 und Q7 per PWM geregelt wird, wird das Tachosignal unsauber-> und das wird eben mit dem 555er baustein wieder aufbereitet. Fällt für dich weg da du den Lüfter permanent mit 12V betreibst. ***das tachosignal kommt übrigens mit 8v aus dem lüfter, wenn man ihn ***mit ***12v betreibt, die 12v werden auch so bleiben, ich weiß nur noch ***nicht ***genau, ob das mit den 8v und dem pullup funzt Ich verstehe nicht woher du da 8V haben sollst. Du brauchst die Versorgungsspannungs ja auch nicht ändern. + hänst du an +12V - hänst du an GND und Tacho hängst du über einen Pullup von 10k auf +5V (VCC der MCU)
Bist du sicher das da 8V rauskommen und ud ich nicht vermessen hast? Die allermeisten Lüfter haben OC AUsgang beim Tachosignal, du mußt also den Tachoausgang noch mit einem Pullup gegen +5Vversehen, damit du flanken auswerten kanns. Den Fehler hatte ich auch zuerst, mit Pullup funktionierte es dan aber ohne Probleme.
@ferrice danke für die umfangreiche erklärung ich habe den offenen ausgang mit dem oszi gemessen ein sauberes 0-8V rechtecksignal dann habe ich den 390K parallel dazwischen geklemmt und darüber fallen genau 5v ab ich werde nun mal die pullup variante versuchen, wenn es bei euch funzt muss es bei mir auch gehen :-)
ich habe die pullup-variante ausprobiert, aber es funktioniert nicht, also pegel habe ich dann 0-6V ansonsten habe ich die 390K reduziert, weil ja 3V schon für ein high ausreichen, jetzt hab ich 220k drin und ich kann auf die flanken triggern vielen dank für eure hilfe emjay
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.