DU LERNST HIER... |
wie du die Kenntnisse über Computing, Sensorik und IoT in deinem häuslichen Umfeld einsetzen kannst, denn in Zukunft werden die meisten elektrischen Einrichtungen bei dir zu Hause durch Mikrocontroller gesteuert sein und drahtlos kommunizieren. |
WICHTIGE WARNUNG |
Du wirst hier ein Verfahren kennen lernen, mit dem du Geräte, die mit Netzspannung betrieben sind, ohne Gefahr mit der Oxocard verwenden kannst. |
FUNKSCHALTER BESCHAFFEN |
Du nimmst den Funkschalter in Betrieb, indem du irgendeinen "Verbraucher", z.B. eine Bürolampe in der Funksteckdose einsteckst und gemäss der Anleitung eine Paarung mit dem Tasten-Sendemodul vornimmst. (Bei modernen Systemen genügt es, dazu die Funksteckdose am Netz anzuschliessen und innerhalb weniger Sekunden auf der Fernsteuerung die Einschalttaste zu drücken, bis die Steckdose einschaltet. Bei anderen Steckdosen muss man zuerst eine Paarungstaste klicken.) |
FUNKSCHALTER UMBAUEN |
Der Trick, um das Schalten computergesteuert durchzuführen, besteht darin, dass du das Sendemodul so umbaust, dass die manuelle Ein-/Ausschaltbetätigung der Tasten zwei Reedrelais übernehmen, die vom Mikrocontroller angesteuert werden. Die Reedrelais haben gegenüber gewöhnlichen Relais den Vorteil, dass sie direkt mit einen GPIO geschaltet werden können und so klein sind, dass sie Platz im Schaltergehäuse haben.
Falls dein Schaltermodul zwei Schalthebel hat, benötigst du nur eine Seite. Öffne das Schaltermodul und finde heraus, welches die Lötpins der Ein- bzw. der Ausschalttaste sind (1).
Löte zuerst die Relais an diesen Lötpins an (2). (Der Relaiskontakt liegt also parallel zum Tastenkontakt.) Löte nachher an den Spulenanschlüssen je 2 Kabel an (3). Da sich im Innern des Relais eine Schutzdiode befindet, musst du dir die Anschlusspolarität merken. Bei diesem Relais wird Relaisanschluss 3 an der Oxocard mit GND und Relaisanschluss 2 mit dem GPIO-Anschluss IO18 bzw. IO19 verbunden. Die GND-Anschlüsse sind zusammengeführt. Nach dem erfolgreichen Test, kannst du das Schaltermodul wieder schliessen. Zum Herausführen der Kabel bringst du mit einer Feile einen kleinen Ausschnitt am Gehäuse an. |
MUSTERBEISPIELE |
Das manuelle kurzzeitige Tippen auf den Ein- oder Ausschaltknopf ersetzt du im Programm durch ein kurzeitiges Schliessen der Reedrelais. Mit dem folgenden Programm machst du einen Test und schaltest den Verbraucher endlos während 5 Sekunden ein, und dann während 2 Sekunden wieder aus. Programm: from oxocard import * from machine import Pin from time import sleep P_ON = 19 P_OFF = 18 pOn = Pin(P_ON, Pin.OUT) pOff = Pin(P_OFF, Pin.OUT) def turnOn(): pOn.value(1) sleep(0.1) pOn.value(0) def turnOff(): pOff.value(1) sleep(0.1) pOff.value(0) while True: dot(3, 3, GREEN) turnOn() sleep(5) dot(3, 3, RED) turnOff() sleep(2) |
MERKE DIR... |
Ist dieser Test erfolgreich abgelaufen, so stehen dir unzählige Möglichkeiten offen, Haushaltgeräte mikrocontrollergesteuert ein- und auszuschalten. Mit deinen Kenntnissen über Sensoren und die Datenkommunikation über das WLAN und Internet kannst das Ein-/Ausschalten durch lokale oder weit entfernte Sensordaten auslösen oder das Gerät mit einem Handy, das sich im gleichen Raum oder auch weit entfernt auf dem Internet befindet, fernsteuern. |
REGELKREISE |
Mikrocontroller-gesteuerte Systeme werden oft zur Regelung von Systemen verwendet, damit diese einen bestimmten Systemzustand einhalten, beispielsweise eine bestimmte Temperatur bei Heiz- und Kühlsystemen, einen bestimmten Füllstandes bei Reservoiren, eine bestimmte Fahrspur bei einem autonomen Fahrzeug, usw. In solchen automatisierten Systemen nimmt ein Sensor den aktuellen Wert einer bestimmten Stellgrösse auf (genannt Istwert). Der Mikrocontroller vergleicht diesen Wert mit einem Vorgabewert (genannt Sollwert): Weichen die beiden Werte voneinander ab, so aktiviert der Mikrocontroller einen Aktor, der den Istwert in Richtung des Sollwerts beeinflusst. Schematisch wird dies als Regelkreis dargestellt, hier am Beispiel einer Raumheizung:
Den Schaltpegel (Sollwert) wählst du relativ hoch, damit du nicht zu lange warten musst. Programm: from oxocard import * from machine import Pin from time import sleep from sht31 import SHT31 soll = 70 P_ON = 19 P_OFF = 18 pOn = Pin(P_ON, Pin.OUT) pOff = Pin(P_OFF, Pin.OUT) sht = SHT31() def turnOn(): pOn.value(1) sleep(0.1) pOn.value(0) def turnOff(): pOff.value(1) sleep(0.1) pOff.value(0) isOn = False turnOff() while True: temp, humi = sht.get_temp_humi() ist = int(temp + 0.5) if ist > soll: color = RED else: color = BLUE display(ist, color) if ist > soll and isOn: isOn = False turnOff() if ist <= soll and not isOn: isOn = True turnOn() |
ZUM SELBST LÖSEN |
|
ZUSATZSTOFF: EINBAU VON RELAISMODULEN |
Achtung: Diese Arbeiten dürfen nur unter Anleitung und Aufsicht einer Person durchgeführt werden, die professionelle Erfahrung im Umgang mit Hochspannungen hat. Das Grundprinzip besteht darin, dass durch einen sorgfältigen Aufbau jede Berührung mit der Netzspannung und die Möglichkeit eines Kurzschlusses des Hochspannungs- mit dem Niederspannungsteil ausgeschlossen ist, und zwar auch bei unsachgemässen Betrieb durch Fremdpersonen oder Kinder. Grosse Sicherheit erreicht man durch den Einbau von Relaismodulen in geschlossene Steckdosen bzw. Steckdosen-Leisten. Es ist besonders darauf zu achten, dass die Kabel des Hochspannungsteils in keinem Fall, auch im längeren Betrieb und bei Vibrationen, mit dem Niederspannungsteil in Berührung kommen (Kabelzugentlastung, Fixieren des Relaismoduls, usw.). Es wird hier eine einfache und billige Einbaumöglichkeit unter Verwendung einer mechanischen Zeitschaltuhr beschrieben. Geräte mit 4 Gehäuseschrauben statt Schnappverschlüssen sind besser gegen unbeabsichtigtes Öffnen geschützt. Als Relais wird das Breakout-Board von Seed verwendet, das einen Grove-Anschluss hat und ohne Treiber über das GPIO der Oxocard betrieben werden kann (siehe Kapitel Treiberschaltungen). Vorgehen:
|