01

SOLID

Ein starkes Fundament

Die Basis des Backends unserer grafischen Oberflächen („Projectors“) bildet unsere selbst entwickelte, leistungsstarke und flexible Software-Plattform „SOLID”. Sie ermöglicht die reibungslose Verknüpfung unserer UI-Anwendungen mit technischer Funktionalität, indem siedie Schnittstellen zu entsprechenden Hard- und Software-Komponenten bereitstellt, die Nachrichtenverteilung regelt und die Prozesse automatisiert.

Der Ursprung von SOLID

Ursprünglich für die Prototypen-Entwicklung im Automotive-Bereich konzipiert, sind die typischen Einsatzgebiete Laptopdemos, Mockups, Fahrsimulationen, Real-Fahrzeuge und Ausstellungen. Hierfür unterstützt das Framework fahrzeugtypische Bussysteme wie CAN (FD), LIN, MOST, Flexray und BroadR-Reach (Autosar). Für Solid existiert eine große Bibliothek von Modulen in DLL-Form („Actors“), die zahlreiche Dienste zur Mustererkennung (Sprachdialog, Gesten, Kopfbewegung, Blick, Mimik, Multitouch), Sensorik, Fahrzeuganbindung (Restbussimulation), Fahrzeugkomponenten und vieles mehr bietet.

Die SOLID-Architektur ist offen, d.h. die Sourcecodes zur Erzeugung eigener Actors sind dokumentiert und offengelegt. Zudem können Nachrichten mit Softwaremodulen von Partnern und Drittanbietern ausgetauscht werden. Es existieren Gateways/Wrapper für andere Frameworks wie Spyder, Exlap, BORIS (Interlink) etc.

Für die Durchführung von Usability-Tests konzipiert, unterstützt SOLID die Anbindung von Fahrsimulatoren und externer Versuchsleiterapplikationen zur Fernsteuerung sowie synchronisiertes Daten/Video-Logging (z.B. DaViLog). Der Grundgedanke hinter Solid ist eine workfloworientierte, zeitnahe Implementierung bei maximaler Flexibilität, Zuverlässigkeit und sparsamer Verwendung von Systemressourcen. SOLID ist ein praxiserprobtes Ingenieurstool, welches bisher in mehr als 1000 Projekten eingesetzt wurde und permanent weiter-/neuentwickelt wird, um den ständig steigenden Anforderungen gerecht zu werden.

SOLID unterstützt nativ oder mit seinen derzeit 250 Erweiterungsmodulen folgende Funktionen:

Basis-Funktionen

Automatisiertes Laden/Platzieren/Überwachen von Software-Komponenten, Nachrichtenarbitrierung, Scripting, Logging, Fernsteuerung, Schnittstellen, Gateway/Wrapping.

Bus-Systeme

CAN/FD (Vector, Peak, OEM-spezifisch), LIN, Automotive Ethernet (BroadR-Reach), APIX, Flexray, MOST (eingeschränkt), RS485, RS232, I²C, SPI, USB, DMX

Protokolle

TCP/UDP, BAP, SomeIP, JSON, BORIS, Interlink, Exlap, Spyder, ArtNET, ROS, PhilipsHue, VTDLink, WinPcap, FadeCandy, LUA, ADTF

Funktionalität

Sprachdialog (ASR+TTS), Gestenerkennung, Blickerfassung (ETS), Schrifterkennung, Restbussimulation, Multi-Touch, GPS, Gyroskope, Motorsteuerung, Sensorik, Encoder, Licht-Inszenierung, Raumklang, Kombi-Instrumente, verteilte Architektur, Bio-Sensoren, Device-Ansteuerung uvw.

Programmiersystem

Microsoft Visual Studio 2019 in C++ mit MFC

Systemanforderungen

  • PC-Architektektur
  • Windows-Versionen: 7*, 7 embedded*, 8, 8.1, 10, 11 (alle derzeit gängigen Versionen bis einschließlich 2004), 10 IOT.

*Achtung: Einige Funktionen wie Multi-Touch-Injection sind erst ab Windows 8 möglich.

Bedienung

  • Maus, Tastatur (Hotkeys)
  • durch eigenes Message-Format jede beliebige (Fahrzeug-)Hardware, Scripting

Darstellung

Verschiedene, nach Bildschirmgröße und Pixeldichte abhängige Darstellungsgrößen: Large (1920×1080), Medium (1280×720), Small (800×480).

Fahrzeug-Interfaces

  • Vector (CAN/FD, LIN, Flexray, MOST)
  • Peak-Systems (CAN/FD, LIN)
  • OASIS (MOST)

Brauche ich Admin-Rechte zum Installieren/zur Laufzeit?

Grundsätzlich ist SOLID so entworfen, dass es auch auf typischen Corporate-Rechnern ohne Admin-Recht arbeitsfähig ist. Je nach Betriebssystem und firmentypischen Systemeinstellungen kann es sein, dass bei der ersten Anwendung für die eingehenden TCP-Sockets eine einmalige Administrator-Bestätigung notwendig ist.

Benötigt SOLID einen Installer?

Nein, die Komponenten können direkt in das Ziel-Directory kopiert werden. Es ist auch möglich, SOLID von einem mobilen Datenträger oder Netzwerklaufwerk zu starten. Hier ist darauf zu achten, dass in Verbindung mit kundenspezifischen HTML5-Projectoren die maximale Pfad-Tiefe/Länge nicht überschritten wird.

Wie viele Erweiterungsmodule gibt es derzeit?

Derzeit gibt es ca. 250 Laufzeitmodule („Actors“), wovon einige kundenspezifisch und andere allgemein sind.

Kann ich eigene Software verwenden oder muss ich jedes Mal Usaneers anfragen?

Es ist ausdrücklich möglich, eigene Software einzubinden, sowohl Projectoren (GUI) als auch Actors (technische Module). Usaneers stellt ausführliche Programmier-Dokumentationen, Programmbeispiele und Testprogramme bereit. Die Entwickler-Lizenz beinhaltet zudem Support-Stunden.

Kann ich SOLID auch fernsteuern?

Selbstverständlich, das ist ein essenzielles Feature von SOLID und wird auf vielfältige Weise unterstützt:

  • GUI per Android/iOS-Tablet oder Windows, z.B. mit unserem VLUID-Tool
  • Freidefinierbare Keyboard-Tasten
  • Über Angeschlossene Hardware (z.B. das Multifunktionslenkrad)
  • Über die mitgelieferten Entwicklertools (SolidTester, Solid2SolidTest etc.)
  • Über eine beliebige Software, die über UDP/TCP/CAN… mit SOLID kommuniziert

Ich bin kein Programmierer, will aber für eine Innenrauminszenierung Klang-, Licht- und Aktuatoren-Ereignisse orchestrieren. Wie geht das?

SOLID stellt ein felderprobtes Scripting-System mit 10 parallelen Skript-Ebenen („Threads“) zur Verfügung. Durch Copy & Paste der sichtbaren und dokumentierten SOLID-Kommandos können sich ereignisgesteuerte Skripte mit absoluten oder relativen Timings erstellen. Das ist in der Praxis erfrischend einfach, da alle Kommandos auf Lesbarkeit hin gestaltet sind.

Wie sieht es aus mit geloggten CAN-Daten?

SOLID kann nativ geloggte CAN-Dateien aus Standard-Tools wie CANoe abspielen, dabei die Kanäle routen und die Abspielgeschwindigkeit ändern. Natürlich kann SOLID auch selbst CAN-Dateien loggen. Die Logfiles werden meist zum Entwickeln verwendet, wenn die Original-Hardware nur kurz verfügbar ist. Diese können aber in Kombination mit synchronisierten Video-Dateien auch vortrefflich für Demonstrationen oder Messe-Einsatz genutzt werden.

Läuft SOLID auch auf Linux/Android-Derivaten?

Nein, SOLID selbst derzeit (noch) nicht.

Es ist aber geplant, in der Version 6 diese Systeme direkt zu unterstützen. Im Augenblick ist das nur per virtueller Maschine oder einem separatem Windows-PC möglich.
Die Projectoren hingegen können für beliebige Plattformen (auch Mobil) entwickelt sein, da sie mit SOLID über TCP kommunizieren.

Du benötigst eine Demo Version oder unsere Dokumentationen mit detaillierten Beschreibungen zur Nutzung und Programmierung von SOLID?

Du hast detaillierte Fragen zur Lösung oder den Lizenzkosten? Dann kontaktiere uns gerne über solid@usaneers.de.

  • Info
  • Specs
  • FAQ
  • Dokumentation
02

Bei Fragen oder Wünschen zu SOLID kannst du uns gerne eine Nachricht über das Kontaktformular zukommen lassen.

This site is registered on wpml.org as a development site.