Wohnzimmerbeleuchtung StarLight
Wohnzimmerbeleuchtung StarLight:
Motivation und Zielsetzung
Ein Kronleuchter
Als wir unser Haus im Oktober 2002 kauften und im Dezember 2002 bezogen befand sich im Wohnzimmer ein messingfarbener nostalgischer Kronleuchter.
Irgendwann wurde der Kronleuchter gegen einen mittelalterlichen Kronleuchter aus Zinn mit Kerzenleuchten ausgetauscht.
Es war schon überraschend, wie sehr man sich an das Ding gewöhnte und wie wenig einem solch eine hübsche Beleuchtung noch aufgefallen ist.
Doch irgendwann kam dann schon der Wunsch nach etwas zeitgemäßem auf.
Über Esstisch und Wohnzimmertische fehlte über Jahre hinweg eine geeignete Beleuchtung und wir diskutierten schon immer wieder über andere Beleuchtungsmöglichkeiten.
Es wurden unterschiedliche Lösungen diskutiert, angefangen bei fliegender Verkabelung über Halogen-Schienen-Systeme bis hin zur Holzdecke mit integrierter Beleuchtung.
Natürlich liefen hier - wie üblich - die Geschmäcker zwischen Mann und Frau auseinander.
Aber, allein durch die Diskussion der Wohnzimmerbeleuchtung war damit das Projekt eigentlich schon gebohren.
Die alte Wohnzimmerdecke
Nach endlichen Diskussionen, ausloten der Möglichkeiten und x Jahren der schönen Kronleuchterbeleuchtung viel in unserer Familie dann die Entscheidung eine neue Beleuchtung jetzt umzusetzen.
Die meiste Flexibilität - was die Positionierung der Leuchtmittel betrifft - war mit einer Holzdecke zu erreichen und die Kabel konnten damit schön versteckt werden.
Also wurde zunächst eine Holzdecke geplant die eine integrierte Beleuchtungsanlage haben sollte.
Die Beleuchtungsanlage soll aus mehreren unterschiedlichen Leuchtelementen (Lampenmodulen) bestehen.
Die Leuchtelemente sollen unabhängig voneinander steuerbar sein.
Da die Hausinstallation nur einen Serienschalter mit zwei separaten Phasen vorsieht soll die Steuerung mittels einer universellen Funkfernbedienung erfolgen.
Das System soll folgende Teilfunktionalitäten besitzen:
- Serienschalter steuert Durchgangsbeleuchtung und dient als Hauptschalter für Beleuchtungssystem
- Separate Steuerung aller Leuchtelemente und Bedienung der Leuchtelemente über Funkfernbedienung
- Aktivierte Beleuchtungselektronik übernimmt auch Kontrolle über Durchgangsbeleuchtung
- Ein- und Ausschalten der Beleuchtungselemente und Preset der Helligkeiten über Fernbedienung
- Dimmen der Beleuchtungselemente, Anzeigen der aktuellen Betriebsstati über Fernbedienung
- Erfassung der Umgebungstemperatur der Leistungselektronik, Notabschaltung bei Übertemperatur
- Umsetzung Single-Master-Multi-Slave und Kommunikation über RS485 mit eigenem RS485 Protokoll
- Der Master bildet die Schaltzentrale und Verbindung zur Fernbedienung
- Jeder Slave übernimmt Steuerung eines einzelnen Lampenmoduls
- LCD-Dislay auf Master-System sowie 4 Tasten für Menülogik
- Akustischer Signalgeber auf Master und Slave für Systemkontrolle
Das Projekt
"Konstruktion und Einbau einer Holzdecke im Wohnraum inklusive Beleuchtungsanlage mittels Mikrocontroller gestützter Steuerung für Lichtfunktionen und Funkfernbedienung"
war geboren.
Herzlich Willkommen bei meinem Projekt
StarLight
Funktionsbeschreibung
Das Projekt teilt sich in vier wesentliche Einzelkomponenten auf:
Die einzelnen Funktionen sind sehr umfangreich so dass ich auf Details wie üblich im Bereich der Realisierung näher eingehen möchte.
Ich beschränke mich hier an dieser Stelle zunächst wieder auf die reinen Funktionsumfänge meines Systems, aufgeteilt nach Funktionskomponenten.
Natürlich lasse ich mir es nicht nehmen nochmals explizit auf die Gefahr von Netzspannung hinzuweisen!
Für alle Interessierten sei an dieser Stelle auch auf meine Dokumentation verweisen, welche sich als Download im Bereich
Dokumentation und Daten
befindet.
Achtungshinweis
Spannungsversorgung StarLight-Power
Die alte Wohnzimmerdecke
Die Komponente StarLight-Power verfügt über die folgenden einzelnen Funktions- / Teilkomponenten welche ich unter
Umsetzung und Realisierung
noch genauer beschreiben möchte:
- Spannungsversorgung 230V˜ - SUP
- Feinsicherung für Primärspannung (Feinsicherung 160 mA flink) - SUP
- Umsetzung Schaltnetzteil auf separater PCB - SUP
- Zwei LED’s für 5V Power 1 und Power 2 zeigen - SUP
- Kühlkörper für Schaltregler - SUP
- Anschlussklemmen für 5V Spannungsversorgung - SUP
- Feinsicherung für Sekundärspannung (2 x 1A) - SUP
- Kopplungsmöglichkeit beider Signalpfade - SUP
Zentralrechner StarLight-Master
Das Master-Modul
Die Komponente StarLight-Master verfügt über die folgenden einzelnen Funktions- / Teilkomponenten welche ich unter
Umsetzung und Realisierung
noch genauer beschreiben möchte:
- Einsatz eines ATMega128 (Kompatibilitätsmodus OFF) - ATMEGA128
- Betrieb des ATmega128 mit 16 MHz - ATMEGA128
- SW-RS232 für Tracing mit PC, 10-pol. Pfostenstecker - TRACE
- ISP-Schnittstelle für Programmierung 6-polig für AVRISPMKII - ISP
- RS485-Interface zur Kommunikation mit Slaves - RS485
- 1Wire-Interface für Temperatursensor DS18S20 - DS18S20
- Reset über externer Taster und ISP-Interface - ATMEGA128
- Anbindung eines externen EEPROM für Datenspeicherung - EEPROM
- 4 Tasten für die Bedienung des Statusmenü OnBoard - KEY
- LCD-Display 16x3 Zeichen für Statusmenü - LCD
- Low-Current LED für System-Alive - LED
- ADC-Geräuschreduktionsbeschaltung - ATMEGA128
- Relaisstufe für Umschaltung Durchgangslicht - RELAIS
- Spannungsversorgung mittels Schaltnetzteil 5V - SUP
- Kontrast und Helligkeit wird von Display fixiert, nicht einstellbar - LCD
- PowerSave Mode für Display - LCD
- Beleuchtung des Display mit weißer Hintergrundbeleuchtung - LCD
- Ansteuerung des Display über 4-Bit-Modus - LCD
- Anbindung der Fernbedienung über SCART-RS232-Interface - SCART
- Zusätzliche Anschlussklemmen für 5V Spannungsversorgung - CON
- Master speicher sämtliche Betriebszustände - EEPROM
- Bereitstellung aller Informationen für Fernbedienung - SCART
- Empfang von Datenpaketen aus Fernbedienung - SCART
- Persistente Speicherung der Betriebsdaten - EEPROM
- Nach StartUp Einstellung Dimmerbetrieb (Last Mode) - EEPROM
- Akustischer Signalgeber - SOUND
- Anzeige der Übertemperatur - LED
- Schaltbare Steuerung des RF-SCART-Adapters - SCART
- Anzeige eines Systemfehlers - LED
Dimmermodul StarLight-Slave
Das Slave-Modul
Die Komponente StarLight-Slave verfügt über die folgenden einzelnen Funktions- / Teilkomponenten welche ich unter
Umsetzung und Realisierung
noch genauer beschreiben möchte:
- Einsatz eines ATMega168 - ATMEGA168
- Betrieb des ATmega168 mit 20 MHz - ATMEGA168
- RS232 für Tracing mit PC über 10-pol. Pfostenstecker - TRACE
- ISP-Schnittstelle für Programmierung 6-polig für AVRISP mkII - ISP
- RS485-Interface zur Kommunikation mit Master - RS485
- Slave-Adresse über 4-Bit DIP-Schalter konfigurierbar - RS485
- Nulldurchgangserkennung mittels Optokoppler für Dimmer - DIM
- Dimmersteuerung mittels optoentkoppeltem IGBT - DIM
- 1Wire-Interface für Temperatursensor DS18S20 - DS18S20
- Reset über externer Taster und ISP-Interface - ATMEGA168
- Nach Systemstart Beleuchtung aus bis Initialisierung - SSD
- Low-Current LED für System-Alive - LED
- ADC-Geräuschreduktionsbeschaltung - ATMEGA168
- Spannungsversorgung über Schaltnetzteil des Master - SUP
- Lichtsteuerung An/Aus über Solid-Sate-Relais - SSD
- Kühlkörper für IGBT mit Wärmeleitpaste - DIM
- Anschlussklemmen für 230V˜ 3-polig - CON
- Anschlussklemmen für Beleuchtung 3-polig - CON
- Anschlussklemmen für Versorgungsspannung +5V - CON
- Sicherungshalter mit Feinsicherung - DIM
- Schaltungsabsicherung über Varistor - DIM
- Slave hat keine Speicherung von Informationen - EEPROM
- Akustischer Signalgeber - SOUND
Funkfernbedienung Betty
Betty
Die Betty verfügt über die folgenden einzelnen Funktions- / Teilkomponenten welche ich unter
Umsetzung und Realisierung
noch genauer beschreiben möchte:
- Senden von Steuerinformationen zum Master
- Empfangen von Statusinformationen des Master
- Gesamtanlage steuern
- Lichter steuern
- Dimmwerte steuern
- Grafischer Überblick über Deckenbeleuchtung
- Über Zifferntasten einzelne Segmente Anwählbar
- Dimmung für ausgewähltes Segement mit Cursortasten
Umsetzung und Realisierung
Die Holzdecke im Teilaufbau
Im folgenden befinden sich die Detailbeschreibungen zu den einzelnen Funktionskomponenten und Teilmodulen.
Doch zu Beginn möchte kurz ein paar Worte zum Systemkonzept verlieren.
Die Bedeutung des Netzteils ist klar.
Auf diesem befindet sich das - aus Platzgründen innerhalb der Holzdecke - eigenst für das Projekt entwickelte Schaltnetzteil für die doppelt ausgelegten 5V Versorgungsspannungen.
Über das 5V Netzteil werden alle Modulkomponenten innerhalb der Holzdecke versorgt.
Die Beleuchtungsanlage wird als klassisches Single-Master-Multi-Slave-System ausgelegt.
Der Master besitzt sämtliche Intelligenz und steuert die 8 insgesamt im System vorhandenen Slaves.
Auf dem Master befindet sich neben dem Controller noch externer Speicher, ein Display und Tasten auf dem Board mittels derer es möglich ist die Anlage zu steuern.
Außerdem wird der zur Betty gehörende SCART-Adapter am Master betrieben, er dient als RF-Funkempfänger für die Betty.
Damit stellt der Master das Herzstück der Anlage dar.
Die Slaves selbst sind im Wesentlichen schaltbare Phasenabschnittdimmer mit einigen Zusatzfunktionen wie z.B. Temperaturmessung.
Die Kommunikation des Masters mit den Slaves erfolgt über einen in der Holzdecke verlegten RS485 Systembus mit eigener Protokollspezifikation.
Die folgenden zwei Darstellungen zeigen den schematischen Aufbau der Holzdecke mit den Beleuchtungsmodulen:
Beleuchtungsmodule
BUS-System und Kommunikationswege
Doch nun wird es Zeit, die einzelnen Details genauer zu betrachten!
|
|
|
StarLight Power
|
StarLight Master
|
StarLight Slave
|
|
Anschlüsse Power-Board
|
|
Anschlüsse Master-Board
|
|
Anschlüsse Slave-Board
|
Geografische Gegebenheiten
Die folgende Darstellung zeigt die Fläche und Form des Wohnzimmers in welches die Holzdecke eingebaut wurde.
Auch die Position und Anordnung der Lampen ist zu erkennen.
Um die Gesamtfläche aufzulockern wurde nicht die gesamte Fläche mit Holz zugepflastert.
Es wurde vom Rand her jeweils ca. 50cm Platz vorgesehen. Die Panelen wurden quasi als leicht abgehängte Kassette montiert.
Für die Ausführung der Holzdecke wurden Panelen unterschiedlicher Längen verwendet welche durch Kupfer-Antik-Elemente unterbrochen / aufgelockert sind.
Unter den Kupfer-Antik-Platten wurden die 8 Dimmer und der Master installiert. Die Platten werden durch Nut und Feder sowie Magnet-Schnappverschlüssen gehalten.
Damit entstand einer der wichtigsten Rahmenbedingungen für das Projekt, was die maximal zulässige Gesamthöhe der Elektronik von ca. 32mm betrifft,
da die gesamte Elektronik innerhalb der Holzdecke in der konterlattung verschwinden musste.
Lageplan Holzdecke
|
Spielelemente und Leuchtmittel
|
Die Entwicklungsumgebung
Entwicklungsumgebung
Die Entwicklungsumgebung für dieses Projekt teilt sich in 4 Bereiche auf:
- Entwicklung der Hardware
- Software-Entwicklung Betty
- Software-Entwicklung SCART-Adapter
- Software-Entwicklung von Master und Slave
Für die Entwicklung des Projekt stand ein Desktop-PC mit Windows 7 sowie ein Noteboob mit Windows XP Professional zur Verfügung.
Als Zusätzliche HW-Komponenten sind der AVR-Programmer AVRISP mkII von ATMEL und Seriell-To-USB-Adpater zum Einsatz gekommen.
Die Schaltungsteile wurden in einem Schaltplan mit Eagle von
Cadsoft
zusammengesetzt. Daraus wurde eine PCB erzeugt und geroutet.
Die Fertigung und Produktion der PCB's habe ich der Firma
Leiton
in Berlin überlassen.
Die Programmierung von Master und Slave erfolgte mittels BASIC basierter Programmiersprache AVR-BASCOM.
Bei BASCOM handelt es sich um einen Basic-Compiler welcher von der Firma
MCS Electronics
in Holland entwickelt und verkauft wird.
Für die Entwicklung der SW für Betty und SCART-Adapter bediente ich mich hauptsächlich den Informationen und Veröffentlichungen des Forums
BettyHacks.com.
Die dort beschriebenen Schaltungen wurden von mir verwendet und auf das Projekt abgeändert.
Details dazu befinden sich weiter unten in den entsprechenden Kapitel beschrieben.
Auch die vorhandene SW wurde von mir auf das Projekt entsprechend angepasst, reduziert und optimiert.
Für die Entwicklung des SCART-Adapters und Betty sind die Compiler
WinARM,
SDCC - Small Device C Compiler
und
WinAVR
notwendig.
Die Installation gestaltet sich nicht ganz einfach und muss sorgfältig durchgeführt werden. In der Beschreibung zu WinARM von BettyHacks heißt es:
- WinARM nach C:\ entpacken
- Systemeigenschaften -> Erweitert -> Umgebungsvariablen: PATH Variable setzen (siehe readme.htm)
- Makefile.local.WinARM umbenennen in Makefile.local
- In der Datei Makefile.local die Pfade anpassen, wenn nicht nach C:\ entpackt wurde. Kein abschließender Schrägstrich!
- Die Datei C:\WinARM\arm-elf\lib\interwork\libgcc.a (320292 Byte) ist durch die Datei
ronetix-gnutools-arm-elf-4.1.1-linux.tar.bz2\ronetix-gnutools-arm-elf-4.1.1-linux.tar\usr\cross\arm-elf\lib\gcc\arm-elf\4.1.1\interwork\libgcc.a (323938 Byte)
zu ersetzen.
- Die libgcc.a kann
hier
als "7Z-Datei" oder "zip-Datei" bezogen werden.
- Ggf. in C:\WinARM\utils\bin die Datei "sed_WinARM.exe" zu "sed.exe" umbenennen
Es empfiehlt sicht, die Compiler direkt unter dem Root-Verzeichnis C:\ zu installieren.
Für SDCC und WinAVR können die vorhandenen Installationsvarianten direkt ausgeführt werden.
Es ist keine händische Nacharbeit notwendig. Zu empfehlen ist jedoch, wie von den Installern vorgeschlagen die Pfad-Erweiterungen durchzuführen.
Nach der fertigen Installation sollten folgende Pfad-Erweiterungen vorhanden sein:
- C:\WinAVR-20090313\bin;
- C:\WinAVR-20090313\utils\bin;
- C:\WinARM\bin;
- C:\WinARM\utils\bin;
- C:\SDCC\bin
Achtung:
Bei der Anpassung der Makefiles ist darauf zu achten, dass ein Editor verwendet wird welcher die notwendigen TAB’s beibehält und nicht in SPACE wandelt.
Die Fehlermeldung "makefile:60: *** missing separator. Stop" entsteht dadurch, dass die notwendigen TAB’s im Makefile durch SPACE ersetzt wurden.
Die Basis-Sourcen für den SCART-Adapter wurden aus dem SourceForge Repository (
hier
) mit Stand vom 20.03.2010 geladen.
Als Basis für die Umsetzung der Betty-SW diente Betty BOOP. BOOP ist eine Firmware für den ARM-Mikrocontroller (LPC2220) in der Betty aus dem Forum BettyHacks.
Die Basis-Sourcen wurden aus dem SourceForge Repository (
hier
) mit Stand vom 20.03.2010 geladen.
Das RAW-Binary zum Download befindet sich
hier.
Spannungsversorgung
Pinbelegung und Maße Trafo
Nach Festlegung der benötigten Spannungen durch das Systemdesign, die maximal auftretenden Ströme im System und die Einschränkungen der maximalen Modulhöhe wurde die Festlegung getroffen,
ein Netzteil selbst zu designen, zu entwickeln und zu bauen. Außerdem macht das ja auch viel mehr Spaß als fertig kaufen.
Für die Spannungsversorgung des Projekts StarLight wird die Spannungen von +5V, aufgeteilt auf 2 Kanäle mit jeweils 1A Leistung mit gemeinsamen Massebezug GND bereitgestellt.
Der komplette Digitaltechnik-Teil funktioniert mit 5V.
Bei der Konzeption und dem Design der Schaltung habe ich auf die Erfahrungen im Project Cover zurückgegriffen, die Grundlagen recycled und den Schaltplan abgeändert.
Der Aufbau des Festspannungsregler-Netzteils erfolgte in Handarbeit und die Fertigung der PCB's übernahm wie immer
Leiton
in Berlin.
Für die Spannungsversorgung selbst wird ein Transformator der Firma BLOCK - FL14/6 mit 2 nachgeschalteten Schaltspannungsreglern
für die Spannung von 2 x +5V eingesetzt. Der Trafo besitzt eine angegebene Sekundärspannung von 2 x 6V bei 7VA pro Kanal.
Schematic Auszug des Schaltnetzteils
Kühlkörper
Als Bestückunsalternative wurde die Schottky-Diode 1N5821 und eine 220 µH Spule umgesetzt.
Die Kondensatoren C3 und C4, die Dioden D1 und D2 sowie die Spulen L1 und L2 wurden zur Vermeidung von Spannungsriffel so nah wie möglich am Schaltregler zu platziert.
Die Brückengleichrichter B40C1500 (BR1 und BR2) sind für eine Spannung von 40V und einem Strom bis 2A ausgelegt uns damit ausreichend dimensioniert.
Der verwendete Schaltregler für 5V (U1 und U2) sind für einen Strom bis 3A ausgelegt.
Die Kühlung der Schaltregler erfolgt raumsparendem Profilkühlkörper an welchem die TO-220 Schaltregler aufgeschraubt sind..
Die beiden verwendeten Leuchtdioden LED1 und LED2 zeigen die Verfügbarkeit der getrennten Betriebsspannungen +5V an und sind als Low Current LED ausgeführt.
Unterschiedliche Technologien haben unterschiedliche Bezeichnungen für die notwendigen Spannungsversorgungen.
Für CMOS Bausteine gelten die Bezeichnungen VCC und GND.
TTL-Logik verwendet die Bezeichnungen VDD und VSS.
VDD und VSS werden im Projekt durch 0Ω-Widerstände (Drahtbrücken) erzeugt um EAGLE die korrekte Behandlung der Spannungen zu ermöglichen.
Für das Projekt gelten die folgenden Bezeichnungen in den Netzen:
Symbolfestlegung für Spannungsversorgungen
Das Netzteil der Lichtanlage hängt direkt an der 230V Versorgungsspannung der Hausverkabelung welche über einen Serienwandschalter Ein- und Ausgeschaltet werden kann.
Die folgende Darstellung zeigt die komplette Versorgungsspannungs-Verkabelung der Anlage.
Verkabelung Spannungsversorgungen
Mikrocontroller Master - ATmega128
Pinout des ATmega128
Auf dem StarLight Master-Modul wird der Mikrokontroller ATmega128 von ATMEL mit einem externen Quarz 16 MHz eingesetzt.
Im Folgenden wird die Ressourcenzuordnung der Einzelfunktionen auf die PIN's des ATmega128 dargestellt:
Ressourcenzuordnung ATmega128
Zur In-System-Programmierung wird die ATMEL ISP-Schnittstelle in der 6 PIN-Variante umgesetzt.
Die Programmierung im Projekt erfolgt direkt über BASCOM mit Hilfe des AVRISP mkII von ATMEL welcher über USB mit dem Entwicklungsrechner verbunden ist.
ISP connection Pinout
ISP Programmierer AVRISP mkII
Nun widmen wir uns noch der Basis-Gesamtbeschaltung des ATmega am Beispiel des ATmega128. Die hier enthaltenen Grundlagen gelten jedoch auch für den ATmega168.
Die im folgenden dargestellte Schaltung bildet die Basisbeschaltung des AVR RISC Controllers.
Zum Einsatz kommt für den ATmega128 ein externer Quarz mit 16.000.000 Hz (16 MHz). Beim ATmega168 wird ein Quarz mit 20MHz eingesetzt.
Weiter ist im Schaltplan der Anschluss eines externen RESET-Tasters S1 vorgesehen. Damit besteht die Möglichkeit das Target jederzeit von extern durch einen RESET zu jagen.
Bei einem ATmega168 können die Leitungen des ISP-Interface direkt an MISO und MOSI des Controllers angeschlossen werden.
Beim ATmega128 sind diese nicht direkt belegt und intern nicht verdrahtet.
Achtung! Beim ATmega128 findet die Beschaltung über Port E und die Leitungen RXT0 und TXD0 statt!
Der PEN Eingang (Pin 1) wird mit einem 1kΩ Widerstand R1 definiert auf VCC gezogen! Der ATmega168 verfügt, wie unter dem Kapitel über den ATmega168 zu entnehmen ist über keinen PEN-Pin.
Für die Beschaltung des ISP-Interfaces wird eine Entkopplungskondensator C13 am Stecker vorgesehen der als solches auch nahe beim/am Stecker bestückt werden muss!
Für die Analog-Digital-Umsetzung mit dem ATmega wird der Eingang ADC0 des ATmega verwendet.
Als Referenzspannung wird die Betriebsspannung des ATmega VCC auf Pin AVCC verwendet.
Der externe Referenzspannungseingang AREF wird nicht verwendet.
Da sich im Projekt einige störungsausstrahlende Komponenten befinden (z.B. IGBT-Steuerung für Dimmung) wird eine,
spezielle im Datenblatt vorgeschlagene analoge Störsignalreduktion umgesetzt welche aus L1 und C2 besteht.
Die serielle Datenübertragung zum und vom ATmega wird mit einem seriellen Interface nach RS232 Standard mit einem Maxim MAX232 Baustein umgesetzt.
Auf den beiden Board's für Master und Slave wird der MAX232 jedoch nicht direkt platziert.
Um Platz und Geld zu sparen wurden die notwendigen Signale für RxD und TxD nur über einen MA05x2 Pfostenstecker geroutet.
Für die Verbindung der Board's zum PC gibt es dann einen kleinen Adapter auf dem sich der MAX232 befindet. Bei 8 Dimmern und 1 Master sparen wir damit 8 MAX232 Bausteine.
Die Verbindung zum PC wird im Projekt nur zur Ausgabe von Traces während der Entwicklungsphase benötigt.
Die HW seitig vorhanden USART Interfaces des Kontrollers werden für RS485 und SCART-Interface benötigt.
Daher werden in diesem Sonderfall,
abweichend von der Grundbeschaltung des ATmega zwei normale GPIO-Pins des Kontrollers verwendet welche über SW-UART-Emulation dann am MAX232 angeschlossen werden.
Hier also wie angekündigt das Schaltbild zur Basisbeschaltung des ATmega128:
Basisbeschaltung des ATmega128
Um das Kapitel zum Mikrocontroller abzuschließen fehlt zum Schluss noch die Konfiguration für die Fuses.
Einige Fuses weichen von den Standardeinstellungen ab.
Die folgende Tabelle zeigt die Fuses und die notwendigen Settings im Detail.
AVR Fuse Konfiguration ATmega128
Mikrocontroller Slave - ATmega168
Pinout des ATmega168
Auf dem StarLight Slave-Modul wird der Mikrokontroller ATmega168 von ATMEL mit einem externen Quarz 20 MHz eingesetzt.
Im Folgenden wird die Ressourcenzuordnung der Einzelfunktionen auf die PIN's des ATmega168 dargestellt:
Ressourcenzuordnung ATmega168
Zur In-System-Programmierung wird auch hier die die ATMEL ISP-Schnittstelle in der 6 PIN-Variante umgesetzt.
Die Programmierung im Projekt erfolgt direkt über BASCOM mit Hilfe des AVRISP mkII von ATMEL welcher über USB mit dem Entwicklungsrechner verbunden ist.
Für das StarLight-Slave-Modul gilt wie gleiche Basisbeschaltung wie sie schon für den
Mikrocontroller ATmega128
des Master-Moduls vorgestellt wurde. Aus diesem Grund verweise ich hier auf das obige Kapitel.
Sooooooo, nun auch an dieser Stelle noch ein paar Worte zu den Fuses des ATmega168.
Einige Fuses weichen von den Standardeinstellungen ab. Wichtig zu bemerken ist hier die Fuse für den Teiler des Clock welche nicht der Standardeinstellung entspricht.
Die folgende Tabelle zeigt die Fuses und die notwendigen Settings im Detail.
AVR Fuse Konfiguration ATmega168
ISP und Traceadapter
ISP Programmierer AVRISP mkII
Für die Programmierung des Master- und Slave-Boards wird wie oben schon beschrieben die 6-Pin-ISP-Schnittstelle von ATMEL verwendet.
Die Programmierung erfolgt direkt über den ATMEL AVRISP mkII Programmer aus BASCOM heraus.
An dieser Stelle einfach zur Vollständigkeit nochmals der AVRISP mkII, diesmal geöffnet und das zugehörige Originalpinning von ATMEL für die ISP-Schnittstelle
ATMEL ISP Pinnout
RS232-Traceadapter
Zum Tracen währende der Entwicklungsphase wurde ein USART-Interface auf den Modulen integriert.
Zum Sparen von Platz und Budget wurde aber nicht auf allen der 9 Platinen ein eigener MAX232 zur Pegelanpassung und Kommunikation mit dem PC vewendet.
Es wird das 5V basierte USART Signal über einen Pfostenstecker nach außen geführt. Zur Verbindung mit dem PC wurde ein RS232-Traceadapter entwickelt dessen Schaltbild im Folgenden zu sehen ist:
RS232-Traceadapter
|
Der Aufbau des RS232-Traceadapter erfolgte auf einer Lochraster-PCB.
Das folgende Bild zeigt die Position der ISP- und USART-Interfaces auf den Master- und Slave-PCBs.
ISP- und USART-Interface
Relaisstufen als Spannungsschalter
Solid-State-Relais Slave
Das Gesamtsystem und die einzelnen Komponenten (Master und Slaves) werden so umgesetzt,
dass ohne aktive Bestätigung vom Master und Schaltung vom Slave kein Strom fließt und die Beleuchtungselemente Spannungsfrei sind.
Dazu werden Relais eingesetzt welche mit einer Spulenspannung von 5V betrieben werden können.
Relais Master
Auf den Slaves wird zum Schalten der Last – unabhängig vom Dimmer und der Sicherung – ein Solid-State-Relais eingesetzt.
Das Halbleiterrelais schaltet die Betriebsspannung von 230V˜ erst auf, wenn der Master den entsprechenden Befehl dazu gegeben hat.
Solange bleiben Nulldurchgangserkennung und IGBT Spannungslos.
In ausgeschaltetem Zustand verfügt die Gesamtanlage über ein Durchgangslicht.
Als Durchgangslicht werden die beiden Lampen über den Tischen bezeichnet welche zusätzlich über die normalen Serien-Wandschalter geschaltet werden können.
Das Durchgangslicht wird nach Aktivieren der Beleuchtungssteuerung auf Dimmersteuerung umgeschaltet.
Für diese Schaltung wurde eine Relaisstufe auf dem Master umgesetzt welche in der Lage ist Last und Netzspannung zu schalten.
Da die Dimmermodule sowohl die Phase als auch den Null-Leiter über Brückengleichrichter schleusen und die Lampe vor dem Dimmer-Modul sitzen muss
(der Dimmer erzeugt einen Teil seiner Betriebspannung aus dem 230V Netz) reicht es nicht aus, nur die Phase zu schalten sondern es muss zum alternativen Betrieb der Tischlampen
(Dimmermodus / Schaltermodus) sowohl Null als auch die Phase umgeschaltet werden.
Dazu dienen zwei externe 230V˜ Relais-Stufen mittels derer bei eingeschalteten Durchgangslicht die Versorgung der Lampen direkt durch das Stromnetz erfolgt.
Wird die Lichtanlage in Betrieb genommen so schaltet obiges Relais auf dem Master-Modul die Stromzufuhr des 230V-Relais zu und die Anlage schaltet auf Dimmerbetrieb der 2 Lampen um.
Relaisstufe für Durchgangslicht
Die Relaisstufen mit den 2xUM-Relais wurden auf Lochraster-PCB aufgebaut.
Das folgende Schaltbild verdeutlicht die Schaltung für die 2 externen Relaisstufen:
Relaisstufe für Durchgangslicht
|
Der RS485 Systembus
Ein einfaches RS485 Master-Slave-System
Wie schon in den vorangegangenen Kapitel dargestellt, besteht das Projekt StarLight aus mehreren Komponenten und PCB's.
Zum Austausch von Daten kommen verschiedene Technologien und Methoden zum Einsatz.
Neben der Funkverbindung von Betty zum Scart-Adapter und der USART-Verbindung von Scart-Adapter zum Master kommunizieren die wichtigsten Komponenten Master und Slave
über einen RS485-Systembus miteinander.
Die Adressen der Slaves können über ein 4-Bit-DIP-Switch eingestellt werden. Damit ergibt sich ein Adressbereich von 0-31.
Es werden aber nur 8 Dimmer verwendet welche die Adressen 1-8 verwenden.
Die Adresskonfiguration wird von jedem Slave am Anfang des Systemstarts verwendet und zu der weiter unten beschriebenen Adressierung innerhalb des RS485-Protokolls verwendet.
Die RS485-Schnittstelle stellt eine Erweiterung der RS422-Definition dar.
Während die RS422 lediglich den unidirektionalen Anschluss von bis zu 10 Empfängern an einen Sendebaustein zulässt,
ist die RS485 als bidirektionales Bussystem mit bis zu 32 Teilnehmern konzipiert.
Physikalisch unterscheiden sich beide Schnittstellen nur unwesentlich.
Man kann den RS485 Bus überall dort einsetzen wo größere Datenmengen über längere Strecken übertragen werden müssen
oder wenn mehrere Geräte miteinander vernetzt werden sollen,
besonders dann, wenn die Kosten oder der Platz eine Rolle spielen, da die notwendigen Treiberbausteine kompakt und günstig sind.
Er eignet sich besonders dazu um Mikrocontroller miteinander zu verbinden.
Da Mikrocontroller meist einen sogenannten UART integriert haben ist der Aufbau eines Busses problemlos möglich.
Der RS485 Bus hat gegenüber anderen Schnittstellen einige Vorteile.
- Hohe Datenraten: Je nach verwendetem Treiber bis weit über 2 MBit
- Mehrere Geräte an einem Bus: Üblicherweise 32, bei manchen Treibern auch 128
- Hohe Leitungslängen: Je nach Datenrate lassen sich mehrere hundert Meter erreichen
- Niedrige Kosten: da außer dem Treiber keine weiteren Bauteile benötigt werden
- Geringer Platzbedarf: Es ist lediglich ein Treiber in DIP8 oder SO8 nötig. Maxim bietet sogar Treiber im µMax8 Gehäuse an.
- Unempfindlicher gegen Störungen
- Kein Protokoll Overhead wie z.B. bei CAN
Funktionsweise:
Der RS485 Bus ist, wie der Name schon sagt, nicht nur eine Verbindung zwischen zwei Geräten wie dies bei RS232 der Fall ist,
sondern es handelt sich um einen Bus, an dem mehrere Geräte gleichzeitig angeschlossen werden können. Er ermöglicht einen Single Master/ Multi Slave Betrieb.
Ein Master ist ein Teilnehmer, der Befehle sowohl senden als auch empfangen kann.
Ein Slave erhält nur Befehle die er dann ausführt. Für Single Master /Multi Slave bedeutet es, dass nur ein Teilnehmer, z.B. ein PC, Befehle versenden darf.
Alle anderen Teilnehmer, die am Bus angeschlossen sind, empfangen lediglich diese Befehle, führen sie aus und senden eventuell Daten zurück.
Ein Slave beginnt jedoch nie ohne Aufforderung eine Kommunikation.
Bei RS485 handelt es sich um eine sogenannte differenzielle Schnittstelle. Das bedeutet, dass für jedes Signal zwei Leitungen benötigt werden.
Über die eine Leitung wird das Signal unverändert übertragen, auf der anderen Leitung wird das Signal invertiert.
Wenn eine 1 übertragen werden soll hat die eine Leitung +200mV gegenüber der anderen. Bei einer 0 hat die erste Leitung -200mV gegenüber der anderen.
Der Empfänger vergleicht die beiden Signale miteinander und gibt das original Signal aus.
Durch dieses Verfahren werden Störungen nahezu eliminiert und man erreicht große Leitungslängen oder hohe Datenraten.
Die Verbindung zwischen den Teilnehmern kann entweder durch eine Zweidraht- oder durch eine Vierdrahtverbindung erfolgen.
Verwendet man nur zwei Leitungen, ist nur ein Half Duplex Betrieb möglich.
Das bedeutet, dass Daten nicht gleichzeitig in beide Richtungen übertragen werden können.
Eine Übertragung erfolgt immer abwechselnd in die eine oder in die andere Richtung.
Soll der Bus Full Duplex fähig sein, also Daten in beide Richtungen gleichzeitig Senden können, muss man für beide Datenrichtungen eigene Leitungen und Treiber verwenden.
Für den Full Duplex Betrieb benötigt man also 4 Leitungen.
Die Übertragung erfolgt wie auch bei RS-232: Startbit (logisch 0) - Datenbits (LSB zuerst) - Stopbit (logisch 1).
Eine Zahl 70 (46hex) sieht also auf dem Bus bei 8-Bit Datenbreite so aus: 0 01100010 1.
Für das Projekt StarLight wird die Full-Duplex-Variante des Buses mit einer 4-Drahtleitung (2 x Twisted-Pair) verwendet.
Treiber:
Wie auch für RS232 gibt es für RS485 eine große Anzahl an Treiberbausteinen.
Diese unterscheiden sich in der Zahl der Sender und Empfänger, in der maximalen Datenrate oder der Anzahl der maximal möglichen Busteilnehmer.
An dieser Stelle beschränke ich mich auf die Treiberbausteine mit nur jeweils einem Sender und Empfänger, sehr wohl aber mit 2 Adernpaaren für den Full-Duplex-Mode.
Die beiden Busleitungspaare werden mit A und B sowie Y und Z bezeichnet, wobei A / Y nicht invertiert und B / Z invertiert wird.
Jeweils ein Leitungspaar verbindet Sendet mit Empfänger und umgekehr.
Der Sender des Master geht auf die Empfänger der Slaves und die Sender der Slaves gehen auf den Empfänger des Masters.
Sowohl Sender als auch Empfänger haben einen Enable Eingang. Ist dieser Eingang deaktiviert befindet sich der entsprechende Treiber im Tri State Modus und belastet den Bus nicht.
Je nach dem ob man senden oder empfangen will muss man den entsprechenden Eingang aktivieren.
Da der Enable Eingang des Empfängers invertiert ist kann man ihn mit den Enable Eingang des Senders verbinden und mit einer einzigen Portleitung eines Controllers steuern.
Dabei ist aber immer einer der beiden Treiber aktiv und kann nicht abgeschaltet werden.
Schematischer Aufbau einer Full-Duplex-RS485-Verbindung
In dieser Darstellung sieht man den schematischen Aufbau eines RS485 Treibers. DE und RE sind die Enable Leitungen für Sender und Empfänger.
DI ist der Dateneingang vom Controller. Man sollte DI mit dem TxD Anschluss des UART's verbinden.
RO ist der Dateneingang zum Controller. Er wird mit dem RxD Anschluss des UART's verbunden.
A / B und Y / Z sind die Verbindungen zum Bus.
Die Kreise deuten an welche der Anschlüsse invertiert werden.
Die am häufigsten verwendeten RS485 Treiber sind der MAX485 von Maxim, der LTC485 von Linear Technology und der SN75176 von Texas Instruments.
Alle diese Treiber sind zueinander Funktionskompatibel, unterscheiden sich jedoch im Pinning, in der maximalen Datenrate und der Anzahl der Teilnehmer auf einem Bus.
Je nach Ausführung kann z.B. der MAX485 mit bis zu 2,5MBit arbeiten, der MAX483 dagegen nur mit 250kBit.
Verwendet man den MAX487 kann man bis zu 128 Teilnehmer an einen Bus hängen, mit dem MAX485 sind dagegen nur 32 Teilnehmer möglich.
Im Projekt werden die Bausteine von Maxim eingesetzt. Die Slaves erhalten den Baustein MAX491CPD, der Master enthält den MAX488CPD.
Beispiel eines RS485-Systems (Single-Master, Multi-Slave):
Im Folgenden wird eine Beispielschaltung gezeigt, wie sie von mir zunächst auf Lochraster aufgebaut wurde um die Funktionsweisen von RS485 kennenzulernen und in Betrieb zu nehmen.
Dabei wurden für die Entwicklung des Prototyps bereits schon ein Augenmerk auf die Kommunikationsschnittstellen und Datenanforderungen des endgültigen Projekts geachtet.
In der Beispielschaltung besteht der Master auch aus einem ATmega168. Bei der Umsetzung wurde jedoch als Master der ATmega128 aus dem STK501 verwendet.
Als RS485-Bustreiber werden die Bausteine MAX490 und MAX491 verwendet.
Der Master ist als MAX490 umgesetzt. Da der Master immer sendet und empfängt ist eine Ausführung mit abschaltbaren Ein- Ausgängen nicht notwendig.
Bei den Slaves dagegen kann auf abschaltbare Eingänge nicht verzichtet werden da diese durch Ihre Beschaltung den Bus belasten und das Übertragen von Daten verhindert.
RS485 Master-Slave System im Full-Duplex-Mode (Klick für Vollbild)
Da mehrere Sender auf einer gemeinsamen Leitung arbeiten, muss durch ein Protokoll sichergestellt werden, dass zu jedem Zeitpunkt maximal ein Datensender aktiv ist.
Alle anderen Sender müssen sich zu dieser Zeit in hochohmigem Zustand befinden.
Die Aktivierung der Senderbausteine kann durch Schalten einer Handshake-Leitung oder datenflussgesteuert, automatisch erfolgen.
Abschlusswiderstände:
Systembus Terminator
|
Eine Terminierung des Kabels ist bei RS422-Leitungen nur bei hohen Baudraten und großen Kabellängen, bei RS485-Verbindungen dagegen grundsätzlich nötig.
Wegen der hohen Frequenzen und der Leitungslängen, muss ein entsprechendes Augenmerk auf Reflexionen und Leitungseffekte gelegt werden.
Um diesem gerecht zu werden müssen Abschlusswiderstände dimensioniert und berücksichtigt werden.
Ein Abschlusswiderstand ist schlicht und einfach ein Widerstand, am jeweils äußersten Ende der Leitung angebracht.
Der Wert des Abschlusswiderstands ist ideal dem gleichen Wert entsprechend, wie der vom Hersteller angegebene Wert des Wellenwiderstand des Kabels.
Wenn der Abschlusswiderstand nicht den gleichen Wert wie die charakteristische Impedanz der Verkabelung hat, werden Reflexionen auftreten.
Dieser Prozess wird durch die Gleichung (Rt - Zo) / (Zo + Rt) berechnet. Zo ist die Impedanz des Kabels und Rt ist der Wert des Abschlusswiderstand.
Es ist wichtig, den Abschlußwiderstand so genau wie möglich zu treffen und auf die charakteristische Impedanz anzupassen.
Die Position der Abschlusswiderstände ist auch sehr wichtig. Abschlusswiderstände sollte immer am äußersten Enden der Kabel gelegt werden.
Als allgemeine Regel ist zu sagen, dass Abschlusswiderstände immer an den beiden äusseren Enden des Kabels platziert werden sollten.
Bei der Installation muss auf korrekte Polung der Aderpaare geachtet werden, da eine falsche Polung zur Invertierung der Daten- und Handshake-Signale führt.
Obige Grafik des RS485-Master-Slave-Systems zeigt deutlich wie der RS485 Bus aufgebaut ist. Man sieht hier die beiden Leitungen des RS485 Bus.
Eine Leitung verbindet jeweils die A/B-Anschlüsse der Empfänger mit den Z/Y-Anschlüssen der Sender.
Die Widerstände sind Abschlusswiderstände und müssen am Ende der Leitungen montiert werden. Bei geringen Entfernungen < 20m werden folgende Widerstände eingesetzt:
PullUp- und PullDown-Widerstände: 1k Ohm
Leitungswiderstand: 120 Ohm
Die PullUps bzw PullDowns sind optional und können bei kurzen Strecken auch entfallen. Die Leitungsabschlusswiderstände entgegen sind unbedingt anzuschließen.
Je nach Datenrate und Leitungslänge kann es notwendig sein andere Werte einzusetzen.
Ein einfaches RS485 Master-Slave-System
ROT / GELB = Y / Z Master
GRÜN / MAGENTA = A / B Slave
Kabel:
RS-485 wurde als ausgewogenes System entworfen. Einfach ausgedrückt bedeutet dies, gibt es zwei Drähte unabhängig von Ground, die das Signal übertragen.
Das System heißt symmetrisch, da das Signal auf einem Kabel idealer weise das genaue Gegenteil (Komplement) von dem Signal auf den zweiten Draht ist.
In anderen Worten, wenn ein Draht ein High sendet, wird auf dem anderen Draht ein Low übertragen, und umgekehrt.
Genau dieser Sachverhalt ist im rechten Oszillogramm deutlich zu sehen.
Für RS-485 können mehrere Arten von Kabel verwendet werde, Es wird jedoch dringend empfohlen, twisted-pair Kabel zu verwenden.
Was ist Twisted Pair, und warum wird es verwendet?
Twisted-Pair
|
Wie der Name schon sagt, ist ein twisted-pair einfach ein verdrilltes Paar von Drähten mit gleicher Länge.
Mit einem RS-485-konforme Sender über Twisted-Pair-Leitungen werden eine Vielzahl von Störeinflüssen aus dem bereich von ESD und MMV bereits durch das Kabel reduziert.
Dies ist bei High-Speed-Langstrecken-Netzwerken notwendig.
Protokolle:
Wie bereits erwähnt ist bei RS485 kein festes Protokoll definiert. Für das Projekt StarLight wurde ein gängiges und häufig verwendetes Protokoll verwendet.
Das hier beschriebene Protokoll ist nur eine von vielen Möglichkeiten und kann den entsprechenden Bedürfnissen sicherlich angepasst werden.
Ein einfaches Protokoll für die Kommunikation enthält drei bis vier Komponenten und wird als Frame bezeichnet.
Als erstes wird eine Adresse übertragen. In kleinen Systemen ist diese meist 8 Bit lang und ist meist ausreichend da die meisten Treiber weniger als 256 Geräte treiben können.
Damit lassen sich bis zu 255 Geräte adressieren.
Auf die erste Adresse welche auch als Empfängeradresse bezeichnet wird folgt die Senderadresse.
Darauf folgt die Länge des Frames, entweder 8 Bit oder 16 Bit. Wird für die Framelänge 8 Bit definiert können 0 - 255 Byte Daten übertragen werden,
bei 16 Bit kann ein Frame 64 kByte -1 Byte enthalten. Ich habe mich bei StarLight für 8 Bit festgelegt.
Danach folgen die eigentlichen Daten. Es müssen immer so viele Daten übertragen werden wie in der Länge angegeben ist.
Nach den Daten kann noch eine Checksumme folgen. Die Checksumme ist optional. Diese ermöglicht es Übertragungsfehler festzustellen.
Als Checksumme kann man zb 8 Bit Checksum, 16 Bit Checksum oder 16 Bit CRC verwenden. Im Projekt StarLight rechne ich die 16-But Checksumme mit dem CRC16 Algorithmus.
Die folgende Protokolldefinition zeigt ganzheitlich die für StarLight von mir festgelegten Daten und den Protokollrahmen.
Dabei werden im System statisch immer mit 10 Byte langen Botschaften gearbeitet.
RS-485 Protokolldefinition für Projekt StarLight
Tatsächliche BUS-Topologie im Projekt StarLight:
Die folgende BUS-Topologie zeigt die Verschaltung des RS485-BUS inklusive der Jumper-Konfiguration.
RS485 Bustopologie von StarLight
RS485-RS232-Trace-Adapter:
RS485-RS232-Trace-Adapter
Für die Entwicklung und damit für die Überwachung und das Datalogging des RS485-Systembusses wird ein kleiner RS485-Traceadapter umgesetzt
welcher die RS485-Signale für Sende- und Empfangsrichtung aus zwei RS232-SUD-D-Anschüsse umsetzt.
Mit einem PC können so beide Signalpfade mitgelogged werden.
Schaltbild des RS485-RS232-Traceadapters:
Schaltplan RS485-RS232-Trace-Adapter
|
Master - LCD-Display
LCD-Display EA DOG-M
Als Anzeigedisplay wird ein LCD-Modul der Firma
ELECTRONIC ASSEMBLY
der DOG-M-Serie 3,3V EA DOG-M Super Flach / 55x27 mm inkl. Kontroller ST7036 für 4-/8-BIT SPI (4-Draht) eingesetzt (LCD-Modul 3x16 - 3,65 mm EA DOGM1634W-A).
Als Hintergrundbeleuchtung wird eine LED-Beleuchtung Weiß (EA LED55X31W) eingesetzt.
Technische Daten:
- Kontrastreiche LCD-Supertwist Anzeige
- Optionale LED-Beleuchtungskörper in verschiedenen Farben
- 1x8, 2x16 und 3x16 Zeichen mit 12,0 mm / 5,6 mm und 3,6 mm Schrift
- Kontroller ST 7036 für 4-BIT, 8-BIT und SPI (4-DRAHT) Interface
- Spannungsversorgung +3,3V oder +5V single supply (typ. 250µA)
- Keine zus. Spannungen erforderlich
- Betriebstemperaturbereich -20..+70°C
- LED-Hintergrundbeleuchtung 3..80mA@3,3V oder 2..40mA@5V
- Keine Montage erforderlich: einfach nur in PCB einlöten.
Kontrasteinstellung:
Für alle Displays der EA DOG- Serie ist der Kontrast per Befehl einstellbar.
Dies erfolgt über die Bits C0..C5 in den Befehlen "Contrast Set" und "Power/Icon Control/Contrast Set".
Die Funktionen sind entsprechend in der SW umgesetzt und können aber per Menue nicht verändert werden.
In der Regel wird der Kontrast einmalig eingestellt und dann - dank integrierter Temperaturkompensation - über den gesamten
Betriebstemperaturbereich (-20..+70°C) konstant gehalten.
Insgesamt benötigen die Displays selbst im 3,3V Betrieb keine zusätzliche negative Spannung!
Das aber nur als Hinweis den im Projekt wird das Display mit 5V betrieben.
Hintergrundbeleuchtung
Hintergrundbeleuchtung:
Im Projekt wurde eine Transistorstufe realisiert um die Beleuchtung des Displays an/aus schalten zu können.
Das Display und die Beleuchtung wird immer nur bei Bedarf zugeschaltet, wenn also eine Taste auf dem Master betätigt wird.
Nach einem Timeout geht das Display automatisch wieder aus und in den StandBy.
Die Helligkeit Hintergrundbeleuchtung kann fest über ein Potentiometer eingestellt werden.
Das LCD-Display muss vor dem Verlöten oder stecken auf die Beleuchtungseinheit gelötet werden,
damit die LEDs der Beleuchtung über die Kontakte des LCD's Strom bekommen.
Es ist ratsam, alle Pins der Beleuchtungseinheit anzulöten, da sich so der Druck beim Einsetzten des Displays in die Fassung besser verteilt.
Elektrisch ist dies nicht notwendig.
Bitte sehr sparsam mit dem Lötzinn umgehen, da es sonst an den Beinchen herunter läuft und somit das Display nicht in die Fassung passt.
Beschaltung:
Die Beschaltung des LCD-Display an den ATmega erfolgt wie im folgenden Schaltbild aus dem Datenblatt des LCD-Displays gefordert.
In der SW wurde eine Funktion implementiert welche es ermöglich, das Display durch eine Befehl in den Standby-Modus zus schalten.
Dies hat den Vorteil, dass die Inhalte des Display-Speichers nach erneutem Einschalten erhalten bleiben.
Beschaltung LCD-Display
Master - Datenspeicherung mit EEPROM
EEPROM auf Master-Modul
Prototyp der EEPROM Beschaltung
Für die Speicherung von Systemeinstellungen, speziell für die Betriebsdaten und Einstellungen der Dimmer wird ein externes EEPROM an den AT-mega via I2C-Bus angekoppelt.
Das interne EEPROM des ATmega128 kann nur bis zu 100.000 Mal beschrieben werden. Das externe EEPROM dagegen bis zu 1.000.000 Mal.
Daher erschien es mir als Sinnvoll die betriebszustände in dem externen EEPROM zu speichern.
Hintergrund dieser Funktion ist der LUM = last used mode.
Bedeutet, bei erneutem Einschalten der Beleuchtungsanlage wir die Beleuchtung so eingestellt wie sie beim Ausschalten eingestellt war.
Ein paar wenige Setting-Daten und Einstellungen welche nur selten - wenn überhaupt - verändert werden, werden im 4k großen internen EEPROM-Speicher des ATmega128 abgelegt.
Dieser Abschnitt beschreibt primär die Ansteuerung des externen EEPROM, geht aber auch auf die Datenstrukturen und Zugriffsmechanismen des internen EEPROM ein.
Für die Umsetzung wurde, wie auch schon im Projekt ConvCtrl, der EEPROM-Typen der Firma ST24C512.
Der Baustein ST24C512 ist ein 512KBit Baustein.
Er ist über 65.536 x 8 Bit organisiert.
Er besitzt einen 128Byte Page-Write-Modus, erlaubt aber partielle Page-Zugriffe.
Aus dem Datenblatt des 24C512 geht hervor, welche Leistungsmerkmale er besitzt:
- Two Wire (I2C) Interface
- Unterstützung von Busgeschwindigkeiten
- Byte- und Page-Write-Mode
- direkte Adressierung
- automaisches Adress-Inkrement
- mehr als 1 Million Schreib/Lese Zyklen
- mindestens 40 Jahr Datensicherheit
- Geräte-ID 0b1010xxxx = 0xA0
|
Beschaltung:
Beschaltung des externen EEPROM
Die obige Beschaltung des externen EEPROMs stammt noch aus Zeiten der ConvCtrl-Entwicklung und basiert auf der Erstinbetriebnahme auf Lochraster-Basis.
Unabhängig davon und zur Vollständigkeit nehme ich das Kapitel aber hier nochmals auf und erkläre die Funktion.
Zu Testzwecken können die gemäß Spezifikation geforderten PullUp-Widerstände des I2C-Busses durch Jumper (JP1 und JP2) aktiviert / deaktiviert werden.
Ggf. ist die Beschaltung auch durch Drahtbrücken im Layout zu ersetzen bzw. ausgeführt.
In den Schaltplänen der weiteren I2C Busteilnehmer sind die PullUp-Widerstände ebenfalls ausgeführt.
In einem System mit mehreren Teilnehmern wird die Beschaltung jedoch nur einmal benötigt um den Bus zu treiben.
Der Abschlusswiderstand kann zwischen 5k und 10k variiert werden, wurde aber für StarLight auf 10k festgelegt.
Ein I2C Gerät bildet aus seiner Geräte-ID und den möglichen Adresspins (A0-A2) seine Geräteadresse im Bus.
Somit würden sich auch mehrere Geräte des gleichen Typs in einem Bus betreiben lassen.
Für das Projekt ConvCtrl sind die Adressen via Jumper konfigurierbar.
Der gewählte Baustein ST24C512 besitzt nur zwei Adressleitung A0 und A1.
Die Adressleitung A2 wie im obigen Schaltbild dargestellt (Pin3) ist beim ST24C512 not connected (NC).
Zum Betrieb des externen EEPROM wird die Adresse 0b00 gewählt.
Daraus ergibt sich folgende Jumper-Stellung:
Jumper JP3 auf Position GND (1-2) |
Jumper JP4 auf Position GND (1-2) |
Jumper JP5 auf Position GND (1-2) (nicht relevant) |
Im Gesamtdokument zum Projekt welches ja als Download auch hier auf dieser Seite bereitgestellt wird befinden sich ausführliche Oszillogramme welche
die Kommunikation mit dem EEPROM beschreiben und erklären.
Weiter habe ich wichtige Informationen als Zusammenfassung aus den Datenblättern aufgenommen.
Alle diese Themen hier mit aufzunehmen würde den Rahmen sprengen, aus diesem Grund verweise ich darauf.
Beispiel einer Datensequenz im Projekt:
Oszillogramm einer I2C-Schreibsequenz
Unterschiede bei der Beschaltung der Abschlusswiderstände:
Die folgenden Oszillogramme zeigen den Unterschied bei einer Beschaltung der I2C-Buss Abschlusswiderstände mit 5kΩ und 10kΩ.
Oszillogramm I2C mit 10kΩ bei 400k Baud
|
Oszillogramm I2C mit 5kΩ bei 400 kBaud
|
Bustaktrate 100k Baud gegenüber 400k Baud:
Oszillogramm I2C bei 100 kBaud
|
Oszillogramm I2C bei 400 kBaud
|
Ch1 (gelb) dargestellt ist die Datenleitung SDA.
Ch2 (hellblau) dargestellt ist die Clockleitung SCL.
|
Adressraum und Datenfestlegung EEPROM:
Der Adressraum des 24C512 umfasst die Adressen 0x0000 bis 0xFFFF (0 - 65.535).
Es ist vorgesehen die Tabelle für die Initialisierung, die Settings und die Basisdaten im internen EEPROM des ATmega128 abzulegen.
Für die LUM-Daten dient das externe EEPROM.
Datenstrukturen und Datenfelder des externen EEPROM
Datenstrukturen und Datenfelder des internen EEPROM
Master - Tastatur (Menübedienung)
Tastatur von StarLight
Die Bedienung des Systems kann neben der Fernbedienung auch über 4 Tasten erfolgt welche zusätzlich über eine LED verfügen.
Die LED's haben spezielle Funktionen welche im nächsten Kapitel über LED's kurz erklärt werden.
Das Bild rechts zeigt die Anordnung der Tasten auf dem Master-PCB.
Für die Bedienung der Steuerung wurde ein Bedienkonzept bzw. die Menüstruktur in Form eines Ablaufdiagramms bzw. Zustandsdiagramms erstellt.
In der Software wurde eine Menue-Statemachine entwickelt in der alle Zustände abgebildet sind.
|
Menue-Strukturen von StarLight (Klick für PDF)
|
Die Tastatur im Projekt wird normale über 4 GPIO-Pins an den ATmega angebunden.
Unter Verwendung der ATmega internen PullUp-Widerstände erhält man das unten abgebildete Anschlussschema der 4 tasten.
Die für die Tasten umgesetzten LED's werden unter der Überschrift LED's beschrieben.
Tastatur
Die Pins KEY_1 bis KEY_4 werden als Eingänge mit PullUp-Widerstand konfiguriert.
Die Eingabetasten werden auf der Master-PCB auf der Bestückungsseite bestückt.
Tastendimensionen und Platzbedarf
Master - LED-Anzeigen
Status-LEDs
Die LEDs zur Anzeige verschiedener Stati und Betriebszustände befinden sich in den Tasten integriert.
Daraus ergibt sich eine Gesamtzahl von 4 LED's auf dem Master.
Alle LED's werden im System als 3mm low current LED ausgelegt!
Die LED's werden über einen BufferDriver betrieben.
LED's und Funktion
|
Schematic der Umsetzung für die LED's:
LED-Ansteuerung
Master - Scart-Anbindung
Zum Empfangen und Senden von Datenpaketen von und zur Betty Funkfernbedienung wird der zur Betty zugehörige SCARD-Adapter umfunktioniert und verwendet.
Warum SCART-Adapter .... hmmmm .... nun ja. Eigentlich stammt die Betty ja aus der Zeit vor 2007 als man mit der Universalfernbedienung bei verschiedenen Fernsehprogrammen mitspielen konnte.
Die in der Packung enthaltenen Komponenten bestanden aus der Betty, der eigentlichen Fernbedienung, einer Ladeschale für die Fernbedienung,
einem Betty-Telefonadapter und dem besagten SCART-Adapter.
Der SCART-Adapter wurde damals zum Abgriff des Videosignals an den Fernsehen angeschlossen.
Daraus wurde der Videotext und die für die Betty relevanten Betriebsdaten extrahiert.
Diese wurden dann via Funk an die Betty gesendet.
Damit haben wir das Herzstück der Universalen Funkfernbedienung, nämlich die RF-Funkkomponenten, bei der man heute noch von SCART-Adapter redet, obwohl dieser Teil wertlos geworden ist.
Der Telefonadapter ermöglichte der Betty die Kommunikation mit der Betty TV AG via Telefonleitung. Quasi ein Modem also.
Soviel dazu also ....
Mittels Spezialsoftware aus dem Forum BettyHacks wird der SCARD-Adapter in den Zustand versetzt,
dass er automatisch empfangene Daten auf der RS232 ausgibt bzw. via RS232 geschriebene Daten über Funk zur Betty überträgt.
Der Betty-SCART-Adapter
Die originale Spannungsversorgung des SCARD-Adapters erfolgt über ein eigenes 230V~ Schaltnetzteil.
Die Verbindung zwischen Netzteil und Adapter wurde als steckbare Verbindung mit Verpolungsschutz ausgelegt.
Das Betty-SCART-Schaltnetzteil
Die folgende Darstellung zeigt das in EAGLE definierte Schaltbild für des RF-Empfänger mit Sicht auf die unbestückte Seite.
Pinbelegung des SCART-RF-Empfängers
SCART-Adapter
Das erste Konzept sah vor, den SCART-Adapter über sein eigenes Netzteil zu betreiben und die Spannungsversorgung mit an die Beschaltung der Durchgangslicht-Relais zu knüpfen.
Dieses Konzept wurde jedoch verworfen, da bei einem Kommunikationsfehler zwischen SCART und Master 3 Mal ein Retry-Mechanismus ausgelöst
wird der den SCART-Adapter abschaltet und erneut einschaltet.
Würde der SCART-Adapter an der Durchgangs-beleuchtung hängen dann würde diese flackern. Somit wurde das Konzept verworfen.
Das nun erfolgte Konzept in der Umsetzung sieht die Verwendung eines separaten GPIO-Pins des ATmegas vor, mittels dem eine MOSFET-Stufe die Spannungsversorgung des SCART-Adapters steuert.
Das Schaltnetzteil des SCART-Adapters wurde entfernt und die Platine wurde mittels Adapterplatine direkt an die Gesamtspannungsversorgung von 5V von StarLight angekoppelt.
Das folgende Schaltbild zeigt die Beschaltung:
Anbindung SCART an Master
Beschaltung SCART an Master
Protokolle und Abläufe:
Zu einer vollständigen Dokumentation fehlen uns nun für den Scart-Adapter noch zwei Dinge, nämlich die Scart-Protokoll-Definition zwischen Master und Scart sowie ein Überblick über Abläufe.
Datenfestlegung für das SCART-Protokoll
Schematischer Kommunikationsablauf
Antennenoptimierung:
Antennenberechnung für λ-Antenne
Nach Einbau der Steuerung in die Holzdecke zeigten sich Funkprobleme anhängig davon, wie Nah man unter dem in der Holzdecke befindlichen SCART-Adapter befand.
Auch die Richtung in der die Betty gehalten wurde spielte eine Rolle.
Interessanter Weise war die Funkverbindung bei größerer Entfernung besser als nahe am Empfänger.
Um dieses Problem zu lösen wurde die Antenne des SCART-Adapters umgebaut.
Bei der ursprünglichen Version handelte es sich um eine λ/4-Antenne. Die Antenne wurde zu einer λ-Antenne mit voller Länge von 69 cm um-gebaut.
Der Antennenumbau brachte eine signifikante Verbesserung der Funkkommunikation.
Slave - Phasenabschnittdimmer
Prototyp des Phasenabschnittdimmer mit IGBT
In meinem Projekt Wintergartensteuerung ConvCtrl konnte ich erste Erfahrungen mit Dimmern und Phasensteuerungen sammeln.
Dort habe ich zum ersten mal einen auf SW basierten Dimmer umgesetzt, und zwar einen Phasenanschnittdimmer.
Der wesentliche Bestandteil einer Lichtanlage besteht natürlich ebenso in der Dimmung von Beleuchtungselementen.
Da ich hier jedoch sowohl Hochvolt-Halogen als auch Niedervolt-Halogen zum Einsatz bringe, die Niedervolt-Teile über elektronische Trafos betrieben werden müssen,
ist die Phasenabschnittdimmung nicht geeignet.
Für kapazitive Lasten sind Phasenanschnittsteuerungen wegen des plötzlichen Spannungsanstiegs nicht geeignet (es würde ein extrem hoher Strom fließen),
dafür werden Phasenabschnittsteuerungen eingesetzt.
Hingegen sind Phasenabschnittsteuerungen nicht für induktive Lasten geeignet (Spannungsspitze beim Abschalten des Stromes).
Bei der Umsetzung des SW gesteuerten Dimmers für das Projekt StarLight wurde also ein Phasenabschnittdimmer umgesetzt.
Prinzip Phasenabschittsteuerung
Funktionsprinzip Phasenabschnittsteuerung:
Während bei der Phasenanschnittsteuerung der Strom verzögert nach dem Nulldurchgang der Wechselspannung eingeschaltet wird und bis zum nächsten Nulldurchgang anliegt,
ist es bei der Phasenabschnittsteuerung genau umgekehrt: Der Strom wird nach dem Nulldurchgang sofort eingeschaltet, und noch vor dem nächsten Null-durchgang ausgeschaltet.
Der Schaltungsaufwand ist höher; es müssen entweder abschaltbare Thyristoren (GTO-Thyristor) oder (Power-MOSFET)-Transistoren verwendet werden,
und auch die Steuerungselektronik ist aufwendiger.
Nulldurchgangserkennung
Der Vorteil der Phasenabschnittsteuerung (und Phasenanschnittsteuerung ) im Vergleich zu Schaltungen, bei denen die Spannung durch einen Widerstand geregelt wird,
ist ihre sehr geringe Verlustleistung.
Im Gegensatz zu komplizierten regelbaren Schaltnetzteilen, die auch geringe Verlustleistung haben,
ist eine Phasenabschnittsteuerung wesentlich einfacher und kleiner aufzubauen und weniger störanfällig.
Der größte Nachteil von Phasenabschnittsteuerungen ist der nicht sinusförmige Verlauf des Stromes.
Der Strom fließt ja nur in einem Teil jeder Halbwelle.
Diese nicht sinusförmige Belastung ruft im Netz Störungen hervor.
Je mehr die Kurvenform des Stromes von der Sinusform abweicht, desto größer sind die Störungen.
Der Verbraucher erhält von der Phasenabschnittsteuerung oder Phasenanschnittsteuerung eine nicht sinusförmige Spannung.
Während das für ohmsche Verbraucher wie Glühlampen und Heizwiderstände kein Problem darstellt, können elektronische Geräte,
die an eine Phasenabschnittsteuerung angeschlossen werden, dadurch beschädigt werden.
Auch bei Transformatoren, z.B. für Halogenlampen ist Vorsicht geboten: Es ist darauf zu achten,
dass die Phasenabschnittsteuerung (d.h. der Dimmer) für diese Anwendung geeignet ist.
Die in diesem Projekt umgesetzte Phasenabschnittsteuerungen (Dimmer) eignet sich auch für Leuchtstofflampen oder Energiesparlampen!!.
HW-Konzept für die Umsetzung im Projekt:
Bei der Phasenabschnittsteuerung ist der Verbraucher nach dem Nulldurchgang jeder Halbwelle sofort bestromt.
Nach einer einstellbaren Zeit t wird dann z.B. ein MOS-FET oder IGBT abgeschaltet.
Dieser Vorgang wiederholt sich mit einer Frequenz von 100 Hz bei positiver und negativer Halbwelle.
Je später der "Schalter" geschaltet wird, je größer ist die verfügbare Leistung und desto heller ist die Lampe.
Dimmer Leistungsteil IGBT Stufe
In einer elektronischen Schaltung wird der MOSFET von einer Steuerlogik geschaltet.
Diese Steuerung benötigt einen Nulldurchgangstest, damit sie den Nulldurchgang jeder Halbwelle registrieren kann.
Im Projekt StarLight wird der MOSFET durch ein ähnliches Bauteil, den IGBT ersetzt.
Bei einem IGBT handelt es sich um einen Bipolartransistor mit isolierter Gate-Elektrode.
Er ist ein Halbleiterbauelement, das zunehmend in der Leistungselektronik verwendet wird,
da es Vorteile des Bipolartransistors (gutes Durchlassverhalten, hohe Sperrspannung, Robustheit) und Vorteile eines Feldeffekttran-sistors (nahezu leistungslose Ansteuerung) vereinigt.
Vorteilhaft ist auch eine gewisse Robustheit gegenüber Kurzschlüssen, da der IGBT den Laststrom begrenzt.
Um den exakten Abschaltzeitlunkt zu bestimmen, ist ein Nulldurchgangsdetektor unumgänglich.
Dieser Detektor besteht aus einem (vom Netzteil unabhängigen) Gleichrichter (B1), einem Optokoppler 4N25 (OK1) und zwei Schmitt-Triggern (IC1A/B).
Die im 100-Hz-Takt pulsierende gleichgerichtete Spannung hinter der Gleichrichter-brücke sorgt dafür, dass der Optokoppler bei jedem Nulldurchgang der Netzspannung kurzzeitig sperrt.
In dieser Zeit liegen am Kollektor des Opto-Transistors +5 V, ansonsten 0 V.
Dieses Signal – von den Schmitt-Triggern mit eindeutigen und steilen Flanken versehen - nutzt der Mikrocontroller, um die Software mit der Netzspannung zu synchronisieren.
Dimmer Nulldurchgangserkennung
Zeitverhalten Nulldurchgangserkennung:
Das obige Oszillogramm zur Nulldurchgangserkennung zeigt deutlich, dass der Impuls für die Nulldurchgangserkennung bereits ca. 150-200 µsec vor dem eigentlichen Nulldurchgang ansteigt.
Bei einer Phasenanschnittsteuerung spielt dieses Verhalten keine Rolle.
Indes bei einer Phasenabschnittsteuerung schon, da sofort nach dem Nulldurchgang der MOSFET oder IGBT geschaltet werden muss.
Um das saubere Schalten zu ermöglichen habe ich den Nulldurchgang mittels R-C-Glied um die Zeitspanne verzögert. Dies ist mittels nachgeschaltetem Schmitt-Trigger leicht möglich.
Die folgenden Oszillogramme zeigen die Wirkung:
Oszillogramme Zeitausgleich
|
Oszillogramme Zeitausgleich Zoom 1
|
Oszillogramme Zeitausgleich Zoom 2
|
Oszillogramme Zeitausgleich Zoom 3
|
Einige Oszillogramme des Dimmers im Betrieb:
TP1 (GELB)
|
TP1 (GELB) und TP4 (CYAN)
|
TP1 (GELB) und TP2 (CYAN)
|
TP1 (GELB), TP3 (MAGENTA)
und TP4 (GRÜN)
|
TP1 (GELB), TP5 (CYAN),
TP6 (MAGENTA)und TP7 (GRÜN)
|
TP1 (GELB), Nulldurchgang (MAGENTA),
FUSED_L1 (GRÜN)
|
Die TP's bei obigen Oszillogrammen beziehen sich auf die Testpunkt im Schaltplan.
Die Spannung FUSED_L1 ist invertiert da nur im gesperrten Zustand des IGBT Spannung anliegt..
|
SW-Konzept für die Umsetzung:
Linearisierung Helligkeitswert
Die Programmierung der möglichen Zündzeit von max. 10 ms erfolgt in 32 Einzelschritten (Helligkeitsstufen) damit eine scheinbare stufenlose Dimmung ermöglicht wird.
Der Zeitraum von 10 ms wird in 100 Stützstellen aufgeteilt.
Eine Umsetzung der 32 Einzelschritte auf die Stützstellen erfolgt über eine Tabelle (siehe hierzu und die Konvertierungstabelle der Helligkeitswerte).
Mit Hilfe eines externen Interrupts wird in der SW der Nulldurchgang der Sinuswelle detektiert.
Dieser "Detektions"-Interrupt startet einer Timer welcher mit dem Dimmungswert zwischen 0 und 10ms geladen ist. Gleichzeitig wird der IGBT sofort durchgeschaltet.
Ist der Timer abgelaufen (= Auslösen des Timer-Interrupts) wird der IGBT wieder gesperrt.
Das Schalten des IGBT mittels Treiberbaustein zum entsprechenden Zeitpunkt nach dem letzten Nulldurchgang geschieht durch Set-zen/Rücksetzen des entsprechenden Bits PortD.4.
Der Kontroller wird mit diesem Verfahren nicht signifikant belastet. Die komplette Dimmungssteuerung erfolgt über diesen Mechanismus.
Slave - LED-Anzeigen
Status-LED's
Die LED's zur Anzeige verschiedener Stati und Betriebszustände befinden sich zwischen den Schraubklemmleisten der Anschlüsse.
Es gibt insgesamt 5 Status-LED's für den Slave.
Alle LED's werden im System als 3mm low current LED ausgelegt!
Die LED's werden über einen BufferDriver betrieben.
Slave-LED's
|
Schematic der Umsetzung für die LED's:
Slave-LED's
Akustische Signalgeber
Soundausgabe
Sowohl Master als auch Slave verfügen über Piezo-Signalgeber welche als Alarm bei Übertemperatur und als akustisches Feedback von suageführten Systemfunktionen geschaltet werden.
Dabei handelt es sich um kurze aber bestimmte Piepstöne.
Der Piezo-Signalgeber wird über einen BufferDriver (analog zu den LED's) angesteuert welcher mit einem GPIO-Ausgang des Atmegas verbunden ist.
Soundausgabe mit Piezo
Temperaturmessung
Dallas DS18S20 TWI
Für die Messung der Temperatur auf den PCB’s der Slaves wie auch auf dem Master wird der Sensor DS18S20 von Maxim Dallas einesetzt.
Bei dem Sensor handelt es sich um einen digitalen Sensor der über 1-Wire-Bus mit nur einem Daten-Pin betrieben wird.
Der DS18S20 wird über 2 zusätzlich Leitungen mit Vcc und GND extern versorgt.
Es gibt für den DS18S20 noch den parasite power mode bei dem die Vcc gespart werden kann.
Dabei wird der Baustein über die Datenleitung versorgt.
Der DS18S20 wird mittel 1Wire-Bus und zugehörigem Protokoll betrieben. Außer dem Sensor und einem PullUp Widerstand ist keine Peripherie notwendig.
Beschaltung des DS18S20
Adapter und Programmierinterfaces
Für und während der Entwicklung des Projekts StarLight habe ich einige Adapter und Interfaces gebaut.
Diese Interfaces möchte ich hier in diesem Abschnitt kurz erläutern, sofern dies in den andren Kapitel, weil nicht zum Thema passend, noch nicht passiert ist.
Treiberbaustein-Adapter:
Treiberbaustein-Adapter
In meinem ursprünglichem Design wurde als Relais-, LED- und Leistungstreiber der ULN2003 Darlinton-Treiber vorgesehen bzw. angenommen.
Dabei wurde übersehen, dass es sich bei diesem Baustein um einen 7-Kanal-Treiber mit Open-Kollektor-Ausgang handelt, obwohl ich hätte besser wissen müssen,
da ich die Bausteine schon mehrfach in anderen Projekten eingesetzt habe.
Das Design basierte aber darauf, dass der Treiberbaustein +5V mit entsprechender Leistung liefert. Das konnte so also nicht funktionieren.
Es entstand die Notwendigkeit - die PCB's waren ja schon fertig - einen auf dem Pinning des ULN2003 aufgesetzten Adapter zu bauen welcher die Funktion des 74HCT244 bereitstellt.
Für die fertige Platinen wurde eine Adapterplatine erstellt welche anstelle des ULN2003-Chips bestückt werden kann.
Schaltpläne und Layouts die hier zum Download angeboten werden haben den Ersatzbaustein 74HCT244 bereits schon integriert.
Hier also das Schaltbild zum Treiberadapter:
Treiberbaustein-Adapter
|
Und noch ein paar Bilder von der Umsetzung:
Treiberbaustein-Adapter auf Slave platziert
Gesamt-PCB
|
Top-Layer
|
Bottom-Layer
|
Pads
|
Bestückung
|
Programmierinterface für Betty und SCART-Adapter:
Programmierinterface Betty und Scart
Im folgenden befindet sich das universtelle Programmierinterface abgebildet, für das ich den Schaltplan aus BettyHacks überarbeitet und eine neue PCB gerootet habe.
Der Aufbau erfolgt jedoch aus Kostengründen zunächst auf Lochrasterplatine.
Wenn mit dem Programm im SCART-Adapter über die UART-Schnittstelle kommuniziert werden soll, ist folgende Jumpereinstellung zu verwenden:
- sw1 egal (nur für Betty relevant)
- sw2 offen (Reset über PC gesteuert)
- sw3 2-3 (Resetsteuerung über RTS)
- sw4 egal
- sw5 1-2 (PC TxD steuert Device Rx)
Wenn mit der Betty kommuniziert werden soll sind die folgenden Jumpereinstellungen notwendig:
- sw1 offen (BL nicht enable )
- sw2 offen (Reset über PC gesteuert)
- sw3 2-3 (Resetsteuerung über RTS)
- sw4 egal
- sw5 1-2 (PC TxD steuert Device Rx)
ScreenShot BettyHeaven
Flashen der Firmware:
Die Mikrocontroller verfügt über einen Bootloader, mit dem über die ICP/ISP Schnittstelle die Firmware geladen werden kann.
Die Programmierung mittels PC und Programmieradapter erfolgt über den BETT-SCART-Kombiadapter.
Da der RS232 Pegelwandler nur 2 Eingänge und 2 Ausgänge hat und diese nicht einmal fuer den Anschluss des Scart-Adapters ausreichen,
besitzt das Interface Jumper um zwischen den verschiedenen Betriebsmodi zu wechseln.
Achtung: Es darf nur die Betty oder der Scart-Adapter mit dem Interface verbunden werden, aber nicht beide gleichzeitig,
da die Tx-Leitungen und auch die Versorgungsspannungen miteinander verbunden sind.
Es ist kein seperates Netzteil für das Interface notwendig, da die Betriebsspannung aus dem Scart-Adapter bzw. der Betty entnommen wird.
Zum Programmieren des SCART-Adapters und der Betty wird das
Tool Betty-Heaven
verwendet.
Bei der Programmierung des Scart-Adapters ist den Anweisungen von BettyHeaven auf dem Bildschirm zu folgen.
Zur Programmierung des SCART-Adapters muss die Datei BETTY_SCART.BIN an den Scart-Adapter übertragen werden.
Fuer das Programmieren, Auslesen der Betty oder um Programme ins RAM zu laden und auszuführen ist folgende Jumpereinstellung zu verwenden:
- sw1 geschlossen (ISP Bootloader aktiv)
- sw2 offen (Reset über PC gesteuert)
- sw3 2-3 (Resetsteuerung über RTS)
- sw4 egal (nur für Scart-Adapter relevant)
- sw5 1-2 (PC TxD steuert Device Rx)
Zur Programmierung der Betty muss die Datei BOOP_ROM.BIN über Flash1 Restore an die Betty übertragen werden.
Nach soooo viel einleitenden Worten hier nun das Schaltbild zum Programmierinterface:
Kombi-Programmierinterface Betty und Scart
|
Netzteil für Betty:
Betty Netzteil
Um während der SW-Entwicklung der Betty-Firmware unabhängig von Akkulaufzeiten und Ladestation zu sein wurde auf Basis eines einstellbaren Spannungsreglers
ein kleines separates Netzteil gebaut mit dem Betty dauerhaft betrieben werden kann.
Als Basis dient der Spannungsregler LM317 und dessen dokumentierte Standardbeschaltung für die Einstellung von Spannungen inkl. Schutzdioden.
Schaltplan Betty Netzteil
|
Die Betty-Fernbedienung
Die Betty Universalfunkfernbedienung ist eines von zwei zentralen Herzstücken der Beleuchtungsanlage StarLight.
Mit Ihr soll die gesamte Beleuchtungsanlage kontrolliert und gesteuert werden können.
Dieses Kapitel beschreibt den elektronischen Grundlagenteil der Funkfernbedienung.
Alle Informationen zur
Betty
und zur
Betty-Hardware
wurden aus dem Forum
BettyHacks.com
entnommen und für StarLight verwendet.
Ein Einblick in die Betty-Hardware zeigt sich auf folgenden Bildern:
PCB Vorderseite
|
Gehäuse Rückseite
|
PCB Rückseite
|
Die Pinbelegung der Betty-Fernbedienung:
Pinbelegung der Betty-Fernbedienung
Das folgende Bild zeigt die Betty über ein Flachbandkabel mit dem Universal-Programmieradapter verbunden:
Betty und UniversalProg-Adapter
Die Tastenbelegung der Betty mit zugeordneten Funktionen:
Die Tastenbelegung der Betty mit zugeordneten Funktionen
Mechanik
PCB Halterung
Die Holzdecke wird mittels Konterlattung und Echtholzpanelen an der alten Decke befestigt.
Dabei wird nicht die gesamte Fläche mit Panelen versehen. Zwischen Holzdecke und Wand wird ein Abstand von min. 50 cm belassen der das Deckenbild auflockern soll.
Als Abschlussleiste wird die Leitse 24 aus Echtholz von Fendt verwendet.
Die Leiste besitzt eine Höhe von 6 cm und bietet nach Sondernanfertigung der Paneelennut einen freien Raum von ca. 32 cm.
Eine passende Konterlattung ist nur im Maß 34x34x2400 mm zu erhalten. Damit vergrößert sich der Freiraum über PCB auf bis zu 30,1 mm.
Weiter wird die PCB im Bereich von Terhürne Gestaltungselementen montiert.
Die Elemente besitzen nur eine Stärke von 12mm (gegenüber 18mm Paneele).
Damit vergrößert sich der lichte Raum nochmals um ca. 3mm auf bis zu ca. 33,1 mm.
Das folgende Bild zeigt schematisch den Aufbau der Holzdecke inkl. Randleiste und PCB-Führungsschienen:
Aufbau Holzdecke und Bemaßung Freiraum
|
Die PCB’s un Euro-Format werden mittels Führungsschienen FS 6100 in den Freiräumen der Holzdecken-Unterkonstruktion montiert.
Zur Aufnahme der PCB’s werden Aluminiumrahmen gemäß folgender Abbildung gefertigt welche die PCB’s in den Führungsschienen aufnehmen können
und welche mittels Holzschrauben direkt mit der Konterlattung verschraubt werden können.
Die Elektronikmodule befinden sich jeweils unter den Terhürne-Gestaltungselementen.
Dazu wird die Nut der gestaltungselemente teilweise entfernt.
Zur Befestigung der Elemente werden dauermagnetische Schnappverschlüsse verwendet um die Elemente dauerhaft oben zu halten und trotzdem Zugang zur Wartung zu gewährleisten.
Montage- und Halterahmen PCB's
Fertigstellung und Einbau
Stücklisten
Die folgenden Teile und Baugruppen wurden für die Beleuchtungssteuerung StarLight verarbeitet:
Stückliste für das StarLight Power-Board
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
1 |
F1 |
Feinsicherung 0,63A flink |
Reichelt Elektronik |
FLINK 0,16A |
5x20mm |
0,290 € |
2 |
F2, F3 |
Feinsicherung 1A flink |
Reichelt Elektronik |
FLINK 1,0A |
5x20mm |
0,580 € |
2 |
D1, D2 |
Diode 1N5821 |
RS-Online |
1N 5821 |
RM15 |
1,560 € |
2 |
R1, R2 |
Metallschichtwiderstand 1,5k Ohm |
Reichelt Elektronik |
METALL 1,50K |
RM12 |
0,164 € |
2 |
C3, C4 |
Elektrolytkondensator 100µF / 35V |
Reichelt Elektronik |
RAD 100/35 |
8x11mm, RM 3,5mm |
0,080 € |
2 |
C5, C6 |
Elektrolytkondensator 1.000µF / 35V |
Reichelt Elektronik |
RAD 1.000/35 |
12,5x25mm, RM 5,0mm |
0,260 € |
2 |
C1, C2 |
Elektrolytkondensator 2.200µF / 35V |
Reichelt Elektronik |
RAD 2.200/35 |
16x25mm, RM 7,5mm |
0,500 € |
2 |
X2, X3, X4, X5, X6, X7 |
Anschlussklemme 6-polig, Lift (zusammengefasst) |
Reichelt Elektronik |
AKL 175-06 |
RM7,5mm |
2,400 € |
1 |
X1 |
Anschlussklemme 3-polig, Lift |
Reichelt Elektronik |
AKL 175-03 |
RM7,5mm |
0,750 € |
2 |
BR1, BR2 |
Gleichrichter B40C1500 |
Reichelt Elektronik |
B40C1500-WW- |
-- |
0,520 € |
1 |
TR1 |
Trafo 14VA, 2x 6V, 2x 1166mA |
Reichelt Elektronik |
UI 39/10,2 206 |
68 x 57 x 24 mm |
7,950 € |
2 |
LED1, LED2 |
LED 3mm, low-Current, grün |
Reichelt Elektronik |
LED 3MM 2MA GN |
3mm |
0,140 € |
2 |
U1, U2 |
Spannungsregler für 5V (P 3596L-5,0) |
Reichelt Elektronik |
LM 2576 T5,0 |
TO-220-5 |
3,100 € |
1 |
SV1 |
MA03-2 für Spannungskopplung |
Reichelt Elektronik |
SL 2X50G 2,54 |
RM2,54 |
0,700 € |
2 |
D3, D4 |
Überspannungsschutzdiode 6,8V |
Reichelt Elektronik |
P6KE 6,8CA |
RM15 |
0,540 € |
2 |
L1, L2 |
Schaltregler-Induktivität 220µH/1,4A PE52626NL |
Farnell |
1209548 |
-- |
20,840 € |
1 |
KK1 |
Kühlkörper ELOX CTX/96/84 84X55X28 MM |
Conrad Electronic |
188043 - 62 |
84 x 55 x 28 mm |
3,930 € |
3 |
-- |
Sicherungshalter, max. 6,3A-2 |
Reichelt Elektronik |
PL 112100 |
5x20mm |
0,630 € |
2 |
-- |
Abstandhalter für 3mm LEDs, Länge 5,0mm |
Reichelt Elektronik |
MEN 2818.3045 |
5 mm |
0,340 € |
2 |
-- |
Glimmerscheibe für Gehäuse TO 220 |
Reichelt Elektronik |
GLIMMER TO 220 |
18 x 12 mm TO-220 |
0,100 € |
2 |
-- |
Isolierbuchse für TO220, TOP3 |
Reichelt Elektronik |
IB 2 |
6 x 2,3 mm TO-220 |
0,100 € |
1 |
-- |
Zylinderkopfschrauben, M3, für Befestigung Trafo |
Reichelt Elektronik |
SZK M3X12-200 |
M3 x 12mm |
1,650 € |
1 |
-- |
Zylinderkopfschrauben, M3, für Befestigung Kühlkörper |
Reichelt Elektronik |
SZK M3X6-200 |
M3 x 6mm |
1,500 € |
Stückliste für das StarLight Power Board
Stückliste für das StarLight Master-Board
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
2 |
D1, D2 |
1N4148 |
Reichelt Elektronik |
1N 4148 |
DO35 |
0,040 € |
1 |
RN2 |
E4R |
Reichelt Elektronik |
SIL 8-4 1,0K |
SIL 8 |
0,100 € |
1 |
R11 |
R-EU_0204/7 |
Reichelt Elektronik |
METALL 1,20K |
RM10 |
0,082 € |
1 |
RN1 |
E4R |
Reichelt Elektronik |
SIL 8-4 1,5K |
SIL 8 |
0,100 € |
2 |
R1, R16 |
RESISTOR0207/10 |
Reichelt Elektronik |
METALL 4,70K |
RM10 |
0,164 € |
1 |
L1 |
INDUCTOR0207/12 |
Reichelt Elektronik |
SMCC 10µ |
axial RM16 |
0,190 € |
5 |
R2, R3, R4, R14, R15 |
RESISTOR0207/10 |
Reichelt Elektronik |
METALL 10,0K |
RM10 |
0,410 € |
1 |
R13 |
TRIM_EU-CA6V |
Reichelt Elektronik |
PT 6-L 10K |
10 mm |
0,320 € |
1 |
Q1 |
CRYTALHC49U-V |
Reichelt Elektronik |
16,0000-HC49U-S |
RM4,88mm |
0,180 € |
2 |
C1, C3 |
CAPACITOR025-025X050 |
Reichelt Elektronik |
KERKO 22P |
RM2,54 |
0,120 € |
1 |
R12 |
R-EU_0204/7 |
Reichelt Elektronik |
METALL 30,0 |
RM10 |
0,082 € |
1 |
K1 |
43.41 |
Reichelt Elektronik |
FIN 43.41.7 5V |
RM3,2 |
1,700 € |
1 |
C2 |
CAPACITOR050-025X075 |
Reichelt Elektronik |
KERKO 47N |
RM2,54 |
0,090 € |
1 |
IC6 |
74HCT125N |
Reichelt Elektronik |
74HCT 125 |
DIL-14 |
0,210 € |
1 |
IC2 |
74HCT244N |
Reichelt Elektronik |
74HCT 244 |
DIL-20 |
0,290 € |
9 |
C4, C5, C6, C7, C8, C9, C10, C11, C12 |
CAPACITOR050-025X075 |
Reichelt Elektronik |
KERKO 100N |
RM5,0 |
0,540 € |
2 |
R9, R10 |
RESISTOR0207/10 |
Reichelt Elektronik |
METALL 120 |
RM10 |
0,164 € |
1 |
IC5 |
4050N |
Reichelt Elektronik |
74HC 4050 |
DIL-16 |
0,210 € |
2 |
X1, X2 |
AKL171-02 |
Reichelt Elektronik |
AKL 175-02 |
RM7,5mm |
1,000 € |
1 |
X4 |
AKL171-03 |
Reichelt Elektronik |
AKL 175-03 |
RM7,5mm |
0,750 € |
1 |
X3 |
AKL171-04 |
Reichelt Elektronik |
AKL 175-04 |
RM7,5mm |
0,990 € |
1 |
IC4 |
AT24CP |
Reichelt Elektronik |
ST 24C512 BN6 |
DIL-8 |
1,200 € |
1 |
T1 |
BC547B |
Reichelt Elektronik |
BC547B |
TO-92 |
0,040 € |
1 |
IC7 |
DS18S20 |
Reichelt Elektronik |
DS 18S20 |
TO-92 |
3,200 € |
1 |
LCD1 |
EA_DOG-M_DISPLAY |
Reichelt Elektronik |
EA DOGM163W-A |
-- |
12,600 € |
1 |
SV1 |
MA03-2 |
Reichelt Elektronik |
SL 2X50G 2,54 |
RM2,54 |
0,700 € |
1 |
JP1 |
JP2E |
Reichelt Elektronik |
SL 1X50G 2,54 |
RM2,54 |
0,270 € |
1 |
SV3 |
MA06-2 |
Reichelt Elektronik |
--siehe SV1 |
RM2,54 |
0,000 € |
1 |
IC3 |
MAX488CPD |
Reichelt Elektronik |
MAX 488 CPA |
DIP-8 |
2,750 € |
1 |
IC1 |
MEGA128-A |
Reichelt Elektronik |
ATMEGA 128-16 TQ |
TQFP |
7,250 € |
1 |
SV2 |
MA05-2 |
Reichelt Elektronik |
--siehe SV1 |
RM2,54 |
0,000 € |
1 |
S1 |
MJTP1230 |
Reichelt Elektronik |
TASTER 3301 |
6 x 6 mm |
0,100 € |
1 |
SV5 |
ML14-3ML |
Reichelt Elektronik |
PSL 14W |
RM2,54 |
0,240 € |
1 |
S2 |
SRKL |
Reichelt Elektronik |
DTL 2 SW |
-- |
1,900 € |
1 |
S3 |
SRKL |
Reichelt Elektronik |
DTL 2 GE |
-- |
1,900 € |
1 |
S4 |
SRKL |
Reichelt Elektronik |
DTL 2 RT |
-- |
1,900 € |
1 |
S5 |
SRKL |
Reichelt Elektronik |
DTL 2 BL |
-- |
1,900 € |
1 |
SG1 |
F/CM12P |
Reichelt Elektronik |
SUMMER TDB 05 |
12mm |
0,850 € |
1 |
-- |
Led-Beleuchtung für EA DOGM..Farbe: weiss |
Reichelt Elektronik |
EA LED55X31-W |
-- |
10,350 € |
1 |
-- |
Pfostenbuchse, 14-polig, mit Zugentlastung |
Reichelt Elektronik |
PFL 14 |
RM2,54 |
0,120 € |
2 |
-- |
IC-Sockel, 8-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 8P |
DIL-8 |
0,320 € |
1 |
-- |
IC-Sockel, 14-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 14P |
DIL-14 |
0,260 € |
1 |
-- |
IC-Sockel, 16-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 16P |
DIL-16 |
0,290 € |
1 |
-- |
IC-Sockel, 20-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 20P |
DIL-20 |
0,250 € |
1 |
-- |
Buchsenleiste einreihig für LCD-Display |
Reichelt Elektronik |
SPL 64 |
RM2,54 |
0,960 € |
1 |
-- |
Sechskantmutter, 100st. M2,5 |
Reichelt Elektronik |
SK M2,5-100 |
M2,5 |
1,450 € |
1 |
-- |
Flach-Senkkopfschraube, Schlitz M2,5 |
Reichelt Elektronik |
SSK M2,5X16-200 |
M2,5 |
2,150 € |
Stückliste für das StarLight Master Board
Stückliste für die StarLight Slave-Board
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
8 |
F1 |
Feinsicherung 1A flink |
Reichelt Elektronik |
FLINK 1,0A |
5x20mm |
2,320 € |
8 |
D3 |
Gleichrichterdiode 1N 914, 100V, 0,2A |
Reichelt Elektronik |
1N 914 |
DO35 |
0,320 € |
8 |
D2 |
Gleichrichterdiode 1N 4004, 400V, 1A |
Reichelt Elektronik |
1N 4004 |
DO41 |
0,160 € |
8 |
D1 |
Diode 1N 4148 |
Reichelt Elektronik |
1N 4148 |
DO35 |
0,160 € |
32 |
R7, R8, R9, R10 |
Metallschichtwiderstand 1,0k Ohm |
Reichelt Elektronik |
METALL 1,00K |
RM10 |
2,624 € |
40 |
R2, R3, R4, R13, R17 |
Metallschichtwiderstand 1,5k Ohm |
Reichelt Elektronik |
METALL 1,50K |
RM10 |
3,280 € |
8 |
R22 |
Metalloxidschicht-Widerstand 2W, 5% |
Reichelt Elektronik |
2W METALL 3,3K |
RM15 |
0,736 € |
16 |
LED2, LED4 |
LED 3mm, low-Current, gelb |
Reichelt Elektronik |
LED 3MM 2MA GE |
3 mm, RM2,54 |
1,280 € |
8 |
LED1 |
LED 3mm, low-Current, grün |
Reichelt Elektronik |
LED 3MM 2MA GN |
3 mm, RM2,54 |
0,560 € |
16 |
LED3, LED5 |
LED 3mm, low-Current, rot |
Reichelt Elektronik |
LED 3MM 2MA RT |
3 mm, RM2,54 |
1,280 € |
8 |
OK1 |
Optokoppler (für Nulldurchgangserkennung) |
Reichelt Elektronik |
4N 25 |
DIP 6 |
2,160 € |
16 |
R1, R23 |
Metallschichtwiderstand 4,7k Ohm |
Reichelt Elektronik |
METALL 4,70K |
RM10 |
1,312 € |
8 |
L1 |
Drosselspule 10µH INDUCTOR0207/12 |
Reichelt Elektronik |
SMCC 10µ |
axial RM16 |
1,520 € |
8 |
RN1 |
Widerstands-Netzwerk, 4Wid./8Pins, 1,5 K-Ohm |
Reichelt Elektronik |
SIL 8-4 10K |
SIL 8 |
0,800 € |
32 |
R12, R24, R25, R26 |
Metallschichtwiderstand 10k Ohm |
Reichelt Elektronik |
METALL 10,0K |
RM10 |
2,624 € |
24 |
R15, R20, R21 |
Metalloxidschicht-Widerstand 2W, 5% |
Reichelt Elektronik |
2W METALL 10K |
RM15 |
2,208 € |
16 |
C11, C13 |
Keramik-Kondensator 10N |
Reichelt Elektronik |
KERKO 10N |
RM5 |
0,960 € |
8 |
D4 |
Zener-Diode 1,3W 12V |
Reichelt Elektronik |
ZD 12 |
RM10 |
0,560 € |
8 |
D6 |
Zener-Diode 1,3W 16V |
Reichelt Elektronik |
ZD 16 |
RM10 |
0,560 € |
8 |
Q1 |
Standardquarz, Grundton, 20,0 MHz |
Reichelt Elektronik |
20,0000-HC49U-S |
RM4,88 |
1,440 € |
16 |
C1, C2 |
Keramik-Kondensator 22P |
Reichelt Elektronik |
KERKO 22P |
RM2,54 |
0,960 € |
8 |
C12 |
Elektrolytkondensator 47µF / 35V |
Reichelt Elektronik |
RAD 47/35 |
6,3x11mm, RM 2,5mm |
0,320 € |
8 |
C5 |
Keramik-Kondensator 47N |
Reichelt Elektronik |
KERKO 47N |
RM2,54 |
0,720 € |
8 |
R14 |
Metallschichtwiderstand 68k Ohm |
Reichelt Elektronik |
METALL 68,0K |
RM10 |
0,656 € |
8 |
IC5 |
6 x invertierender SCHMITT-TRIGGER |
Reichelt Elektronik |
74HC 14 |
DIL-14 |
1,760 € |
8 |
IC2 |
Octal buffer/line-driver 3-state |
Reichelt Elektronik |
74HCT 244 |
DIL-20 |
2,320 € |
8 |
KK1 |
Kühlschiene SK 72 Fischer Elektronik SK 72 50 SA R(th) 2.4 K/W |
Conrad Electronic |
188611 - 62 |
97 x 25 x 50 mm |
31,120 € |
16 |
R11, R18 |
Metallschichtwiderstand 100k Ohm |
Reichelt Elektronik |
METALL 100K |
RM10 |
1,312 € |
56 |
C3, C4, C6, C7, C8, C9, C10 |
Keramik-Kondensator 100N |
Reichelt Elektronik |
KERKO 100N |
RM5,0 |
3,360 € |
16 |
R5, R6 |
Metallschichtwiderstand 120 Ohm |
Reichelt Elektronik |
METALL 120 |
RM10 |
1,312 € |
8 |
R19 |
Varistor V250LA10P 250V |
RS-Online |
543-5057 |
RM5 |
4,144 € |
8 |
R16 |
Metallschichtwiderstand 330 Ohm |
Reichelt Elektronik |
METALL 330 |
RM10 |
0,656 € |
16 |
X3, X4 |
Anschlussklemme 2-polig, Lift |
Reichelt Elektronik |
AKL 175-02 |
RM7,5mm |
8,000 € |
16 |
X1, X6 |
Anschlussklemme 3-polig, Lift |
Reichelt Elektronik |
AKL 175-03 |
RM7,5mm |
12,000 € |
8 |
X5 |
Anschlussklemme 4-polig, Lift |
Reichelt Elektronik |
AKL 175-04 |
RM7,5mm |
7,920 € |
8 |
B1 |
DIL-GLEICHRICHTER |
Reichelt Elektronik |
B250C800 |
DIL-8 |
1,520 € |
8 |
SW1 |
Dip-Schalter, stehend, 4-polig |
Reichelt Elektronik |
NT 04 |
DIL-8 |
2,000 € |
8 |
IC3 |
1-Wire Parasite-Power Digital Thermometer |
Reichelt Elektronik |
DS 18S20 |
TO-92 |
25,600 € |
8 |
SV1 |
MA03-2 für ISP06 |
Reichelt Elektronik |
SL 2X50G 2,54 |
RM2,54 |
5,600 € |
1 |
SV3 |
MA06-02 für Jumper-Settings RS485 |
Reichelt Elektronik |
--siehe SV1 |
RM2,54 |
- € |
8 |
IC4 |
RS485/422 Transceiver 5V |
Reichelt Elektronik |
MAX 491 CPD |
DIL-14 |
19,600 € |
8 |
IC1 |
ATMEL ATmega 168 AVR-RISC-Controller |
Reichelt Elektronik |
ATMEGA 168-20DIP |
DIL-28 |
29,200 € |
8 |
D5 |
Diode P6KE440CA Überspannungsschutzdiode |
RS-Online |
543-8573 |
RM15 |
8,400 € |
8 |
KK2 |
Spezialkühlkörper, 3,6K/W, M3 |
Reichelt Elektronik |
V PR233/94-M3 |
94x50x28mm |
20,400 € |
8 |
K1 |
Halbleiterelais, 1-polig SIL-Gehäuse 5A 230VAC |
Reichelt Elektronik |
RP1A23D5 |
-- |
102,000 € |
1 |
SV2 |
MA05-2 für RS232 |
Reichelt Elektronik |
--siehe SV1 |
RM2,54 |
- € |
8 |
S1 |
Kurzhubtaster 6x6mm, Höhe: 4,3mm, 12V, vertikal |
Reichelt Elektronik |
TASTER 3301 |
6 x 6 mm |
0,800 € |
8 |
IGBT1 |
IGBT STGP20NC60VD, 600V, 20A, TO-220; Transistor Type |
Farnell |
9512500 |
TO-220 |
29,760 € |
8 |
SG1 |
Elektromagnetischer Summer |
Reichelt Elektronik |
SUMMER TDB 05 |
12mm |
6,800 € |
8 |
IC6 |
TLP351(F) PHOTOKOPPLER GAA AS IRED & PHOTO-IC |
Farnell |
1761573 |
DIL-8 |
9,040 € |
8 |
-- |
Sicherungshalter, max. 6,3A-2 |
Reichelt Elektronik |
PL 112100 |
5x20mm |
1,680 € |
1 |
-- |
Silikon-Isolierfolie, 94x20x0,18mm |
Reichelt Elektronik |
SI 6018 |
94x20x0,18mm |
1,850 € |
8 |
-- |
Metallbrückengleichrichter B500C25A |
Reichelt Elektronik |
B500C25A |
28,7 x 28,7 x 23,4 mm |
9,200 € |
8 |
-- |
Montage-Clip für Kühlkörper TO220, 15 |
Reichelt Elektronik |
MC 726 |
-- |
1,760 € |
40 |
-- |
Abstandhalter für 3mm LEDs, Länge 5,0mm |
Reichelt Elektronik |
MEN 2818.3045 |
5 mm |
6,800 € |
8 |
-- |
IC-Sockel, 6-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 6P |
DIL-6 |
1,120 € |
16 |
-- |
IC-Sockel, 14-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 14P |
DIL-14 |
0,260 € |
8 |
-- |
IC-Sockel, 20-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 20P |
DIL-20 |
0,250 € |
16 |
-- |
IC-Sockel, 8-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 8P |
DIL-8 |
2,560 € |
8 |
-- |
IC-Sockel, 28-polig, superflach, gedreht, schmal |
Reichelt Elektronik |
GS 28P-S |
DIL-28 |
3,360 € |
8 |
-- |
Kurzschlussbrücke, schw. m. Grifflasche |
Reichelt Elektronik |
JUMPER 2,54GL SW |
RM 2,54 |
0,320 € |
Stückliste für die StarLight Slave Boards
Stückliste für den StarLight SCART-Adapter
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
1 |
JP2 |
JP2 |
Reichelt Elektronik |
PS 25/2G WS |
RM2,54 |
0,290 € |
1 |
X1 |
X1 |
Reichelt Elektronik |
AKL175-02 |
RM7,5mm |
0,500 € |
1 |
R4 |
R4 |
Reichelt Elektronik |
METALL 1,50K |
RM12 |
0,082 € |
1 |
LED2 |
LED2 |
Reichelt Elektronik |
LED 3MM 2MA GN |
3mm |
0,070 € |
1 |
R2 |
R2 |
Reichelt Elektronik |
METALL 10,0K |
RM12 |
0,082 € |
1 |
R1 |
R1 |
Reichelt Elektronik |
METALL 249 |
RM12 |
0,082 € |
1 |
JP1 |
JP1 |
Reichelt Elektronik |
SL 1X50G 2,54 |
RM2,54 |
0,270 € |
1 |
T1 |
T1 |
Reichelt Elektronik |
IRLU 2905 |
TO-251AA |
0,840 € |
1 |
SV2 |
SV2 |
Reichelt Elektronik |
PSL 14W |
RM2,54 |
0,240 € |
1 |
SCART1 |
SCART1 |
Reichelt Elektronik |
SPL 64 |
RM2,54 |
0,960 € |
1 |
-- |
-- |
Reichelt Elektronik |
MEN 2818.3045 |
5 mm |
0,170 € |
2 |
-- |
-- |
Reichelt Elektronik |
PFL 14 |
RM2,54 |
0,240 € |
1 |
-- |
-- |
Reichelt Elektronik |
UP 931HP |
160 x 100 mm |
2,700 € |
1 |
-- |
-- |
Reichelt Elektronik |
AWG 28-14G 10M |
10 m |
4,350 € |
Stückliste für den StarLight SCART-Adapter
Stückliste für die StarLight Dauerlichtrelais
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
4 |
X1 |
Anschlussklemme 2-polig, Lift |
Reichelt Elektronik |
AKL175-02 |
RM7,5mm |
2,000 € |
2 |
X1 |
Anschlussklemme 3-polig, Lift |
Reichelt Elektronik |
AKL 175-03 |
RM7,5mm |
1,500 € |
2 |
K2, K3 |
Steckrelais, 2x UM, 250V/8A, 230V |
Reichelt Elektronik |
FIN 40.52.8 230V |
RM 5,0mm |
7,000 € |
1 |
-- |
Laborkarte, Hartpapier |
Reichelt Elektronik |
UP 931HP |
160 x 100 mm |
2,700 € |
Stückliste für die StarLight Dauerlichtrelais
Stückliste für die StarLight Treiberadapter
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
1 |
IC1 |
Octal buffer/line-driver 3-state |
Reichelt Elektronik |
74HCT 244 |
DIL-20 |
0,290 € |
1 |
DIP16 |
IC-Steckadapter, 16-polig |
Reichelt Elektronik |
AR 16 |
DIP16 |
0,560 € |
1 |
-- |
IC-Sockel, 20-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 20P |
DIL-20 |
0,250 € |
Stückliste für die StarLight Treiberadapter
Stückliste für die StarLight RS485 Trace-Adapter
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
4 |
C1, C2, C3, C4 |
Elektrolytkondensator 1µF / 63V |
Reichelt Elektronik |
RAD 1/63 |
5x11mm, RM 2,0mm |
0,160 € |
3 |
C5, C6, C7 |
Keramik-Kondensator 100N |
Reichelt Elektronik |
KERKO 100N |
RM5,0 |
0,180 € |
1 |
IC3 |
RS232-Driver |
Reichelt Elektronik |
MAX 232 CPE |
DIL-16 |
0,410 € |
2 |
IC1, IC2 |
Low-Power / Slew-Rate-Limited RS-485/RS-422 Transceivers |
Reichelt Elektronik |
MAX 488 CPA |
DIP-8 |
5,500 € |
1 |
X2 |
Platinensteckverbinder gerade, weiß, 2-polig |
Reichelt Elektronik |
PS 25/2G WS |
RM2,54 |
0,290 € |
2 |
X3, X4 |
D-SUB-Buchse, 9-polig, gewinkelt |
Reichelt Elektronik |
D-SUB BU 09GW |
RM 9,4 |
1,060 € |
1 |
X1 |
Anschlussklemme 4-polig, Lift |
Reichelt Elektronik |
AKL 175-04 |
RM7,5mm |
0,990 € |
1 |
LED1, LED2 |
LED 3mm, low-Current, grün |
Reichelt Elektronik |
LED 3MM 2MA GN |
3mm |
0,070 € |
1 |
-- |
Abstandhalter für 3mm LEDs, Länge 5,0mm |
Reichelt Elektronik |
MEN 2818.3045 |
5 mm |
0,170 € |
1 |
R1, R2 |
Metallschichtwiderstand 1,5k Ohm |
Reichelt Elektronik |
METALL 1,50K |
RM12 |
0,082 € |
1 |
-- |
Laborkarte, Hartpapier |
Reichelt Elektronik |
UP 931HP |
160 x 100 mm |
2,700 € |
2 |
-- |
IC-Sockel, 8-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 8P |
DIL-8 |
0,320 € |
1 |
-- |
IC-Sockel, 16-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 16P |
DIL-16 |
0,290 € |
Stückliste für die StarLight RS485 Trace-Adapter
Stückliste für die StarLight RS232-Adapter
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
5 |
C1, C2, C3, C4, C5 |
Elektrolytkondensator 1µF / 63V |
Reichelt Elektronik |
RAD 1/63 |
5x11mm, RM 2,0mm |
0,200 € |
1 |
IC1 |
RS232-Driver |
Reichelt Elektronik |
MAX 232 CPE |
DIL-16 |
0,410 € |
1 |
SV1 |
MA05-2 für RS232 |
Reichelt Elektronik |
SL 2X50G 2,54 |
RM2,54 |
0,700 € |
1 |
X1 |
D-SUB-Buchse, 9-polig, gewinkelt |
Reichelt Elektronik |
D-SUB BU 09GW |
RM 9,4 |
0,530 € |
1 |
-- |
Laborkarte, Hartpapier |
Reichelt Elektronik |
UP 931HP |
160 x 100 mm |
2,700 € |
2 |
-- |
Pfostenbuchse, 14-polig, mit Zugentlastung |
Reichelt Elektronik |
PFL 14 |
RM2,54 |
0,240 € |
1 |
-- |
Flachbandkabel AWG28, 9-pol., grau, 10m-Ring |
Reichelt Elektronik |
AWG 28-09G 10M |
10 m |
7,650 € |
1 |
-- |
IC-Sockel, 16-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 16P |
DIL-16 |
0,290 € |
Stückliste für die StarLightRS232-Adapter
Stückliste für das Betty-Scart-Programmierinterface
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
5 |
C1, C2, C3, C4, C5 |
Elektrolytkondensator 0,1 µF/ 100 Volt |
Reichelt Elektronik |
RAD 0,1/100 |
5x11mm, RM 2,0mm |
0,200 € |
5 |
R7, R8, R9, R10 |
Metallschichtwiderstand 1,0k Ohm |
Reichelt Elektronik |
METALL 1,00K |
RM10 |
0,410 € |
3 |
R2, R3, R4, R14, R15 |
Metallschichtwiderstand 10k Ohm |
Reichelt Elektronik |
METALL 10,0K |
RM10 |
0,246 € |
1 |
R11, R18 |
Metallschichtwiderstand 100k Ohm |
Reichelt Elektronik |
METALL 100K |
RM10 |
0,082 € |
2 |
T1 |
Transistor NPN TO-92 45V 0,1A 0,5W |
Reichelt Elektronik |
BC547B |
TO-92 |
0,080 € |
1 |
SV1 |
Pfostenstecker, 14-polig, mit Verrieglung, gew. |
Reichelt Elektronik |
PSL 14W |
RM2,54 |
0,240 € |
1 |
JP1 |
Jumper JP2E für BL enable |
Reichelt Elektronik |
SL 1X50G 2,54 |
RM2,54 |
0,270 € |
1 |
IC1 |
MAX 3232 3,0 to 5,5V low power RS-232 |
Reichelt Elektronik |
MAX 3232 CPE |
DIL-16 |
1,150 € |
1 |
JP4 |
Jumper JP2E für PDA or RESET |
Reichelt Elektronik |
--siehe JP1 |
RM2,54 |
0,000 € |
1 |
JP3 |
Jumper JP2E für RESET from TxD or RTS |
Reichelt Elektronik |
--siehe JP1 |
RM2,54 |
0,000 € |
1 |
X1 |
D-SUB-Buchse, 9-polig, gewinkelt |
Reichelt Elektronik |
D-SUB BU 09GW |
RM 9,4 |
0,530 € |
1 |
JP5 |
Jumper JP2E für Rx or PDA/RESET |
Reichelt Elektronik |
--siehe JP1 |
RM2,54 |
0,000 € |
1 |
SV2 |
Pfostenstecker, 14-polig, mit Verrieglung, gew. |
Reichelt Elektronik |
Reichelt Elektronik |
RM2,54 |
0,240 € |
1 |
JP2 |
Jumper JP2E für force RESET |
Reichelt Elektronik |
--siehe JP1 |
RM2,54 |
0,000 € |
1 |
-- |
IC-Sockel, 16-polig, superflach, gedreht, vergold. |
Reichelt Elektronik |
GS 16P |
DIL-16 |
0,290 € |
Stückliste für das Betty-Scart-Programmierinterface
Stückliste für das Betty Netzteil
|
Menge |
Bauteile |
Beschreibung |
Lieferant |
Bestellnummer |
Maße |
Preis |
2 |
D1, D2 |
Gleichrichterdiaode 1N 4001 50V, 1A |
Reichelt Elektronik |
1N 4001 |
DO41 |
0,040 € |
1 |
C1 |
Keramik-Kondensator 100N |
Reichelt Elektronik |
KERKO 100N |
RM5,0 |
0,060 € |
1 |
C2 |
Elektrolytkondensator 10 µF / 63V |
Reichelt Elektronik |
RAD 10/63 |
5x11mm, RM 2,0mm |
0,040 € |
1 |
C3 |
Elektrolytkondensator 1 µF / 63V |
Reichelt Elektronik |
RAD 1/63 |
5x11mm, RM 2,0mm |
0,040 € |
1 |
R1 |
Einstellpotentiometer, stehend, 5,0 K-Ohm |
Reichelt Elektronik |
PT 6-S 5,0K |
6,4mm, RM5 |
0,260 € |
1 |
R2 |
Metallschichtwiderstand 240 Ohm |
Reichelt Elektronik |
METALL 240 |
RM10 |
0,082 € |
1 |
IC1 |
Spannungregler 1,2V to 37V |
Reichelt Elektronik |
LM 317-220 |
TO220 |
0,260 € |
Stückliste für das Betty Netzteil
Hinweis: Bestellnummern und Preise beziehen sich auf den Zeitpunkt der Projektumsetzung Mai 2009 und können abweichen!!
Schaltpläne
Bestückpläne
PCB's
Software
Die Software zur Beleuchtungssteuerung wurde teilweise in BASCOM-AVR einem Basic Compiler der Firma MCS-Electronics,
teilweise in C mit den Compilern (abhängig vom Device) mit SDCC, WinARM oder WinAVR erstellt und hier zum Download verlinkt.
Für den Master und den Slave finden sich die einzelnen BASCOM-Module aufgeführt. Für Betty und SCART-Adapter sind es die kompletten ZIP-Files der Verzeichnissstrukturen!
Software für den Master
|
BASCOM-AVR Sourcecode zum StarLight Master
|
|
|
BIN-File zum StarLight Master
|
|
HEX-File zum StarLight Master
|
|
|
StarLight Master Sourcecode als RTF-File
|
Software für den Slave
|
BASCOM-AVR Sourcecode zum StarLight Slave
|
|
|
BIN-File zum StarLight Slave
|
|
HEX-File zum StarLight Slave
|
|
|
StarLight Slave Sourcecode als RTF-File
|
Software für die Betty
|
BETTY SourceCode StarLight
|
Software für den Scart-Adapter
|
Scart-Adapter SourceCode StarLight
|
Laborsystem StarLight
Dokumentation und Daten
Mitgeltende Unterlagen und Sonstiges
Bei den verwendeten Bauteilen handelt es sich fast ausschließlich um Standardbauteile.
Es wurden keine zusätzlichen Dokumente für Module usw. verwendet.
Wie in den obigen Kapitel schon beschrieben befindet sich die Dokumentation zur Betty im Forum BettyHacks.com.
Aus diesem Grund entfällt die Notwendigkeit tiefergehender Beschreibungen und Dokumentationen.
Zusätzliche zu den Schaltplan- und Layout-Daten und obigen Dokumenten sind keine mitgeltenden Unterlagen vorhanden.
Dimmeranblicke