Aquaponik mit dem Calliope mini – Relais schalten

Von engineIngmar|10. August 2017|Calliope mini, Entwickeln, Pilotanlage|2 Kommentare

Mit dem Caliope mini Lasten zu schalten ist eine Grundvoraussetzung, um Aquarien oder Aquaponikanlagen zu steuern. Die Schaltung externer Stromquellen bzw. anderer Spannungsniveaus ist eine Aufgabe, über die wir schon bei der Entwicklung der Pilotanlage sehr schnell gestolpert sind. Mit dem Raspberry Pi ist das problemlos über den Anschluss von einfachen Relaisplatinen an den 5V-Pin des Pi und die Beschaltung der entsprechenden Pins an der Platine möglich. Für ausführliche Anleitungen zum Basteln mit dem Raspberry Pi verweise ich gern auf https://tutorials-raspberrypi.de/, hier auch zum Thema Relaisschaltung: https://tutorials-raspberrypi.de/raspberry-pi-relais-schalter-steuern/.

Schaltungsaufbau

In der Pilotanlage kommt eine Platine mit 4 Relais zum Einsatz. Die Platinen gibt es in unterschiedlichen Varianten und sollen bis 230V schaltbar sein. Wir raten an dieser Stelle aber davon ab. Wir verwenden 433Mhz-Funksteckdosen zum Schalten von Verbrauchern, welche direkt Netzspannung beziehen. Die zu schaltenden Verbraucher an der Pilotanlage benötigen 12V-Gleichspannung, welche von einem Trafo bereitgestellt wird.

Das Relais benötigt, um zuverlässig schalten zu können, 5V als Versorgungsspannung. Der Calliope kann aber nur je nach angeschlossener Spannungsquelle (Batterien bzw. Versorgung über micro-USB) ca. 3 V zur Verfügung stellen. Um das Problem zu lösen müsst ihr also den Calliope und das Relais aus einer geregelten Spannungsquelle versorgen. Es werden 5V für die Relaisplatine und 3,3V für den Calliope benötigt. Für die Schaltung an der Pilotanlage kommt ein  häufig für Arduino verwendetes Breadboard Netzteil zum Einsatz. Die Schaltung wurde gleich auf einem kleinen Steckbrett aufgebaut.

Die Verbindung zwischen Breadboard und Relaisplatine kann mit einfachen Jumperkabeln hergestellt werden. Um den Calliope mit Spannung zu versorgen und die außen liegende Kontakte anzuschließen, kommen ein paar selbstgelötete Krokodilklemmen zu Male-Jumper Adapterkabel zum Einsatz.

Um den Calliope zu schützen ist zwischen dem Pin an der Relaisplatine und dem mini noch ein 1k Ohm- Widerstande gesetzt worden. Die fertige Schaltung für einen Aktor sieht dann wie folgt aus, der zu schaltende Pin bzw. Ecke ist am mini P1.

Programmcode

Zur Entwicklung des Codes wird in diesem Projekt mit dem Open Roberta Lab und der grafischen Programmiersprache NEPO® gearbeitet. Die Entwicklungsumgebung hat bereits in der graphischen Blockansicht eine Vielzahl von Möglichkeiten zur Bedienung des Calliope mini integriert. Der Editor ist unter https://lab.open-roberta.org/  erreichbar. Das Umschalten zwischen der einfachen Blockansicht ist einfach möglich. Es ist sogar möglich Blockansicht und Code nebeneinander anzuzeigen. Im Vergleich zu dem sehr eingeschränkten Calliope mini Editor (miniedit.calliope.cc) und dem PXT-Editor (pxt.calliope.cc) bietet nur NEPO® die Möglichkeit in der Blockansicht auf den Zeitgeber des Calliope mini zuzugreifen.

In unserem Aquaponikbeispiel soll die Pumpe alle 15 Minuten (P1_intervall_min) für 3 Minuten (P1_dauer_min) angeschalten werden. Damit wird zurzeit die für den Basilikum ausreichende Wassermenge in das Growbed gefördert. Das Licht des Aquariums leuchtet 12 Stunden am Tag. Bei der Schaltung mit dem Raspberry Pi erfolgte die Schaltung auf Basis frei wählbarer Uhrzeiten. Da sich der Calliope mini in der Grundausstattung nicht über die aktuelle Uhrzeit bewusst ist, wird das Licht des Aquariums hier ebenfalls über die eingestellte Zeitdauer geschalten, also alle 24 h (P2_intervall_min) für 12 h (P2_dauer_min). Diese Parameter sind im Kopf des Programms in der Variablendeklaration hinterlegt. Die Variablen P_start_min und P_ende_min dienen zur Definition der Schaltpunkte eines Zyklus. Zum Start des Programms werden die beiden zu schaltenden Pins 1 und 2 auf logisch 0 gesetzt.

Der Hauptteil des Codes läuft in einer Endlosschleife. Zum Start der Schleife wird der interne Zeitgeber zurückgesetzt sowie die Start- und Endzeiten der beiden Aktoren zurückgesetzt. Die innere Schleife wird solange wiederholt bis der Zeitgeber einen Wert größer 1.440 Minuten (24 h) erreicht.  Durch die äußere Schleife werden damit die Startparameter und der Zeitgeber wieder zurückgesetzt. Die eingestellten Intervalle sollten damit 12 h nicht überschreiten. Die Schaltung von P1 und P2 erfolgt in der inneren Schleife, wenn die Startzeit bzw. Endzeit vom Zeitgeber überschritten sind. Nach dem Ein- oder Ausschalten wird die nächste Start- oder Endzeit entsprechend der eingestellten Schaltdauer und Intervallen gesetzt.

Das kompilierte Programm als .hex ist unter folgendem Download-Link  als .zip verfügbar.  Nach dem Entpacken kann die Datei einfach auf den Calliope kopiert werden und dann startet das Programm automatisch. Die Open Roberta Projektdatei ist ebenfalls als .xml im Archiv enthalten. Diese kann als Projekt in den Editor importiert werden.

Download: zeitgesteuerte-Relaisschaltung-Calliope-mini

Beim Start des Programms beginnt zunächst ein erster Durchlauf der Pumpe und des Lichts. Um ein für den Tagesverlauf sinnvolles Ergebnis zu erzielen, ist es also ratsam das Programm morgens zu starten, damit das Licht in den Abendstunden wieder ausgeschaltet wird.

Als nächste Funktionen soll der Calliope die Temperatur im Aquarium und den Pegel messen lernen. Ein morgendlicher Fütterungswecker wäre auch mal ganz sinnvoll…

 

 

Creative Commons Lizenzvertrag
Aquaponik mit dem Calliope mini – Relais schalten von Ingmar Reichert ist lizenziert unter einer Creative Commons Namensnennung – Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.

Diesen Beitrag teilen:

2 Kommentare

  1. Pingback: Aquaponik mit dem Calliope mini – Temperatur von Flüssigkeiten messen – aquaponisten.org

  2. engineIngmar

    Als Nachtrag zum Artikel ist hier die Liste der verwendeten Teile:
    -4-fach Relaisplatine (z.B.: https://goo.gl/jrcjpb)
    -Breadboard (z.B.: https://goo.gl/CgWAjy)
    -Breadboard-Stromversorgung (z.B.: https://goo.gl/Ps1Frj)
    -ein paar Male-Male-Jumperkabel
    -Jumper zu Krokoklemmen-Kabel (habe ich mir selber gelötet, könnten aber auf der Jumper-Seite auch einfach gecrimpt werden)
    Für die nächsten Artikel nehme ich mir vor, gleich die Zubehörliste aufzuführen.

    Ingmar

Hinterlasse einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Du verwendest diese HTML Tags und Attribute: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
*
*