Datenlogger Pendeluhr

OP #8089179
Lesenswert?

Die Qadratuhr des Greises läuft.

Pendel, Antrieb und Anzeige (Nebenuhrwerk) funktionieren.

Nun wird es Zeit, dass ich mich um einen Datenlogger kümmere. Leider sind käufliche Exemplare recht teuer und für meine Ansprüche zu komplex. Also selbermachen (Ich habe noch keine Ahnung von der Materie).

Mal die KI gefragt: Die Grundausstattung ist recht einfach.

Datenlogger Arduino, Stündlich (GPS basiert) Temperatur, Luftdruck und Luft- feuchte mit Zeitstempel erfassen und später als Exelliste/Grafik ausgeben.

Etwas schwieriger wird dieser Teil: Das Lichtschrankensignal bei Pendel- durchgang einbinden. Optimal sind 3600,0 Durchgänge/Stunde. Zählen, Abweichung zum Zeitnormal feststellen, speichern, fortlaufend addieren. Nullstellung bei Neustart.

Da ich hier kein mechanisches Uhrwerk verwende, brauche ich keine feinere Auflösung. Die käufliche Versionen können jeden ungenauen Zahn im Räderwerk feststellen.

Kriegt der Opa das hin?

Wozu das Ganze? Um das Pendel zu optimieren, müssen Anpassungen am mechanischen Teil vorgenommen werden, um Temperatur und Luftdruch zu kompensieren. Entweder nehme ich mir dazu viel Zeit, oder ich messe.

Grüße Bernd

(Firma: matzetronics) #8089183
Lesenswert?

Bernd F. schrieb:

Kriegt der Opa das hin?

Warum eigentlich nicht? Mangelts an Lötkünsten? Vermutlich nicht. Mangelts an Softwarekenntnis? Svhon eher, aber es gibt mittlerweile soviele Softwarefetzen im Netz, das es nicht so schwierig sein sollte, die 4-5 Messwerte zu erfassen und die GPS Zeit dazu. Interessanter ist da schon die Frage, wohin mit den Daten?

Wenn das in irgendeinem Kirchturm läuft, wirst du wohl auf SD Karte oder so speichern müssen. Wenns in deiner Werkstatt läuft, könntest du auch mit USB/Seriell einen PC laufen lassen und da mitschreiben.

Bernd F. schrieb:

Entweder nehme ich mir dazu viel Zeit, oder ich messe.

Ich glaube mal beides :-P Du misst, brauchst aber trotzdem viel Zeit dafür.

: Bearbeitet durch User
#8089190
Lesenswert?

So'n doofer Arduino-Logger mit SD-Sockel "kost nix". Hat aber einen großen Nachteil: der braucht einen Puffer, denn entweder schreibt er ständig neu und die Karte ist bald kaputt, oder er schreibt genau dann wenn du die Karte gerade leer machen willst und in der Hand hast.

Wenn du die Werte eh wirklich nur Stündlich erfassen willst, würde ich einen EEPROM/MRAM/FRAM-Chip vorschlagen, der locker einige Tage speichern können sollte, und das wird dann auf Anforderung auf eine SD-Card kopiert.

Temperatur = 2 Byte, Luftdruck = 2 Byte, Luftfeuchte = 1 Byte, Zeit = 6 Byte, macht in Summe 11 Byte pro Stempel, 264 Byte/Tag. Das lässt sich aber noch mit ein wenig Optimierung runterbringen auf locker 7, vielleicht sogar 6 Byte/Stempel, und damit 144 Byte/Tag. Ein 8KByte FRAM kostet keine 3€ und kann dann 56 Tage speichern. Mit ein wenig mehr Überlegung ließe sich da sicherlich noch mehr rausholen...

Und: Wenn man das auf einen ESP packt, kann man das Log als Diagramm auf einer Webseite sehen, sofern am Standort WLAN verfügbar ist.

Bernd F. schrieb:

Kriegt der Opa das hin?

Mit ein bissel Hilfe von der KI bestimmt.

Bernd F. schrieb:

Das Lichtschrankensignal bei Pendel- durchgang einbinden.

3600/h sind ja nur 1/s, das ist mit GPS etwas grob, da kommt ja auch nur 1/s. Aber eine exakte Frequenz aus einer vernünftigen Zeitbasis (GPSDO?) runtergeteilt auf z.B. 100Hz oder gar 1000Hz kann locker tausend Stunden in eine 32bit-Variable zählen, das macht der Arduino mit links und du kannst die 3600 Pendel pro Stunde auf die millisekunde genau mitstoppen. Oder sogar jede Minute schon bestimmen ob die Uhr falsch läuft.

#8089191
Lesenswert?

Im einfachsten Fall zählst du mit dem GPS PPS doch einfach immer eins hoch und mit der Lichtschranke immer eins runter. Wenn dein Zähler dann stehen bleibt driftet nichts im Bezug zu deiner Referenz (GPS). Zählt er hoch ist dein Pendel zu langsam. Zählt er runter ist das Pendel zu schnell. Dann brauchst du nur einen Wert der dir den Fehler so lange auf integriert wie du möchtest.

Diesen Zähler tastest du dann zusammen mit den Temperatur/Luftfeuchte Werten ab. Das sind dann wenn man aast 16 Byte pro Messintervall. Einmal pro Stunde gemessen wären das nur 384 Byte pro Tag.

Ich würde da einfach ein ESP32 nehmen. Der hat genug RAM um auch jede Minute die Werte im RAM zu speichern. Dann wären es 23kB pro Tag. Auch noch lange kein Problem. Da kannst du sogar mehrere Tage im Speicher halten.

Dann ins WLAN rein mit dem Teil. Webserver mit plotly der die Daten visualisiert. Dann kannst du live mit dem Browser zuschauen in was für eine Richtung der Zähler geht ohne ständig Daten abziehen zu müssen.

Ich vermute stark dass wenn du das einer KI zuwirfst macht der dir ein fertiges Programm draus. Gibt ziemlich viele Beispiele für ähnliche Dinge.

OP #8089193
Lesenswert?

Der Standort wäre 3 Meter neben dem PC. Kabel oder WLAN wäre also problemlos möglich.

GPS-Zeit ist zwingend nötig. Es geht um die Sekunde nach hundert Tagen.

Der Vorschlag von Mani (Rauf-Runterzählen) klingt gut. Die zu messende Differenz könnte auf max. 2 Stellen (99 Sekunden) begrenzt sein. Mehr als 10 Sekunden wären ohnehin eine Katastrophe.

Grüße Bernd

: Bearbeitet durch User
#8089198
Lesenswert?

Bernd F. schrieb:

Der Vorschlag von Mani (Rauf-Runterzählen) klingt gut.

Vorsicht: wenn Pendel 0,001s vorgeht, hast du 999ms 0 und 1ms 1 (oder -1). Und das wird dann jede Sekunde 1ms mehr. Das "sieht" man nicht, das kann man nur auf einer Kurve im Zeitraffer erkennen. Bei 1s/100d werden seeeehr lange Folgen von 0,1,2 erscheinen.

: Bearbeitet durch User
#8089199
Lesenswert?

Jens M. schrieb:

Bei sekündlichem Log.

So stand es in den alten Schriften geschrieben.

Aber das Intervall ist auch zweitrangig. Aus einer wilden Mischung unterschiedlichster Faktoren über eine lange Zeit gesammelt, dann eine Regel abzuleiten ist, gelinde gesagt, utopisch.

Allein die Luftdruckmessung ist schon ein Spaß für sich. Vor allem an leicht windigen Tagen. Dagegen ist ein YoYo ein geradezu statisches Objekt.

#8089201
Lesenswert?

Norbert schrieb:

So stand es in den alten Schriften geschrieben.

Nuja. hier hat er "stündlich" genannt... Was ich etwas grob finde. Aber:

Norbert schrieb:

Allein die Luftdruckmessung ist schon ein Spaß für sich.

Ich nehme an das die Uhr in einem geschlossenen Gehäuse sitzt, abgeschirmt von Zug und Wind. Da drin könnte man schon den LD und die Temp. messen und halt lange mitteln.

OP #8089202
Lesenswert?

Um mal die Begriffe zu erläutern:

Eine "Zeitwaage" ist ein elektronisches Hilfsmittel, um eine Uhr zu regulieren. (Schneller/ langsamer einstellen). Ist zwar auch wichtig, aber nicht der primärere Sinn des Datenloggers.

Hier geht es darum, den Einfluss von Umweltbedingungen auf das mechanische Schwingsystem festzustellen. Dazu sind Messungen über Tage/Wochen/Monate mit wechselnden Bedingungen (Temperatur/ Luftdichte evtl. seismische Schwingungen) nötig.

Temperatur und Luftdichte ändern sich im geschlossenen Kasten nicht schnell. Eine stündliche Messung erscheint mir ausreichend.

Grüße Bernd

: Bearbeitet durch User
#8089205
Lesenswert?

Bernd F. schrieb:

Dazu sind Messungen über Tage/Wochen/Monate

Joa. Wie gesagt, Pendeldauer für einen beliebigen laufenden Zeitraum über eine (zwangsläufig höher aufgelöste) Referenz ist kein Problem. Sofern man einen "guten" Takt hat, kann jeder popelige Controller mit wenig Code die Pendelzeit (und damit die Abweichung und die Änderung der Abweichung) samt Zusatzdaten leicht erfassen, das ist bei dir ja langsam und wenig.

Bernd F. schrieb:

seismische Schwingungen

Eieieiei, jetzt geht's los. Da ist ja schon alleine die Erfassung ein Teufelswerk. Erst recht das langfristige. Deine Uhr muss schwer und stabil sein, dann ist das kein Problem, und wenn es bei dir tatsächlich bebt ist das höhere Gewalt.

1s auf 100 Tage ist eh schon ambitioniert genug... Sehr. Extrem "sehr". Vakuumbasierte thermoisolierte Pendel schaffen m.W. untere zweistellige Millisekunden pro Tag an Genauigkeit, d.h. so gerade eben noch unter deiner "10 Sekunden wäre eine Katastrophe" in 100 Tagen.

#8089206
Lesenswert?

Jens M. schrieb:

Nuja. hier hat er "stündlich" genannt... Was ich etwas grob finde.

Stimmt, war wohl von den zwischenzeitlichen Millisekunden-Betrachtungen abgelenkt. Und stimmt, Stunde ist sicherlich zu grob.

Dennoch, was macht man mit den Messewerten? Versteht mich nicht falsch, ich mag das auch, zu messen und zu sammeln. Aber ich sehe trotzdem nicht, wie man aus den Messungen eine klare Regel ableiten könnte. Und selbst wenn … wozu? Die Pendellänge wird einmal eingestellt und das war's dann.

Da aber das Pendel – wenn ich das in dem anderen Artikel richtig gelesen habe – sowieso elektromagnetisch angetrieben wird, muss man doch nur die Intensität (eingetragene Energie) geringstmöglich anpassen. Weitere Ausschläge, langsamer laufende Uhr. Und wir reden hier wohl eher von einem Delta Bogenminuten als von vollen Graden. Das kann ein GPS-stabilisierter µC en-passant erledigen.

Anders herum, wenn die Auslenkung nicht stets präzise gleich bleibt, muss man sich um den Rest kaum kümmern.

#8089212
Lesenswert?

Warum willst Du loggen? Brauchst Du die Daten über Temperatur oder Luftdruck? Wie wird reguliert oder justiert? Ein einfacher Abgleich des Stundenzeigers mit Normalzeit und eine entsprechender + oder - Impuls zum Regulieren sollten das Problem lösen. Alles Andere ist Wissenschaft und Ingenieurwesen.

OP #8089214
Lesenswert?

Das erste wird sein, meine Temperaturkompensation (Alurohr) soweit anzupassen, dass hier keine Änderungen des Systems mehr stattfinden.

Dazu eine Erklärung: Die Ausdehnungswerte von Stahl, Messing, Invar und Glaskeramik sind in den Datenblättern immer mit einem +/- versehen. Da kannst du viel rechnen, aber....

Das genauste Messmittel, um auf ein möglichst perfektes Ergebnis zu kommen, ist das Pendel selbst.

Andererseits ist eine perfekte Temperaturkompensation gar nicht erstrebens wert. Steigt die Luftdichte ist es meistens wärmer (Hochdruckgebiet), dieser Effekt lässt sich ausnutzen, um die Bremsung durch gestiegene Luft- dichte zu kompensieren.

Grüße Bernd

: Bearbeitet durch User
OP #8089225
Lesenswert?

Stephan S. schrieb:

Das hatten wir doch schon einmal Beitrag "Datenlogger Pendeluhr"

Stephan,

da kam nichts raus (für mich). Deswegen werde ich das selbstbauen. Möglichst reduziert, auf meine Bedürfnisse zugeschnitten. (Siehe Anfangsbeitrag).

Obwohl ich keine Ahnung von Programmierung habe, Versuch macht klug. Die Brocken sind günstig zu bekommen, im schlimmsten Fall wird es nichts.

Wenn ich das aber nicht mache, bekomme ich nie den Datenlogger.

Grüße Bernd

OP #8089236
Lesenswert?

Um jetzt loszulegen, bräuchte ich sowas wie eine Einkaufsliste. Welche Basis? (Die Anforderungen sollten klar sein).

Als absolututer Laie auf dem Gebiet, fällt es mir schwer, passende Komponenten auszuwählen.

Ansonsten: Einfach mal machen.

Grüße Bernd

: Bearbeitet durch User
#8089257
Lesenswert?

Jens M. schrieb:

So'n doofer Arduino-Logger mit SD-Sockel "kost nix". Hat aber einen großen Nachteil: der braucht einen Puffer, denn entweder schreibt er ständig neu und die Karte ist bald kaputt, oder er schreibt genau dann wenn du die Karte gerade leer machen willst und in der Hand hast.

Ich habe Aufbauten mit ArduinoNano und SD-Karte unter Verwendung der "SD.h" aus der ArduinoIDE 1.74 und 1.89. Die Häufigkeit ist überschaubar, ich schreibe alle 10..15 Sekunden, erfolgreich geschrieben oder Karte fehlt kann man erkennen.

Ich hatte heftig Ärger, dass das Schreiben nach einer Weile fehlschlägt, wenn die SD-Karte groß ist, mit 1 oder 2 GB läuft das stabil. Ich konnte über das Forum einige µSD mit 2 GB kaufen, und zwar robuste Modelle von xMore und ATP. Ich habe damit keine Not, das weiter zu beforschen oder zu hoffen, dass neuere SD.h das bereinigt haben.

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