beelogger

Add-on: Zwei oder mehr HX711 an einem Arduino

Speziell der beelogger-Solar bietet durch seinen flexiblen Aufbau mit optionalen Shields die Möglichkeit, mehr als einen HX711 einzusetzen. Prinzipiell kann aber auch jedes andere System mit zwei oder mehr HX711 ausgestattet werden.

 Als ‘Add-on‘ werden optionale Sensoren, Module oder sonstige Hardware sowie Programmcodes und Anleitungen vorgestellt, die nicht Teil der Standard-Entwicklung des Arduino Datenlogger für Imker sind. Damit ist es möglich, viele zusätzliche und zum Teil auch spezielle Funktionen für den beelogger zu unterstützen, die einfach integriert werden können.

Funktionsweise und Beschaltung

Die Beschaltung eines HX711 erfolgt neben der Stromversorgung über nur 2 Pins: ‘SCK’ und ‘DATA’. Die Datenleitung ‘DATA’ stellt hierbei die digitalen Messwerte zur Verfügung. Der Takt-Eingang ‘SCK’ ermöglicht über spezielle Impulsfolgen die Steuerung des HX711. So kann die Verstärkung eingestellt, die Ausgabe der Daten über den Daten-Pin aktiviert oder der HX711 in den Power-Pown-Modus versetzt werden. Die Power-Down-Funktion der Library macht hierbei nichts anderes, als den Pin an ‘SCK’ auf ‘HIGH’ zu setzen, wodurch laut Datenblatt der HX711 in den Power-Down-Modus versetzt wird.

Bei der Beschaltung zusätzlicher HX711 ist darauf zu achten, dass freie Pins für den HX711 gewählt werden. Beispielsweise stehen die Pins des nRF24L01 zur Verfügung, wenn die Anbindung über LAN oder GSM genutzt wird oder eben anders herum. Eine Übersicht hierzu ist unter Pinbelegung zu finden.

Das folgende Beispiel bezieht sich auf die Verwendung von zwei HX711.

Arduino Uno, Nano, usw. HX711 Nr. 1
5V VCC
A0 CLK / SCK
A1 DT / DATA
GND GND

 

Arduino Uno, Nano, usw. HX711 Nr. 2
5V VCC
D7 CLK / SCK
D6 DT / DATA
GND GND

Libraries

<HX711.h> – https://github.com/bogde/HX711

Programmcode

Bei diesem Programmcode kommen zwei HX711 zum Einsatz. Er kann bis zu drei Waagen an den zwei HX711 ansprechen. Es ist Kalibrierung und Testmessung möglich. Für Testmessungen kann die Kalibrierung übersprungen werden und eine Messung anhand bekannter Kalibrierwerte ausgeführt werden.

Um zwei HX711 nutzen zu können, muss prinzipiell für jeden dieser A/D-Wandler eine eigene Instanz mit separatem SCK-Pin erstellt werden.

Die HX711-Library von bodge erlaubt jedoch das Umkonfigurieren im Betrieb, so dass nicht zwei unabhängige Instanzen notwendig sind.
Die eigentliche Ansteuerung des HX711 kann damit in einer Funktion erfolgen, so dass nicht unnötig Speicherplatz belegt wird. Die notwendigen Variablen sind für einen einfachen Aufruf in Arrays organisiert worden.

Die Reihenfolge der Waagen ist:
Waage 1 : HX711 Nr. 1 Kanal A
Waage 2 : HX711 Nr. 1 Kanal B
Waage 3 : HX711 Nr. 2 Kanal A

Für jedes System aus Wägezelle und HX711 kann mt diesem Sketch eine separate Kalibrierung durchgeführt werden. Alle Waagen können gleichzeitig angeschlossen sein.
Das Programm erlaubt es eine Waage für die Kalibrierung anzuwählen oder zu überspringen.

Nachfolgender Programmcode soll einem einfachen und anschaulichen Test der beiden HX711 dienen. Auf Prüf- und Korrekturmassnahmen, wie beim regulären Test-Programmcode, wurde daher verzichtet.

Hier der Programmcode auszugsweise:

 

Ausgabe des seriellen Monitors (9600 baud):

Es wird empfohlen, beim Testwiegen nach dem Kalibrieren die Wägezellen mit unterschiedlichen Gewichten zu beschweren.

Programmcode downloaden:

Download