Gärbox Manager auf Raspberry Pi Pico-Basis. https://www.rustysoft.de/software/gbmanager/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Martin Brodbeck 76d464c8cc more build info 6 months ago
.vscode format fallback 6 months ago
FreeCAD FreeCAD files added. 6 months ago
KiCAD KiCAD files added. 6 months ago
cmake restructured 6 months ago
micropython Starting work on C++ 6 months ago
modules use 3rd party lib for ds18b20 6 months ago
pictures more pictures 6 months ago
src only enable uart for debug mode 6 months ago
.clang-format clang-format added 6 months ago
.gitignore Starting work on C++ 6 months ago
.gitmodules use 3rd party lib for ds18b20 6 months ago
CMakeLists.txt use 3rd party lib for ds18b20 6 months ago
LICENSE LICENSE added 6 months ago
README.md more build info 6 months ago

README.md

Gärbox Manager

Der Gärbox-Manager dient dazu, die Temperatur in einer Styropor-Box konstant auf einer bestimmten Temperatur zu halten, so dass der Sauerteig optimale Bedingungen hat. Er ist erstmal quasi nur ein Thermostat, wie man ihn auch fertig kaufen kann (z.B. bei ELV). Für mich ist er aber besser bedien- und ablesbar.

Hardware

Der Gerät besteht grob aus folgenden Komponenten:

  • Raspberry Pi Pico
  • Relaismodul für Arduino(SRD-05VDC-SL-C)
  • Temperatursensor DS18B20
  • I²C 16x2 LCD-Display
  • Lochrasterplatine mit einigen elektronischen Bauteilen
  • Gehäuse aus dem 3D-Drucker

Die Kosten für die Bauteile belaufen sich auf ca. 23 €.

Software

Die Software ist derzeit noch rudimentär gehalten. Die Temperatur wird perodisch ausgelesen und die Heizmatte entsprechend der Zieltemperatur an- oder ausgeschaltet. Über Interrupts wird auf drei Drucktaster reagiert. Dadurch können (derzeit) die Zieltemperatur eingestellt sowie die Heizungsregelung (de)aktiviert werden.

Verwendete Bibliotheken

Die C++-Implementierung, die bei Bedarf weiterentwickelt wird, verwendet zur Ansteuerung des Temperatursensors die pico-onewire Bibliothek von Adam Boardman (Github).

Hinweis: Die ältere Python-Implementierung ist zu Dokumentationszwecken noch im Unterverzeichnis "micropython" zu finden. Wahrscheinlich wird diese nicht mehr weiterentwickelt. Für die Ansteuerung des LCD wird rpi-pico-i2c-lcd von T-622 (Github) verwendet, das wiederum auf python_lcd von dhylands (Github) basiert. Die entspechenden Dateien liegen der Einfachheit halber im lib Unterverzeichnis.

Installation

Zunächst wird das Repository geklont sowie die Submodules initialisiert:

$ git clone https://git.rustysoft.de/martin/gbmanager.git
$ cd gbmanager
$ git submodule init
$ git submodule update 

Mit den folgenden Kommandos wird die Firmware compiliert:

$ mkdir build && cd build
$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ make

Im src-Unterverzeichnis (des build-Verzeichnisses!) ist nun UF2-Datei gbmanager.uf2 vorhanden. Diese muss nun nur noch auf den Pico kopiert werden.

Aufbau

Die zum Aufbau notwendigen Informationen bzw. Dateien befinden sich in diesem Repository.

Im Verzeichnis KiCAD sind der Schaltplan sowie die Leiterplatte (ich verwende eine einfache 2,54 mm Lochrasterplatine) abgelegt. Im Leiterplatteneditor habe ich im Nutzer.1-Layer ein Gitternetz hinterlegt. Dieses kann man mit ausdrucken und hat somit eine schöne Vorlage für das Löten der Leiterbahnen.

Im Verzeichnis FreeCAD befindet sich das entsprechende CAD-Projekt sowie die daraus exportierten STL-Dateien, die man im Slicer für den 3D-Drucker importieren kann.

Anschließen und Bedienung

Hinweis: Aufbau und Betrieb erfolgen auf eigene Gefahr! Wir haben es hier mit Netzspannung zu tun, die lebensgefährlich ist.

Das Gerät wird über ein microUSB-Kabel mit einem 5V Netzteil, wie man es zum Aufladen von Smartphones verwendet, verbunden. Der Raspberry Pi Pico benötigt sehr wenig Strom, es genügt daher ein "schwaches" Netzteil. Der Euro-Stromstecker kommt an die Steckdose. Damit ist (über ein Relais) das andere Stromkabel, das mit einer Euro-Buchse versehen ist, verbunden. An diese Buchse wiederum kommt die Heizmatte. Das letzte Kabel – in meinem Fall das hellgraue – ist der Temperaturfühler. Dieses muss über eine Bohrung o. ä. in die Gärbox eingeführt werden, so dass eine Temperaturerfassung des Innenraums möglich ist.

Mit den blauen Tasten stellt man die gewünschte Temperatur ein. Rot schaltet die Heizungssteuerung ein/aus. Ein ">H<" zeigt an, ob gerade geheizt wird.