Ich habe mir so eine Wägezelle 1kg mit einem HX711 gekauft
https://de.aliexpress.com/item/1005001537354199.html und beobachte, dass
die Werte ziemlich driften. Woran kann das liegen?
bild2.jpg: Die X-Achse sind Sekunden und die Y-Achse sind die RAW-Werte
vom HX711 minus eines Offsets, den ich am Anfang gemessen habe.
Dirk F. schrieb:> Erwärmung der DMS ?>> Ist eine Vollbrücke mit 4 DMS verschaltet ?
Höchstwahrscheinlich ja. Die billigen Dinger sind nicht wirklich
temperaturkompensiert. Temperaturkompensation ist auch richtig teuer, da
sie indiviuell durchgeführt werden muß.
Jörg
Die angegebene Messzelle hat eine Vollbrücke.
Ich werde mal eine weitere Messreihe fahren, in der nur 1x / Minute
gemessen wird und eine weitere Reihe, in der das hx711-Modul vor der
Messung mit hx711.power_up() eingeschaltet wird und nach der Messung mit
hx711.power_down() ausgeschaltet.
Ich werde dann wieder berichten.
L.S. schrieb:> Woran kann das liegen?
Daran, dass du mal wieder das billigste gekauft hast, was es gibt.
Eine Personenwaage mit dem Ding wird genullt direkt bevor man sie
belastet, und zeigt den Wert an der nach 5 Sekunden steht.
Und es interessiert dabei keinen Chinesen ob du 5kg mehr oder weniger
wiegst, eine Kalibrierung ist ja meist auch nicht vorgesehen.
ABER: du könntest wenigstens versuchen, die übelsten Fehler zu umgehen.
Oft ist der Widerstand auf der Platine die zum feedback des
Spannungsregler führt so fehldimensioniert, dass gar nicht auf 3.3V
geregelt wird sondern die Versorgungsspannung durchgereicht wird. Setz
einen Widerstand ein, der sogar auf 3.6V regelt, und miss nach, ob deine
Eingänge auch zwischen 1.5V und 3.6-1.5V liegen.
Zum anderen ist E- auf Messaufnehmerseite oft auf der Platine nicht mit
GND des IC verbunden.
Achte drauf, dass sich die Platine nicht erwärmt. z.B. nur kurz
einschalten oder nur wenig Strom in die Messbrücke fliessen lassen.
Und die Arduino-Library bietet nicht ohne Grund Mittelwertbildung über
(10?) Messungen an. Nutzt du ja auch .
> Daran, dass du mal wieder das billigste gekauft hast, was es gibt.
Mal wieder? Du vermutest also, dass ich sonst noch billiges Zeug kaufe?
Eine Null-Funktion ist im Code in den Zeilen 12 und 13 enthalten.
Die Brücke läuft mit 3.29 Volt.
E- ist mit GND verbunden.
Dirk F. schrieb:> Normal wird durch eine Vollbrücke automatisch temperaturkompensiert.
Das sieht mein Messzellenhersteller anders und jagt jede Zelle durch den
Ofen. Kann man bei den billigen Dingern natürlich nicht erwarten.
L.S. schrieb:> Die sind aber über den Alu-Block thermisch verbunden, 4> Halbbrücken meistens nicht.
Dass die billigen (9.95) Personenwaagen nicht so genau sind, wen
wunderts (meine +4%). Immerhin deutlich genauer als meine alte
mechanische ADE, die je nach Untergrund (Teppich, Psrkett, Fliesen) um
bis zu 10kg unterschiedliches zeigte
Michael B. schrieb:> Immerhin deutlich genauer als meine alte> mechanische ADE, die je nach Untergrund (Teppich, Psrkett, Fliesen) um> bis zu 10kg unterschiedliches zeigte
Du machst Deinem Nick alle Ehre ..., interessiert hier ausser Dir selber
keinen
Michael B. schrieb:> 24 bit delta sigma Wägemessung HX711 (Achtung: Der Chip misst> temperaturabhängig und bei manchen Platinen ist GND nicht korrekt> verbunden!) Verdrahtung in Personenwaagen
Hm, der HX711 wird in diesem Forum wie eine heilige Kuh in Schutz
genommen. Aber diese beiden Punkte von Michael sind absolut richtig.
Der HX711 ist extrem einfach handhabbar und daher für erste
Berührungspunkte mit der Thematik sicher gut geeignet. Für ernsthafte
Messungen eignet er sich leider nicht.
Ich finde die Drift völlig in Ordnung: 1800 counts bezogen auf 2^24 sind
ca. 107ppm. Bei der typischen Anwendung (Küchenwaage) dauert eine Wägung
selten länger als 60s und vor jeder Wägung wird der Nullpunkt
kalibriert. Die Drift ist annähernd linear, so dass sich auf 60s eine
Abweichung von 0.4 ppm, also 0.4mg bei 1kg Messbereich ergibt. Das ist
für eine Küchenwaage mehr als ausreichend und vermutlich sind andere
Fehler (Steigungsfehler, Linearität) deutlich größer.
Der HX711 hat keine automatische Offsetkompensation ist für
Dauermessungen auch nicht gedacht.
Harald A. schrieb:> Der HX711 ist extrem einfach handhabbar und daher für erste> Berührungspunkte mit der Thematik sicher gut geeignet. Für ernsthafte> Messungen eignet er sich leider nicht.
Was wäre denn ein besser geeigneter ADC, der einfach zu handhaben ist
und für den es fertige Boards gibt?
Auf der Suche nach fertigen Boards finde ich z.B. ADS1220, ADS1232,
CS1237, CS1238.
Für den ADS1220 gibt es eine Library für Micropython, für den ADS1232
finde ich nur Libs in C und Arduino (beides ist sicher nicht mein Ding),
aber da könnte ich versuchen, etwas in Micropython zusammenzustricken.
ist ja SPI.
Auch für CS1237 und CS1238 (1 bzw. 2 Kanäle) gibt es Libraries für
Micropython (u.a von Roberthh, der auch eine Lib für den HX711
geschrieben hat).
Wie sind denn Eure Erfahrungen mit diesen 4 ADCs, die CS123x scheinen
typische China-ADCs zu sein (muss ja nicht schlecht sein), ADS12xx hat
zumindest den guten TI-Ruf. Ich bin da bisher unbeleckt.
L.S. schrieb:.
> Was wäre denn ein besser geeigneter ADC, der einfach zu handhaben ist> und für den es fertige Boards gibt?
Und dann sollen sie ja auch noch eine fertige Lib haben… da könnte es
tatsächlich eng werden.
Ansonsten sind TI und Cirrus Logic allesamt sehr gute Anlaufpunkte. Zu
den Produkten von Chipsea wie CS1237 kann ich nichts sagen.
Ich werde mal alle 3 kaufen und testen, die ADS12xx sehen interessant
aus (TI-massig gute Datenblätter) und ein CS1237 kostet ja fast nix (das
DB ist allerdings ein Graus, da werden z.B. in einem Bild Anschlüsse
genannt, die es gar nicht gibt - CAP). Dann kann ich ja berichten.
Jörg K. schrieb:> Die billigen Dinger sind nicht wirklich> temperaturkompensiert. Temperaturkompensation ist auch richtig teuer, da> sie indiviuell durchgeführt werden muß.
Solange man dem Biegebalken nicht mit einem Gasbrenner auf die Pelle
rückt, liegen alle vier DMS der Brücke auf dem selben Temperaturniveau.
Die Verhältnisse der Widerstände zueinander ändern sich durch den Tk
nicht.
Rainer W. schrieb:> Zum Tempern der Klebung oder zum Kalibrieren?
Die Messzelle allein bringt ja gar nichts, da müssen Daten gespeichert
werden damit man eine Referenz hat und die sind dann im Endeffekt
entweder in einem externen Speicher oder dem Mikrocontroller.
Wenn der Kleber nachgibt und die Messwerte verfälscht, da kann man auch
nichts machen, da braucht man halt eine ordentliche Messzelle.
Den Temperaturdrift kann man aber auch zu Hause messen und eine
Datenreihe anlegen. Wenn man den ganzen Aufwand nicht haben möchte, dann
gibt man eben etwas mehr Geld aus. Hat ja nicht jeder eine Klimakammer
bei sich rum zu stehen, nur für die eine Waage die man basteln möchte um
den automatischen Katzenfütterungsautomaten aufbauen zu können.
Rainer W. schrieb:> Solange man dem Biegebalken nicht mit einem Gasbrenner auf die Pelle> rückt, liegen alle vier DMS der Brücke auf dem selben Temperaturniveau.> Die Verhältnisse der Widerstände zueinander ändern sich durch den Tk> nicht.
Das Problem ist m.E. die Ausdehnung des Biegebalkens aufgrund der
Erwärmung.
So ganz bescheuert werden die Kollegen von HBM nicht sein...
https://www.hbm.com/de/6725/temperaturkompensation-bei-dehnungsmessstreifen-messungen/
Siehe Abs. 1.1 Materialausdehnung („scheinbare Dehnung“)
Grüßle,
Volker
Volker B. schrieb:> Das Problem ist m.E. die Ausdehnung des Biegebalkens aufgrund der> Erwärmung.
Bei einem Biegebalken sind die DMS gewöhnlich auf gegenüberliegenden
Seiten des Balkens angeordnet, so dass sich eine Längenänderung des
Balkens in 1. Ordnung auf beide Brückenzweige gleich auswirkt. Nur eine
Biegung, d.h. Dehnung der einen und Stauchung der anderen Seite des
Balkens ändert das Ungleichgewicht der Brücke.
Aber natürlich wäre eine Aussage von lagerschaden zu den
Messbedingungen, unter denen er die Driftkurve aufgenommen hat, schon
hilfreich.
Eine zeitlich so gleichmäßige, einseitige Längenänderung würde schon
einen gewissen Vorsatz bei dem Versuchsaufbau erfordern.
Rainer W. schrieb:> Bei einem Biegebalken sind die DMS gewöhnlich auf gegenüberliegenden> Seiten des Balkens angeordnet, so dass sich eine Längenänderung des> Balkens in 1. Ordnung auf beide Brückenzweige gleich auswirkt. Nur eine> Biegung, d.h. Dehnung der einen und Stauchung der anderen Seite des> Balkens ändert das Ungleichgewicht der Brücke.
Wenn in dieser Welt nur alles so wunderbar symmetrisch und ideal wäre!
Auch sind die üblichen Kraftaufnehmer keine homogenen Balken sondern
weisen Engstellen auf, die wie Gelenke wirken sollen -- und diese
komplexe Geometrie ist leider in der realen Welt Fertigungstoleranzen
unterworfen.
Ich würde deshalb eher HBM vertrauen als Deinen Hinweisen auf (ideale)
Symmetrien.
Grüßle,
Volker
Rainer W. schrieb:> Jörg K. schrieb:>> Das sieht mein Messzellenhersteller anders und jagt jede Zelle durch den>> Ofen.>> Zum Tempern der Klebung oder zum Kalibrieren?
Tempern zuerst, dann Aufnahme des Temperaturganges und damit der nötigen
Temperaturkompensation.
Volker B. schrieb:> Auch sind die üblichen Kraftaufnehmer keine homogenen Balken sondern> weisen Engstellen auf, die wie Gelenke wirken sollen
Und was hat das mit dem Temperaturgang zu tun? Ein DMS wird den
Alu-Balken nicht verbiegen und Alu dehnt sich unter Temperatur ziemlich
isotrop aus. Oder hast du schon einmal gesehen, dass sich so ein
Biegebalken bei Erwärmung wie ein Bimetallstreifen verbiegt ;-)
Ich habe Neuigkeiten zum HX711.
Gestern Abend und heute habe ich mir den Effekt von Temperaturänderungen
angesehen.
Erwärmt man die Vollbrücke im Alu-Block von 21 auf 35 °C mit dem Föhn,
tut sich nur wenig, die Änderung der RAW-Werte um 300 RAW-Punkte
entspricht weit weniger als 1 g (bei einer 1-kg-Wägezelle), das Rauschen
macht nur wenig aus (ca 30-40 RAW-Punkte). Bild 4.
Die Erwärmung der HX711-Platine auf 35 °C macht dagegen schon was aus:
das Rauschen steigt stark an, siehe Bild (etwa 40 bis etwa 70 Sekunden).
Es sind zwar nur RAW-Werte von ca 200-900 ppm (vom Endwert 2^24), aber
doch deutlich sichtbar. Bild 2.
Mein Fazit: Für den "Hausgebrauch" taugt das. Auch wenn eine
Bienenstock-Waage im Sommer auf 35°C erhitzt wird ist das m.E. tauglich,
notfalls baut man noch ein Thermo-Element ein und versorgt damit Kanal B
des HX711 bzw. man nimmt einen der zahllosen digitalen
Temperatursensoren.