Hallo zusammen,
es hat wirklich lange gedauert, habe im Moment leider nicht allzuviel Zeit.
Trotzdem schon mal eine Vorabversion, soll natürlich auch noch ausführlicher werden.
Ich habe dann einfach mal zusammengeschrieben, was mir so eingefallen ist. (VORSICHT: langer Text!)
Ist alles ein bißchen durcheinander, aber ein grober Überblick sollte schon möglich sein.
Bei Fragen, Anregungen, Anmerkungen, ... nur zu!
Anforderungen an die Steuerung (im ersten Schritt kommt natürlich nur ein Bruchteil rein, alles was unbedingt im ersten Schritt rein soll, habe ich mit (!) markiert):
* Temperaturregelung (schalten von zwei Heizungen) (!)
* messen des pH-Wert und Regelung (schalten eines Magnetventils) (!)
* schalten und dimmen von zwei Leuchtbalken (über EVGs mit 1-10 Volt Schnittstelle) (!)
* schalten (evtl. auch dimmen) eines Nachtlichts (Mondlichtsimulation) (!)
* messen des Leitwerts
* messen des RedOx (wahrscheinlich nicht ganz so wichtig in der Süßwasseraquaristik)
* Pegelschalter für Alarm (bei externen Filterbecken, Nachfüllautomatik usw.)
* manuelles Ausschalten aller Geräte durch Menue (z.B. beim Wasserwechsel) (!)
* alle Einstellungen durch Eingabe per Tastatur (12-Ziffern Tastatur) (!)
* Uhrzeit evtl. über DCF77 Signal (Funkuhr)
* Ausgabe der aktuellen Parameter auf dem Display (2x16 Zeichen wird wohl reichen, sonst 4x16) (!)
* geänderte Werte sind auch nach Spannungsunterbrechung noch vorhanden (Speicherung im EEPROM) (!)
Um den Chip zu bestimmen, eine kurze Auflistung, was an IO-Anforderungen nötig ist
* analoge Eingänge für
- Temperatursensor (2x)
- pH-Sensor
- Leitwertsensor
- RedOx-Sensor
-> insgesamt 5 ADC mindestens
* analoge Ausgänge (PWM) für
- dimmbar Lampen (2x) - dimmbare EVGs müssen vorhanden sein
- Mondlichtsimulation
-> 3 analoge Ausgänge (lassen sich auch über digitale Ausgänge realisieren)
* digitale Eingänge für
- Tastatur (3*4 Matrixtastatur, braucht also 7 Pins, evtl. parallel mit dem Display betreiben)
- DCF77 Antenne
- Pegelschalter (2x, für Überläufe usw.)
* digitale Ausgänge (Steuerung der Steckdosen) für
- Display (läßt sich mit mit Tricks mit 3 Pins realisieren, ansonsten 11)
- Heizung (2x)
- Magnetventil pH
- Lampen (2x)
- Mondlicht
- Filter (2x)
Insgesamt brauchen (brauchen ist übertrieben, die meisten Features sind "nice-to-have") wir also 5xADC, 3xPWM und gute 20 digitale IOs. Das ist nur eine vorläufige Abschätzung, man muß nachher einfach mal sehen, ob wirklich alle PINs so belegt werden. Für die Anforderungen scheint mir der folgende Chip am besten geeignet:
PIC 16F877 (14Bit-Controller):
Gehäusegröße : 40 Pins
Programmspeicher: 8192 Befehle
RAM : 368 Byte
EEPROM : 256 Byte
I/O-Pins : 33
Timer : 3 Timer
ADC-Inputs : 8
PWM : 2
IOs sind erstmal genug vorhanden, falls der dritte PWM benötigt wird, kann er mit einem digitalen IO realisiert werden. Einige Features kann man ja erstmal einsparen und sich auf die wichtigen konzentrieren. Weitere Vorteile dieses Chips sind, daß er sehr verbreitet ist (damit ist recht viel Hardware und Demo-Software zu bekommen) und bei einem Preis von 6,10 Euro nicht gerade die Welt kostet.
Die Software für den Chip muß mit einem speziellen Brenner in den Chip gebrannt werden. Ein solcher Brenner kostet ca. 50 Euro. Alternativ kann man auch einmalig einen Bootloader in den Chip brennen (lassen), so daß jeder weitere Softwareupdate über eine serielle Schnittstelle passieren kann. Für jemanden, der nie wieder was mit Mikrocontroller machen will, lohnt sich der Kauf eher nicht. Dann reicht es, wenn man jemanden kennt...
Externe Beschaltung/Hardware:
PIC:
Hier ist (s.o.) mein Vorschlag der 16F877. Der kann so ziemlich alles, was wir brauchen und hat noch genügend Reserven, um die gesamte Steuerung mal zu erweitern.
Spannungsversorgung:
Die gesamte Schaltung muß natürlich mit Spannung versorgt werden. Dabei werden mehrere Spannungen gebraucht (wahrscheinlich 5, 10 und 12 Volt), teilweise auch symmetrische (+/- 5 oder 10 Volt) für die Operationsverstärker (OP).
Dazu brauchen wir ein Steckernetzteil (am besten 12 Volt=), nicht zu klein, da nachher alle Bauteile damit versorgt werden sollen. Wenn die Leitstungsaufnahme zu hoch wird, muß halt über 230 Volt und entsprechende Trafos nachgedacht werden. Mithilfe von Festspannungsreglern (7805, 7809, 7810) werden dann die Spannungen eingestellt. Negative (symmetrische) Spannungen lassen sich durch sogenannte Ladungspumpen (Charge pump) erzeugen. Die gibt es als fertige Bauteine und müssen dann nur noch eingebaut werden.
die Spannungen werden gebraucht für:
- Versorgung des PIC
- Versorgung des Displays
- Versorgung der Sensoren und Messverstärker
- Versorgung der Relais zum Schalten der Steckdosen
- Versorgung des/der dimmbaren EVG
Tastatur:
einfache 12er Matrixtastatur, wird direkt mit dem PIC verbunden und die einzelnen Ports dann zyklisch abgefragt
Display:
am einfachste ist erstmal ein 2x16 Zeichen Dotmatrix Display. Läßt sich relativ einfach ansprechen und reicht eigentlich aus, um alle wichtigen Parameter auf einen Blick anzuzeigen.
Lichtsteuerung:
die dimmbaren EVGs haben eine Steuerschnittstelle von 1-10 Volt. Dafür wird der PWM des PIC genutzt (liefert 0-5 Volt) und per OP mit Faktor 2 verstärkt. Für diese Verstärkerschaltung ist also ein OP nötig. Ich habe da immer die TL084 genommen, da sind direkt 4 OPs in einem Gehäuse (brauchen wir ja auch noch für die anderen Bauteile). Das Dimmen sollte dann in der Software logarithmisch gelöst werden, damit es dem Helligkeitsempfinden des menschlichen Auges angepaßt ist.
Messverstärker:
Die Messvertärker dienen zum Umsetzen des gemessenen Signals. Da muß für jeden einzelnen Sensor die Verstärkerschaltung berechnet werden. pH-Sensoren erzeugen etwa 60 mV pro pH (bei pH7 0mV, sonst +/- der genannten 60mV). Dieser Wert muß also erstmal in den positiven Bereich gehoben werden und dann auf den Messbereich zwischen 0 und 5 Volt verstärkt werden. Ähnlich ist es bei allen Sensoren, deshalb muß jeder einzelne berechnet werden. Teilweise gibt es fertige Sensoren, die die Verstärker schon eingebaut haben. Damit kenne ich mich allerdings nicht aus, ein bißchen Recherche kann da wahrscheinlich unnötig Arbeit verhindern.
Für die Verstärkerschaltung sind im allgemeinen ein paar OPs und Widerstände nötig. Evtl kommen noch Bauteile zum entstören dazu.
Steckdosenleiste:
Die Steckdosenleisten kann eine handelsübliche sein. Allerdings nicht die ganz billige, da diese meist fest verschweißt sind und man dann nicht mehr dran kommt. Auch sollte sie nicht zu klein sein, damit die Relais zur Ansteuerung noch Platz haben.
Verbunden wird die Leiste am besten mit einem Flachbandkabel, ein Kabel mit Westernstecker ist natürlich auch möglich. Dann läßt sich in der Software einstellen, wann welche Steckdose schalten soll. Für den Schaltvorgang werden Relais benötigt, die vom PIC getrieben werden (über eine Treiberstufe).
Software:
aus der Anforderungsliste läßt sich eine grobe SW Übersicht erstellen. Die Software selbst lebt natürlich von und in der Entwicklungsphase. Für den PIC gibt es kostenlose C-Compiler. Die einzelnen Komponenten müssen dann noch detailliert durchgesprochen werden.
Das ist ein grober (wirklich grober!) Überblick über die Schaltung. Das Fehler liegen, wie man weiß, meist im Detail...
Was man haben sollte:
Man kann sich sicher die einzelnen Bauteile immer wieder bestellen, vielleicht hat man auch ein Elektronikhaus vor der Haustür, so daß man sich fehlende Bauteile unkompliziert beschaffen kann. Ansonsten würde ich sagen, daß natürlich Lötkolben und Zinn, Lochrasterplatinen, Kabelverbindungen, Stecker, Buchsen und das ganze diverse Kleinzeug schon vorhanden sein sollte. Auch ist es nicht schlecht, ein kleines Sortiment an Widerständen, Elkos und Kondensatoren griffbereit zu haben. Zuletzt natürlich auch das ein oder andere Meßinstrument und auch ein Netzteil. Eine mehr oder minder eingerichtete Bastlerecke ist also schon von großem Vorteil.
Diese Sachen sind für die Hardware schon erforderlich.
Natürlich ist es möglich, wenn schon gelötet wird, die Arbeit zweimal zu machen, um jemanden zu helfen, der mit den Bauteilen keine Erfahrung hat.
Aber gerade in der Entwicklungsphase, wo alles noch ein bißchen aus Basteln und Probieren besteht, fehlt dazu einfach die Zeit. Aber der Aufbau wird möglichst genau dokumentiert, so daß man den Computer auch nachbauen kann. Und dann ist die Zeit für Hilfe bestimmt wieder da...
Hinzu kommt noch, daß man sich von dem Gedanken verabschieden sollte, hier eine perfekte Aquariensteuerung zu bekommen, die bei 20 Euro liegt. Es wird zwar billiger als die professionellen, aber wenn man die Zeit usw. rechnet, sollte man schon an der Bastelei viel Spaß haben. Sonst wird das nicht funktionieren...
So, das war es erstmal.
Ich hoffe, jeder kann sich ungefähr ein Bild machen, was für Anforderungen und auch Arbeit so ein Gerät macht. Der Preis für Fertiggeräte kommt nicht von ungefähr. Wer also vollkommen neu in diese Thematik einsteigt, sollte sich vielleicht nicht direkt an ein solches Projekt begeben, sondern, sozusagen zum üben, erstmal ein kleinere Projekte machen, wie z.b. eine digitales Thermometer mit Anzeige auf LCD und Steuerung der Heizung.
Einige haben sich ja schon bei mir gemeldet, ich denke es ist möglich ein gutes Team zusammenzustellen. Bitte nimm es mir keiner übel, wenn er nicht von Anfang an dabei ist. Gerade am Anfang ist ein kleines Team deutlich effektiver. Sobald die Erfahrungen dann da sind, wird bestimmt geholfen!
Viele Grüße,
Martin
P.S.: wann es genau losgeht, kann ich leider noch nicht sagen. Ich bin im Moment recht eingespannt, versuche aber alles unter einen Hut zu bekommen. Aber so langsam kommt der Zug ins Rollen - und das Wetter draußen lädt ja quasi ein, am Computer zu sitzen...
Nochmal einige wichtige Seiten zum Einstieg in die PICs:
http://www.sprut.de
http://www.fernando-heitor.de
http://www.mikrocontroller.net