Inhalt
- Arduino
- ATtiny
Arduino
Was
die Programmiertechnik (Skripte)angeht, für Fragen und Hilfestellungen um den Arduino bist Du hier richtig:
http://forum.arduino.cc/index.php?PHPSESSID=9e4aba9d0779caeb274f9b70c690bdac&board=31.0
http://www.arduinoforum.de/arduino-Forum-Arduino-Projekte
Was brauche ich noch? Elektronikwissen um Transistor, Diode, Wiederstande usw.
http://www.elektronik-kompendium.de/
Beim Arduino ist ein Prozessor aus der Atmel- Familie verbaut.
Entscheidend
ist nicht die Bezeichnung des Boards (Nano, Uno, Mega usw) sondern der
verbaute Chip (Atmega 168, 328, 1280, 2520). Ports (also Aus- u. Eingänge) haben für unsere
Belange alle Chips genug. Insbesondere der Flash- Speicher auf dem Chip, wo der
Maschienencode für das Programm liegt, macht hier zB bei einer
Serveranwendung schnell einen Strich durch die Rechnung.
Und wegen des Speichers habe ich
mich für einen Mega 2520 entschieden und gleich 2 für je 12 € über
Amazon erstanden. Wahrscheinlich hätte es auch ein 328-iger getan (zB Uno, Nano), aber so habe ich genug Reserve an Ports, Arbeitsspeicher und PWM- Ausgängen. Und der Preis ist super. Ein Ethernetshield mit Kartenslot macht den Mega auch
noch als Server tauglich (das heist Datenübergaben nicht nur für Internet, sondern auch
ohne Internetanbindung für Verbindungen via Netzwerkkabel an den PC)
und Daten können lokal auf der Micro-SD- Karte gespeichert werden!
Eine
Relais-Karte für 5 € und ein RTC- Modul für den Zeitstempel der
Temperaturmessungen runden das vorerst ab. Ob die Relaiskarte die Lüfter
schalten wird oder ich per FET und PWM den Lüfter mit 3
Geschwindigkeiten steuere, weis ich noch nicht. Die Lüfter und den Servo
kann ich nicht direkt über den Arduino steuern, da die Ports max 40 mA
vertragen! Also ist ein bisschen Elektronik drumherum notwendig.
Was schwebt mir eigentlich vor?
Ein Überhitzungsschutz
a la Veco ist für meine Kollis nicht nötig. Bei unter 90 Grad im Stillstand ist
alles ok.
Laut Wiki entzündet sich Holz erst ab 280 Grad, Kunststoffe ab 200 Grad, Polyethylen ab 350 Grad.
Temperaturstabil sind die Doppelstegplatten bis 125 Grad, andere Kunststoffe aber nur bis 40 Grad (Siehe Veco).
Der Arduino soll in meinem Fall den Lüfter einschalten bei 5 Grad über
Zimmertemperatur um Anfangs das Takten zu verhindern. Der Kolli läd sich quasi
auf.
Zusätzlich den Servo für die Luftklappe auf.
Bei 0 Grad Differenz Lüfter aus. Bei Differenz -2 Grad Servoklappen zu um bei
Bewölkung den Lüfter ausgehen zu lassen aber nicht ständig Klappen auf und zu.
Die Werte können ja noch angepasst werden, je nach Zufriedenheit.
Ich möcht gleich die Temperatursensoren für die Aufzeichnung/ Leistungserfassung
benutzen. DS1820 habe ich günstig erstanden( 1,70 €/ Stk) und die lassen sich ohne weiteres direkt am Arduino betreiben. (1 Wire Bus, ich brauche keine Analog/Digital- Wandler).
Sensor
an Stiftsockelleisten anlöten und dann in Stiftsockelbuchsen auf
Platine stecken, --> dann lassen sich die Sensoren einfach
austauschen.
Ein Aussentemperatursensor, pro Kolli ein Sensor am Lüfter im Luftweg nach innen, für jedes
Zimmer ein Sensor.
Später auch evtl. Feuchtesensor. Und eine aktive
Abluft auf der Nordseite um Wärme im Haus besser zu verteilen. Mal
schauen.
Bei einem "umgedrehten" Kolli würde ich zusätzlich einen Sensor Nähe
Lufteingang bzw. "oben" platzieren. Temperaturdifferenz wird dann von dem Sensor bestimmt,
der die höhere Temperatur hat.
Vieleicht ist das aber auch nicht nötig, aber das läst sich ja dann im Praxisversuch
feststellen.
Und es läst sich wunderbar eine Startsequenz erstellen. Erst Kolli1 Servoklappe auf, dann Lüfter an. Als nächstes Kolli 2.
Ich
hatte den Fall, das zugleich beide Kollis eingeschaltet haben (4 Lüfter
a 0,3 A und 2 Servomotoren). Das hat mein Netzteil (2.2 A) nicht
gepackt!
Die Spannung brach zusammen durch die Anlaufströme der 6 Motoren.
Das
gleiche Phänomen habe ich auch bei Verwendung eines Solarmodules! Hier
könnte zB eine Routine erst ab einer bestimmten Spannung am Modul die
Startsequenz starten.
Auch
besteht eine Verbindung von Kolli1 zu Kolli2, derzeit ist diese zu. Bei Bedarf
könnte ich per Servo mit einer Klappe beide Kollis zu einem Kolli 5 qm
verbinden und evtl. schon bei schwacher Sonne Wärme ernten. Oder
Umluftbetrieb. Oder im Sommer Nachts das Wohnzimmer kühlen. Alles
vollautomatisch! Ich muss mir dazu nur die richtige Programmierlogik
ausdenken.
Diese 4 Komponenten sollen den Arduino zur Eierlegendenwollmilchsau machen:
- Temperaturlogger mit DS1820
- Serverbetrieb, Update auf PC ermöglichen (per Lan an Router -> per WLan dann abrufbar )
- Luftklappensteuerung/ Servosteuerung
- Lüftersteuerung/ Drehzahlsteller/ Luftvolumen auslesen
später auch das:
(und
das sind Zusatzfunktionen, die nur programmiert werden müssen denn die
Hardware ist ja schon vollständig, mit Ausnahme Display und
Erweiterungen)
- Leistungsermittlung und Aufzeichnung
- Anzeigen verschiedener Parameter auch ohne PC per LCD- Display
- Update ins Web?
- Sommer: mit Nachtluft kühlen/ Winterbetrieb: mit Solarertrag heizen
- Umluft oder Zusammenschaltung der Kollis
- evtl auch eine Funktionsüberwachung mit Fehlerspeicher, funktioniert alles in vorgegebenen Parametern? (Stromaufnahme, Aufzeichnung, Servo, Sensoren usw)
- Erweiterung der Steuerung/ Aufzeichnung auf 4 weitere FassadenKollis (Balkon & Erdgeschoss); Ports sind genug da! Abluftsteuerung auf der Nordseite.
Ich habe mal die Beispiele aus der Arduino- IDE einzeln ausprobiert (Server, Logger (txt. Datei und csv.Datei auf SD-Karte), Temperaturerfassung mit 1 Wire Bus und Servoansteuerung). Das lief super!
Ich muss mir also nur die richtige Verschaltung der Elektronik und die Programmierung ausdenken bzw aus diesen Beispielen zusammen friemeln.
Update 24.03.16:
Bei mir dauerts noch (bin gerade mit Photovoltaik beschäftigt) aber hier wurde nun eine Steuerung und Logger mit Serveranbindung umgesetzt. Da werde ich mich bestimmt bedienen (warum das Rad noch mal erfinden?) *grins*
http://www.mahnecke.de/Black300-Forum/thread.php?board=28&thread=45&page=4#35
Schick ist auch die Möglichkeit, mal "life" die Temperaturverläufe mit anzusehen, Danke Highway.
Mal schauen, wie lange wir mit gucken dürfen....
Praxisumsetzung:
wenn ich soweit bin...gehts weiter.....
ATtiny85
Einer der kleinen Brüder aus der Atmel- Familie.
5 Stück incl. Sockel habe ich mir für 11 € gegönnt.
Der
Vorteil ist die (eingeschränkte) Kompatibilität zum großen Bruder. Ich
muss also nur eine Programmiersprache lernen. (Arduino IDE
->eingeschränktes C/ C++, Alternativ geht auch Basecom oder
Assembler, aber warum sollte ich?).
Und ich kann ihn über den Arduino
flashen/ programmieren! Auch das habe ich ausprobiert. Mein "Blink-Dings" mit dem ATtyni85 hat geblinkt. Das ging ganz gut, nach einigen Versuchen und nachdem ich nochmals nachgelesen habe, die Fehlermeldungen in der Arduino-IDE beim flashen einfach zu ignorieren. Gute Anleitung gibt es hier:
http://www.frag-duino.de/index.php/maker-faq/37-atmel-attiny-85-mit-arduino-arduinoisp-flashen-und-programmieren
Der
ATtiny ist für "einfache" Aufgaben gedacht auf Grund seiner beschränkten Ports
und des kleinen Arbeitsspeichers. Es ist zwar ein nur eingeschränktes Repertoire
der Arduino- Sketche/ Schlüsselwörter möglich, aber für Servomotor-
Ansteuerung reicht es. Und für eine Temperaturdifferenzsteuerung mit
Hysterese auch.
Da
ich mit meiner analogen Temperaturdifferenzsteuerung (siehe oben)
soweit zufrieden bin, soll erst einmal nur die Servoklappensteuerung
ersetzt werden. Vieleicht werden auch Temperaturdifferenzsteuerung und
Servoansteuerung im ATtiny vereint. Da werden die Ports am ATtiny85 aber knapp, mal sehen.
Ein Temperaturlogger ist durchaus auch möglich. http://forum.arduino.cc/index.php?topic=55513.0
Für einen Temperaturlogger, wie ich ihn haben will, reicht es allerdings nicht!
Und der Attiny darf nur mit 5 Volt betrieben werden! Also ist ein Schaltreglermodul DC-DC Step-Down LM2596S für 2-3 € bei Betrieb mit 12 Volt Pflicht.
Das habe ich gefunden und sollte für die Servoansteuerung taugen, evtl noch anpassen.
http://elektronik.kaibareis.de/servo_ctrl/
http://elektronik.kaibareis.de/servo_ctrl/ATTINY13%20Servo%20CTRL.pdf
Das werde ich bei Gelegenheit mal "fliegend " aufbauen, den ATtiny programmieren und testen.......
Praxisumsetzung:
wenn ich soweit bin...gehts weiter.....
Keine Kommentare:
Kommentar veröffentlichen