www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik rechtecksignal lüfter tachosignal int0


Autor: emjay (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Ferrice (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Simon K. (simon) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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)

Autor: emjay (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: dotstyler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: emjay (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Ferrice (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
*****@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%3Ael...

Einfach den Tachosignalspin mit der Versorgungsspannung des megas über
einen 10k pullup und das ding müsste laufen.

Autor: emjay (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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

Autor: D. W. (dave) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab da einfach den internen Pullup (10k) an gemacht und diesen
beliebigen Pin so oft wie möglich gepollt.

Autor: Ferrice (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
***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)

Autor: Läubi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: emjay (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@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 :-)

Autor: emjay (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.