IR-Fernschalter mit AtTiny13
Da ich den Raum nicht von 12-18 Uhr komplett abdunkeln möchte, habe ich eine Lösung entwickelt, die sich per TV-Fernbedienung fernsteuern lässt. Nun konnte ich ohne aufstehen zu müssen, die Jalousie in eine neue Position fahren.
Ich nutze als Ir-FB eine Logitech Harmony. Der IR-Code ist für einen alten Thomson TV. (23LB220S4)
Aufbau des IR-Empfängers
+5V o | .-. | |22 | | .----------. '-' | | | | VCC | (3) O------------+--------. | | | | | T | ___ |< | + | S OUT | (1) O---|___|--| BC559c ### 47µF | O | 1k |\ --- | P | | | | | +----------------->> IR_IN | 1 | | | | 7 | .-. | | 3 | | |4k7 | | 6 | | | | | | '-' | | | | | | GND | (2) O------------+ | | | | | '----------' === === GND GND
Aufbau des Steuerkreises
+5V +5V U-Rel. U-Rel. o o o o | | | | .-. | | | | |10k | _|_ _|_ | | | |___| |___| '-' | | K1 | K2 | ____ | | | '---o| \/ |o----' ___ | |/ IR_IN >>-----o|Tiny|o----------+-|___|---|----| BC549c TTL_OUT <<-----o| 13 |o------. | 4k7 | |> .---o|____|o-. | | | | | | | | | | | .-. | | ___ |/ | | | | +-----|___|-| BC549c | | 120 | | | | 4k7 |> | | '-' .-. .-. | | | | | | | | 2x | | | LED V | | | | 10k | | | - '-' '-' | | | | | | | | === === === === === === GND GND GND GND GND GND
U-Rel. ist die Schaltspannung des verwendeten Relais. Diese, kann zwischen 5-24 Volt liegen.
(Das Netzteil muss die entsprechende Spannung auch liefern! Wer nur +5V hat, kann auch nur ein +5V-Relais verwenden.)
Über TTL-OUT, gibt der µC den ausgewerteten IR-Code und ein Zeitsignal via "ttl" aus.
Aufbau des Leistungsteils
(L) (L) # # | | o | \ K1 | \ | o \o +-------. | | | | | | | | | o o o | \ K2 \ K1 \ K2 | \ \ \ | o \o o \ o \ | | | | # # # # (1) (2) (1) (2) |
Die linke Schaltung der Relais verhindert, dass beide Ausgänge zugleich mit Spannung beschaltet werden.
Es eignen sich hierfür z.B. FTR-LYCA von Fujitsu-Takamisawa (F&T), 5V, 1 We., 6A - Minirelais für die Steuerung
Ohne die Sicherheitsschaltung, kann man auch ein "Omron G6D 1A", 5V, 1 Schl., 5A nehmen. Natürlich kann auch jedes andere Relais genutzt werden. (Ein HF-46F, tut es auch!) Die Genannten, erfüllen die nötige Schaltleistug und sind dennoch sehr klein! SSR oder andere elektronische Relais, eignen sich nicht für die Schaltung von z.B. Jalouise-Antrieben. Die Spannung, die beim fahren der Antriebe entstehen, zerstören elektronische Relais. Jalousie-Antriebe verhalten sich wie Spartrafo's.
|
Es fehlt noch das Netzteil! Für den erfahrenen Elektroniker, ist das aber leicht selber zu realisieren.
____ .---------. (L)o-|_--_|--. ____ .------. ___ | | M0.1A | .--|_--_|--o(~)(+)o--|___|---+--o LM78L05 o-----+---+------O +5V C C F0.1A | | 30 Ohm | | | | _|_+ C C | ->|- | === '----o----' === === 47µF C C | | 100nF | | 100nF | | | '----------o(~)(-)o----------+-------+----------+---+------O GND (N)o---------' '------' | Trafo === 9V/0.5W GND 152.09-1
Download Intel-HEX Files...(Stand 28.02.2012)
Fuses: | hfuses: | FF hex |
lfuses: | 39 hex |
Um das File zu flashen, wird ein
Hinweis: Der Nachbau sollte nur von erfahrenen Bastlern gemacht werden! Hier wird mit 230V-Netzspannung gearbeitet!!!
Ich weise darauf hin, dass ich für Schäden die entstehen können, nicht hafte! Es zwingt einen keiner die Schaltung nachzubauen!
Die Schaltung ist bei mir seit 10/2011 in Betrieb und wurde weiter entwickelt.
Grundplatine: Ein kleines Netzteil... |
CHANGELOG: 28.02.12: kleines Bugfix: Schaltzeit "hoch" ungenau 22.02.12: Nachtlicht-Funktion an PB0/LED eingefügt. 21.02.12: Tastensperre für Sync.Funktion eingefügt. 15.02.12: Codeoptimierung, da Programmspeicherauslastung bei 99% 12.02.12: Rutime-Kalibrierung der Uhr programmiert 09.02.12: Sync.-Signalisierung an PB0 zugefügt. (LED-Ansteuerung) 07.02.12: Entfall Pegelwandler für IR-Empfänger 05.02.12: Schaltuhrprogrammierung mittels Ir-FB fertig implementiert 24.01.12: Datensicherung in EEPROM 12.01.12: Schaltuhr eingefügt, Vorbereitung Schaltuhrprogrammierung mittels Ir-FB 08.01.12: Vorwiderstände für Relaisansteuerung geändert 04.01.12: Watchdog_Timer als Zeitgeber zugefügt 03.01.12: TTL Ausgang: BER verringert... 30.12.11: kleine Codeoptimierungen |
Bedienungsanleitung:
Tastenfunktionen:
(41) | Lautstärke "+" | Jalousie öffnen |
(42) | Lautstärke "-" | Jalousie schließen |
(14) | 0 | Ausgänge löschen... alle Bewegungen stoppen, LED aus |
(16) | 3 | Runtimekalibrierung einleiten |
(17) | 6 | Kalibrierung beenden, Zeiten berechnen |
(12) | Ok | Uhr auf 20h syncronisieren |
(18) | 9 | Tasten für Runtimekalibrierung/20h-Sync. sperren |
(62) | Exit | Sperre aus |
(21) | Guide | LED für ~10 Min. einschalten |
In Klammern, der jeweilige vom IR-Empfänger erkennte Tastenbefehlscode!
Erstinbetriebname:
Bei Inbetriebnahme des Empfängers, ist die Uhr nur mittelmäßig genau. Es muss einmalig eine Runtimekalibrierung vorgenommen werden.
Dies ist nötig, da der µProzessor keine RTC (Echtzeituhr) hat. Jeder Prozessor unterliegt einer gewissen Laufzeittoleranz.
Die Taktfrequenz schwankt etwas von Chip zu Chip. Die Schwankung kann in 24h einen Laufzeitfehler von einigen Minuten (5-15 Min.!) erzeugen.
Durch die Kalibrierung, wird die Genauigkeit auf unter 3 Min. gesteigert. (Im Idealfall unter 25 Sek.!)
Die Kalibrierung kann jeder Zeit ausgeführt werden. Sie läuft genau eine Stunde und muss von Hand gestartet und beendet werden.
Die Kalibrierung wird mit der Taste "3" eingeleitet und nach möglichst genau 3600 Sekunden (1 Std.) wird die Kalibrierungsfunktion mit
der Taste "6" abgeschlossen. Der Prozessor rechnet jetzt die ermittelten Werte auf 24h hoch und speichert diese fest im EEPROM des µC ab.
Beim nächsten Anlauf wird dieser Wert wieder geladen, sodass nach einem Spannungsausfall keine erneute Kalibrierung erforderlich ist.
(Die LED signalisiert für einige Sekunden, die Befehlsausführung!)
Uhr stellen:
Um die Uhr zu stellen, muss lediglich um 20:00 Uhr, die "Ok"-Taste (bei abgeschalteter Tastensperre!) gedrückt werden. (ca. 2 Sek. später sollte die LED für einige Sekunden leuchten!)
Die LED signalisiert bei abgeschalteter Tastensperre, täglich um 20 Uhr für einige Sekunden die Uhrzeit. (So lässt sich die Ganggenauigkeit prüfen!) Ist die Sperre aktiv, wird die LED nicht eingeschaltet.
Schaltzeiten einstellen:
Ab Erstprogrammierung, ist die Uhr auf 8:15h hoch und 19:45h runter programmiert.
Um die Schaltzeiten zu ändern, einfach zur gewünschten Zeit, die Jalousie in die gewünschte Richtung fahren lassen und während die Jalousie fährt, die "Ok-Taste" drücken.
(Bei abgeschalteter Tastensperre!) Die aktuelle Zeit wird im EEPROM abgespeichert. (Die Zeiten bleiben nach einem Spannungsausfall erhalten!)
Anmerkung: Vorher Runtimekalibrierung durchführen und dann erst Uhr stellen! (Sonst programmiert man nur Mist ein!)
zurück / Home | Johnes.eu | © Johnes |
Ich weise darauf hin, dass ich mich von den Inhalten der von mir verlinkten Seiten distanziere! Für die Inhalte der verlinkten Seiten ist allein deren Verfasser verantwortlich. (mehr Infos/Disclaimer...)