In dem folgenden Versuch konstruieren wir einfache Küchenwaage, mit der Gewichte bis zu 1 kg gewogen
werden können. Der Hauptakteur der Schaltung ist ein aus Aluminium bestehender Gewichtssensor, an dem spezielle
Dehnungsmessstreifen vormontiert sind. Im Handel sind Sensoren für unterschiedliche Gewichtsbereiche erhältlich. Die
Signale des Sensors werden mit dem HX711-Modul ausgewertet und zur weiteren Bearbeitung digital zur Verfügung gestellt.
Die Modulsignale wiederum werden von Arduino Nano ausgelesen und im Programm in konkrete Gewichtswerte umgewandelt.
Das Gewicht des gerade gewogenen Gegenstandes wird mit einer 7-Segmentanzeige sichtbar gemacht. Eine Kombination aus
einem Taster, Relais und Transistor übernimmt die Aufgabe der automatischen Abschaltung, die dann ins Spiel kommt,
wenn die Waage über eine vorbestimmte Zeit nicht benutzt wurde.
Das Messprinzip
Gewichtssensor
Bevor die Messeinrichtung in Betrieb genommen werden kann, sind auch bei provisorischer Ausführung einige
Vorbereitungsarbeiten notwendig. Es wird eine feste und stabile Unterlage benötigt, an der der Sensor montiert werden kann.
Anschließend wird eine Waagschale gebraucht, auf der diverse Gegenstände, die gewogen werden sollen, aufgestellt werden.
Beide Teile werden mit dem Sensor fest verbunden.
Das Messprinzip selbst ist einfach. Bei einer Belastung des Sensors ändern durch Dehnung oder Stauung die an ihm
angebrachten Messstreifen ihren Widerstand. Die Widerstandsänderung ist dabei zum Dehnungs- oder Stauungsgrad und damit
zum ausgeübten Druck direkt proportional. Durch entsprechende Verschaltung dieser Widerstände kann der an ihnen entstehende
Spannungsabfall gemessen und mit einem Analog-Digital-Wandler digitalisiert werden. Diese Aufgabe übernimmt in dem Fall
der Chip HX711. Zusammen mit der dazugehörigen Umgebungselektronik bildet er ein Modul, an das der Sensor direkt
angeschlossen wird. Die digitalen Signale werden dann zum Arduino weitergeleitet.
Modul mit HX711
Schaltplan
Schaltplan
In dem ausgeschalteten Zustand, da das Relais nicht eingeschaltet ist, verbraucht die Schaltung keinen Strom.
Alle Komponenten sind spannungsfrei. Betätigt man den Taster S1, werden Arduino und die Spule von K1 mit Strom versorgt.
Das Relais schaltet noch nicht, da der Transistor T1 noch nicht angesteuert wurde. Arduino läuft hoch. Sobald das Programm
gestartet wird, werden die Ausgänge D2 und D3 gesetzt. Der Transistor T1 wird leitend und das Relais zieht an. Damit geht
das Relais in Selbsthaltung, die von Arduino bestimmt wird. Die blaue Leuchtdiode geht ebenfalls an und signalisiert, dass
der Taster losgelassen werden kann. Arduino wird jetzt über den Schließer-Kontakt des Relais K1 mit Spannung versorgt.
Die anderen Komponenten, der Gewichtssensor mit seinem HX711-Modul und die 7-Segmentanzeige mit dem TM1637 Treiber,
werden mit 5V – Spannung von Arduino versorgt. Unsere Küchenwaage ist einsatzbereit.
Komplett aufgebaute Testschaltung könnte dann wie folgt aussehen:
Das Programm verwendet zwei Bibliotheken, die vorinstalliert werden müssen. Für die Anzeige mit dem Treiber
TM1637 ist die Bibliothek TM1637Display.h zuständig. Die Auswertung der Signale von dem HX711-Modul übernimmt die Bibliothek
HX711_ADC.h. Anzumerken ist, dass man sich auch für andere Bibliotheken entscheiden kann, es stehen mehrere zur Verfügung.
Die Installation kann mit dem Bibliotheksverwalter durchgeführt werden:
Installation der Bibliothek HX711_ADC.h
Vor der Nutzung der Waage muss sie kalibriert werden. Als Unterstützung steht in der Bibliothek (Beispiele)
der Sketch Calibration.ino zur Verfügung. Mithilfe des Programms kann die Kalibrierung ziemlich schnell und reibungslos
durchgeführt werden. Dabei wird allerdings ein Gewicht mit einem bekannten Wert oder eine Waage benötigt. Die
Vorgehensweise ist in dem Beispiel beschrieben. Die Gewichtsangaben und Ausgaben erfolgen in Gramm.
Nachdem die Kalibrierung erfolgreich durchgeführt wurde, kann man sich dem Programm widmen. Sobald Arduino
hochgefahren ist und das Programm gestartet wurde (hierzu muss der Taster S1 betätigt werden), werden die Ausgänge D2 und
D3 auf HIGH gesetzt. Dank dessen wird das Relais K1 eingeschaltet und geht in Selbsthaltung. Der Zustand wird mit der
blauen Leuchtdiode LED1 zusätzlich visuell signalisiert. In Abständen von 100 ms erfolgt dann permanent die Abfrage des
aktuellen Gewichtswertes, der anschließend auf der 7-Segmentanzeige sichtbar wird.
Werden über einen längeren Zeitraum (hier 30 Sek) keine Messungen durchgeführt, setzt Arduino den Ausgang D3 auf LOW.
Damit wird der Transistor T1 gesperrt und das Relais K1 fällt ab. Die Spannungsversorgung, die über den Schließer-Kontakt
des Relais K1 Arduino versorgte, wird unterbrochen. Die gesamte Gerätschaft geht aus. Für den Neustart muss der Taster S1
wieder betätigt werden. Listing:
// ***************************************************************************************
// Küchenwaage mit automatischer Abschaltung
// Gewichtssensor mit HX711 (Modul), 7-Segmentanzeige mit TM1637 (Modul)
// Arduino Nano, IDE 1.8.13
// TM1637Display.h V1.2.0
// HX711_ADC.h V1.2.8
// ***************************************************************************************