Projektvorstellung Terrarium Controller

Tach.

Ich wollte euch mal mein erstes Projekt “vorstellen”

ist ne Terrariumsteuerung.

Derzeit habe ich es hinbekommen und vor allem mit eurer Hilfe im Forum

das ich nen Grundgerüst habe welches derzeit sich um das LCD kümmert (5" mit icon/font flash) auf einem Due.

Grundgerüst kann:

-Menu Führung (nur Touch, keine externen Taster)
-Sensoren auslesen (Kapazitiver Wasserstand(Wasserstand vom Wasserfall und Wassertank für regenanlage), DS18x20, DHT22)
-i2c EEPROM für Zeiten und min/max werte bzw soll werte
-DCF + ds3231 RTC
-Zeitschaltuhr, Hygrostat, Thermostat
-Log jeglicher Aktivität

todos:

-Grafisches Design
-Wochenschaltuhr für Pflanzenbewässerung
-Betriebsstundenzähler inkl Erinnerung zum Leuchtmittelwechsel (UVA, UVB, UVC)
-Relaistest
-Nachtlicht/Mondsimulation
-EVG 0-10V Ansteuerung

auf dem Display steht noch viel Unsinn welcher nur zu Testzwecken angezeigt wird. bzw um besser zu verstehen was grade passiert.

da ich Frisch in der Arduino/C welt bin bitte ich euch doch mal meinen Code Salat zu begutachten und mir mal sagen was absolute nogos sind und was ich besser machen könnte… bzw hat jemand lust mit zu machen ^^

Code vergessen:

terra.zip (9.92 KB)

Sehr schönes Projekt, gefällt mir super! Welches Display verwendest du denn genau?

Das liest sich so als hättest du ein separates Eeprom verbaut obwohl die RTC ein 32k besitzt oder benutzt du dieses?

Gruß

Ja nen externen 24c256. Der rtc eeprom ließ sich nicht nicht finden per i2c Scanner.. und hatte dazu befürchtet das der nicht langt.

LCD ist sainsmart, Welches genau weiß ich nicht mehr

Hm, ok verstehe.
256K? Was speicherst du denn alles? :o

Habs: http://m.ebay.de/itm/SainSmart-DUE-5-LCD-Touch-Panel-SD-Card-Slot-TFT-LCD-Shield-For-Arduino-DE-/221712685951?nav=SEARCH

Und dazu noch nen Prototyp shield um an die anderen pins zu kommen

Noch net viel… Später werden es sein:

pro schaltkanal 3x an 3x aus Zeit
Pro Kanal wochenprogramm
Paar einzelne einstellungssachen

Und jede halbe Stunde temperatur und Luftfeuchtigkeit. Für nen Graphen max jedoch 72h. Wenn das noch rein geht :slight_smile:

Meinst du da wäre eine microSD nicht besser geeignet? Vorallem wenn du loggen willst, dann wären die 72h auch keine Begrenzung :) Und du könntest die Daten auch mal auf dem PC archivieren wenn Interesse besteht.

Gruß

Schönes Projekt, endlich mal jemand der auch mit dem Due arbeitet :sunglasses:

Sd Karte is vorhanden. Jedoch noch nicht eingebunden.

Ich wollte es eigentlich so machen das jeder Verlauf um 00:00:01 startet und um 23:59 beendet wird und in diesem Moment dann nen jpg o.ä erstellt und dieses auf der sd Karte ablegt...

Aber bis ich soweit bin dauert es noch :D. Berufliche und familiäre Beschränkung auf Wochenenden nur vorhanden. Jetzt noch Urlaub bis zum 11ten.

Hehe das sind die Probleme mit denen jeder kämpft, aber bis zum 11., da geht noch was :) Finde es auch gut das mal der seltene Due benutzt wird obwohl ich selbst auch noch nie damit gearbeitet hab. Scheint ja nicht so einfach zu sein oder an was liegt es?

Gibt etliche libs welche mit dem DUE nicht laufen bzw erst nach dem melden der fehler...

Ansonsten hatte ich immerwieder Anfänger Probleme.

Der DUE hat halt nur kein eeprom, progmem und kein F() Makro.. interrupts an jedem pin. Hat ne interne rtc jedoch batterie Pin nicht herausgeführt. Nen nativen USB Port. Lässt sich 3 mal so schnell der Sketch hochladen. Und ist halt sehr flink :)

Ok, also kommt es auf die Anwendung an. Denke mal wenn es kaum Libs gibt wird er selten benutzt, wird er selten benutzt passt kaum jemand seine Libs an...irgendwie ein Teufelskreis :smiling_imp:

Scherheinz: Finde es auch gut das mal der seltene Due benutzt wird obwohl ich selbst auch noch nie damit gearbeitet hab. Scheint ja nicht so einfach zu sein oder an was liegt es?

Denke es liegt an der 3.3V Logic und auch daran das die Pin's High Current (source 15mA, sink 9mA) und die Low Current ( source 3mA, sink 6mA) bringen.

Ich hänge die Pin's des Due meist über Gatter oder Treiber an die restliche Schaltung, dann bin ich auf der sicheren Seite. Wenn man auf die Registerebene arbeiten will, ist so gut wie alles anders als bei den Atmels. Inwischen gibt es aber auch etliche Codesnipsel zum Beispiel zu den PIO's, in Verbindung mit dem Datenblatt wird es dann schon verständlich.

Hm an die 3,3V hab ich garnicht gedacht :confused:

Scherheinz: Ok, also kommt es auf die Anwendung an. Denke mal wenn es kaum Libs gibt wird er selten benutzt, wird er selten benutzt passt kaum jemand seine Libs an...irgendwie ein Teufelskreis :smiling_imp:

Nene, libs funzen inzwischen alle. Bis auf paar wenige Ausnahme.

Die 3,3V ist auch son Ding... Stört mich nicht :) darfst halt nur keine 5V reinlassen. Ist nicht 5V tollerant.

Auf jeden Fall hab ich dazugelernt, danke Jungs :slight_smile:

Scherheinz: Auf jeden Fall hab ich dazugelernt, danke Jungs :)

Ich aber noch nichts :) also raus mit der sprache... Was ist da alles faul im Sketch?

Nicht viel, er funktioniert ja :)

Also bin kein Profi und kann auch nichts an faulem Stück Code finden ;D

Nach dem letzten IDE, Board und libs update lief er nicht mehr :D hab dann erstmal wieder Korrekturen durchführen müssen.