Warum gibt es auf dieser Seite überhaupt noch RS232-Hardware?
Nun, obwohl diese Technik erstmals in den frühen 1960ern erarbeitet wurde, wird sie auch heute noch stark eingesetzt. Zwar sind die 9-poligen RS232-Sub-D-Stecker aus den Computern längst verschwunden, aber aufgrund der einfachen und universellen Art der Kommunikation wird RS232 (oder besser "UART" = "Universal Asynchronous Receiver Transmitter") auch weiterhin in fast allen Geräten mit Mikrocontrollern verwendet. Neben SPI, I2C und anderen seriellen Kommunikationsarten ist die UART-Verbindung asynchron. Dies bedeutet, man muss nicht zwingend empfangen, wenn man senden muss und man benötigt keine Clock-Leitung.
Auch für das auf dieser Website beschriebene DMX512 wird die UART der Mikrocontroller (wie bei RS232) verwendet, nur dass man zusätzlich noch einen RS485-Transmitter (hier verwende ich gerne den SN75176) verwendet wird. Kurzum: wenn man möglichst einfach Daten übertragen möchte und keinen TCPIP-Stack einrichten möchte, kann man für kurze Strecken also RS232 gut verwenden - egal ob mit TTL-Pegel, oder mit den eigentlich dafür vorgesehenen +/-12V. Für die Haussteuerung habe ich DMX512 aber als nicht zielführend gesehen, da man hier ja ununterbrochen 512 Byte senden muss und lediglich einen Master hat, der alles exakt steuern muss. Für mich war es einfacher wie folgt vorzugehen:
Ein Steuergerät mit Netzwerkanschluss, welches über einen RS232-Anschluss einen RS485-Transceiver ansteuert und dann auf einzelne Clients mit ebenfalls einem RS485-Transmitter die Daten empfängt. Vorteil hier: man ist nicht auf die 512 Bytes festgelegt und kann ein eigenes Steuerprotokoll verwenden. Hier verwende ich für die Beleuchtungstechnik das PC_DIMMER-RS232-Protokoll, welches in der allerersten PC_DIMMER-Version 0.9 im Jahr 2004 bereits eingesetzt wurde. In dem Protokoll sind Informationen zur Adressierung, der Einblendzeit für einen Kanal und der Endwert enthalten. Das Dimmen übernimmt dann die Zielhardware. Somit muss nur ein einzelner Befehl gesendet werden und man kann von wenigen Sekunden bishin zu mehreren Stunden einzelne Kanäle dimmen lassen.
Als Steuergerät bietet sich hier der RaspberryPi direkt an. Da man hier kein Echtzeitbetriebssystem hat, müsste man für DMX512 nun hier einen extra Controller anbinden. Da wir aber RS232 verwenden und RS485 lediglich die elektrische Wandlung darstellt, können wir sogar die on-board-Schnittstelle einsetzen, ohne einen zusätzlichen USB-Wandler.
Somit stellt die RS232-Hardware eine sehr elegante Lösung für kleinere Hausinstallationen dar, die mit bekannter Hardware gut gesteuert werden kann - und das sogar bidirektional! :)