-
Die Erfindung betrifft ein Verfahren zum Ablaufen lassen von Aktionen von an ein Steuermodul angeschlossenen und von diesem zum Erzeugen des Ablaufes angesteuerten Aktoren, insbesondere Verfahren zum Programmieren eines Lichtsteuersystems, bei welcher Programmierung zum Erzeugen eines eine Primäraktion überlagernden Ablaufes wenigstens ein Plug-in über eine Schnittstelle mit einem Hostprogramm verknüpft wird. Die Erfindung betrifft ferner ein Plug-in, vorzugsweise zur Verwendung in einem solchen Verfahren sowie ein Lichtsteuersystem mit derartigen Plug-ins.
-
Bei Lichtsteuersystemen werden komplexe Lichtszenen oftmals durch Überlagerung einzelner Lichtszenen erzeugt. Eine solche Lichtszene umfasst eine Primäraktion, die zumindest von einer weiteren Aktion überlagert wird. Bei derartigen Überlagerungen kann es sich beispielsweise um eine auf einer als Primäraktion definierten Lichtszenerie in einem Ausschnitt derselben abspielende zweite Lichtszenerie handeln, die sich beispielsweise durch ihre Farbdarstellung und/oder durch einen Bewegungsablauf von der Primäraktion abhebt. Bei derartigen Lichtsteuersystemen handelt es sich um individuelle Lichtpunkte oder Strahler, die in einer ein- oder zweidimensionalen Matrix angeordnet sind. Angeschlossen sind die individuellen Lichtpunkte, die beispielsweise als LEDs ausgeführt sein können, an ein Steuermodul, durch das diese in Abhängigkeit von dem jeweiligen Lichtsteuerprogramm angesteuert werden. Zum Bereitstellen dieses Lichtsteuerprogramms bedarf es einer Programmierung. Programmiert werden Überlagerungslichtszenen durch spezielle Überlagerungsalgorithmen, wie beispielsweise durch Blau-Stanzverfahren oder unter Verwendung des sogenannten Alpha-Blendingverfahrens. Zum Programmieren einer solchen Lichtszene werden an ein für die Lichtsteuerung eingesetztes Programm – das Hostprogramm – ein oder mehrere, zueinander in Reihe geschaltete Plug-ins an die diesbezügliche, zum Anschließen eines Plug-ins definierte Schnittstelle angeschlossen bzw. mit dieser Schnittstelle verknüpft. Damit übernimmt ein solches Plug-in oder eine solche Plug-in-Reihenanordnung die Ansteuerung der Aktoren des überlagerten Bereiches der Matrix, während das Hostprogramm für die Ansteuerung der Primärszenerie bzw. der Primäraktionen verantwortlich ist. Für den Fall, dass der überlagerte Bereich der ein- oder zweidimensionalen Lichtquellenanordnung bewegt erscheinen und somit sukzessive über unterschiedliche Bildpunkte wandern soll, ist es erforderlich, über ein oder mehrere weitere Schnittstellen – sogenannte Sidechain-Interfaces – zusätzlich entsprechende Bewegungsvektoren in das entsprechende Plug-in einzuspeisen. Ein solches Plug-in ist sodann über zwei unterschiedliche Schnittstellen an das Hostprogramm angeschlossen. Auch ist es über Sidechain-Interfaces möglich, die Größe eines überlagerten Teilbereichs oder geometrische Verformung dieses Teilbereiches zu steuern. Ein derartiges Verfahren wird beispielsweise in dem Katalog Insta Univers 2008/2009 auf Seiten 138 bis 147, beschrieben.
-
DE 600 23 730 T2 offenbart ein System und ein Verfahren zum Erzeugen von Lichtsequenzen, wobei Lichteffekte als Plug-ins zur Verfügung gestellt werden, die für dieselbe Lichteinheit oder eine vorbestimmte Auswahl von Lichteinheiten in additiver oder subtraktiver Art und Weise verwendet werden können.
-
Ist bei einem Lichtsteuersystem die Programmierung unter Verwendung des Hostprogramms durchgeführt worden, wird die Programmierung typischerweise auf einem dem Lichtsteuersystem zugeordneten Speicher abgelegt. Der typischerweise für eine solche Programmierung eingesetzte Computer kann anschließend von dem Lichtsteuersystem getrennt werden.
-
Auch wenn mit dieser vorbekannten Programmierung prinzipiell komplexere Lichtszenen erzeugt werden können, ist der Programmieraufwand bei komplexer werdenden Lichtszenen zunehmend höher; zudem wird mit komplexer werdenden Lichtszenen die Programmierung zunehmend unüberschaubarer.
-
Ausgehend von dem vorbeschriebenen Verfahren zum Programmieren von Lichtszenen liegt der Erfindung die Aufgabe zugrunde, den Vorgang der Programmierung für einen Benutzer zu vereinfachen, insbesondere wenn komplexe Überlagerungsabläufe, beispielsweise in Form von Lichtszenen erzeugt werden sollen.
-
Gelöst wird diese Aufgabe durch ein eingangs genanntes, gattungsgemäßes Verfahren, bei dem das zumindest eine mit dem Hostprogramm über eine Primärschnittstelle verknüpfte Plug-in über eine weitere, mit der Primärschnittstelle identische oder kompatible Sekundärschnittstelle verfügt und entsprechend dem zu programmierenden Überlagerungsablauf mit dem ersten, mit dem Hostprogramm verknüpften Plug-in ein oder mehrere weitere Plug-ins mit dessen Sekundärschnittstelle verknüpft werden.
-
Bei diesem Verfahren erfolgt die Programmierung der Überlagerungsaktionen unter Verwendung von Plug-ins, die neben ihrer üblicherweise vorhandenen Primärschnittstelle zum Verknüpfen derselben mit einem hierarchisch übergeordneten Programm, beispielsweise dem Hostprogramm, zusätzlich über eine Sekundärschnittstelle verfügen. Die Primärschnittstelle und die Sekundärschnittstelle eines solchen Plug-ins sind kompatibel oder sogar identisch. Dieses gestattet den Einsatz von Plug-ins auch als hierarchisch übergeordnete Programme, um an diese ein oder mehrere weitere hierarchisch untergeordnete Plug-ins anschließen zu können. Da sämtliche Plug-ins über eine Primär- und eine Sekundärschnittstelle verfügen, können diese quasi beliebig miteinander verknüpft werden. Damit ist es möglich, an eine einzige Schnittstelle im Hostprogramm eine Vielzahl von nach Art eines hierarchischen Baumes angeordnete Plug-ins anzuschließen. Dieses ermöglicht, eine Steuerdatenbearbeitung in einem oder mehreren derartigen Bäumen, wobei in jedem Baum nicht nur die Effektsteuerung als solche, sondern auch die Bewegungssteuerung überlagerter Aktionspunktbereiche der Matrix, beispielsweise Lichtpunktbereiche erfolgt. Aufgrund der Plug-in-Konzeption können diese Daten über eine gemeinsame Schnittstelle in das Hostprogramm eingespeist werden. Die Möglichkeit des baumartigen hierarchischen Anordnens von Plug-ins, wobei jeweils die Primärschnittstelle eines untergeordneten Plug-ins mit der Sekundärschnittstelle eines übergeordneten Plug-ins verknüpft wird, ist Grund dafür, dass problemlos und ohne weiteres überschaubar mehrdimensionale Überlagerungen einzelner Szenen oder auch der gesamten Matrix möglich sind. Bei der Programmierung beispielsweise eines Lichtsteuerprogramms ist es allein notwendig, ein oder mehrere Bilderzeugungs-Plug-ins miteinander und/oder mit einem oder mehreren bewegungssteuernden Plug-ins zu verknüpfen. Zu diesem Zweck werden benutzerseitig in jedem Plug-in diejenigen Daten definiert, die über seine Sekundärschnittstelle zur weiteren Bearbeitung untergeordneten, an diese Schnittstelle angeschlossene Plug-ins abgegeben und zur Weiterleitung oder eigenen Weiterverarbeitung wieder empfangen werden.
-
Das Verknüpfen einzelner Plug-ins zu Plug-in-Strukturen in der beschriebenen Art und Weise kann problemlos visuell durch Anzeigen der aktuellen Baumstruktur dargestellt werden. Vorzugsweise können Plug-in-Strukturen zur Ausbildung eines neuen eigenständigen Plug-ins als Arbeitspaket dauerhaft verknüpft werden, wobei auch ein solches Plug-in über eine Primärschnittstelle und vorzugsweise über eine Sekundärschnittstelle verfügt. Auf diese Weise können individuelle, aus mehreren oder auch aus einer Vielzahl einzelner Plug-ins zusammengesetzte Arbeitspakete erstellt werden, die anschließend in unterschiedliche Programmierungen eingebaut werden können. Weisen diese aus einzelnen Plug-ins erzeugten Arbeitspakete eine Sekundärschnittstelle auf, was bevorzugt der Fall ist, können diese genauso wie die ursprünglichen Plug-ins gehandhabt werden.
-
Nachfolgend ist die Erfindung anhand eines Ausführungsbeispiels unter Bezugnahme auf die beigefügten Figuren beschrieben. Es zeigen:
-
1a–1c: eine schematisierte Darstellung einer Lichtszenenmatrix mit einer Primärlichtszene und einer diese Lichtszene überlagernden Szene (1a) sowie weitere Ausschnitte aus dem Ablauf einer Lichtszene auf der Matrix (1b, 1c) und
-
2: eine schematisierte Darstellung des für die Realisierung der Lichtszene der 1 eingesetzten Lichtsteuerprogramms.
-
Ein insgesamt mit dem Bezugszeichen 1 gekennzeichnetes Lichtsteuersystem umfasst eine Lichtpunktmatrix 2, die bei dem dargestellten Ausführungsbeispiel als zweidimensionale Matrix ausgeführt ist. Die einzelnen Lichtpunkte L der Matrix 2 sind durch LEDs dargestellt, wobei jeder Lichtpunkt L in Abhängigkeit von seiner Ansteuerung Licht in unterschiedlichen Wellenlängen emittieren kann. Dabei sind die Wellenlängen so konzipiert, dass sie zumindest einen Teil des sichtbaren Lichtspektrums abdecken.
-
Angeschlossen ist die Matrix 2 an ein Steuermodul 3 mit einem Prozessor zum Abarbeiten eines Lichtsteuerprogramms. Mit Hilfe dieses Lichtsteuerprogramms können auf der Lichtpunktmatrix 2 Lichtszenen generiert und Lichtszenenabläufe erzeugt werden.
-
Dargestellt ist in 1a die Lichtpunktmatrix 2 in einer Ansteuerung derselben, dass auf dieser eine Primärszenerie mit bei dem dargestellten Ausführungsbeispiel vertikalen unterschiedlich hellen Lichtstreifen erzeugt. Diese Lichtstreifen wandern im Zuge des Ablaufes des Lichtsteuerprogramms von links nach rechts. Überlagert wird diese Primärlichtszene und der Ablauf derselben durch eine zweite, sich von der Primärlichtszene unterscheidende Lichtszene. Die zweite Lichtszene ist durch die kreuzschraffierten zur Sekundärszene gruppierten Lichtpunkte L kenntlich gemacht. Lediglich im Wege eines Beispieles und der Einfachheit halber wurde in dem dargestellten Ausführungsbeispiel eine quadratische Gruppierung der Lichtpunkte für die zweite Lichtszene vorgenommen. Die Lichtpunkte der zweiten Lichtszene emittieren Licht in einer anderen Wellenlänge, unterscheiden sich mithin farblich. Zudem wandert die zweite Lichtszene beim Ablauf des Lichtsteuerprogramms über die Lichtpunktmatrix 2, wie dieses schematisiert in den 1b, 1c erkennbar ist.
-
Das Lichtsteuerprogramm zum Realisieren des Lichtszenenablaufes der 1a, 1b und 1c ist nachfolgend anhand eines schematisierten Blockschaltbildes unter Bezugnahme auf 2 erläutert. Das Lichtsteuerprogramm umfasst ein Hostprogramm 4, welches die zum Ansteuern der Lichtpunktmatrix 2 notwendigen Steuerbefehle enthält. Je nach Ausgestaltung des Hostprogramms kann dieses ausgelegt sein, um mit diesem eine Primärlichtszene auf der Matrix 2 zu erzeugen. Das Hostprogramm 4 verfügt über ein oder mehrere Schnittstellen 5. Der Einfachheit halber ist in 2 lediglich eine solche Schnittstelle 5 gezeigt. Die Schnittstelle 5 dient zum Anschließen eines Plug-ins, über das alle oder ein Teil der der Matrix 2 zuzuführenden Lichtsteuerdaten bearbeitet werden können. Bei dem dargestellten Ausführungsbeispiel ist an die Schnittstelle 5 ein erstes Plug-in 6 angeschlossen, mithin das Plug-in 6 mit dem Hostprogramm 4 über seine Schnittstelle 5 verknüpft. Das Plug-in 6 verfügt über eine Primärschnittstelle P, über die das Plug-in 6 mit der Schnittstelle 5 des Hostprogramms 4 verknüpft ist. Diese Primärschnittstelle P verfügt über einen Eingang EP zum Empfangen von Lichtsteuerdaten und über einen Ausgang AP, über die die empfangenen und von dem Plug-in 6 bearbeiteten Lichtsteuerdaten im einfachsten Fall wieder in das Hostprogramm 4 eingespeist werden. Gleichfalls ist es möglich, diese an eine Kette von weiteren Plug-ins weiterzugeben, deren letztes über den Ausgang seiner Primärschnittstelle die resultierenden Daten dann an das Hostprogramm zurückgibt. Bei dem dargestellten Ausführungsbeispiel wird mittels des Plug-in 6 die Primärlichtszene generiert.
-
Das Plug-in 6 verfügt neben seiner Primärschnittstelle EP über eine identisch konzipierte Sekundärschnittstelle S, an die ein oder mehrere weitere Plug-ins angeschlossen werden können. Die Sekundärschnittstelle S verfügt über einen Ausgang AS, über den Lichtsteuerdaten zur weiteren Bearbeitung an ein an diese Schnittstelle S angeschlossenes Plug-in übertragen werden können. Die Sekundärschnittstelle S verfügt des Weiteren über einen Eingang Es zum Empfangen der von den weiteren Plug-ins bearbeiteten Lichtsteuerdaten. Bei dem dargestellten Ausführungsbeispiel sind an die Sekundärschnittstelle S zueinander in Reihe geschaltet zwei Plug-ins 7, 8 angeschlossen und damit mit dem Plug-in 6 verknüpft. Das Plug-in 6 definiert diejenigen Daten oder diejenige Datenmenge, die durch die hierarchisch untergeordneten Plug-ins 7, 8 bearbeitet werden sollen. Im vorliegenden Fall wird über den Ausgang AS der Sekundärschnittstelle S des Plug-in 6 die Größe und damit die Umgrenzung der Sekundärlichtszene definiert und an die Plug-ins 7, 8 zur Bearbeitung übertragen. Die Plug-ins 7, 8 sind ebenso aufgebaut wie das Plug-in 6 und verfügen somit jeweils über eine Primärschnittstelle P und eine Sekundärschnittstelle S. Das Plug-in 7 dient zum Erzeugen der Bewegung der Überlagerung über die Matrix 2; das Plug-in 8 dient zur Farbbearbeitung der Überlagerungsszene. Ein weiteres Plug-in 9 ist mit seiner Primärschnittstelle P an die Sekundärschnittstelle S des Plug-in 7 angeschlossen und dient einer Farbvariation innerhalb der zweiten Lichtszene während des Ablaufes derselben.
-
Hierarchisch gesehen bildet das Plug-in 6 unterhalb der Hostprogrammebene eine erste hierarchische Plug-in-Ebene. Die Plug-ins 7, 8 sind hierarchisch dem Plug-in 6 untergeordnet und bilden bei dem dargestellten Ausführungsbeispiel eine zweite Plug-in-Ebene. Das Plug-in 9 befindet sich in einer dritten Plug-in-Ebene.
-
Die beispielhaft in 2 dargestellte Plug-in-Struktur kann quasi beliebig erweitert oder geändert werden, wobei eine Variation bezüglich einer Implementierung von Plug-ins in allen Ebenen möglich ist. In jeder Ebene können zahlreiche Plug-ins in Reihe angeordnet sein, wie dieses in Figur beispielhaft in der zweiten Plug-in-Ebene gezeigt ist. Ebenso kann eine Plug-in-Struktur zahlreiche weitere Plug-in-Ebenen aufweisen.
-
Zum Erstellen der beschriebenen Verknüpfungen werden Kopien der in einem Speicher hinterlegten Plug-ins an die jeweiligen Schnittstellen gelegt. Dieses kann mit einfachen Mitteln visuell an einem Bildschirm angezeigt werden, beispielsweise nach Art eines hierarchischen Baumes.
-
Da die Primärschnittstellen P und die Sekundärschnittstellen S der Plug-ins 6, 7, 8, 9 identisch zueinander aufgebaut sind, können die Plug-ins beliebig miteinander kombiniert werden. Bei dem dargestellten Ausführungsbeispiel sind beispielhaft einige wenige Plug-ins hinsichtlich ihrer Lichtdatensteuerung beschrieben worden. Eine Vielzahl weiterer Plug-ins mit weiteren Steueroptionen sind typischerweise Teil eines solchen Programmpakets. Die Kompatibilität der einzelnen Plug-ins miteinander erlaubt die Ausbildung beliebig komplexer Strukturen, die problemlos als hierarchische Strukturbäume zusammengestellt werden können. Damit lassen sich beliebig komplexe Lichtszenen programmieren.
-
Nach erfolgter Programmierung, zu der typischerweise ein Computer verwendet werden wird, kann die Programmierung auf einen nichtflüchtigen Speicher eines für die Ansteuerung der Matrix eingesetzten Steuermoduls übertragen werden. Das Steuermodul verfügt zu diesem Zweck über eine entsprechende Programmierschnittstelle zum Anschließen des Computers. Zum Ablaufenlassen einer Lichtszene, wobei auf einem solchen Speicher auch unterschiedliche Lichtszenen hinterlegt sein können, bedarf es der Mitwirkung eines an das Steuermodul angeschlossenen Computers grundsätzlich nicht.
-
Die Funktionalität der Programmierung wird vorzugsweise dadurch erhöht, dass bestimmte Plug-in-Strukturen, beispielsweise die in 2 abgebildete, als Arbeitspaket zusammengefasst ein neues ursprungsprogrammseitig nicht bereitgestelltes Plug-in definieren kann. Auf diese Weise können individuelle Plug-ins gebildet und definiert werden.
-
Die Erfindung ist anhand eines Lichtsteuersystems bzw. der Erstellung einer Programmierung dafür beschrieben worden. Einem Fachmann erschließen sich aufgrund dieser Ausführungen zahlreiche weitere Möglichkeiten, die Erfindung verwirklichen zu können, ohne den Umfang der Ansprüche zu verlassen, ohne dass diese an dieser Stelle aufgezählt werden müssten. So erschließt sich ohne Weiteres, dass das beschriebene Verfahren sich auch zur Programmierung von Abläufen anderer Aktoren eignet und nicht lediglich im Rahmen einer Lichtsteuersystemprogrammierung einsetzbar ist. Ein Einsatz ist beispielsweise auch bei Audio-Anwendungen möglich. Gleichfalls kann das Verfahren bei Video-Anwendungen oder bei Objektbeleuchtungen Einsatz finden.
-
Bezugszeichenliste
-
- 1
- Steuersystem
- 2
- Lichtpunktmatrix
- 3
- Steuermodul
- 4
- Hostprogramm
- 5
- Schnittstelle
- 6
- Plug-in
- 7
- Plug-in
- 8
- Plug-in
- 9
- Plug-in
- AP
- Ausgang Primärschnittstelle
- AS
- Ausgang Sekundärschnittstelle
- EP
- Eingang Primärschnittstelle
- ES
- Eingang Sekundärschnittstelle
- L
- Lichtpunkt
- P
- Primärschnittstelle
- S
- Sekundärschnittstelle