Frequenzzähler 1Hz-100khZ

Gast #3820561
Lesenswert?

Hallo,

kennt jemand ein günstiges, fertiges Frequenzzählermodul mit LED- oder 
LCD-Anzeige im Bereich von 1Hz-100kHz? Auch Bestellung aus China ist 
denkbar. Muss auch nicht besonders genau sein.

Auf Anhieb habe ich beim Chinesen nur Module gefunden, die im 
MHz-Bereich arbeiten.

Ansonsten, hat jemand ein fertiges Program für einen PIC16F628 oder 
ATMEGA8 zur Hand, das möglichst ohne externe Beschaltung auskommt: Der 
interne Oszillator sollte für den Frequenzbereich und meine Messzwecke 
noch genau genug sein. Ein 1x8 Dotmatrix-Display sollte sich dabei auch 
einfach ansteuern lassen.

Was Fertiges wäre mir allerdings lieber. Ich meine mal kleine fertige 
Multimetermodule gesehen zu haben. Sowas bräuchte ich für 
Frequenzmessung im NF-Bereich inkl. Ultraschall bis 100kHz.
Gast #3820660
Lesenswert?

Ich habe jetzt doch mal dieses Modul aus China bestellt:

http://www.aliexpress.com/item/New-0-1MHz-to-65MHz-RF-6-Digital-Red-Led-Signal-Frequency-Counter-Cymometer-Tester-55663/2044908536.html

Es hat wohl einen PIC16F828 mit ICSP-Schnittstelle. Hoffe, dass das 
Programm auslesbar/nicht-codeprotected ist und man das für den unteren 
Frequenzbereich eventuell anpassen kann.
#3821342
Lesenswert?

m.n. schrieb:
> Vielleicht bin ich ja ein reziprok verdorbener Mensch, aber wenn jemand
> die Frequenz von 1Hz messen möchte, denke ich, bei einer 4-stell.
> Anzeige sollte auch 1.000Hz ablesbar sein und die Messung auch nur 1s
> dauern.
> Die zuvor genannten (Retro-)Zähler machen das nicht.

Das ist schlichtweg falsch.

Ein nicht reziproger Zähler kann bei 1Hz Torzeit maximal eine Auflösung 
von 1Hz.

Anders ausgedrückt, würde bei einen vierstelligen Zähler mit 1Hz Torzeit

eine 0001 im Display erscheinen.

Anders sieht es bei Reziprog-Zählern aus, wie sie öfters hier schon als 
Projekt vorgestellt wurden.

Ralph Berres
#3821369
Lesenswert?

Ralph Berres schrieb:
> m.n. schrieb:
>> Vielleicht bin ich ja ein reziprok verdorbener Mensch, aber wenn jemand
>> die Frequenz von 1Hz messen möchte, denke ich, bei einer 4-stell.
>> Anzeige sollte auch 1.000Hz ablesbar sein und die Messung auch nur 1s
>> dauern.
>> Die zuvor genannten (Retro-)Zähler machen das nicht.
>
> Das ist schlichtweg falsch.

nein.

> Ein nicht reziproger Zähler kann bei 1Hz Torzeit maximal eine Auflösung
> von 1Hz.
>
> Anders ausgedrückt, würde bei einen vierstelligen Zähler mit 1Hz Torzeit
>
> eine 0001 im Display erscheinen.
>
> Anders sieht es bei Reziprog-Zählern aus, wie sie öfters hier schon als
> Projekt vorgestellt wurden.

das schrieb m.n. doch?
Gast #3821375
Lesenswert?

Ralph Berres schrieb:
> Das ist schlichtweg falsch.

Ich glaube, Du hast mich falsch verstanden, indem Du die von mir 
beschriebene Erwartungshaltung als vermeintliche Funktion der 
betreffenden "Retrozähler" ansiehst. Mein "ich denke" soll sagen, 
heutzutage erwarte ich ein reziprokes Meßverfahren, wenn jemand 1Hz 
messen möchte.

Oder ganz direkt ausgedrückt: die Torzeitzähler eignen sich nicht für 
1Hz Eingangsfrequenz. Wenn der µC interne Taktgeber allerdings als 
hinreichend stabil angesehen wird, weiß ich auch nicht, was der TO denn 
genau will.
#3821405
Lesenswert?

Dann habe ich hier irgendwas missverstanden, oder der TE hat sich 
missverständlich ausgedrückt.

Herkömmliche Zähler wie sie in den 60ger und 70ger Jahren üblich waren, 
also reine TTL-Zähler ( oder von mir aus auch C-Mos ) haben ein Zähltor, 
welches von der Zeitbasis ( in dem Fall 1 Sekunde  ) geöffnet wurden, 
und die Anzahl der Perioden gezählt worden.

Bei 1 Hz Frequenz wird halt bei der einen Sekunde offenenen Torzeit eben 
nur eine Periode gezählt und angezeigt.

Später kamen ja die Reziprogzähler, bei welcher die Torzeit mit der zu 
messende Frequenz geöffnet wurden, und gezählt wurde die 
Referenzfrequenz, welche in der Regel 10MHz beträgt. Jetzt hat man 
natürlich die Periodendauer in der Anzeige, aber mit einer hohen 
Auflösung, welche man jetzt erst in die Frequenz umrechnen muss.


Welcher der beiden Zählertypen  hat der TE denn jetzt gemeint?


Ralph Berres
Gast #3821503
Lesenswert?

Ralph Berres schrieb:
> Jetzt hat man
> natürlich die Periodendauer in der Anzeige, aber mit einer hohen
> Auflösung

So geht das natürlich nicht, man muss schon den Wert in Frequenz 
umrechnen für das arme (menschliche) Schwein das das ablesen soll. Ein 
Prozessor ist dafür Voraussetzung, aber das dürfte ja seit einigen 
Jahrzehnten kein Problem mehr sein.

Es ist auch eine Selbstverständlichkeit, dass die Umschaltung zwischen 
Frequenz- und Periodendauer-Messung je nach Messwert automatisch 
erfolgt.

Georg
Gast #3821793
Lesenswert?

Sorry, das Ihr euch jetzt an der Periodendauermessung im ganz tiefen 
Bereich den Kopf zerbrecht: Dieser Bereich interessiert mich eigentlich 
gar nicht. Streng genommen würden für meine Zwecke sogar 20kHz-100kHz 
reichen. Möchte mir nur grob die Oszillatorfrequenz für eine 
Ultraschall-Mischstufe anzeigen lassen, um Fledermäuse zu beobachten.

Die ausgeklügelteren uC-Programme machen wohl alle eine automatische 
Umschaltung zwischen Periodendauermessung und Zählung
#3821806
Lesenswert?

Dominik schrieb:
> Streng genommen würden für meine Zwecke sogar 20kHz-100kHz
> reichen. Möchte mir nur grob die Oszillatorfrequenz für eine
> Ultraschall-Mischstufe anzeigen lassen, um Fledermäuse zu beobachten.

Da würde ein konventionell aufgebauter Zähler mit ein paar TTL oder Cmos 
Ics ausreichen. Bei 0,1 Sekunden Torzeit hätte man eine Auflösung von 
10Hz bei 5Messungen/ Sekunde. 10Hz Auflösung reicht da wohl in deinem 
Falle.

Man käme sogar mit 4 Stellen aus, wenn man sich auf maximal 99KHz 
beschränkt, und die 1Hz Stelle unter den Tisch fallen lässt.

Ralph Berres
Gast #3821926
Lesenswert?

Dominik schrieb:
> Streng genommen würden für meine Zwecke sogar 20kHz-100kHz reichen.

Sag das doch gleich!
Eine einfache Lösung wäre mit einem zweifach Monoflop möglich. Die 1. 
Stufe erzeugt aus dem Eingangssignal einen kurzen (1µs) Impuls für eine 
steigende Flanke und die 2. Stufe einen 2µs Impuls. Typischer Baustein: 
74HC221

Mit 5 Volt betrieben und an ein Multimeter angeschlossen kann man dann 
gut 10 - 500kHz messen, entsprechend 0,1 - 5V gemittelter 
Ausgangsspannung.
Gast #3821989
Lesenswert?

Ähm, mir geht es nicht um's plumpe messen! Da kann ich auch gleich den 
in meinem Multimeter integrierten Frequenzzähler nehmen (schon getestet) 
oder gar mein DSO dranhängen. Ich möchte ein kleines Display-Modul in 
einem Handgehäuse miteinbauen. Dabei habe ich keine Lust eine eigene 
Platine mit zig externen Bauteilen zusammenzubraten. Dachte erst an uC 
und Dotmatrix-Display ohne weitere Bauteile freiluft im Gehäuse zu 
verdrahten. +9V Batteriespannung und stabile +5V stehen bereits zur 
Verfügung.

Das in China bestellte Modul ist mir von den Abmessungen her eigentlich 
ein bisschen zu groß für ein Handgehäuse wegen der 9cm Breite. Aber ein 
rotes LED-Display, bei dem die Helligkeit noch einstellbar ist, ist im 
dunkeln ideal.

Das bestellte Chinamodul heißt übrigens PLJ-6LED-A und gibt es bei 
buyincoins sogar noch ein paar cent billiger. Ein Schaltplan habe ich 
hier gefunden:
http://obrazki.elektroda.pl/9826042700_1408784428.jpg
Den Source habe ich leider noch nicht. Mein chinesisch ist leider nicht 
so gut und mit Website-Übersetzer konnte ich mich nicht in 
entsprechenden Foren registrieren. Wenn der Code für den 16f628a in 
Assembler geschrieben ist, kann ich ihn sicherlich disassemblieren und 
anpassen. Wenn er allerdings in C gehalten ist, wirds wahscheinlich 
komplizierter durchzublicken. In der Schaltung ist ja kein externen 
Vorteiler, weshalb es relativ einfach sein sollte es von Grundauf neu zu 
schreiben. Lediglich die Ansteurung des LED-Display-Treibers macht mir 
noch sorgen. Könnte ein schlichtes Schieberegister sein? Dachte beim 
Kauf an Hand des Platinenfotos noch, dass das der PIC die 
LED-Displaysteuerung selbst übernehmen würde :(. Der Treiber ist wohl 
irgendwie unter dem Display versteckt?
#3822207
Lesenswert?

Dominik schrieb:
> Ähm, mir geht es nicht um's plumpe messen! Da kann ich auch gleich den
> in meinem Multimeter integrierten Frequenzzähler nehmen (schon getestet)
> oder gar mein DSO dranhängen. Ich möchte ein kleines Display-Modul in
> einem Handgehäuse miteinbauen.

Genau für solche Fälle habe ich das Frequenzzählermodul entworfen. 
Das läßt sich auf einem Stück Lochraster so kompakt aufbauen, daß es 
huckepack mit einem Textmode-LCD ein kleines Modul ergibt. Ebenso kann 
man eine 6-stellige (Stellen kann man auch weglassen) LED-Anzeige auf 
einer Platine mit ebenfalls diesen Abmaßen dranklemmen. Und da die 
Firmware Open Source ist und ich hier zumindest im Prinzip greifbar bin, 
sollte das IMHO eine bessere Basis sein als ein China-Modul.

Anbei Bilder meines halb gefädelten Prototypen. Platinen haben andere 
entworfen.
z.B. hier: Beitrag "Re: Frequenzzähler 1Hz - 40MHz"
und hier: Beitrag "Re: Frequenzzähler 1Hz - 40MHz".
Und hier: Beitrag "Re: Frequenzzähler 1Hz - 40MHz"
bzw. hier: Beitrag "Re: AVR-Frequenzzählermodul 1Hz - 40MHz"
gibts das Teil mit LED-Display.

Bei geringeren Anforderungen kannst du aber auch die Analog-Variante 
verwenden die Mino oben vorschlägt. Statt des Multimeters nimmst du 
einfach ein handelsübliches Panelmeter-Modul.


XL
Angehängte Dateien:
Gast #3823178
Lesenswert?

Danke noch mal für den Tipp!
Mike hat ja bereits darauf hingewiesen. Sicher ein tolles 
AVR-Frequenzzähler-Projekt mit dem Atmega8, aber ich habe wirklich keine 
Lust den ganzen Kram auf einer Lochrasterplatine zusammenzulöten und zu 
verdrahten. 3 IC's und noch einige externe Bauteile (von der LED-Panel 
Version will ich da gar nicht erst reden). Wie gesagt, für mich käme 
wenn, dann nur eine Einchip-Lösung + LCD ohne Platine in Frage.
Wenn es Deine AVR-Module auch fertig aufgebaut günstig in China gäbe 
oder zumindest günstige Fertigplatinen, dann hätte ich die sicher in 
Erwägung gezogen. Von den Kosten her spart der Selbstbau sicherlich auch 
nichts gegenüber der 9$ Chinaplatine (jetzt bitte keine 
Milchmädchen-Rechnungen!).

Ich beschäftige mich zudem lieber mit Software als mit Hardware ;)

Trotzdem noch mal vielen Dank für den Tipp!
Gast #3823224
Lesenswert?

Dominik schrieb:
> Ich habe jetzt doch mal dieses Modul aus China bestellt:
>
> 
http://www.aliexpress.com/item/New-0-1MHz-to-65MHz-RF-6-Digital-Red-Led-Signal-Frequency-Counter-Cymometer-Tester-55663/2044908536.html

Dominik schrieb:
> Wie gesagt, für mich käme wenn, dann nur eine Einchip-Lösung + LCD ohne
> Platine in Frage.

Dann mal viel Spaß mit deinem China-Zähler und berichte mal.
Gast #3823288
Lesenswert?

Dominik schrieb:
> Wie gesagt, für mich käme
> wenn, dann nur eine Einchip-Lösung + LCD ohne Platine in Frage.

> Wenn es Deine AVR-Module auch fertig aufgebaut günstig in China gäbe
> oder zumindest günstige Fertigplatinen, dann hätte ich die sicher in
> Erwägung gezogen.

Ich hatte Dir weiter oben einen Musteraufbau angeboten. Ein ATtiny2313 + 
2x16 LCD hätte für Deine Anforderungen ja schon gereicht.
Aber der käme leider nicht aus China, wie auch alle anderen 
vorgeschlagenen Lösungen.
Von China lernen heißt: Siegen lernen!

Wolfgang schrieb:
> Dann mal viel Spaß mit deinem China-Zähler und berichte mal.

dito
#3823301
Lesenswert?

Dominik schrieb:

> ... ich habe wirklich keine
> Lust den ganzen Kram auf einer Lochrasterplatine zusammenzulöten und zu
> verdrahten. 3 IC's und noch einige externe Bauteile (von der LED-Panel
> Version will ich da gar nicht erst reden).

Aah, ja. Das ist dir also zuviel Aufwand. Dabei sind das höchstens 2 
Stunden, um ein Stück Lochraster zuzuschneiden und das bisschen 
Kleinkram da drauf zu verdrahten. In der Zeit hast du noch nicht mal den 
Schaltplan deines Chinamoduls aufgenommen (oder verifiziert daß der im 
Web gefundene Schaltplan stimmt).

> Wie gesagt, für mich käme
> wenn, dann nur eine Einchip-Lösung + LCD ohne Platine in Frage.

Das Leben ist kein Wunschkonzert.

> Wenn es Deine AVR-Module auch fertig aufgebaut günstig in China gäbe
> oder zumindest günstige Fertigplatinen, dann hätte ich die sicher in
> Erwägung gezogen.

Ich habe Uwe S. oben im Verdacht, daß er dir ein solches Modul bauen 
oder abgeben wollte. Auch Mino scheint vom Verkauf seiner Module zu 
leben. Allerdings können und wollen die sicher beide nicht mit dem 
Chinesen konkurrieren.

> Ich beschäftige mich zudem lieber mit Software als mit Hardware ;)

Mach mal. Ich fürchte ja, daß das im Sande verläuft. Mir graut es ja 
schon bei dem Gedanken, PIC Code reverse-engineeren zu sollen. Noch 
sowas, das dein Zeitbudget sprengen wird.


XL
Gast #3827846
Lesenswert?

Habe den 50 MHz-Frequenzzähler von Sprut 
http://www.sprut.de/electronic/pic/projekte/frequenz/freq.htm mal 
angepasst:

- Vorteiler ausgeschaltet (bei Sprut wurden Frequenzen < 2MHz immer noch 
mit Vorteiler 2 gemessen)
- RC-Oszillator eingeschaltet und Timings auf 4MHz angepasst
- Autorange-Vormessung rausgeworfen

Ich messe nun mit einer Messdauer von 250ms ohne Vorteiler. Wenn's 
genauer sein soll (oder für Referenzfrequenzmessungen) kann man die 
Messdauer auch problemlos auf 1000ms erhöhen. Mit einer Referenzmessung 
(bei Arbeitstemperatur) und Dreisatz kann man dann die 
Messzeit-Konstante (16bit in ( HighCOU / LowCOU ) x 20 Takte = Messzeit) 
anpassen, so dass eine erstaunliche Genauigkeit erreicht wird.

LCD einfach mit ein kurzes Stück Flachbandkabel (aus alten PC) direkt an 
Pic gelötet (bzw 18pol. IC-Sockel). Eventuell sind noch 2 Widerstände 
für den Spannungsteiler der Kontrasteinstellung nötig. Die kann man 
i.d.R. direkt an die LCD-Anschlüsse löten. Bei meinem getesten 16x2 
Display brauchte ich zum Glück nur eine Brücke vom Kontrastanschluss zu 
GND (LCDPin 1->3). Noch 3 Drähtchen (Vdd,Vss,RA4-Timereingang) zu meinem 
Fledermausdetektor und gut war.

Wenn mein China-LED-Modul kommt, kann ich dort auch die 
Sprut-Messroutine einsetzen, ohne deren Messroutine nachvollziehen zu 
müssen. Das Modul zur LED-Ansteuerung werde ich (sofern nicht 
Code-Protected gebrannt) nach Disassemblieren hoffentlich schnell 
isolieren können. Zur Not kann ich es aber auch sicher selber neu 
schreiben. Vom TM1637 LED-Display Treiber habe ich bisher nur ein 
Datenblatt in chinesisch gefunden. Es gibt aber fertige Routinen für 
Arduino, wo ich mir zur Not sicher auch die Ansteuerung raus extrahieren 
kann.
Angehängte Dateien:
Gast #3827849
Lesenswert?

Achja, in dem Forum gibt es glaub ich sogar ein HEX-File zum 
Frequenzzähler:
http://www.hellocq.net/forum/read.php?tid=312288

habe mich mit Hilfe vom Google-Translator dort registriert, kann die 
Dateien aber trotzdem nicht runterladen :(. Irgendwie muss man dazu noch 
berechtigt werden, aber ich blicke nicht durch. Chinesisch müsste man 
heutzutage in den Schulen lernen statt englisch ;)
Gast #3873182
Lesenswert?

So, mein PLJ-6LED-A Modul ist gestern gekommen (war ziemlich lange 
unterwegs, obwohl der Verkäufer es laut Sendungsverfolgung schnell 
abgeschickt hat). Darauf werkelt allerdings ein PIC16F648a statt dem 
angegebenen PIC16F628a. Der ist aber wohl voll kompatibel (hat nur mehr 
Flashspeicher).

Leider ist er CP, weshalb ich ihn nicht auslesen kann. Ein HEX-File habe 
ich mittlerweile aber auch gefunden: 
ftp://bg5roj.3322.org/%C6%E4%CB%FC/%C6%B5%C2%CA%BC%C6%D7%CA%C1%CF/PLJ-6L 
ED-A%B9%CC%BC%FEV13.03.20.rar

Ist sehr groß und mein Versuch es zu deassemblieren und reverse 
engineeren war nicht vielversprechend. Ist offensichtlich in einer 
Hochsprache geschrieben, weil die ersten Routinen ALLE Speicherzellen 
für Variablen via Schleife und indirekter Adressierung nullt. Weiter 
wollte ich dem Monsterprogramm nicht mehr folgen.

Also habe ich Doku zum TM1637 LED-Segment Treiber gesucht. Allerdings 
auch nur auf chinesisch was gefunden. :(
Dafür habe ich aber eine Arduino TM1637 C++-Lib gefunden, wo ich die 
entscheidene Routine 1 zu 1 in Pic16 Asm übersetzt habe. Hat auf Anhieb 
geklappt! Im Anhang mein kleines Testprogramm, mit dem ich HALLO auf dem 
LED-Display ausgebe. Gibt wohl auch viele 4-Ziffer LED-Module mit dem 
TM1637.

Am Wochenende werde ich dann meinen modifizierten Sprut-Frequenzzähler 
mit dem LED-Display Routinen kombinieren und entsprechend anpassen.
Angehängte Dateien:
#3873417
Lesenswert?

Dominik schrieb:
> So, mein PLJ-6LED-A Modul ist gestern gekommen
> Darauf werkelt allerdings ein PIC16F648a statt dem
> angegebenen PIC16F628a. Der ist aber wohl voll kompatibel
> Leider ist er CP, weshalb ich ihn nicht auslesen kann. Ein HEX-File habe
> ich mittlerweile aber auch gefunden
> Ist sehr groß und mein Versuch es zu deassemblieren und reverse
> engineeren war nicht vielversprechend.

Soviel zum Thema "ich kaufe mir was billig beim Chinesen und passe es 
an" statt einfach ein Projekt nachzubauen, bei dem die Firmware Open 
Source ist.


XL
Gast #3874935
Lesenswert?

So, beide Programme in eines zusammengepackt und ein paar Kleinigkeiten 
angepasst und schon funktioniert das Modul, so wie ich möchte.

Habe mir das Datenblatt vom TM1637 mal mit Google übersetzen lassen. Der 
kann neben den 6 Ziffern wohl auch noch bis zu 16 Tastern auslesen! 
Hauptsächlich ist der laut Hersteller wohl in Mikrowellen-Herden und 
Induktions-Kochplatten verbaut. Also wenn ich die nächste defekte 
Mikrowelle mit Display sehe, werde ich mal schauen, ob sich das Display 
noch verwerten lässt ;)
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren