Aus der Sicht eines Programmierers

Von David Glassman

Wie Extron-Programmierung das AV‑Erlebnis an der Lawrenceville School optimiert hat

Extron stellt ControlScript zur Verfügung, die äußerst umfassende und gut dokumentierte Python-Bibliothek zur Verwendung bei der Verbindung von Extron-Geräten. Diese erleichtert die Arbeit mit Geräten wie Touchpanels und Umschaltern erheblich.

David Glassman,
Leitender Software-Ingenieur bei Control Concepts

Neue AV-Technik für eine historische Einrichtung

Die mitten in New Jersey gelegene Lawrenceville School ist ein privates Internat, welches seit 200 Jahren exzellente Bildungsmöglichkeiten bietet. Die Abbott Dining Hall der Schule verwendet eine Extron DTP CrossPoint 108 4K IPCP SA mit mehreren DTP-Sendern und ‑Empfängern für lokale Ein- und Ausgänge, um Signale an Projektoren und Displays zu leiten. Das System wird mit zwei Extron TLP Pro 720M‑Touchpanels über den in der DTP CrossPoint integrierten IPCP Pro-Steuerungsprozessor gesteuert. Dies alles wird mit ControlScript® und der integrierten Entwicklungsumgebung Global Scripter® von Extron programmiert.

Gesamteindruck

Obwohl ich schon früher Erfahrungen damit gemacht hatte und mit allgemeiner Python-Programmierung vertraut war, war das Projekt an der Lawrenceville School das erste AV-System, welches ich mit Global Scripter, der Python-Programmierumgebung von Extron, programmiert habe. Anfangs war ich unsicher, welche für eine Systemkonfiguration untypischen Herausforderungen mich erwarten würden. Erfreulicherweise lief alles problemlos. Obwohl es einen Moment dauerte, bis ich mich an die neuen Prozesse gewöhnt hatte, gab es nur sehr wenige Überraschungen.

Neben dem Zugriff auf die meisten Standardfunktionen der Python-Bibliothek, mit denen ich vertraut bin, stellt Extron auch eine eigene, äußerst umfassende und gut dokumentierte Python-Bibliothek zur Verfügung: ControlScript. Diese erleichtert die Arbeit mit Geräten wie Touchpanels und Umschaltern bei der Verbindung erheblich. Mit der Extron-Sammlung von Geräte-Modulen war auch die Steuerung von Drittanbieter-Geräten möglich. So gut wie jedes Modul, das ich benötigte, stand mir bereits zu Projektbeginn zur Verfügung. Nur ein einziges benötigtes Gerätemodul war nicht vorhanden. Extron hat dieses schnell für mich entwickelt und es hat auf Anhieb funktioniert.

Warum wir uns nicht für Konfiguration, sondern die Programmierung mit Python entschieden haben

Das System war nicht übermäßig komplex und hätte eventuell auch mit einer Konfiguration erstellt werden können. Allerdings erforderte das Systemdesign einige Funktionen, die sogar für eine anspruchsvolle Konfiguration problematisch gewesen wären. Außerdem wäre es schwierig gewesen, Änderungen vorzunehmen, falls sich während des Projekts etwas am Design ändern würde. Es gibt nichts gegen Konfiguration einzuwenden, aber manchmal braucht man einfach etwas mehr Flexibilität.

Ich liebe es, mit Python zu arbeiten, weshalb mir die Programmierung des Systems viel Spaß gemacht hat. Es ist eine einfache, aber dennoch sehr leistungsstarke Sprache, mit der ich alles programmieren konnte, was ich wollte. Ich entschied mich dafür, das System hauptsächlich objektorientiert zu programmieren, um benutzerdefinierte Objekte nutzen zu können. Basierend auf diesen Objekten und deren Zustand wird dann das System gesteuert. Diese Art der Programmierung sorgt für einen sehr effizienten, straffen Code, was man mit einer Konfiguration einfach nicht erreicht. Umfassende Änderungen sind ein weiterer Grund, warum ich in einem System wie diesem Python gegenüber einer Konfiguration bevorzuge. Durch die Möglichkeit, Daten in realen Variablen und Objekten zu speichern, konnte ich an einer Stelle eine Änderung vornehmen und diese dann programmweit anwenden, was eine enorme Zeitersparnis bedeutet.

Was hat zum erfolgreichen Abschluss geführt?

Die Vertrautheit mit der Python-Programmiersprache war ein großer Pluspunkt für mich. Außerdem war der Support von Extron erstklassig. Sie haben mir einen eigen, hausinternen Ingenieur/Programmierer zur Seite gestellt. Er war meine Anlaufstelle für sämtliche Probleme bei meinen ersten Projekt. Das war ein Riesenvorteil. Die Gewissheit, dass ich mit einem einfachen Anruf Hilfe erhalten würde, erleichterte meine Arbeit. Wenn ich Fragen hatte, wurden diese schnell beantwortet, was mir die Konzentration auf die nächste Aufgabe erlaubte. Insgesamt war die Global Scripter-Programmierung mit ControlScript und Python eine grandiose Erfahrung. Ich freue mich schon auf mein nächstes Projekt.

Flachbildschirme, die in einem Winkel über Küchenarbeitsplätzen angebracht sind, erlauben es, Unterrichtsinhalten zu folgen, ohne dass wertvolle Arbeitsfläche dafür verwendet oder die Zubereitung der Speisen beeinträchtigt wird.

Python-Programmierung für die Abbott Dining Hall der Lawrenceville School

Erfahren Sie mehr

Download