Hallo, Ich suche einen Pulszähler, der Spannungs-Pulse zeitverknüpft loggt. Die Pulsrate wird etwa 20 Pulse pro Minute betragen, also recht moderat. Das ganze soll über einen größeren Zeitraum (Monate) geloggt werden und dann per USB ausgelesen werden können. Es spräche nix dagegen die Pulse minütlich oder 5 minütlich zu kommulieren und "Zeitbins" zu loggen, wenn das Sinnvoll ist. Ich habe zahlreiche fertige USB-Logger gefunden, die in einstellbaren Zeitintervallen messen, aber keinen, der eingehende Pulse zählt. Die Suche nach "USB Logger" hier im Forum gab über 11.000 Treffer, und bezogen sich meist auf Temperaturmessungen oder GPS-Datenlogger. Konkret möchte ich den Hausstromverbrauch mit einem S0-Fähigen Stromzähler loggen, der pro verbrauchte Wh einen S0-Puls ausgibt. Da der Rechner nicht die ganze Zeit laufen soll, würde ich es eben gern loggen. Anschließend würde ich gern die Daten auf den Rechner übertragen und auswerten. Es gibt Lösungen von ELV-Elektronik. Diese setzen am analogen Stromzähler an und übertragen die Daten per Funk an eine Displayeinheit. Ich fürchte nur, dass die sich bei mir schlecht anwenden lassen, weil ich befürchte, dass die Funkübertragung aus dem Keller nicht so recht funktioniert. Den Datenlogger, den sie mal im Angebot hatten, gibts nicht mehr. Als Physiker habe ich eher geringe elektronik-Erfahrung aber bin willens mich in die Thematik einzuarbeiten, scheue also größeren Aufwand nicht. Hohe Kosten schon ;-) Meine Vorstellung der Kosten rangiert (inklusive Stromzähler) um 60-70 Euro. Gibt es eventuell alternative Lösungen für dieses Vorhaben? Über Antworten freue ich mich! Gruß, Fiete
Du meinst einen Herzfrequenzmesser? Ich glaube das bringt mich nicht weiter, denn der S0 Puls den ich auslesen möchte ist im wesentlichen ein Rechteck-Puls.
Falls du eine Eigenentwicklung nicht scheust, könnte man sowas evtl. auch mit einem kleinen Mikrocontroller (z.B. AVR) selbst entwickeln: - Das zählen der Pulse schafft der Controller bei der genannten Pulsfrequenz locker. - Die Timestamps müssten mit einem RTC-Modul generiert werden. - Als Speichermedium würde ich ein EEPROM, Flasch-Speicher oder SD-Karte vorschlagen (Speicherplatz und Abnutzung der Speicherzellen müsste man mal mit genauerer Kenntnis der geforderten Aufzeichungsdaten (Zeitauflösung etc.) und den angestrebten Ausleseintervallen abschätzen) - Auslesen würde ich über RS232 realisieren, evtl. mit USB-Seriell-Wandler Je nach Vorkenntnissen braucht die Realisierung allerdings etwas Zeit.
Danke für die schnelle Antwort. Das hilft weiter. Meine Vorkenntnisse sind sehr gering, aber wie erwähnt scheue ich die Einarbeitung nicht. Ob das überhaupt schaffbar ist, versuche ich gerade abzuschätzen. Eine Hürde ist zu wissen, welche Bausteine überhaupt für diese Aufgabe in Frage kommen können. Hab mir das gerade mal angeschaut, was ein AVR ist. Eigentlich hatte ich gehofft, dass es Bausteine mit USB-Interface gibt, die Programmierbar sind, sodass man das alles beisammen hätte und nur noch durch einen Zusatzspeicher ergänzen müsste. Was gut ist, dass die Anforderungen was Präzision und Auflösung betrifft nicht sehr hoch sind. Ich rechne mit im mittel 8 Impulsen pro Minute. Das ist das Jahresmittel, also punktuell können deutlich höhere Raten zu erwarten sein, sodass ich gern nach oben ein wenig luft hätte. Vielleicht ist da 20/min noch zu wenig. Wie weit wäre das nach oben ausbaubar? 600/min? Also eine Taktrate von 10Hz. Ist das üblich bei Microcontrollern? Die allerhöchste Pulsrate die zu erwarten ist wäre 450MHz (ich stutze grad doch ein bissel. Aber so hoch muss die Rate wirklich nicht ausgelegt sein.) Die Pulse werden nicht überlagert sein, sodass man nicht das Problem haben sollte das noch auseinanderklamüsern zu müssen. Wenn ich deinen Ansatz richtig verstehe, dann lässt du eine Uhr laufen, die immer dann ausgelesen wird, wenn ein Puls anliegt. Gibt es Controller mit integriertem Kalender? (einfacher wäre es natürlich von einem Startdatum an zu zählen) Die Datenmenge wäre, wenn ich eine Auflösung von 1 min hätte ca. 300KB/monat. Also wenn der Chip 512KB speichern kann, dann hälts nen guten Monat. Nochmal zusammengefasst: Gibt es Mikrochips, die - bis zu 450MHz Pulse zählen können? 1MHz würde auch schon reichen - 512 KB Speicher integriert haben - Interne Uhr/Kalender - USB-Interface haben Zu dem Ansatz von Abdul K. : Dein Ansatz ist eventuell deutlich einfacher, als der obige Weg, aber nur, wenn der Herzfrequenzmesser schon als fertiges Bauteil vorliegt. Gibt es da was oder müsste ich mir das selber bauen? Dann wäre das ja im Prinzip der obige Weg. Versteht mich bitte nicht falsch, ich möchte keinen fertigen Bauplan von euch, sondern nur eine Richtung sodass ich schnell zum Ziel komme.
Friedrich Kpunkt schrieb: > Also eine Taktrate von 10Hz. Ist das üblich bei Microcontrollern? Die > allerhöchste Pulsrate die zu erwarten ist wäre 450MHz (ich stutze grad > doch ein bissel. Ich stutze auch. Bei einem Hausanschluss mit 60A hast Du 15kW Leistung. Das sind 15k Wh pro Stunde, also weniger als 5Wh pro Sekunde. Das mit den Megahertz brauchen wir da nicht ...
Hallo Friedrich Ich denke, der zu wählende Ansatz hängt wesentlich davon ab, ob nur dieses spezifische Problem möglichst ökonomisch gelöst werden soll oder ob du dich grundsätzlich in die Mikrocontrollerprogrammierung einarbeiten willst. Das braucht einiges an Zeit (Controller kennen lernen, Programmiersprache lernen (C oder Assembler, evtl. Bascom), PC-Softwaretools kennen lernen, etc.), dafür hast du nachher evtl. ein neues Hobby und kannst - falls du in der Experimentalphysik tätig bist - das erworbene Wissen vielleicht auch mal im Labor anwenden. Falls du einfach schnell eine brauchbare Lösung willst, würde ich möglichst nur fertige Module verwenden und daraus "irgendwie" etwas zusammen "basteln". (z.B. mit Frequenz-Spannungs-Wandlung) Mein Lösungsvorschlag sähe so aus: Konzept: - Ich nehme einen freiprogrammierbaren Mikrocontroller (d.h. der weiss von sich aus nicht, ob er jetzt ein Auto oder eine Waschmaschine steuern oder eben deine Pulse loggen soll)* - Die Software dazu schreibe ich selber in C (Puristen nehmen Assembler, Einsteiger haben evtl. Bascom gerne (das ist etwas VisualBasic ähnlich)) - An den Controller kommt ein geeignetes Speichermedium (wie oben erwähnt); was da am besten ist, weiss ich jetzt noch nicht - Die Verbindung zum PC wird via serielle Schnittstelle gemacht, falls USB-erwünscht ist, gibt es kleine fertige USB-Seriell-Wandler (das ist VIEL einfacher als ein direkter USB-Anschluss) *Für den anvisierten Zweck wäre ein AVR von Atmel sicher nicht schlecht: gut erhältlich, billig, weitverbreitet (d.h. du findest viele Leute hier im Forum, die dir helfen können) Messverfahren: Ich würde, wie von dir eingangs vorgeschlagen, 5-Minuten Zeitbins verwenden: Der Controller zählt während 5 Minuten die ankommenden Pulse. Danach schreibt er in den Speicher die Anzahl Impulse zusammen mit einer aktuellen Zeitangabe. Für die Zeitangabe verwendet man entweder einen externen RTC-Chip oder lässt das auch gleich der Mikrocontroller machen. Der Inhalt des Speichers kann dann nach ein paar Monaten oder so in den PC übertragen werden. Zu deinen Fragen: > Gibt es Mikrochips, die > - bis zu 450MHz Pulse zählen können? 1MHz würde auch schon reichen AVR-Mikrocontroller haben integrierte Hardwarezähler, die Pulse bis zur halben Taktfrequenz des Prozessors zählen können. Diese Controller werden Üblicherweise mit Frequenzen von 4 bis 20 MHz getaktet D.h. 1 MHz: absolut problemlos 450 MHz: direkt nicht möglich, es müsste ein Vorteiler verwendet werden (Aber irgendwie kann ich schlecht glauben, dass ein Stromzähler tatsächlich Pulse mit einem halben GHz rausspuckt?) > - 512 KB Speicher integriert haben Weiss ich jetzt gerade nicht. Würde aber wie erwähnt eher ein externer Chip verwenden. > - Interne Uhr/Kalender Das kann man auch per Software realisieren. siehe z.B.: www.atmel.com/dyn/resources/prod_documents/DOC1259.PDF > - USB-Interface haben Ja, aber es ist wie gesagt meiner Meinung nach nicht die einfachste Lösung. Vielleicht ist ja mein Lösungsvorschlag ein totaler Overkill für jemanden, der nur sein Stromverbrauch protokollieren und sich nicht ein halbes Jahr mit Mikrocontroller beschäftigen will, aber falls es dir hilft, habe ich mal mein Vorschlag gepostet.
Offenbar erfinde ich wieder mal das Rad neu: Hier wurde das schon mal ganz ähnlich diskutiert: Beitrag "beispiel für S0 schnittstelle/stromzähler auslesen mit avr" Und das hier ist vielleicht schon die Lösung des ganzen Problems: http://busware.de/tiki-index.php?page=4S0ETH
Vielen dank ME. Du schätzt das schon richtig ein. Schnell fertig muss es nicht sein und ich hatte das in der Tat als Vorbereitung für experimentalphysikalische Arbeiten gedacht. So langsam schwant mir doch, dass es auch mit viel Einarbeitung schon recht aufwändig wird. Aber mein Elan ist da. Habe mir mal die fertige Lösung angeschaut. Die können natürlich schon viel zu viel und mir fällt es da nicht ganz leicht, die wesentlichen Elemente der Schaltung zu erkennen, aber so eine grobe idee habe ich. Sie bieten Beta-Testern das ding für 200 Tacken an. Und dann braucht man noch 1-4 S0-Zähler, die auch nochmal je 50 tacken kosten. War nicht so der Preisramen den ich mir vorgestellt habe... Könnte man das Schnittstellen-Problem eventuell durch eine SD-Speicherkarte lösen? Sodass die Daten direkt auf die Speicherkarte geschrieben werden und ich sie ab und zu rausnehme um sie auszulesen? Oder wäre das ähnlich kompliziert wie ein USB-Anschluss? Gruß, Fiete
> Könnte man das Schnittstellen-Problem eventuell durch eine > SD-Speicherkarte lösen? Sodass die Daten direkt auf die Speicherkarte > geschrieben werden und ich sie ab und zu rausnehme um sie auszulesen? > Oder wäre das ähnlich kompliziert wie ein USB-Anschluss? Klar, das geht. SD-Karten werden relativ häufig für solche Zwecke in Eigenentwicklungen eingesetzt, da sie relativ einfach angesteuert werden können. Kannst dir ja mal die Seite anschauen: MMC- und SD-Karten Ich hab mal sowas gemacht, aber lediglich mit Nur-Lese-Zugriff. Allerdings muss man sich bewusst sein, dass die Implementierung des Dateisystems (z.B. FAT16) schon etwas aufwändig ist. Zum Thema USB gibts hier noch ganz viele Infos: USB Um mal einen Eindruck von einem USB-Seriell-Wandlermodul zu bekommen, kannst du hier schauen: http://shop.embedded-projects.net/product_info.php/info/p54_USB-zu-RS232-Wandler--TTL-Pegel-0-und-5-V-.html
Vielen Dank ME. Macht richtig spaß sich da reinzuarbeiten. Das mit der SD-Karte ist eitentlich die beste Lösung. Allerdings stelle ich fest, dass es mir für ein solches Projekt definitv zu sehr an Praxis mangelt. Deshalb habe ich beschlossen das Projekt Stromverbrauchslogger erstmal auf Eis zu legen und mich zunächst mal ganz klassisch mit der AVR-Programmierung auseinandersetzen. Bin gerade dabei das Tutorial durchzuarbeiten und obohl ich noch kein einziges Bauteil auf meinem Schreibtisch habe, hab ich schon echt viel gelernt. Gehört zwar hier nicht so ganz hin, aber ich frage Trotzdem: Der NE555 kann ja eingestellt werden über seine Außenbeschaltung. Man hat dafür 3 Freiheitsgrade um auf die selbe Frequenz zu kommen: R1, R2 und C. Intuitiv würde ich sagen, dass man weder die R ganz groß macht und das C klein (oder andersrum). Was passiert, wenn man z.B. ein großes R hat? Das hat doch bestimmt irgendwelche Nebeneffekte oder? Und noch eine Frage: Wofür sind meist die 100nF Kondensatoren außen an den µC? Ist das zum treiben der eigentaktgeber? Besten gruß, Fiete
> Der NE555 kann ja eingestellt werden über seine Außenbeschaltung. Man > hat dafür 3 Freiheitsgrade um auf die selbe Frequenz zu kommen: R1, R2 > und C. Intuitiv würde ich sagen, dass man weder die R ganz groß macht > und das C klein (oder andersrum). Was passiert, wenn man z.B. ein großes > R hat? Das hat doch bestimmt irgendwelche Nebeneffekte oder? Wenn R sehr gross ist, wird der durchfliessende Strom sehr klein. Das macht die Schaltung grundsätzlich eher empfindlich für Rauschen, EMV-Störungen etc. Zudem hab ich glaub mal gehört, dass sehr hochohmige Widerstände (Gigaohm) mehr von den Umgebungsbedingungen (Temperatur, Luftfeuchtigkeit) gestört werden. Ich gaube, auch der "Dreck" auf den Anschlüssen kann sich da dann auswirken. So genau kenn ich mich da aber nicht aus. Stell doch diese Frage mal im "Analogtechnik"-Forum. > Und noch eine Frage: Wofür sind meist die 100nF Kondensatoren außen an > den µC? Ist das zum treiben der eigentaktgeber? Das sind so genannte ""Abblockkondensatoren". Getaktete digitale Schaltungen ziehen während kurzen Zeiten hohe Ströme - nämlich dann, wenn die digitalen Pegel wechseln. Das kann zum Einbrechen der Versorgungsspannung und zu elektromagnetischen Störungen führen. Ein Abblockondensator kann den hohen Strom kurzzeitig liefern (und wird danach von der Versorgungsspannung wieder geladen). Er sollte nahe bei den Versorgungsspannungsanschlüssen liegen, damit der Widerstand und die Induktivität der Zuleitungen klein ist. Eine ausführliche Erklärung gibts hier: http://www.rn-wissen.de/index.php/Abblockkondensator (Dieses Forum/Wiki enthält sowieso noch viele hilfreiche Infos.) In den langen Datenblättern der AVR-Mikrocontroller gibt es ziemlich am Ende einen Abschnitt über elektrische Eigenschaften, dort werden solche Aspekte noch genauer erklärt. Viel Spass beim Tutorial! Bei Fragen einfach wieder posten ...
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.