Inhaltsverzeichnis:

Arduino Pro-Mini-Datenlogger - Gunook
Arduino Pro-Mini-Datenlogger - Gunook

Video: Arduino Pro-Mini-Datenlogger - Gunook

Video: Arduino Pro-Mini-Datenlogger - Gunook
Video: Прошивка Arduino Pro Mini с помощью старого телефонного дата кабеля. 2024, Juli
Anonim
Arduino Pro-mini Datenlogger
Arduino Pro-mini Datenlogger

Bauanleitung für den Open-Source-Pro-Mini-Arduino-Datenlogger

Haftungsausschluss: Das folgende Design und der folgende Code können kostenlos heruntergeladen und verwendet werden, werden jedoch ohne jegliche Garantie oder Gewährleistung geliefert.

Ich muss zunächst den talentierten Menschen danken und sie fördern, die die Idee zu diesem Datenlogger inspiriert und zu dem verwendeten Code und den verwendeten Sensoren beigetragen haben. Erstens kam die Idee für den Datenlogger von dem sehr gut gestalteten und gut erklärten (leider ist unser Tutorial nicht so gut) Datenlogger von Edward Mallon: https://thecavepearlproject.org/2017/06/19/ arduin…

Zweitens wurden die hier verwendeten Open-Source-Bodenfeuchtigkeitssensoren sowie der Code/die Bibliothek, um sie zu betreiben, von Catnip Electronics entworfen und gebaut. Dies sind hochwertige Sensoren und sehr robust. Informationen darüber, wo Sie sie kaufen und den Code zum Ausführen erhalten (danke Ingo Fischer), finden Sie unten.

Schritt 1: Benötigte Materialien, Werkzeuge, Ausrüstung

Benötigte Materialien, Werkzeuge, Ausrüstung
Benötigte Materialien, Werkzeuge, Ausrüstung

Pro-Mini-Arduino-Board. Für diese Anwendung verwenden wir Open-Source (wie alle unsere Teile) in China hergestellte Pro-Mini-Klone (5 V, 16 MHz, ATmega 326-Mikroprozessor) (Abb. 1a). Diese Boards können bei Aliexpress, Ebay und ähnlichen Websites für weniger als 2 US-Dollar erworben werden. Es können jedoch auch andere Boards verwendet werden (beachten Sie die Spannungsanforderungen der benötigten Sensoren sowie die Anforderungen an den Programmspeicher).

SD-Karte und Echtzeituhr (RTC) Logging-Modul, herausgegeben von Deek-Robot (ID: 8122) (Abb. 1b). Dieses Modul enthält eine DS13072 RTC und einen Micro-SD-Kartenleser. Diese Boards kosten weniger als 2 US-Dollar und sind sehr robust.

Arduino nano (ja - "nano") Schraubklemmenadapter, auch Deek-Robot, der für weniger als 2 US-Dollar bei Aliexpress oder ähnlich erworben werden kann (Abb. 1c). Wie Sie sehen können, lieben wir Aliexpress einfach.

22-Gauge-Vollkern-isolierter Draht (Abb. 1d).

Datenloggerbox (Abb. 1e). Wir verwenden Schachteln in „Forschungsqualität“, aber billige Plastikwaren funktionieren in den meisten Situationen gut.

Batteriefach für 4 AA NiMh-Batterien (Abb. 1f). Diese können bei Aliexpress für ca. 0,20 USD pro Stück (ja – 20 Cent). Verschwenden Sie Ihr Geld nicht mit teureren Batteriegehäusen.

6V, ca. 1W Solarpanel. Kann bei Aliexpress für weniger als 2 US-Dollar erworben werden.

Lötkolben, Lot und Flussmittel vom Pastentyp.

Heißklebepistole.

Schritt 2: Bauanleitung

Bauanleitung
Bauanleitung

Bauzeit: ca. 30 bis 60 min.

Bereiten Sie den Nano-Anschlussadapter zum Löten vor.

Für diese Demonstration bereiten wir den Nano-Schraubklemmenadapter vor, um den Anschluss von drei I2C-Bodenfeuchtesensoren zu erleichtern. Mit etwas Kreativität könnten die Schraubklemmen jedoch auf unterschiedliche Weise vorbereitet werden, um andere Geräte zu erleichtern. Wenn Sie nicht wissen, was I2C ist, besuchen Sie die folgenden Websites:

howtomechatronics.com/tutorials/arduino/ho…

www.arduino.cc/en/Reference/Wire

Die Idee, Nano-Schraubadapter zu verwenden, wurde dem wunderbaren Datenlogger-Design von Edward Mallon entnommen:

thecavepearlproject.org/2017/06/19/arduino…

Schneiden Sie die Leiterbahnen auf der Rückseite der Schraubklemme zwischen den großen und kleinen Stiften an den Positionen 3, 5, 9, 10 und 11 (von der Oberseite der Klemme aus gezählt) ab (Abb. 2). Diese Leiterbahnen entsprechen den Beschriftungen „RST“, „A7“, „A3“, „A2“& „A1“auf der Schraubklemme. Das Schneiden der Spuren ist viel einfacher, wenn Sie ein Werkzeug vom Typ "Dremel" haben, aber wenn Sie dies nicht tun, funktioniert ein kleines Messer problemlos. Schneide dich nicht! Beachten Sie, dass die Beschriftungen an der Schraubklemme und am pro-mini nicht alle gleich sind (beim nano und pro-mini befinden sich einige Pins an unterschiedlichen Stellen). Dies ist eine der Unannehmlichkeiten dieses Designs, aber es ist einfach genug, die Klemmenleiste, wenn Sie fertig sind, neu zu beschriften, wenn Sie möchten.

Kratzen Sie vorsichtig (mit einem Dremel oder einem kleinen Messer) die dünne Epoxidschicht direkt neben den großen Stiften 9, 10 und 11 ab (beschriftet mit „A3“, „A2“, „A1“auf dem Nano-Terminal) (Abb. 2). Die freiliegende Kupferbeschichtung unter dem Epoxid ist mit dem Arduino Pro-Mini-Board geerdet. Diesen freiliegenden Abschnitt werden wir später an die angrenzenden Pins löten und so drei geerdete Schraubklemmen bereitstellen.

Schritt 3: Bauanleitung

Bauanleitung
Bauanleitung

Schneiden Sie acht 8 cm lange Längen isolierten 22-Gauge-Drahts ab und entfernen Sie ca. 5 mm der Isolierung von einem Ende und 3 mm vom anderen Ende. Wir empfehlen die Verwendung von Vollkerndraht.

Nehmen Sie vier dieser Drähte, biegen Sie ein Ende um 90 Grad (das Ende mit 5 mm oder freiliegendem Draht) und löten Sie *quer* (d. h. verbinden Sie alle Stifte mit reichlich Lot und Flussmittel) an den folgenden Punkten:

Draht 1: große Pins 3, 4 und 5 (beschriftet mit 'RST', '5V', 'A7' am Nano-Terminal). Diese drei Schraubklemmen werden wir in drei VCC-Klemmen umbauen (Abb. 3).

Schritt 4: Bauanleitung

Bauanleitung
Bauanleitung

Draht 2: große Pins 9, 10 und 11 (beschriftet mit 'A3', 'A2', 'A1' auf dem Nanoterminal) sowie die freiliegende Kupferbeschichtung, die zuvor freigelegt wurde. Verwenden Sie viel Lot. Machen Sie sich keine Sorgen, wenn es unordentlich aussieht. Wir werden diese drei Schraubklemmen in drei Erdungsklemmen (-) umwandeln (Abb. 4).

Schritt 5: Bauanleitung

Bauanleitung
Bauanleitung

Draht 3: große Stifte 13, 14 und 15 (beschriftet mit 'REF', '3V3', 'D13' am Nano-Terminal). Diese drei Schraubklemmen werden wir in drei A5 SCL-Klemmen für die I2C-Kommunikation umbauen (Abb. 5).

Schritt 6: Bauanleitung

Bauanleitung
Bauanleitung

Draht 4: große Stifte 28, 29 und 30 (beschriftet mit 'D10', 'D11', 'D12' auf dem Nano-Terminal). Diese drei Schraubklemmen werden wir in drei A4-SDA-Klemmen für die I2C-Kommunikation umbauen (Abb. 6).

Schritt 7: Bauanleitung

Bauanleitung
Bauanleitung

Löten Sie einen Draht an jeden der kleinen (ich sage noch einmal – klein) Stifte 9, 10 und 11 (beschriftet mit „A3“, „A2“, „A1“auf dem Nanoanschluss) (Abb. 7).

Schritt 8: Bauanleitung

Bauanleitung
Bauanleitung

Lot

den verbleibenden Draht an den großen Stift 22 (beschriftet mit 'D4' auf dem Nano-Terminal) (Abb. 8).

Schritt 9: Bauanleitung

Bauanleitung
Bauanleitung

Löten Sie das freie Ende jedes Drahtes in die entsprechenden Stiftlöcher auf der Deek-Robot-Datenlogger-Abschirmung (Abb. 9):

großer Stift 'RST+5V+A7' an das 5V-Stiftloch

großer Stift 'A3+A2+A1' zum GND-Stiftloch

kleiner Stift 'A3' zum SCK-Stiftloch

kleiner Stift 'A2' zum MISO-Stiftloch

kleiner Stift 'A1' zum MOSI-Stiftloch

großer Stift 'REF+3V3+D13' zum SCL-Stiftloch

großer Stift 'D10+D11+D12' zum SDA-Stiftloch

und großer Stift 'D4' zum CS-Stiftloch

Schritt 10: Bauanleitung

Bauanleitung
Bauanleitung

Bitte beachten Sie, dass wir die Nano-Etiketten hier nur zum leichteren Anschließen bereitstellen. Diese Etiketten stimmen nicht mit den Pins auf der Pro-Mini-Platine überein, wenn sie in die Schraubklemme eingesteckt ist.

Löten Sie zwei 6 cm lange Drähte in die A4 und A5 Pinholes von der Unterseite des Pro-Mini Boards (Abb. 10).

Schritt 11: Bauanleitung

Bauanleitung
Bauanleitung

Lötstifte an die Pro-Mini-Platine anlöten und in die fertige Schraubklemme stecken. Vergessen Sie nicht, die Drähte A5 und A4 in die Anschlüsse D12 (A4) und D13 (A5) auf der Nanoplatine einzustecken. Denken Sie immer daran, dass die Pins auf den Etiketten von Arduino und Schraubklemmen nicht genau ausgerichtet sind (Pro-Mini- und Nano-Boards haben unterschiedliche Pin-Anordnungen).

Legen Sie eine CR 1220-Batterie und eine Micro-SD-Karte in die Logger-Platine ein. Wir verwenden SD-Karten mit einer Kapazität von weniger als 15 GB, da wir mit Karten mit größerer Kapazität Probleme hatten. Wir verwenden die Karten auf FAT32 formatieren.

Zum Schluss alle Lötstellen abdecken und alle Drähte mit Heißkleber am Klemmbrett befestigen.

Das Board ist jetzt einsatzbereit. Das fertige Board sollte nun so aussehen: Abb. 11.

Schritt 12: Einrichten des Datenloggers für den Feldeinsatz

Einrichten des Datenloggers für den Feldeinsatz
Einrichten des Datenloggers für den Feldeinsatz

Um ein Umkippen Ihres Datenloggers in der Datenloggerbox zu verhindern und einen einfachen Zugang zu den Kommunikationspins zu ermöglichen, empfehlen wir eine stabilisierende Plattform. Außerdem hält die Plattform die Elektronik bei Überschwemmungen mindestens einige Zentimeter vom Boden der Box entfernt. Wir verwenden 1,5 mm Acrylglas und verbinden es mit 4 mm Schrauben, Muttern und Unterlegscheiben mit dem Datenlogger (Abb. 12).

Schritt 13:

Bild
Bild

Wir verwenden Open-Source-I2C-Kapazitäts-Bodenfeuchtigkeitssensoren. Wir kaufen sie von Catnip Electronics (Website unten). Sie können bei Tindie erworben werden und kosten ca. 9 US-Dollar für das Standardmodell und ca. 22 US-Dollar für das robuste Modell. Wir haben die robuste Version in Feldversuchen verwendet. Sie sind sehr robust und bieten eine ähnliche Leistung wie viel teurere kommerzielle Alternativen (wir werden niemanden auf die Front Street stellen, aber Sie kennen wahrscheinlich die üblichen Verdächtigen).

Catnip Electronics I2C-Sensor, der in diesem Tutorial vorgestellt wird:

hier kaufen:

Arduino-Bibliothek:

Arduino-Bibliothek auf Github:

Befestigen Sie das gelbe Kabel vom I2C-Sensor an einer der A5-Schraubklemmen. Schließen Sie das grüne Kabel vom I2C-Sensor an einen der A4-Anschlüsse an. Rote und schwarze Drähte vom Sensor gehen zu VCC- bzw. Masseanschlüssen.

Legen Sie vier geladene NiMh-Akkus in das Akkufach. Verbinden Sie das rote (+) Kabel mit dem RAW-Pin des Datenloggers (d. h. dem RAW-Pin auf der Pro-Mini-Platine) (siehe jedoch den Abschnitt „Energiesparen“weiter unten). Verbinden Sie das schwarze (-) Kabel mit einem der Erdungsstifte des Datenloggers.

Für den langfristigen Feldeinsatz schließen Sie ein 6V 1W Solarpanel an den Logger an. Das Solarpanel wird verwendet, um den Datenlogger zu betreiben und den Akku während des Tages aufzuladen, und funktioniert auch bei bewölktem Himmel (obwohl Schnee ein Problem ist).

Löten Sie zuerst eine ~ 2A Schottky-Diode auf den Pluspol des Solarpanels. Dadurch wird verhindert, dass Strom in das Solarpanel zurückfließt, wenn keine Sonneneinstrahlung vorhanden ist. Vergessen Sie nicht, dies zu tun, sonst haben Sie in kürzester Zeit leere Batterien.

Verbinden Sie den (+)-Anschluss des Solarpanels (dh die Diode) mit dem RAW-Pin des Loggers (dh den RAW-Pin des Pro-Mini) und den (-)-Anschluss des Solarpanels mit einer der Masse Klemmen am Logger.

Dieses Setup ermöglicht es dem eingebauten Spannungsregler im Pro-Mini Board, die Spannung zu regulieren, die sowohl vom Solarpanel als auch vom Akkupack kommt. Nun… ich muss sagen, dass dies kein ideales Setup zum Laden von NiMh-Akkus ist (selbst unter perfekten Bedingungen schwierig). Die von uns verwendeten Solarmodule liefern jedoch bei voller Sonneneinstrahlung ca. 150mA, was ca. 0,06 C (C = die Kapazität des Akkupacks) entspricht, was sich für uns als einfache, sichere und zuverlässige Lademethode erwiesen hat für unsere Logger. Wir haben sie bis zu einem Jahr in Colorado auf diese Weise im Feld laufen lassen. Bitte beachten Sie jedoch den Haftungsausschluss – unsere Logger werden ohne jegliche Garantie oder Gewährleistung geliefert. Jedes Mal, wenn Sie Batterien oder Sonnenkollektoren im Feld verwenden, besteht die Gefahr, dass ein Brand entsteht. Vorsichtig sein. Verwenden Sie dieses Design auf eigene Gefahr!

Sichern Sie Datenlogger und Akkupack in einer wetterfesten Box (Abb. 13).

Schritt 14: Energieeinsparung

Wir deaktivieren oft die Power-LEDs sowohl der Pro-Mini- als auch der Datenlogger-Platinen. Die Spuren zu diesen LEDs können mit einer Rasierklinge vorsichtig geschnitten werden (siehe Link unten). Jede LED verbraucht ca. 2,5 mA Strom bei 5 V (Link unten). Für viele Anwendungen ist diese Verlustleistung jedoch vernachlässigbar und der Forscher kann die Power-LEDs einfach so lassen, wie sie sind.

www.instructables.com/id/Arduino-low-Proje…

Wir betreiben auch die Bibliothek 'LowPower.h' (von 'rocketscream'; Link unten), die sehr einfach zu bedienen ist und den Stromverbrauch zwischen den Protokollierungsintervallen erheblich reduziert.

github.com/rocketscream/Low-Power

Nach dem Entfernen der Power-LEDs vom pro-mini und der Datenprotokollierungsplatine und dem Ausführen der LowPower.h-Bibliothek (siehe 'Code' unten) verbraucht der Logger ca. 1 mA Strom bei 5 V im Schlaf. Bei gleichzeitigem Betrieb von drei I2C-Sensoren verbraucht der Logger im Schlafmodus (zwischen den Abtastiterationen) ca. 4,5 mA bei 5 V und ca. 80 mA bei der Abtastung. Da die Abtastung jedoch sehr schnell und recht selten erfolgt, trägt die Stromaufnahme von 80 mA nicht sinnvoll zum Batterieverbrauch bei.

Wenn Sie keine Solarmodule verwenden, können Sie mehr Strom sparen, indem Sie den (+) Batteriepol direkt an den VCC-Pin des Loggers anschließen. Wenn Sie jedoch direkt an VCC und nicht an den RAW-Pin anschließen, wird der integrierte Spannungsregler vermieden, und der Strom zu den Sensoren wird nicht annähernd so konstant sein, wie er wäre, wenn er durch den Regler geleitet würde. Zum Beispiel nimmt die Spannung im Laufe von Tagen und Wochen ab, wenn die Batterie entladen wird, und dies führt in vielen Fällen zu erheblichen Schwankungen der Sensorwerte (je nachdem, welche Sensoren Sie verwenden). Schließen Sie kein Solarpanel direkt an VCC an.

Schritt 15: Code

Wir fügen zwei Skizzen zum Betrieb des Datenloggers mit drei I2C-Bodenfeuchtesensoren bei. Die erste Skizze 'logger_sketch' wird alle 30 Minuten von jedem Sensor abtasten und Kapazitäts- und Temperaturdaten auf der SD-Karte protokollieren (kann jedoch vom Benutzer leicht geändert werden). Die zweite Skizze 'ChangeSoilMoistureSensorI2CAddress' ermöglicht es dem Benutzer, jedem der Sensoren unterschiedliche I2C-Adressen zuzuweisen, damit sie gleichzeitig vom Datenlogger verwendet werden können. Adressen in 'logger_sketch' können in den Zeilen 25, 26 und 27 geändert werden. Die Bibliotheken, die zum Betrieb des Sensors benötigt werden, finden Sie auf Github.

Empfohlen: