TV-Lift für kleine Räume

Seite 2: Elektrischer Aufbau

Inhaltsverzeichnis

Zur Ansteuerung der Motoren nutze ich vier gesockelte Relais des Herstellers Finder, die von einer Hutschiene im hinteren Teil des Kastens getragen werden (K1 ist Modell 46.61.9, die anderen 46.52.9). K1 schaltet den Strom für den Linearmotor ein und aus. Mit K2 kann die Polarität und die Richtung gewechselt werden. Ist K2 unbetätigt, fährt der Linearmotor ein; ist K2 betätigt, fährt der Linearmotor aus.

Der Jalousiemotor hat zwei Leiter für die Phase. Je nachdem, in welche Richtung er drehen soll, wird die Phase auf den einen oder den anderen Leiter geschaltet. Die Relais K3 und K4 schalten die Phase jeweils auf den einen oder den anderen Leiter.

TV-Lift Elektronik (6 Bilder)

Verschaltung der Relais

Es muss unbedingt vermieden werden, dass die Phase auf beide Leiter gleichzeitig geschaltet wird. Die Relaisspulen von K3 und K4 sind deshalb über einen Öffnerkontakt des jeweilig anderen Relais so verriegelt, dass das eine Relais nicht betätigt werden kann, wenn das andere Relais betätigt ist. Freilaufdioden habe ich nicht an den Relais verbaut.

Die Anschlüsse der Relaissockel sind berührungssicher und der geplante Einsatzort unkritisch. Sind Kinder oder andere gefährdete Personen im Haushalt, sollte man die Relais und deren Verdrahtung in einen geschlossenen Kasten verbauen. Bei 12 Volt und 300 Ohm Innenwiderstand der Relais wird ein Steuerstrom vom 40 Milliampere je Relais benötigt.

Drei Endschalter überwachen die Lage der Schublade und des TVs: „Schublade hinten“, „Schublade vorne“ und „Jalousie oben“ (TV eingeschwenkt). Schließlich habe ich vorne am Gerät zwei Taster und einen Infrarotempfänger montiert, mit denen die Programme gestartet werden können.

In der Relais-Verschaltunge ist bereits eine Verriegelung vorgesehen, so dass nicht beide Relais zur Ansteuerung des Jalousiemotors gleichzeitig betätigt werden können. Trotzdem wollte ich alle Bedingungen in der Hardware der Steuerplatine abgebilden, damit kein Ausgang geschaltet werden kann, wenn er nicht geschaltet werden darf. Für die Arduino-Uno-Steuerung habe ich daher ein Shield entwickelt, auf dem alle zusätzlichen Verschaltungen ihren Platz finden.

TV-Lift: Arduino und Shield (9 Bilder)

Arduino Uno mit Shield

Die Eingänge (Connector 1 bis Connector 3), bzw. die Kontakte NO (normally open) und NC (normally closed) der drei Endschalter, liegen an den Arduino Uno Pins D8 bis D13. Diese Leitungen werden über die Pulldown-Widerstände R11 bis R16 nach Masse gezogen. Man könnte auch die im ATMEGA328P verbauten Pullup-Widerstände verwenden, hätte dann aber eine invertierte Logik. An jeder Leitung hängt darüberhinaus eine LED mit ihrem Vorwiderstand, damit man den Zustand der Leitung direkt erkennen kann. Des Weiteren habe ich an Connector 4 drei weitere Leitungen vorgesehen, für die Taster und den IR-Empfänger.

Hardware-Logik

Diese Bedingungen müssen erfüllt sein, wenn das genannte Relais betätigt wird.

K1 „Linearmotor ein/aus“

  • Endschalter „Jalousie oben“ NO betätigt
  • Endschalter „Schublade hinten“ NC nicht unterbrochen (aber nur, wenn nicht zeitgleich K2 betätigt wird)
  • Entsprechender Ausgang vom Arduino eingeschaltet

K2 „Linearmotor umpolen“

  • Endschalter „Jalousie oben“ NO betätigt
  • Endschalter „Schublade vorne“ NC nicht unterbrochen
  • Entsprechender Ausgang vom Arduino eingeschaltet

K3 „Jalousie runter“

  • Endschalter „Schublade vorne“ NO betätigt
  • (Kein zusätzlicher Endschalter unten, nur Jalousiemotor)
  • Entsprechender Ausgang vom Arduino eingeschaltet

K4 „Jalousie rauf“

  • Endschalter „Schublade vorne“ NO betätigt
  • Endschalter „Jalousie oben“ NC nicht unterbrochen
  • Entsprechender Ausgang vom Arduino eingeschaltet

Die Logik habe ich in TTL-Technik mit vier UND-Gattern und einem ODER-Gatter abgebildet. Die unbenutzten Eingänge der TTL-Gatter sind auf 1 gelegt, um unnötigen Stromverbrauch und Störungen zu vermeiden. Anhand des Ausdrucks „NC (normally closed) nicht unterbrochen“ erkennt man, dass die Funktion bei Drahtbruch gestoppt wird.

Der erlaubte Ausgangsstrom an den Arduino-Pins beträgt 40 Milliampere. Das ist allerdings das „absolute maximum rating“, empfohlen werden maximal 20 Milliampere.

Nun werden die Relais nicht direkt vom Arduino angesteuert, sondern es ist die Logik zwischengeschaltet. Diese ist aber ebenfalls nicht geeignet, direkt die Relais zu treiben. Deshalb nutze ich als Ausgangstreiber den TD62783AP „8CH HIGH-Voltage Source Driver“ als High-Side-Switch. Die Spannungsversorgung des Ausgangstreibers beträgt 12 Volt, die ein entsprechendes Netzgerät für den Arduino Uno bereitstellt, und daher auch an VIN des Arduino anliegen. Der Treiber-IC enthält an jedem Ausgang eine Freilaufdiode, aber ich habe mit D1 bis D4 noch mal welche vorgesehen. Die Eingänge des Ausgangstreibers werden mit den 5 Volt des Arduino Uno bzw. der TTL-Logik angesteuert.

Schon beim Layouten wurde mir bewusst, dass sich Brücken nicht vermeiden lassen. Eventuell hätte ich die Gatter der Logik-ICs geschickter miteinander verschalten können, um die ein oder andere Brücke zu vermeiden. Da mir in der kostenlosen Version der Schaltungssoftware Eagle nur 100 mm × 80 mm Fläche zur Verfügung stehen, wurde es ganz schön eng auf der Leiterplatte. Während ich die Leiterplatte im Ätzbad hatte, fiel mir auf, dass ich die Markierungen für Befestigungsbohrungen vergessen hatte. Diese habe ich auf der Leiterplatte mit einem Geodreieck angezeichnet und gebohrt sowie im Nachhinein im Layout ergänzt.

Mit 24-mil-Leiterbahnen (0,61 mm) hatte ich bereits gearbeitet, 12-mil-Leiterbahnen (0,30 mm) habe ich zum ersten Mal verwendet, weil ich an einigen Stellen mit Leiterbahnen durch den Pitch (Mitte-Mitte-Abstand von Bauteilanschlüssen) musste. Dies war jedoch keine so gute Idee, weil schon im Druck des Brücken vorhanden waren. Diese Brücken habe ich nach dem Ätzen entfernt, indem ich die Lötpads mit einem Skalpell schmaler gemacht habe. Die Außenmaße der Leiterplatte betragen 75 mm × 100 mm.