Blickfeld stellt ab sofort eine Software Bibliothek, die so genannte Blickfeld Scanner Library, als Open Source Projekt zur Verfügung. Timor Knudsen, Lead Embedded Software, erklärt, wozu die Blickfeld Scanner Library benötigt wird, für wen sie gedacht ist und warum sie Open Source zur Verfügung gestellt wird.
Was ist die Blickfeld Scanner Library und wofür gibt es sie?
Die Blickfeld Scanner Library (BSL) stellt über das Netzwerk eine Verbindung zu einem Blickfeld Cube oder Cube Range her, stellt die Point Cloud-Daten über eine API zur Verfügung und vereinfacht die Integration des Blickfeld Cubes in existierende Umgebungen. Zudem können über die API Einstellungen vorgenommen, Messungen gestartet und Point Cloud-Daten abgerufen werden.
Auch bei der Visualisierung der Point Cloud in Echtzeit spielt die BSL eine zentrale Rolle: Dabei werden die einzelnen Punkte zunächst über die BSL gestreamt, bis anschließend die Anwendung (z.B. der Viewer in unserer WebGUI) die Daten übernimmt und visualisiert. Eine weitere Anwendung ist die Integration mit ROS: Unser ROS-Treiber verwendet die BSL, um die Point Cloud-Daten zur Verfügung zu stellen.
Blickfeld nutzt Google Protocol Buffers als Datenformat für den Datenaustausch. Durch die plattformunabhängige Definition können Cubes in praktisch jedes System integriert werden. Aktuell existieren native Implementierungen der BSL in C++, Python und Typescript.
Gibt es den Plan, weitere Programmiersprachen zu unterstützen?
Aktuell sind keine weiteren Sprachen geplant, allerdings ist die Umsetzung unkompliziert und kann von Anwendern der BSL selbst durchgeführt werden. Sollten wir entsprechenden Bedarf sehen, werden wir weitere Sprachen auch offiziell unterstützen.
Wie schaut es aus mit einer Unterstützung für mobile Geräte?
Das ist ein interessanter Gedanke. Bislang hatten wir diese Anforderung noch nicht – aber im Prinzip steht auch einer Integration ins Smartphone nichts im Wege.
Für wen ist die BSL gedacht?
Die BSL ist für jeden Blickfeld Cube Anwender gedacht, dem die mitgelieferten Integrationen und Applikationen nicht ausreichen. Wir gehen davon aus, dass praktisch jeder Cube Anwender spezielle Anforderungen an die Integration in seine Systeme hat und auf die BSL zurückgreifen wird.
Welches Vorwissen sollten Nutzer mitbringen?
Das Angebot ist von Entwicklern für Entwickler gedacht. Nutzer sollten Vorwissen in Python oder C++ mitbringen – eine Voraussetzung, die bei den meisten Anwendern, die für eine derartige Integration zuständig sind, gegeben sein sollte. Natürlich gibt es eine begleitende Dokumentation – und Support von Blickfeld. Falls also Fragen auftreten sollten, stehen wir zur Verfügung.
Wie kann man in die BSL einsteigen?
Die BSL ist umfangreich dokumentiert und kommt mit einem ganzen Paket an Beispielen in den unterstützen Sprachen. Mit Python kommt man mit wenigen Zeilen Code an die Daten – eine einfache Anwendung ist so im Handumdrehen implementiert.
Wie ist die Entwicklungsgeschichte der BSL?
Die Entwicklung der BSL hat mit unserem ersten funktionierenden LiDAR-Sensor in 2017 begonnen und ist damit eines der ältesten Software-Projekte, die wir hier bei Blickfeld haben. Seitdem haben wir die BSL kontinuierlich weiterentwickelt und sind nun an einem Punkt angelangt, an dem wir sie quelloffen zur Verfügung stellen.
Wie kam es zu der Entscheidung, die BSL als Open Source-Programm zur Verfügung zu stellen?
Der Plan, die BSL als eine Open Source Library zur Verfügung zu stellen, bestand von Anfang an. Unsere Kunden werden den Cube häufig in ihre existierende Systemlandschaft integrieren wollen. Das geht nur mit einer Programmierschnittstelle und einem definierten Interface zum Gerät. Unser Ziel ist es zudem, es unseren Kunden so einfach wie möglich zu machen, Zugriff auf die BSL und auch auf Updates zu haben. Es soll keine Barrieren geben – wer die BSL braucht, lädt sie sich runter, und das ohne NDA oder Registrierung.
Ein weiterer Grund ist, dass wir bei Blickfeld überzeugte Anhänger von Open Source Projekten sind. Als Start-up profitieren wir massiv von existierenden Open Source Projekten – wir stehen durch Open Source auf den Schultern von Riesen. Wir wissen also aus erster Hand, dass Entwickler Open Source-Programme schätzen.
Unter welcher Lizenz wird die BSL zur Verfügung gestellt?
Wir möchten, dass unsere Kunden die BSL völlig frei verwenden und modifizieren können, daher haben wir uns für die sehr offene BSD 3-clause Lizenz entschieden. Damit steht auch einem Einsatz im kommerziellen Bereich nichts im Wege und jedem Anwender steht es offen, den Code auf seine Bedürfnisse hin anzupassen.
Außerdem freuen wir uns sehr über Beiträge und Ideen der Anwender und stehen Code-Änderungen sehr offen gegenüber. Falls es interessante Features oder Modifikationen aus der Community geben sollte, übernehmen wir sie sehr gerne in das offizielle Release.
Die Blickfeld Scanner Library finden Sie hier.