Gärbox Manager auf Raspberry Pi Pico-Basis. https://www.rustysoft.de/software/gbmanager/
Go to file
Martin Brodbeck d4278d6098 increase version number 2022-12-23 12:30:11 +01:00
.vscode get it running in new dev environment 2022-12-23 12:23:05 +01:00
FreeCAD FreeCAD files added. 2022-05-26 13:26:18 +02:00
KiCAD KiCAD files added. 2022-05-26 13:26:55 +02:00
cmake restructured 2022-05-31 15:13:00 +02:00
micropython Starting work on C++ 2022-05-30 14:10:48 +02:00
modules get it running in new dev environment 2022-12-23 12:23:05 +01:00
pictures more pictures 2022-05-26 13:51:21 +02:00
src Disable on/off button temporarily 2022-12-23 12:29:33 +01:00
.clang-format clang-format added 2022-05-31 09:47:03 +02:00
.gitignore Starting work on C++ 2022-05-30 14:10:48 +02:00
.gitmodules change sstream to fmt 2022-06-03 14:33:42 +02:00
CMakeLists.txt increase version number 2022-12-23 12:30:11 +01:00
LICENSE LICENSE added 2022-05-25 23:23:02 +02:00
README.md more build info 2022-06-01 21:53:44 +02:00

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.