Virtuelle Smart Home Netzwerkumgebung im Kontext von QEMU und SystemC

Language
de
Document Type
Doctoral Thesis
Issue Date
2017-08-02
Issue Year
2017
Authors
Kleinert, Bruno
Editor
Abstract

Digitalization of our everydays’ live is continously progressing forward and finds its way into many more areas of our lives. We wear smart watches, intelligent clothes, and when we are on vacation our smart phone shows pictures of the person who is ringing the door bell at our home. Nowadays there are intelligent devices in private living areas that are connected through a network, for example, intelligent electric meters and intelligent heating controls. Many more connected devices, sensors and actors are predicted to be installed in our homes to measure and exchange data and to react accordingly. Many new devices will need to be developed, to participate in our everyday live and we can not even imagine to live without them one day. To be able to comply with the increasing demand of smart home devices, device manufacturers need to be able to develop devices in short periods of time. Most of such devices are composed of a processor unit, a sensor or actuator hardware component, and device specific software. Faults in the design of the hardware or software of such devices are often diagnosed after the production of expensive prototypes. While defects in software can often be easily fixed, flaws in the hardware design can cause delays and thus high costs until they are resolved. It would save costs to find and resolve design flaws before any expensive prototypes are produced. For this purpose, the presented simulation environment in this work can help to evaluate virtual prototypes. Even before the production of a prototype, smart home devices can virtually be tested with the presented hardware-software co-simulator. The device specific software is executed in a the virtual machine QEMU, while sensor or actuator hardware is simulated in parallel and synchronized by the SystemC reference hardware simulator. Due to the cooperation of a massive amount of connected smart home devices, it is necessary to evaluate the overall result of the cooperation of the virtual devices. To enable this, an adaptive synchronization interface was developed for the hardware-software co-simulator, that allows the configuration and thus the reduction of the compute overhead of the synchronization. This allows several connected instances of smart home devices, which are virtualized by the hardware-sofware co-simulator, to be executed in parallel on a desktop computer. If the computation power of a modern desktop computer is notenough to simulate all desired virtual smart home devices, the virtual smart home network can be distributed onto several computers. To enable the user to quickly retrieve results from the virtual environment, existing and developed software tools are presented that help to quickly prepare simulation experiments. A developed tool helps to automatically generate device drivers for sensor and actuator peripheral hardware from interface specifications. Since it is a tedious task to prepare disk images for dozens of virtual devices, a program was developed that can create a variety of individual disk images for differing virtual devices. In conjunction with the developed, networked hardware-software co-simulation, the presented toolchain builds a workflow for device developers to save time and money to develop software and hardware for smart home devices. The suitability for daily use of the developed programs was tested on several test scenarios, but also on real world applications. The correct operation of the hardware-software co-simulator was verified by synthetic, modeled test peripheral hardware. With a virtual model of a control unit of a medical X-ray device, and also a virtual, networked automatic illumination control network, the suitabilty for daily use of the simulation environment was verified.

Abstract

Die Digitalisierung unseres alltäglichen Lebens schreitet immer weiter voran und hält Einzug in immer mehr Bereiche unseres Lebens. Wir tragen Smart Watches, intelligente Kleidung, und wenn wir uns im Urlaub befinden zeigt das Smart Phone ein Bild der Person, die gerade eben an unserer Haustür klingelt. Jetzt schon befinden sich miteinander vernetzte, intelligente Geräte im privaten Wohnbereich wie beispielsweise intelligente Stromzähler und intelligente Heizungssteuerungen. Für die Zukunft ist vorhergesagt, dass noch viele weitere vernetzte Geräte, Sensoren und Aktoren, in unserem Wohnbereich installiert sein werden, die alle miteinander vernetzt sind um Daten auszutauschen. Viele neue Geräte werden entwickelt werden, von denen wir jetzt noch nicht einmal erahnen, dass sie eines Tages aus unserem Alltag nicht mehr wegzudenken sein werden. Damit Hersteller der steigenden Nachfrage an intelligenten Smart Home Geräten nachkommen können, müssen sie die Geräte auch in entsprechend kurzer Zeit entwickeln können. Die Geräte bestehen meistens aus einer Prozessoreinheit, einer Sensor- oder Aktor-Hardware-Komponenten und gerätespezifischer Software. Beim Entwurf der Hardware und der Software für ein neues Gerät können sich Entwurfsfehler einschleichen, die teils erst dann entdeckt werden wenn bereits teure Prototypen der Hardware gefertigt worden sind. Während Fehler in der Software leicht zu beheben sind, können Fehler im Hardware-Entwurf hohe Kosten verursachen. Zeit- und kostensparender wäre es, Fehler im Entwurf noch vor der Herstellung von Prototypen entdecken und beheben zu können. Hierfür kann die entwickelte virtuelle Simulationsumgebung dienen, mit deren Hilfe Geräte virtuell getestet werden können. Mit dem in dieser Arbeit entwickelten Hardware-Software Co-Simulator können Smart Home Geräte noch vor der Fertigung eines Prototypen virtuell getestet werden. Die gerätespezifische Software wird in der virtuellen Maschine QEMU ausgeführt und parallel synchronisiert dazu die Sensor- oder Aktor-Hardware im SystemC-Referenz-Simulator co-simuliert. Aufgrund des Zusammenspiels massiv vieler vernetzter Smart Home Geräte ist es notwendig auch in einer virtuellen Nachbildung viele Geräte im Zusammenspiel zu testen um deren Gesamtverhalten zu beurteilen. Hierfür wurde für den Hardware-Software Co-Simulator eine adaptive Synchronisationsschnittstelle entwickelt, die eine Co-Simulation mit konfigurierbar geringem Mehraufwand zur Synchronisation auskommen kann. Dadurch können mehrere Instanzen von virtuellen Geräten, die mit dem Hardware-Software Co-Simulator nachgebildet werden, gleichzeitig auf konventionellen Desktop-Rechner miteinander vernetzt ausgeführt werden. Ist auch die Rechenleistung eines leistungsstarken Desktop-Rechners nicht ausreichend um alle gewünschten virtuellen Smart Home Geräte auf einem Rechner zu simulieren, so kann das virtuelle Smart Home Netzwerk über mehrere Rechner verteilt ausgeführt werden. Um schneller mit der virtuellen Smart Home Umgebung zu Ergebnissen zu gelangen, werden entwickelte Software-Werkzeuge vorgestellt, die Entwickler bei der Vorbereitung von Experimenten unterstützen. Gerätetreiber für Sensor- und Aktor-Hardware können automatisiert erzeugt werden. Da es mühsam ist, für mehrere Dutzende virtuelle Geräte Abbilder von Datenträgern zu erstellen, wird ein Programm vorgestellt das in kurzer Zeit automatisch für eine Vielzahl virtueller Geräte individuelle Abbilder von Datenträgern erstellt. Die entwickelten Werkzeuge in Verbindung mit dem entwickelten, vernetzten Hardware-Software Co-Simulator bilden einen Workflow für Geräteentwickler um zeit- und kostensparend einen korrekten Entwurf von Software und Hardware für vernetzte Smart Home Geräte beurteilen zu können. Die Praxistauglichkeit der entwickelten Programme wurde anhand von sowohl Testszenarien als auch praktischen Anwendungsfällen bestätigt. Die korrekte Funktion des Hardware-Software Co-Simulators wurde mit synthetischer modellierter Test-Hardware verifiziert. Anhand der Nachbildung einer Steuerung für ein medizinisches Röntgengerät und der Vernetzung einer virtuell nachgebildeten, automatischen Beleuchtungssteuerung konnte die Praxistauglichkeit nachgewiesen werden.

DOI
Faculties & Collections
Zugehörige ORCIDs