Ich benötige einen Impulszähler (Drehzahlauswertung von Gebläse via
Hallsensor), der die Drehzahl auf 0-10V Analog ausgibt.
Ich dachte an eine einfache, sehr kostengünstige Schaltung in einem
Schrumpfschlauch verpackt wird und auf beide Seiten einen Stecker hat.
Versorgungsspannung 24 V DC steht zur Verfügung.
Analoger Eingang an der Steuerung vorhanden mit:
0 - 3 Volt (bzw. 0 - 10 V - ca. 100 kOhm)
Der Hallsensor ist laut Spezifikation mit 3,5 bis 24 Volt betreibbar.
Wir wären gerne in der Lage, mit der Schaltung 6 kHz auszuwerten.
Also max. 100 steigende Flanken pro Sekunde.
Wer könnte mir so eine Schaltung, ggf. mit einem PIC layouten?
Bei einer Menge von ca. 50-100 Stk sollte die fertige Platine max. 15 €
kosten.
Was müsste man für das Platinenlayout / Software ca. rechnen?
Ich hoffe es kann mir hier jemand helfen.
Hallo Dominic,
hast du den Hallsensor den schon ausgesucht und zusammen mit deinem
Gebläse mal verwendet?
Da wäre es z.B. mal wichtig zu sehen wie der Ausgang des Halls sich
verhält. z.B. Oszilloskop-bild o.ä.
Dann könnte man nämlich sehen ob es noch zusätzliche Analogzauberei
braucht und mit welchem Hall es funktionieren soll.
Welche Anforderungen an die Genauigkeit und Auflösung des Ausgangs hast
du?
Prinzipiell sehe ich auf der PCB:
- Eingangnsschutzbeschaltung
- 3,3V und/oder 5V Regler
- µC mit eingebautem ADC und PWM (oder sogar DAC)
- evtl. Analogteil um den Hall für den µC verwertbar zu machen
- Verstärkung um am PWM-Ausgang des Controllers auf 0-10V zu kommen
- Schutzschaltung des Analogausgangs
Jetzt kommt es noch auf deine Anforderungen bezüglich dem hier an:
- Genauigkeit und Auflösung des Ausgangs
- Umweltbedingungen (Temperaturbereich)
- Sicherheit (Ein/Ausgänge, Verpol-, Überspannungsschutz usw)
- Gehäuse?
- Bauform, Bauteile?
- Anschlussart (Klemmentyp..)
Das ganze mit einer einzigen HW/SW-Schleife zu bauen wird nicht einfach.
Im Endeffekt hieße das ja für 1500€ 100 fertig aufgebaute und
programmierte Platinen zu liefern, inkl. Software, Schaltplan und
Layoutentwicklung. Und auch noch für die 100 Stück die Garantie zu
übernehmen...
Da müsste jede PCB verdammt günstig in der Herstellung sein, dass sich
das bei der kleinen Stückzahl lohnt.
Alternativ kannst du dir auch jemanden suchen, der SW, Schaltplan und
Layout samt einem Prototyp für dich entwickelt und du dich dann um die
Herstellung der Kleinserie kümmerst.
Hallo René,
dass ging ja fix. Nicht schlecht. (-;
Also der Hallsensor ist bereits im Gebläsemotor verbaut.
Es handelt sich um folgenden Typ: US5881
Wir wollen die Drehzahl erfassen. Es muss nicht ultragenau sein. Die
Frage ist, welche Genauigkeit wäre mit geringem Aufwand möglich?
Ich dachte an eine kleine Platine, ca. 25 x 70 mm, welche in einem
Schrumpfschlauch eingeschrumpft wird. Nur Berühr und Staubschutz. Das
Ganze wird dann in einem Kabelkanal verstaut.
Die Platine wird in der Regel bei ca. 10 - 25 Grad Raumtemperatur (im
Keller) betrieben.
Verpolungsschutz nicht zwingend notwendig.
Steckerbuchsenkontakt z.B. Phönix 3 Polig, Verbindungskabel zum
Gebläse-Hallsensor
Auf der anderen Seite ein flexibles Kabel (Adern) Länge 25 cm (24 V
Versorgung, 0-10 V).
Ich suche jemand, der das ganze entickeln kann und einen Prototyp baut.
Die Serienproduktion / Garantie würden wir selbst organisieren.
Die Frage ist, was muss man für die Entwicklung Prototyp rechnen?
Wer kann das hier machen? Wie schnell?
Soweit ich das Datenblatt des Sensors verstehe, hat der Hall keinen
Analogausgang für die Magnetfeldstärke, sonder einen Digitalausgang, so
dass bei Rotation ein Rechteck am Ausgang erscheint.
Ich hätte da mehrere Optionen.
Einmal die µC-Keule schwingen:
In einem günstigen Aufbau kommt man so auf 5..8% Genauigkeit
(Wiederholgenauigkeit am Analogausgang, bei gleicher Drehzahl). Je
genauer, desto teurer.
Oder du brauchst nur eine ungefähre Drehzahl für eine
Lüfterausfall-Erkennung:
Da könnte man mit etwas Analogzauberei und ohne µC einen Wert
generieren, der zumindest für eine Lüfterausfallerkennung und ungefähre
"Drehzahlabschätzung" taugt. Mit Analogausgang halt. Das kann man
(günstig) so auslegen, dass er im oberen Drehzahlbereich eine
Genauigkeit besser 15% erreicht, aber im niedrigeren Drehzahlbereich
stark abweicht. Da aber der untere Bereich evtl. bereits der
"Lüfterausfall" ist, wäre das vlt. eh uninteressant.
Oder man nutzt das ganze direkt als Lüfterausfallerkennung, so dass es
auf einen Digitaleingang einer SPS oder Steuerung geht. Dazu kann man
beispielsweise einen retriggerbaren Timerbaustein verwenden, der erst
dann kontinuierlich 24V ausgibt, wenn der Hallsensor die Impulse schnell
genug liefert.
Wenn sich hier sonst niemand beteiligt, einfach mal registrieren, vlt.
meldet sich ja jemand per PN.
So, jetzt gleich mal registriert. (-;
Super dass Du mir so toll behilflich bist.
Wir haben an unserer Steuerung (Auswerteeinheit) einige Digitaleingänge
frei, die aber mit der hohen Frequenz des Hallsensors nicht klar kommen
können.
Daher den Umweg von Impulszähler > 0-10 V
Grundsätzlich wären beide Varianten die Du angesprochen hast sehr
interessant.
1) Drehzahlauswertung
2) Ausfallerkennung
Tendenziell würde mir die erste Variante besser gefallen, da wir die
Drehzahl ganz gerne auswerten und vielleicht sogar das Gebläse danach
steuern wollen. Genauigkeit 2-3 % wäre dafür geeignet.
Wäre das mit einem PIC nicht auch ganz gut machbar oder wäre das zu
teuer? Kannst du das mal überschlägig rechnen damit man mal eine
Vorstellung hat was die Varianten kosten könnten.
Kannst Du sowas layouten? Hättest Du Zeit dafür?
Die 2-3% machen einem schon zu schaffen. Schließlich gehen Zeit- und
Spannungsreferenz darin ein. z.B. kann man den internen RC-Oszillator
des µC dann nur bedingt verwenden. Genauso den Ausgang des
Linearreglers. Selbst wenn man die interne Spannungsreferenz des µC
nimmt und zurückliest, müsste man besser als 1% Widerstände nehmen. Das
geht alles in den Platzbedarf und den Zeitaufwand des Layouts ein.
Ob PIC, AVR oder MSP430 entscheidet der Preis, es sei denn du hast dich
auf PIC festgelegt. Eigentlich hab ich für sowas nicht mehr die Zeit,
aber reizen würde mich das Projekt schon. Aber in einer einzigen
Hardwareschleife krieg ich das nicht hin.
Noch eine andere Idee.
Die verfügbaren Digitaleingänge können bis 25 Hz erfassen. Vielleicht
könnte man auch Digital bleiben, also die Eingangspulse mit einem
bestimmten Verhältnis runterskalieren?
Eingang: 50 Hz >>> Ausgang: 25 Hz
Eingang: 25 Hz >>> Ausgang: 13 Hz
usw ...
Wäre das aus schaltungstechnischer Sicht nicht deutlich einfacher?
Vermutlich aber ungenauer wegen der geringen Auflösung.
???
Na dann sind wir bei einem Frequenzteiler, das geht mit ein paar
FlipFlops ganz gut. 7kHz rein und nach 8 FlipFlop kommen 27Hz raus, bzw
mit 9 FlipFlops dann 14Hz.
Sowas schüttel ich noch ausm Ärmel, so dass es deinem Platzbedarf
genügt.
Blockschaltbild mit genauer Anschlussbelegung wäre dann noch sinnvoll.
Deine Steuerung muss dann zuverlässig die Zeit zwischen zwei steigenden
flanken ermitteln können. Da würde ich in der Frequenz noch weiter
runter gehen, es sei denn es gibt so etwas wie eine Zählfunktion an den
Eingängen. Aber für eine ordentliche und schnelle Regelung ist das etwas
langsam. So könntest du z.B. die tatsächliche Drehzahl nur ein paarmal
in der Sekunde rauskriegen und dann auch nur sehr ungenau. Je länger der
Zeitraum ist, über den du die Impulse zählst, desto genauer wird es.
Ich habe gerade mit einem Kollegen gesprochen, der hat mir vom
Frequenzteiler abgeraten, da dies von der Steuerung nicht
unproblematisch und sicher ausgewertet werden kann.
Ich denke wir sollten beim ursprünglichen Modell bleiben.
Vielleicht gibt es auch einen passenden IC den man dafür nutzen kann?
Wäre sicher das günstigste, da man keine Software braucht.
Hallo,
ich würde die Schaltung mit einem LM2907
(Frequency-to-Voltage-Converter) realisieren. Der ließe sich auch direkt
mit den 24V versorgen. Dadurch würde kein Spannungsregler und auch keine
Software benötigt werden.
In der Beispielbeschaltung der Applikation-Note werden 67Hz/V als
Ausgangsspannung angegeben. Diese mit dem 0-3V Eingang ausgewertet,
sollte eigentlich eine halbwegs vernünftige Auflösung bieten (zumindest
für die Ausfallerkennung). Über die externe Beschaltung des Baussteins
ließe sich die Ausgangsspannung aber auch noch beeinflussen/einstellen,
so wie ich das AppNote verstehe.
Vielleicht wäre dieser Lösungsvorschlag ja auch zielführend - bis zu
Ende durchdacht habe ich ihn aber noch nicht... Was meint ihr dazu?
René, der Vorschlag von Chris klingt sehr interessant und der IC wäre
auch für rund 1 € / Stück zu bekommen. Ich denke noch ein paar
Widerstände, Kondensatoren, Anschlussklemmen, eine Platine. Sollte man
alles für 5-7 € bekommen können + Zusammenbau. Dann wäre mein Zielpreis
vielleicht doch machbar?
Könntest Du das Platinenlayout + Prototyp übernehmen?
Woher kommst Du? PLZ?
Super Idee Chris!
Dominic78 schrieb:> Wir wären gerne in der Lage, mit der Schaltung 6 kHz auszuwerten.> Also max. 100 steigende Flanken pro Sekunde.
Da muss ich dann doch mal Fragen. Geht es um 50Hz, 100Hz oder 6kHz am
Hall?
Ich habe nochmal nachgesehen. Es sind max. 50 Hz, also 3.000 r/m.
Die Drehzahl ist mit 2.400 r/m spezifiziert.
Ideal wäre also eine Erfassung vom Hallsensor bis zu 50 Hz und eine
Ausgangsspannung von 0-10 V.
Also 50 Hz = 10 Volt (5 Hz = 1 V)
Nenndrehzahl: 2400 U/s = 40 Hz => 8 Volt
Hallo Dominic,
normalerweise wird der Hall mehrmals pro Umdrehung getriggert, daher die
Frage. Denn einmal kann man innerhalb einer feststehenden Zeit die
Anzahl der Impulse erfassen, dazu sollte das Signal aber >>100Hz sein.
Alles was darunter angesiedelt ist, sollte über die Periodendauer
ausgewertet werden, also die Zeit zwischen zwei Impulsen. Sonst dauert
es ja viel zu lange bis man die aktuelle Drehzahl ermittelt hat.
Wenn die Impulse nur einmal je Umdrehung kommen, geht der LM2907 auch.
Evtl. braucht es noch einen OpAmp um den Spannungsbereich hinten
aufzuweiten und weil erfahrungsgenmäß die Eingangsimpedanz der
ADC-Eingänge an der SPS nicht allzu hoch sind.
Aber alleine schon am Beispielaufbau sieht man, dass das Ding eigentlich
auch für mehrere Impulse je Umdrehung gedacht ist. Denn in der Appnote
ist der Ausgang auch auf 66Hz je Volt gedreht worden.
Und in diesem Bereich ist der Rippel am Ausgang des LM2907 auch sehr
hoch, somit also sehr ungenau zu erfassen. Du kannst es dir ja mal auf
Lochraster aufbauen und testen, falls es dann doch zu ungenau ist, muss
man wieder zum µC und damit eine Zeitmessung zwischen den Impulsen
machen.
René B. schrieb:> Wenn die Impulse nur einmal je Umdrehung kommen, geht der LM2907 auch.> Evtl. braucht es noch einen OpAmp um den Spannungsbereich hinten> aufzuweiten und weil erfahrungsgenmäß die Eingangsimpedanz der> ADC-Eingänge an der SPS nicht allzu hoch sind.> Aber alleine schon am Beispielaufbau sieht man, dass das Ding eigentlich> auch für mehrere Impulse je Umdrehung gedacht ist. Denn in der Appnote> ist der Ausgang auch auf 66Hz je Volt gedreht worden.>> Und in diesem Bereich ist der Rippel am Ausgang des LM2907 auch sehr> hoch, somit also sehr ungenau zu erfassen. Du kannst es dir ja mal auf> Lochraster aufbauen und testen, falls es dann doch zu ungenau ist, muss> man wieder zum µC und damit eine Zeitmessung zwischen den Impulsen> machen.
Hallo René,
die Eingangsimpedanz liegt bei 100 kOhm bei dem 0-10V. Wäre Deiner
Meinung nach der LM2907 für Drehzahlen von ca. 200 bis 2.600 U/min
geeignet? WelcheGenauigkeit könnte man am Ausgang damit realisieren?
Eine Einschätzung im unteren, mittleren und oberen Drehzahlbereich wäre
interessant.
Welche Komponenten braucht man für so eine Schaltung?
Könntest Du das für mich skizzieren? Ich könnte dann mit Deiner
Unterstützung auf einer Lochrasterplatine einen Prototyp aufbauen und
testen. Woher kommst Du? Vielleicht kann man sich auch treffen? Ich
komme aus 37581 Bad Gandersheim.
Noch was. Da sich die Drehzahl nicht so oft ändert, reicht eine
Erfassung der Drehzahl alle 2-3s. Wichtiger ist eine stabile
Ausgangsspannung, welche man u.u. mit einem Kondensator glätten sollte.
(Stichwort: Hardware Mittelwertbildung)
Kann mir hier jemand behilflich sein und vielleicht einen Schaltplan
entwickeln, welchen man als Prototyp bauen könnte um das testen zu
können?
?????
Schönen Abend noch Euch Allen!
Mal angenommen man vernachlässigt den Rippel, weil man ein fettes
RC-Glied dahinterhängt, so bleibt systembedingt immer noch dieser
Zusammenhang des LM2907/29017:
Vout=fin*Vcc*R1*C1.
Den Widerstand kriegt man auf 0,1..1%, den Kondensator auf 3..5% genau
geliefert. Vcc schwankt aber immer noch. Wenn man einen 12V-Regler
verbaut, kriegt man den auf etwa 2%. Die interne Zener-Option des LM2917
kommt auf 160..200mV@12V, was auch etwa 1,5% ausmacht.
Selbst wenn man für R1 1k wählt, kommt das ganze parallel an 100k des
ADC und macht auch hier wieder 1% aus.
Daher bleibt dir mit dem LM2907 nichts anderes übrig als:
- Ordentliche 12V erzeugen (extern)
- Trimmer bei R1 vorsehen um bei dem Teil eine "Werkskalibrierung"
durchzuführen
- Impedanzwandler hinter den Ausgang (einfach ein OpAmp), so dass die
(ungefähren!) 100k des ADC keinen Einfluss mehr haben. Der OpAmp kann
auch gleich für die Tiefpassfilterung hergenommen werden. Dann hat man
eine Chance die 2..3% zu erreichen.
Als SMD passt das schon irgendwie auf 2,5x7cm
Klingt recht aufwändig und teuer. (-;
Vielleicht dann doch besser einen günstigen D/A via PIC?
Wäre das damit nicht preiswerter und einfacher zu realisieren?
Mir wurde das hier empfohlen.
Wie bewertet Ihr das für meinen Zweck?
//
Würde es auf PIC16F1704 Basis umsetzen. Der Controller hätte einen
internen 8Bit DA Wandler und OPV.
//
Die Bauteile sollen sehr günstig für < 5 € zu haben zu sein.
Mich würde Eure Meinung zu diesem Vorschlag interessieren?
Grüße, Dominic
Wenn die Schaltung nicht sehr genau sein muß, machst du folgendes: Nimm
einen Kondensator, den du mit den Impulsen auflädst und der über einen
Widerstand auch wieder entladen wird. Je mehr Impulse, je höher die
Ladespannung. Je weniger Impulse, um so mehr wird der Kondensator
entladen. Die Werte mußt du selbst herausfinden, einfach messen. So hast
du eien quasi-Analogwert.
Mein Vorschlag aus der Schublade:
http://www.mino-elektronik.de/fmeter/fm_software.htm#bsp10
Man kann den DAC auch weglassen und die Ausgangsspannung per PWM
erzeugen, filtern und mit einem OPV auf 0-10V verstärken.
Als µC ginge auch ein ATtiny45/85 oder 'viel schöner' ein ATtiny841.
Das Programm läßt sich mühelos auch auf Eingangsfrequenzen von z.B. 0,1
- 100Hz anpassen.
Solltest Du noch keine Lösung gefunden haben, schreib mir eine e-email.