Sprachsteuerung

Sprechen mit Industriemaschinen?

Unbedingt! Sie gehorchen aufs Wort.

Was man sonst nur aus Science-Fiction kennt, wird heute mehr und mehr Realität.
Eine Gruppe Studierender der Hochschule für Technik und Wirtschaft (HTW) Berlin hat für uns eine Sprachsteuerung unserer Modellfabrik implementiert. Diese Arbeit entstand im Rahmen des Moduls „Softwareentwicklungsprojekt“, in dem die Studierenden des vierten Semesters des Studiengangs Ingenieurinformatik lernen, ein Projekt selbständig zu analysieren, zu strukturieren, zu entwerfen und umzusetzen. Dazu stellen Firmen ihre Ideen für Projekte vor, welche dann von den Studierenden umgesetzt werden. So fanden sich Siwar Aouididi, Leon Wagner, Ala Al-Khazzan und Marc Zimmermann als eine Gruppe zusammen, um die Sprachsteuerung für eine Modellfabrik umzusetzen.

Was ist eine Modellfabrik?

Die Modellfabrik ist eine Fabriksimulation, mit der komplexe Vorgänge einfach und anschaulich simuliert werden können. Die Modellfabrik besteht aus vier Komponenten:

  • Vakuum-Sauggreifer
  • Sortierstrecke
  • Hochregallager
  • Multi-Bearbeitungsstation

Im Hochregallager sind die Werkstücke gelagert. Wenn eine Bestellung ausgelöst wird, wird das entsprechende Werkstück aus dem Hochregallager an den Vakuum-Sauggreifer übergeben. Dieser transportiert das Werkstück zur Multi-Bearbeitungsstation, wo unter anderem ein Brennofen und eine Fräse simuliert werden. Von dort aus kommt es dann auf die Sortierstrecke, wo es je nach Farbe auf die entsprechende Abzweigung geschoben wird. Dort wird es vom Vakuum-Sauggreifer aufgenommen und zur Warenausgabe befördert. Dieser Vorgang ist in diesem Video dargestellt.

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Außerdem besitzt die Modellfabrik einen Umweltsensor, mit dem unter anderem die Temperatur und der Luftdruck gemessen werden können.
Die Kommunikation der einzelnen Komponenten erfolgt über sogenannte TXT-Controller, die mit Hilfe des Netzwerkprotokolls „MQTT“ (Message Queuing Telemetry Transport) Nachrichten austauschen.

Was war das Ziel des Projekts?

Das Ziel des Projektes war es, eine Anwendung zu implementieren, mit der eine Sprachsteuerung der Modellfabrik realisiert wird. Das heißt, wenn ein Satz, z.B. “Wie viele blaue Werkstücke befinden sich im Lager?“, in ein Mikrofon gesprochen wird, soll durch einen Lautsprecher die entsprechende Antwort, z.B. „Im Lager befinden sich zwei blaue Werkstücke“, wiedergegeben werden.
Dafür soll eine Webanwendung implementiert werden, die auf einem Raspberry Pi (Einplatinencomputer/Mini-Computer) läuft, an welchem ein Mikrofon und ein Lautsprecher angeschlossen sind.
Die Anwendung soll Sprachbefehle verarbeiten und die geforderten Informationen von der Modellfabrik abfragen. Daraufhin soll die Nachricht von der Modellfabrik in einen sinnvollen Satz umgewandelt und dieser durch die Lautsprecher ausgegeben werden.

Wo fängt man bei der Sprachsteuerung an?

Zuerst analysierten die Studierenden das vorliegende Lastenheft, in dem Anforderungen und Rahmenbedingungen hinterlegt sind und erarbeiteten daraus eine technische Spezifikation, die unter anderem Abnahmekriterien, einen Entwurf der Benutzeroberfläche und Anwendungsfälle beinhaltete.
Letztere wurden beispielsweise in einem Use-Case-Diagramm dargestellt.

Sprachsteuerung Softwareentwicklungsprojekt

Die Implementierung teilte sich dann nach dem Vorgehensmodell „Scrum“ in drei Arbeitsabschnitte (Sprints) auf. Diese dauerten jeweils drei bis vier Wochen.

  • Sprint 1: Webanwendung der Sprachsteuerung
  • Sprint 2: Implementierung der Kommunikation (MQTT)
  • Sprint 3: Testen der Sprachsteuerung

Wie genau lief das mit der Webanwendung ab?

Nach dem ersten Sprint hatte die Gruppe bereits eine Webanwendung mit einer übersichtlichen Benutzeroberfläche erstellt und mit Hilfe des Azure Speech Services eine Spracheingabe (speech-to-text) und eine Sprachausgabe (text-to-speech) implementiert. Außerdem beschäftigten sie sie sich mit dem Raspberry Pi, auf dem ihr Programm später laufen soll und fügten LEDs hinzu, die anzeigen, ob gerade ein Sprachbefehl gehört wird und ob dieser fehlerhaft oder zulässig war.

Sprachsteuerung Modellfabrik

Wie ging es weiter mit der Sprachsteuerung?

Im zweiten Sprint implementierten sie die Kommunikation mit der Modellfabrik. Dafür setzten sie sich mit dem Netzwerkprotokoll „MQTT“ auseinander, mit welchem die Modellfabrik ihre Statusnachrichten sendet. Damit die Gruppe unabhängig von der Modellfabrik arbeiten konnte, erstellte sie sich, um die Nachrichten der Modellfabrik zu simulieren, einen MQTT-Server („Broker“).
Außerdem stellten sie in diesem Sprint sicher, dass das Programm, das sie entwickelt hatten, auch auf einem Raspberry Pi ausgeführt werden kann.

Wann konnte die Anwendung an der echten Modellfabrik getestet werden?

Im dritten und somit auch letzten Sprint waren die Ein- und Ausgabe der Sprachbefehle und die Umwandlung dieser in MQTT-Nachrichten fertig implementiert. Somit konnte das Ganze auch erstmals an der echten Modellfabrik getestet werden. Nachdem beim Testen noch kleine Fehler behoben wurden, konnte die Modellfabrik per Sprachbefehl gesteuert werden.

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Video abspielen

Was waren die Schwierigkeiten im Projekt?

Die Gruppe berichtet, dass das Schwierigste die Entwicklung der Webanwendung, vor allem der Benutzeroberfläche, war. Dabei lernten sie die Programmiersprache JavaScript kennen und verwendeten diese für die Benutzeroberfläche.

Wir pflanzen Berliner Satdtbäume

BERLINER STADTBAUM

Spende statt Geschenke

Klimaschutz und Nachhaltigkeit sind sehr wichtige Themen für uns. Deshalb beteiligen wir uns am Berliner Stadtbaum-Projekt. Denn jeder Baum zählt.

Produktions-IT

Software entwickeln lassen?

Lohnt sich professionelle Softwareentwicklung für mich?

Software entwickeln lassen oder gleich selber programmieren? ✓ Strategien ✓ Kosten ✓ Dienstleistungen. Der Überblick für Digitalisierungs-Einsteiger!

SAP und Pferde

Häh?! Das passt ja überhaupt nicht zusammen! Oder doch?

Freizeitbeschäftigungen dürfen nicht einfach nur zu weiteren Terminen werden. Wie sich ein Hobby zur Seelentankstelle entwicklen kann, erfährst Du in unserem Blog-Artikel von unserem SAP-Berater Jörg aus Berlin.

Fragen oder Anregungen?

Wir freuen uns über Ihre Gedanken: