Forum: Mikrocontroller und Digitale Elektronik Tachosignal erhöhen


von Michi (Gast)


Lesenswert?

Hallo zusammen

ich lese hier ab und zu mit, um mein bescheidenes Fachwissen etwas zu 
verbessern. Nun hätte ich aber ausnahmsweise auch mal eine Frage, resp. 
Problem.

Ich habe in einem Wasserkühlungssystem für meinen 3D-Drucker einen 
Flowsensor verbaut. Der Flowsensor liefert ein Tachosignal von 35RPM bis 
1440RPM.
Leider unterstützt die Firmware das Druckers nur Tachosignale ab 160RPM, 
deshalb werden Drehzahlen unter 160RPM als 0RPM angezeigt.

Meine Idee wäre das Tachosignal zu verfünffachen. Alternativ wäre evtl. 
auch möglich mit 8fach höherer Frequenz zu arbeiten, wenns einfacher zu 
bewerkstelligen ist... allerdings weiss ich dann nicht, ob das Board die 
höchsten Frequenzen noch erfassen kann.

Wie würdet ihr das am besten angehen?
Mit Logikgatter (dann wahrscheinlich 8fach) oder Mikroprozessor?

Soweit ich das verstanden habe, muss der Tachoeingang jeweils einfach 
auf GND geschaltet werden. Die Pulserei muss ja wahrscheinlich auch 
nicht symetrisch sein...

Schon mal vielen Dank für eure Zeit und allfällige Antworten.

von DerEgon (Gast)


Lesenswert?

Du könntest eine PLL verwenden.

Hier wird beschrieben, wie man eine einfache PLL (CD4046) als 
Frequenzvervielfacher verwenden kann:
https://www.ti.com/lit/an/scha002a/scha002a.pdf

(Seite 19, "Frequency Synthesizer")

Als Referenzfrequenz legst Du Deinen Tachoausgang an, anstelle das 
einstellbaren Teilers teilst Du durch Deine 5 oder 8, und schon kommt am 
Ausgang Deine gewünschte Frequenz raus.

Allerdings muss das RC-Glied aus R1 und C1 zum von Dir gewünschten 
Frequenzbereich passen.

Das Datenblatt gibts hier:
https://www.ti.com/lit/ds/symlink/cd4046b.pdf?ts=1661749932490&ref_url=https%253A%252F%252Fwww.google.com.ua%252F

von Falk B. (falk)


Lesenswert?

Michi schrieb:
> Wie würdet ihr das am besten angehen?
> Mit Logikgatter (dann wahrscheinlich 8fach) oder Mikroprozessor?

Mit einem Mikrocontroller. Eigentlich klingt das nach einer PLL, man 
kann es aber ggf. auch etwas einfacher machen. Einfach den Pulsabstand 
im Mikrocontroller mittels Input Capture Funktion messen und dann 
mittels Output Compare Funktion die gewünschte, vervielfachte Frequenz 
erzeugen. Ist an sich auch eine PLL; nur daß es keinen Phasenkomparator 
gibt. Beim MSP430 nennt man das FLL (frequency locked look, 
Frequenzregelschleife). Das reicht hier auch locker aus.

von Michi (Gast)


Lesenswert?

Danke für eure Antworten.
Ein PLL hatte ich nicht auf dem Schirm.

Ich hätte das erst auch mit einem Mikroprozessor + Programm gelöst.
PLL scheint mir auf den ersten Blick aber etwas "einfacher" zu sein.

Ich werde mich mal in die PLL Geschichte einarbeiten.

von Falk B. (falk)


Lesenswert?

Michi schrieb:
> ch hätte das erst auch mit einem Mikroprozessor + Programm gelöst.
> PLL scheint mir auf den ersten Blick aber etwas "einfacher" zu sein.

Ich würde es anders herum sehen.

> Ich werde mich mal in die PLL Geschichte einarbeiten.

Kann man machen, ist aber relativ viel Aufwand für das Problem.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Michi schrieb:
> PLL scheint mir auf den ersten Blick aber etwas "einfacher" zu sein.
Ich würde den uC nehmen.

Bis du ohne Erfahrung in Analogtechnik eine PLL (in diesem 
Frequenzbereich) stabil am Laufen hast, ist der Dreizeiler für den 8-Pin 
uC schon lange fertig.

Ist ja nur 1 Timer mit Capture für die Zykluszeit, dann ein Rechtsshift 
um 3 Bits und raus auf die PWM.

von H. H. (Gast)


Lesenswert?

Michi schrieb:
> 35RPM bis
> 1440RPM.

1:40, das ist für die analoge PLL ziemlich viel.

Ein µC kann sowas viel besser und einfacher.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

H. H. schrieb:
> 1:40
Bei genauerem Hinsehen eigentlich nicht...

Ich könnte mir auch vorstellen, dass der uC einfach das Eingangssignal 
durchreicht, wenn dessen Frequenz über 160 Hz ist. Und drunter gibt der 
uC immer 160 Hz aus.

von hf werker (Gast)


Lesenswert?

H. H. schrieb:
> 1:40, das ist für die analoge PLL ziemlich viel.

Ja, das bedeuted dass es für diesen grossen Frequenzbereich
nicht funktionieren wird.

von michi (Gast)


Lesenswert?

Vielen Dank für eure Antworten.

Ich bin mittlerweile auch wieder der Ansicht, dass ich es mit einem µC 
machen werde. Die Vorteile überwiegen, sowieso weil ich dann auch easy 
den "Erhöhungsfaktor" anpassen könnte.

Lothar M. schrieb:
> Ich könnte mir auch vorstellen, dass der uC einfach das Eingangssignal
> durchreicht, wenn dessen Frequenz über 160 Hz ist. Und drunter gibt der
> uC immer 160 Hz aus.

Das würde den ganzen Aufwand sinnlos machen...
Wenn das Tachosignal auf 0RPM (nicht Hz) ist (sprich etwa 3 sek keine 
Flanke am Eingang), darf auch der Ausgang kein Signal mehr liefern.

von Abdul K. (ehydra) Benutzerseite


Lesenswert?

Machst einfach einen time-out rein. Das habe sogar ich hingekriegt.

von Jobst M. (jobstens-de)


Angehängte Dateien:

Lesenswert?

Natürlich geht das mit einem 4046 (+4017 als Teiler).

Nachtrag: D1 offen = Teilerfaktor 10. Man kann Reset auch direkt mit Q 
verbinden und R4 und D1 weg lassen.
Scope: D2 ist Eingang, D1 ist VCO Ausgang und Frequenzzähler, D0 ist 
RefIn

Gruß
Jobst

: Bearbeitet durch User
von Ulf L. (ulf_l)


Lesenswert?

Lothar M. schrieb:
[...]>
> Ist ja nur 1 Timer mit Capture für die Zykluszeit, dann ein Rechtsshift
> um 3 Bits und raus auf die PWM.

Besser nach entsprechender Umrechung raus auf den reload-Wert eines 
zweiten Timers ;-)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

michi schrieb:
> Wenn das Tachosignal auf 0RPM (nicht Hz) ist (sprich etwa 3 sek keine
> Flanke am Eingang) darf auch der Ausgang kein Signal mehr liefern.
Diese Anforderung ist neu...

Bisher galt, was
Michi schrieb:
>>> Der Flowsensor liefert ein Tachosignal von 35RPM bis 1440RPM.

Aber halb so wild: programmiers einfach rein. Das sind nochmal 2 Zeilen 
Code.

: Bearbeitet durch Moderator
von Peter D. (peda)


Lesenswert?

michi schrieb:
> Ich bin mittlerweile auch wieder der Ansicht, dass ich es mit einem µC
> machen werde. Die Vorteile überwiegen, sowieso weil ich dann auch easy
> den "Erhöhungsfaktor" anpassen könnte.

Ja, bei einen MC muß man nichts umlöten.
Auch reicht eine Periode zum Messen, um dann eine Ausgangsperiode 
auszugeben. Eine PLL braucht dagegen ein Filter von etwa 10* der 
langsamsten Periode, d.h. reagiert deutlich träger.

von Michi (Gast)


Lesenswert?

Vielen Dank für alle eure Einschätzungen.
Ich werde es definitiv mit einem MC machen.

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
Noch kein Account? Hier anmelden.