Anschließen der Sensoren
Im ersten Schritt schließen wir die beiden Sensoren an den Raspberry Pi Pico (H) an. Beiden Sensoren benutzen das I2C-Protokoll und können somit sehr einfach angeschlossen werden.
Die einfachste Verbindung der beiden Sensoren geschieht, wie im folgenden Bild dargestellt mit einem qwicc-Kabel.
Alternativ kann die Verbindung auch gelötet werden. Dazu löten wir Verbindungsleitungen zwischen die Kontaktepunkte der beiden Platinen:
Die Verbindung mit dem Baseshield kann mittels einem qwicc-Grove-Adaperkabel erfolgen.
Alternativ kann auch diese Verbindung gelötet werden, wenn wir an einem Ende eines Grove-Kabels den Stecker abschneiden und das Kabel wie eine Sensorplatine anlöten:
Am Baseshield können die Sensoren an folgende Anschlüsse eingesteckt werden:
Softwaretest der Sensoren
Den korrekten Anschluss der Sensoren an den Raspberry Pi Pico (H) können wir sehr einfach über eine Suche am I2C-Bus durchführen.
Findet der Raspberry Pi Pico (H) am I2C-Bus Sensoren gibt das Programm die zugehörigen Deviceadressen aus.
Der BME280-Sensor hat die Adressen 0x76 oder 0x77.
Der ENS160-Sensor hat die Adressen 0x52 oder 0x53.
Findet der Raspberry Pi Pico (H) keine Sensoren am I2C-Bus wird das ebenfalls vom Programm ausgegeben.
Ein häufiger Fehler ist die Verwechslung der SCK- und SDI-Leitungen!
Anschluss des LoRaWAN-Funkmoduls
Zur Weitergabe der Messdaten ist am seriellen Anschluss des Raspberry Pi Pico (H) ein LoRaWAN-Funkmodul angeschlossen. Mit dieser Funktechnologie lassen sich die Daten über eine größere Reichweite und mit geringerem Stromverbrauch senden als beispielsweise mit WLAN.
Die Programmierung des Funkmoduls findet über die serielle Schnittstelle mittels AT-Befehle statt.
Eine Beschreibung der einzelnen Befehle findet man in der Lora-E5 Befehlsspezifikation.
LoRa-E5 AT Command Specification_V1.0 .pdf
Stromverbrauch Funkmodul
Der Stromverbrach des Funkmoduls ist der mit Abstand größte bei der Wetterstation. Somit ist es sinnvoll die Sende- und Empfangszeit so gering wie möglich zu halten.
Daher sollte man sich im Vorfeld genau überlegen was man sendet und wie oft!
Vorbereitung des Timer-Boards
Zum Energiesparen ist ein TPL5111-Board von Adafruit verbaut. Nachdem eine Messung durchgeführt und über Funk versendet wurde, gibt der Raspberry Pi Pico (H) dem TPL5111-Board ein Signal. Daraufhin schaltet dieses für eine eingestellte Zeit die Stromversorgung ab. Nach Ablauf dieser Zeit schaltet das TPL5111-Board die Stromversorgung wieder ein und es wird eine neue Messung durchgeführt.
Damit die Steuerung zwischen dem Raspberry Pi Pico (H) und dem TPL5111-Board funktionieren kann müssen die beiden Teile folgendermassen verbunden werden:
TPL5111-Board | -> | Rasberry Pi Pico (H) | cable colour | |||
---|---|---|---|---|---|---|
VDD | -> | VSYS (PIN 39) | red | |||
GND | -> | GND (PIN 38) | black | |||
Delay | -> | not connected | ||||
ENout | -> | 3V3EN (PIN 37) | orange | |||
DONE | -> | I/O-PIN (PIN 34) | brown |
Über den einstellbaren Widerstand lässt sich die Zeit verändern, die das TPL5111-Board die Stromversorgung unterbricht.
Um die Abschaltzeit einfach einstellen zu können, gibt Texas Instruments (Hersteller des TPL-Bausteins) im Datenblatt folgende Angaben:
Zwischen den Anschlüsse DELAY und GND auf dem TPL5111-Board lässt sich der Widerstand messen.
Auf der Rückseite des TPL5111-Boards können die Batterieanschlüsse (+) und (-) angelötet werden.