beelogger

beelogger-Solar – Beschaltung & Aufbau

beelogger Solar Platine V3

Der beelogger-Solar ist ein hochspezialisiertes und äußerst energieeffizientes System zum Loggen der wichtigsten Parameter wie Gewicht, Temperatur, Luftfeuchte oder auch Lichtintensität. Um dieses vollausgestattete System kompakt wie effizient zu gestalten, war es notwenig, eine eigene Platine zu entwickeln. Das Ergebnis entschädigt hierbei für die Mühen des Aufbaus in jeder Hinsicht.

 

 

 

 

 

Löten von SMD-Bauteilen

beelogger Solar Layout V3Der beelogger-Solar wurde in SMD-Bauweise entwickelt. Aber keine Sorge, das Löten von SMD-Bauteilen ist keine Hexerei. Alle für den beelogger-Solar ausgewählten Bauteile können problemlos mit einem normalen Lötkolben gelötet werden. Als kleinen Einstieg in das Löten von SMD-Bauteilen finden sich eine Menge Videos auf Youtube. Zwei Videos sollen hier empfohlen werden:

Löten von SMD-Widerständen
https://www.youtube.com/watch?v=tvVbB6LRx-U

Löten von SMD-ICs
https://www.youtube.com/watch?v=5uiroWBkdFY

 

 

Feste Pinbelegung

Auf der Platine des beelogger-Solar sind einige Verbindungen zu Pins vom ATmega fest angelegt. Diese können somit nicht mehr frei verwendet werden, was grade beim Einsatz eigener Shields berücksichtigt werden muss.
Zur Versorgung eigener Shields oder Module mit geregelten 3,3V  können VCC und GND verwendet werden. Zu beachten ist hierbei ein maximaler Strom über den SpannungsreglerTPS62260 laut Datenblatt von 600mA für alle Sensoren und Module.

Eine vollständige Liste ist unter ‘Pinbelegung‘ zu finden.

ATmega Funktion
D2  Interrupt vom DS3231SN
D4 Steuerung der Stromversorgung für Sensoren und DS3231 (zur Programmierung) über TPS62260
A6 Messung der Batteriespannung
A7 Messung der Solarspannung

Individuelle Pinbelegung

Bei der Entwicklung der Platine des solar- bzw. akkubetriebenen Arduinos wurde großen Wert auf hohe Flexibilität für eigene Ideen und Umsetzungen gelegt. Darum sind die Datenpins für den Taster und die Sensoren DS18B20, DHT und HX711 über ein ‘Mini-Patchfeld’ mit dem jeweiligen Standard-Datenpin des ATmega für den Standard-Programmcode zu verbinden.

ATmega Funktion
D2 Taster
D3 DS18B20
D5 DHT 1
D6 DHT 2
A0 & A1 HX711

Die Bezeichnung des Standard-Datenpins ist jeweils neben dem zugehörigen Lötpad  auf der Platine aufgedruckt.Mit einer einfachen Brücke ist die Hardware-Konfiguration kompatibel zum Standard-Programmcode.

 beelogger Solar DHT    beelogger Solar DHT Patch

Durch dieses Platinendesign erhält man beispielsweise die Möglichkeit, die Platine selbst als Shield für den beelogger-Solar verwenden zu können. Der Datenpin der Schraubklemme kann in diesem Fall über das Patchfeld mit einem nicht verwendeten Pin der äußeren Pinleiste mit dem ATmega verbunden werden.

 

Aufbau

DS3231 (Real Time Clock – Echtzeituhr)

Die RTC dient dazu, in einem individuell eingestellten Intervall den ATmega aus dem Sleep-Mode zu ‘wecken’, um Messungen vorzunehmen und diese Daten zu versenden. Denkbar wäre auch ein Einsatz in Verbindung mit einem Modul für SD-Karten als Echtzeituhr zum Loggen der Offlinedaten.
DS3231 DS3231SN SOIC-16, Serial, I2C
R-C1 Keramikkondensator, 0,1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
CR1220 Batteriehalter für CR1220

beelogger Solar DS3231 

Eine Batterie versorgt die RTC DS3231 während der Schlafphase des Systems mit Strom, bis der ATmega durch einen Alarm der RTC im eingestellten Intervall über einen Interrupt ‘geweckt’ wird. Der Halter für die Batterie CR1220 wird auf die Unterseite der Platine gelötet.

beelogger Solar CR1220 Halter 

Alternativ dazu kann der Batterieanschluss des DS3231 auch direkt mit dem Akku des beelogger-Solar verbunden werden. Hierfür stehen zweit Lötflächen auf der Rückseite der Platine zur Verfügung, die einfach gebrückt werden müssen. Auf den Batteriehalter kann in diesem Fall auch verzichtet werden. Wichtig ist, dass bei Versorgung der RTC direkt über den Lipo-Akku des beelogger-Solar keine zusätzliche Batterie in den Batteriehalter des DS3231 eingelegt werden darf.

beelogger Solar RTC Lipo

 

 

ATmega 328P (Prozessor)

Als Mikrocontroller des beelogger-Solar wird ein ATmega 328P eingesetzt. Über den Bootloader wird dieser für den Betrieb mit einem externen 8MHz-Quarz für den Betrieb über 3,3V konfiguriert.
ATmega 328P ATmega 328P AU TQFP-32
HC-49S 8MHz Quarz, 8MHz, HC-49/S, -20 +70C, 18pF, SMD
A-C1 Keramikkondensator, 18pF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
A-C2 Keramikkondensator, 18pF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
A-C3 Keramikkondensator, 0,1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
A-C4 Keramikkondensator, 0,1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
A-C5 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
A-R1 Widerstand, 0,51, SMD 0805, max. 5%, min. 100mW

beelogger Solar ATmega

 

I2C Pullup

Die Stromversorgung dieser I2C-Pullup-Widerstände kann zusammen mit den Sensoren und Modulen abgeschaltet werden, um im Sleep-Mode noch mehr Strom einzusparen.
I-R1 Widerstand, 4,7k, SMD 0805, max. 5%, min. 100mW
I-R2 Widerstand, 4,7k, SMD 0805, max. 5%, min. 100mW

beelogger Solar I2C Pullup

 

Programmierschnittstelle & Reset-Taster

Nach dem Aufspielen des Bootloaders kann der ATmega 328P genau wie ein Arduino Mini Pro über einen FTDI-Adapter programmiert werden. Um Beschädigungen zu vermeiden, ist der FTDI-Adapter auf eine Versorgungsspannung von 3,3V einzustellen.
Reset Taster, SMD, 6x3mm, 6×3.5mm, OFF – (ON), min. 10V, max. 50mA
F-D1 MBR0520LT SOD 123
F-D2 MBR0520LT SOD 123
F-C1 Keramikkondensator, 0,1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
F-R1 Widerstand, 10k, SMD 0805, max. 5%, min. 100mW

beelogger Solar FTDI

Gut erreicbar ist der Reset-Taster am Rand der Platine platziert.

beelogger Solar Reset

 

Messwiderstände

Die Messwiderstände werden als Spannungsteiler eingesetzt, um sowohl die Batteriespannung, als auch die Spannung der Solarzelle zu messen. Die Kondensatoren werden dabei zur Glättung eingesetzt.
B-C1 Keramikkondensator, 0,1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
B-C2 Keramikkondensator, 0,1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
B-R1 Widerstand, 1M, SMD 0805, max. 5%, min. 100mW
B-R2 Widerstand, 470k, SMD 0805, max. 5%, min. 100mW
B-R3 Widerstand, 1M, SMD 0805, max. 5%, min. 100mW
B-R4 Widerstand, 470k, SMD 0805, max. 5%, min. 100mW

 

SPV1040 (Solar-Laderegler mit Step-Up-Konverter)

Dieser Solar-Laderegler arbeitet bereits ab einer Eingangsspannung von 0,3V. Hierbei kommt ein integrierter Step-Up-Konverter mit einem Wirkungsgrad von bis zu 95% zum Einsatz. Besonders effizient arbeitet der IC mit MPP-Tracking (Maximum Power Point Tracking).
SPV1040 SPV1040 TSSOP8 
S-L1 Spule, Power Inductor, 10uH, 4.45×4.06 mm, SMD 4020, max. 20%, min. 1,8A, max. 250mOhm
S-C1 Keramikkondensator, 1nF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
S-C2 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
S-C3 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
S-R1 Widerstand, 430k, SMD 0805, max. 0,1%, max. 25ppm, min. 100mW
S-R2 Widerstand, 1M, SMD 0805, max. 0,1%, max. 25ppm, min. 100mW

beelogger Solar SPV1040

 

MCP1702T (Festspannungsregler)

Der hier verwendete MCP1702T ist ein Low Dropout 3,3V Festspannungsregler mit einem Ruhestrom von nur 2uA. Er versorgt ausschließlich den ATmega mit Strom.
MCP1702T MCP1702T-3302E/CB SOT-23A-3
M-C1 Keramikkondensator, 1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
M-C2 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%

beelogger Solar MCP1702

 

TPS62260 (Step-Down-Konverter)

Der TPS62260 ist ein sehr effizienter Step-Down-Konverter, der die Sensoren und Module mit bis zu 600mA laut Datenblatt versorgt. Während der ‘Schalfphase‘ des Systems wird die hierüber versorgte Hardware, gesteuert vom ATmega, komplett vom Strom getrennt, wobei der TPS62260 weniger als 1uA benötigt.
TPS62260 TPS62260 TSOT23-T-5 
T-L1 Spule, Power Inductor, 2,2uH, 4.45×4.06 mm, SMD 4020, max. 20%, min. 1A, max. 100mOhm
T-C1 Keramikkondensator, 22pF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-C2 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-C3 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-C4 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-C5 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-C6 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-C7 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%
T-R1 Widerstand, 806k, SMD 0805, max. 0,1%, max. 25ppm, min. 100mW
T-R2 Widerstand, 180k, SMD 0805, max. 0,1%, max. 25ppm, min. 100mW

beelogger Solar TPS62260

Die Kondensatorbatterie hinter dem TPS62260 dient gleichzeitig der Glättung und  der Pufferung der Versorgungsspannung der Sensoren und Module.

beelogger Solar Kondensatorbatterie

 

nRF24L01

Das Sender-Empfänger-Modul nRF24L01 arbeitet auf einer Frequenz von 2,4GHz und ist mit einer intelligente Paketverwaltung mit CRC-Prüfung, 6 parallelen Datenleitungen und 127 Kanälen ausgestattet. Auf der Platine kann für dieses Modul ein optionaler Sockel eingelötet werden.
N-C1 Keramikkondensator, 1uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%

beelogger solar nrf24l01

 

DS18B20 & DHT

Der DS18B20 ist ein digitaler Temperatursensor mit einer einstellbaren Auflösung von 9-12bit und eine Messgenauigkeit von ±0.5°C im Bereich von -10°C bis +85°C. Die Sensoren des Typs DHT besitzen eine Auflösung von 8bit und haben eine Messgenauigkeit der Temperatur von ±0.5°C im Bereich von -40°C bis +80°C und rund 3% zwischen 0-99,9% RH für die Messung der Luftfeuchte.
Z-R1 Widerstand, 4,7k, SMD 0805, max. 5%, min. 100mW
Z-R2 Widerstand, 4,7k, SMD 0805, max. 5%, min. 100mW 
(optional je nach verwendetem Sensor: Temperatur- und Luftfeuchtesensor (DHT21/ DHT22))
Z-R3 Widerstand, 4,7k, SMD 0805, max. 5%, min. 100mW
(optional je nach verwendetem Sensor: Temperatur- und Luftfeuchtesensor (DHT21/ DHT22))

 beelogger Solar DHT    

Um die Sensoren anzuschließen, besteht die Möglichkeit Schraubklemmen zu verwenden. Generell können die Sensoren für eine optimale Verbindung auch ohne Schraubklemmen direkt angelötet werden!

 

Taster

Um den zeitgesteuerten Interrupt zur Messung und zum Versand der Sensordaten auch außerhalb des eingestellten Intervalls manuell auslösen zu können, kann der optionale Taster an D2 verwendet werden.
Taster Taster, SMD, 6x3mm, 6×3.5mm, OFF – (ON), min. 10V, max. 50mA

beelogger Solar Taster

 

HX711

Das HX711-Board ist ein 24bit  A/D-Wandler, welcher speziell zur Auswertung von Wägezellen mit Wheatstone-Brückekonzipiert wurde. 

Das HX711-Board wird direkt auf die Platine gelötet. Die hierfür zur Verfügung stehenden Felder sind im folgenden Bild rot markiert.

beelogger Solar HX711 Platzierung

Da es diese Sensor in unterschiedlichen Ausführungen gibt, besitzt der beelogger-Solar hierfür ein Patchfeld, um möglichst mit allen Ausführungen kompatibel zu sein. Stimmt die Pinausführung des Sensors mit der aufgedruckten Belegung überein, müssen nur die horizontal benachbarten Lötfelder des Patchfeldes mit einer Lötbrücke oder einem Jumper miteinander verbunden werden. Stimmt die Belegung nicht überein, können Kabelbrücken für die korrekte Verbindung innerhalb des Patchfeldes genutzt werden.Da der HX711 auf beiden Seiten Anschlüsse besitzt, befindet sich auf der Platine für dieses Modul auf jeder Seite ein Patchfeld. Weil bei diesem Sensor nicht nur die Pinbelegung, sondern auch die Größe des Moduls variieren kann, sind zusätzliche, horizontal miteinander verbundene Lötfelder zum Anschluss vorhanden – die im oberen Bild rot markierten Felder. 

Ein weiterer Vorteil ist, dass über das Patchfeld, genau wie bei den Sensoren DHT und DS18B20, der HX711 über alternative Pins mit dem ATmega verbunden werden kann.

beelogger Solar HX711

beelogger Solar HX711 Patch              beelogger Solar HX711 gespiegelt

Als Standard-Anschluss des Wägeelementes steht der Eingang ‘A’ über Schraubklemmen zur Verfügung. Zusätzlich wird für optionale Entwicklungen der Eingang ‘B’ zur Verfügung gestellt. An ‘GND’ wird die Abschirmung angeschlossen.

beelogger Solar HX711 Eingang

Um die Sensoren anzuschließen, besteht die Möglichkeit Schraubklemmen zu verwenden. Generell können die Sensoren für eine optimale Verbindung auch ohne Schraubklemmen direkt angelötet werden!

 

Modifikation HX711-Board

Modifikation zum Betrieb des HX711-Boards mit 3,3V.

Laut Datenblatt kann der HX711-Chip  problemlos mit 3,3V oder 5V betrieben werden. In der Regel ist daher diese Angabe auch bei fertigen Boards mit diesem Chip zu finden. Wenn man sich nun intensiv mit dem Datenblatt dieses Chips sowie den Schaltplänen dieser Boards beschäftigt, wird man feststellen, dass diese zumeist für 5Volt-Betrieb dimensioniert sind. Für ein optimal funktionierendes Wägesystem mit 3,3V sind daher Anpassungen notwendig.

Hintergrund:
Um optimale Messergebnisse zu erhalten, muss die Wägezelle mit einer möglichst stabilen Spannung versorgt werden. Hierfür stellt der HX711 eine eigene, geregelte Spannungsquelle zur Verfügung. Geregelt wird die Versorgungsspannung der Wägezellen über den auf dem Board befindlichen Transistor sowie einem Spannungsteiler. Mit dem Spannungsteiler wird die zu regelnde Spannung eingestellt.

Bei den erhältlichen Boards ist über die Widerstände des Spannungsteilers die Regelspannung auf knapp unter 5V eingestellt. Hiermit kann der Regelkreis sauber arbeiten. Das Datenblatt gibt eine Regelspannung vor, die mindestens 100mV geringer sein muss, als die Versorgungsspannung des Chips. Berechnet man nun die Regelspannung mit den auf dem Board eingesetzten Widerständen und einer Versorgungsspannung des Chips von 3,3V, stellt man fest, dass diese Vorgabe nicht mehr eingehalten wird. Das Ergebnis hiervon ist, dass der Regelkreis nicht sauber arbeiten kann, die Wägezelle keine stabile Spannung erhält und die Messergebnisse dadurch nicht optimal sind.

Um dieses Problem zu lösen, werden im Folgenden 2 verschiedene Modifikationen vorgestellt. Hiervon ist eine Modifikation auszuwählen und durchzuführen:

1. Austausch eines Widerstandes des Spannungsteilers
12k Typ 0603

Um die Regelspannung entsprechend der Vorgaben für eine Versorgung des Chips mit 3,3V einzustellen, ist der 20k Widerstand auf dem Board gegen einen 12k Widerstand des Typs 0603 auszutauschen.
Hierdurch kann weiterhin die Regelung des HX711 genutzt werden, jedoch sinkt natürlich die Versorgungsspannung der Wägezelle und der Signal-Rausch-Abstand wird geringer.

beelogger Solar HX711 3v3 Fix 1                             beelogger Solar HX711 3v3 Fix 2

2. Überbrückung des Regelkreises
Brücke Widerstand, 10, Axial, max. 5%, min. 100mW
H-C1 Keramikkondensator, 10uF, SMD 0805, NPO oder X7R oder X5R, min. 10V, max. 10%

Bei einer stabilen Versorgungsspannung des Chips, wie dies beim beelogger-Solar der Fall ist, kann der Regelkreis überbrückt werden. Die Wägezelle wird dadurch direkt über den TPS62260 versorgt. Die ‘Kondensatorbatterie’ hinter dem TPS62260 sorgt für weitere Stabilität der Spannung.
Der beelogger-Solar hat hierfür ein separates Patchfeld, welches mit ‚FIX‘ beschriftet ist. Über dieses Patchfeld ist VCC mit E+ des Boards zu verbinden. Die jeweilige Belegung des Boards ist hierbei immer zu beachten.

Um die Versorgungsspannung weiter zu stabilisieren, kann statt einer einfachen Brücke, ein bedrahteter 10 Ohm Widerstand genommen werden. Dieser wirkt dann zusammen mit dem Kondensator H-C1 als Filter.

beelogger Solar HX711 3v3 Fix 3

 

Weitere Prüfung und Modifikation HX711-Board

Wie unter Stockwaage (Bosche H30A & HX711) bereits beschrieben, gibt es Boards, die in ihrer Beschaltung durch eine nicht vorhandene Verbindung von E- bzw. BLK mit GND vom Referenzdesign abweichen. Platinen ohne diese Verschaltung neigen generell zu einer größeren Tolleranz der Messwerte, haben eine höhere Temperaturempfindlichkeit und und weisen größere Abweichungen auch über längere Zeit auf, wenn das Board zuvor stromlos bzw. im Power-Down-Modus gewesen ist.

Gewissheit, wie der Chip beschaltet ist, bringt nur die Messung des Widerstandes zwischen E- und GND. Dieser sollte bei einer korrekt beschalteten Platine praktisch Null sein. Ist der Widerstand wesentlich höher, kann die fehlende Verbindung selbst hergestellt werden. Hierfür kann ebenfalls das Patchfeld, welches mit ‘FIX’ beschriftet ist, verwendet werden. Die jeweilige Belegung des Boards ist hierbei immer zu beachten.

beelogger Solar HX711 3v3 Fix 4