Wie Seiko Epson Unity genutzt hat, um die Effizienz in der Produktentwicklung zu steigern

Seiko Epson Corp., bekannt für ein breites Angebot an Industriemaschinen, hat vor mehr als 20 Jahren seine integrierte Software, Epson RC+ (im Folgenden als RC+ bezeichnet), veröffentlicht. Die Software wurde entwickelt, um den Einsatz und die Wartung seiner hauseigenen Roboter zu unterstützen. Seitdem hat es zahlreiche Versionsupdates durchlaufen, und im September 2024 wurde die neueste Version, RC+ 8.0, veröffentlicht. Unity wurde in der Entwicklung des RC+ 8.0 Simulators übernommen, einem Software-Tool, das entwickelt wurde, um die Bewegungen von Robotern zu überprüfen.
Während die Funktionen der vorherigen Version des Simulators beibehalten wurden, wurde die Entscheidung, eine Neuentwicklung mit Unity durchzuführen, von zwei Hauptzielen geleitet: Anpassung an den erheblich umstrukturierten Kern von RC+ durch die Entwicklung der Version 8.0 und Bewältigung der Herausforderung der individuellen Abhängigkeit in der Entwicklung.
Da dies das erste Mal war, dass Unity von der Abteilung für Fertigungslösungen, die für die Entwicklung von RC+ verantwortlich ist, verwendet wurde, nutzte das Team die kostenpflichtigen Supportdienste von Unity, um sowohl die Produktqualität als auch ein Gefühl der Geschwindigkeit in der Entwicklung sicherzustellen.
Diese Fallstudie zeigt, wie das Team von Seiko Epson Unity genutzt hat, um erfolgreich einen Weg zu finden, die Herausforderungen der individuellen Abhängigkeit in der Entwicklung anzugehen, die Softwarequalität und das Gesamterlebnis zu verbessern und Probleme im Zusammenhang mit der Erweiterung der Teamstruktur innerhalb der Abteilung zu bewältigen.
Optimierte Entwicklung: Die Einführung eines modernen Technologie-Stacks erleichterte nicht nur die Erweiterung des Entwicklungsteams, sondern verbesserte auch die individuelle Abhängigkeit im Entwicklungsprozess. Dies führte zu einer Entwicklungsumgebung, die Updates, wie z.B. Funktionserweiterungen und Wartung, erheblich erleichterte.
- 3D-Technologie: Die Einführung von Unity, mit seinen fortschrittlichen 3D-Rendering-Fähigkeiten, brachte mehrere Vorteile, einschließlich schnellerer Rendering-Geschwindigkeiten im Vergleich zur vorherigen Version.
- Verbessertes Erlebnis: Darüber hinaus konnten Entwickler beim visuellen Inspektieren von 3D-Objekten während der Entwicklung debuggen, was das Gesamterlebnis verbesserte.
- Expertenunterstützung: Der kostenpflichtige Unterstützungsdienst von Unity, Integrierter Erfolg, bot Zugang zu Projektbewertungen und Beratung durch Unity-Ingenieure. Durch die Nutzung dieses Dienstes konnte das Team die Qualität der Software erheblich verbessern.
Überwindung von Komplexität und Abhängigkeit in einer Legacy-Software
Epson RC+ hat seit seiner Einführung kontinuierliche Updates erhalten und sich zu einem Produkt entwickelt, das von zahlreichen Kunden breite Unterstützung gefunden hat. Die siebte Generation – RC+ 7.0 – wurde im Dezember 2012 veröffentlicht. Während im Laufe der Zeit kleinere Updates implementiert wurden, um die Funktionen zu verbessern, zeigten sich mit der Zeit Mängel in der Benutzeroberfläche (UI). Dies schuf die Notwendigkeit für eine grundlegende Überarbeitung des Modells anstelle von kleineren Updates, was zur Entwicklung von RC+ 8.0 führte.
Als RC+ 7.0 entwickelt wurde, waren jedoch zwei große Herausforderungen aufgetreten. Die erste war eine übermäßige Abhängigkeit von bestimmten Teammitgliedern für die Entwicklung von Funktionen, und die zweite war die hohe Komplexität der Software.
Da RC+ als integrierte Software dient, um alles von der Bereitstellung bis zur Wartung verschiedener von Seiko Epson bereitgestellter Roboter zu unterstützen, bietet es eine breite Palette von Funktionen. Dies führte zu einer Architektur, in der diese Funktionen eng miteinander verflochten waren, was es schwierig machte zu verstehen, wo und wie neue Funktionen das System beeinflussen könnten, wenn zusätzliche Funktionalitäten eingeführt wurden.
Um diese Herausforderungen anzugehen, begann die Entwicklung von RC+ 8.0 im Jahr 2017 und konzentrierte sich darauf, eine gemeinsame Plattform für die Komponenten zu schaffen, die über verschiedene Funktionen hinweg geteilt werden, und die Architektur neu zu organisieren. Diese Bemühungen zielten darauf ab, sowohl die Entwicklungsgeschwindigkeit als auch die Softwarequalität zu verbessern.

Wiederaufbau des RC+ Simulators: Bewältigung technischer und struktureller Hürden
RC+ umfasst einen Simulator zur Überprüfung der Roboterbewegungen, aber auch dieser hatte Herausforderungen zu bewältigen. Herr Masanobu Nishitani, der Entwicklungsleiter für den Simulator in der MS-Planungs- und Entwurfsabteilung, erklärte: „Zu Beginn der Entwicklung von RC+ 8.0 erwog Seiko Epson Corp. zunächst, den in Version 7.0 verwendeten Simulator wiederzuverwenden, aber bald traten Probleme auf.“
Während RC+ 7.0 in C++ programmiert war, wechselte Version 8.0 zu C#. Darüber hinaus wechselte das UI-Framework von den zuvor verwendeten Windows Forms zu WPF. Aufgrund dieser strukturellen Änderungen im Hauptsystem RC+ hörten bestimmte Funktionen des Simulators auf zu funktionieren.
Darüber hinaus wurde die Entwicklung des Simulators von einem separaten Team durchgeführt, das unabhängig von dem Team war, das die Hauptanwendung RC+ entwickelte. Da die Plattform des Simulators jedoch auf OpenGL basierte, war die Verfügbarkeit von qualifiziertem Personal, sowohl innerhalb als auch außerhalb des Unternehmens, begrenzt, was es schwierig machte, das Entwicklungsteam zu vergrößern.
Um die Sache zu komplizieren, veröffentlichte dieselbe Abteilung auch mehrere Softwareprodukte, die 3D-Darstellungen enthielten, zusätzlich zu RC+. Dennoch wurde jedes dieser Softwareprodukte in unterschiedlichen Umgebungen entwickelt und individuell gewartet. Dies führte oft zu dem, was Nishitani als "das Rad neu erfinden" erklärte, was zu Ineffizienzen führte.
Revolutionierung des RC+ Simulators: Warum Unity die klare Wahl war
Um mit der modernen Umgebung, die mit C# und WPF erstellt wurde, in Einklang zu stehen, wurde beschlossen, eine 3D-Engine einzuführen und den Simulator neu zu entwickeln, während auch eine einheitliche 3D-Entwicklungsumgebung in der Abteilung geschaffen wurde. Im März 2021 begann die Bewertung potenzieller 3D-Engines.
Nishitani und das Entwicklungsteam prüften sorgfältig verschiedene Spiel-Engines und Open-Source-3D-Engines und testeten sie umfassend. Letztendlich entschieden sie sich für Unity. Er hob die Hauptgründe für diese Entscheidung hervor: „Die Fähigkeit, die Funktionen des bestehenden Simulators zu replizieren, die Eignung für die mobile Entwicklung, die Fülle an Informationen, die auf Japanisch verfügbar sind, und die aktive Entwicklergemeinschaft machten den Unterschied aus.“


Upgrade des RC+ Simulators: Die Vorteile von Unity
Im Oktober 2021 beschlossen Nishitani und sein Team, Unity zu übernehmen und begannen mit der Transformation des RC+ Simulators. Jun Toda, der für die eigentliche Entwicklung verantwortlich war, hob die Vorteile der Nutzung von Unity hervor: „Es wurde viel einfacher, mit der Entwicklung voranzukommen, da man 3D-Objekte während des Debuggens visuell inspizieren konnte.“
Obwohl die Entwicklung neu war, begann sie mit der Nachverfolgung der Funktionen des RC+ 7.0 Simulators. Nishitani, der frühere Versionen implementiert hatte, erklärte: „Im Vergleich zu der Zeit, als ich den Simulator mit OpenGL entwickelte, hatte ich das Gefühl, dass die visuellen Darstellungen erheblich verbessert wurden, obwohl dieselben 3D-Daten verwendet wurden.“
Er äußerte auch Optimismus über eine effizientere Entwicklung beim Hinzufügen neuer Funktionen in der Zukunft, dank der Veränderungen, die Unity mit sich brachte.

Innovation beschleunigen mit Expertenunterstützung
Die Abteilung meldete sich zunächst für das kostenpflichtige Unterstützungsprogramm Essential Success an, zusammen mit der Einführung von Unity.
"Da es das erste Mal war, dass unsere Abteilung Unity verwendete, waren wir besorgt, dass die Lösung von Problemen in Eigenregie viel Zeit in Anspruch nehmen könnte. Wir waren der Meinung, dass kostenpflichtige Unterstützung notwendig war, um verschiedene Probleme schnell zu lösen und qualitativ hochwertige Produkte mit einem Gefühl der Dringlichkeit zu produzieren" - Masanobu Nishitani
Im November 2023 aktualisierte Seiko Epson Corp. den Unterstützungsplan auf Integrated Success. Ziel dieses Upgrades war es, Projektbewertungen durchzuführen, bei denen sie direkte technische Anleitung von den leitenden Ingenieuren von Unity erhalten konnten. Im April 2024 besuchten Unity-Ingenieure die Zentrale von Seiko Epson Corp. in Suwa City, Präfektur Nagano.
"Beim Rendern komplexer und großangelegter CAD-Modelle dauerte es extrem lange, daher ließen wir das Unity-Team sich auf diesen Aspekt konzentrieren," sagte Toda und reflektierte über die Projektbewertung. "Sie identifizierten nicht nur den Engpass, sondern der Prozess zur Lösung des Problems durch direkte Kommunikation lieferte auch wertvolle Einblicke, wie man Profiling-Tools während des Debuggens verwendet. Es stellte sich als eine sehr bedeutende Erfahrung für die zukünftige Entwicklung heraus."

Ein Wandel in der Denkweise: Innovation mit Vertrauen annehmen
Bis jetzt wurde Unitys Rolle in der Entwicklung von RC+8.0 nicht veröffentlicht, aber Nishitani und die Verkaufsabteilung von Seiko Epson Corp. wollen dies künftig aktiv fördern, um die Reichweite von RC+8.0 weiter auszubauen.
Die Entwicklungsumgebung hat ebenfalls verschiedene Änderungen durchlaufen.
Herr Nishitani erklärt: "In den Tagen, als wir OpenGL verwendeten, war es schwierig, neue Funktionen zu entwickeln... es gab Skepsis im Entwicklungsteam darüber, was realistisch erreicht werden konnte, und Bedenken, wie man mit Problemen umgehen könnte, die auftreten könnten."
Nach der Implementierung von Unity stellte das Team fest, dass das Wissen und die Lösungen zur Bewältigung von Herausforderungen durch Online-Recherchen leicht verfügbar sind. Dieser Wandel hat eine neue Atmosphäre im Team geschaffen, in der sie sich sicher fühlen, alle Hindernisse anzugehen, die während des Entwicklungsprozesses auftreten können.
Teamresilienz: Überwindung von Abhängigkeitsherausforderungen
Der RC+ Simulator wurde ursprünglich von einem Team von etwa vier Mitgliedern entwickelt, das in der Spitze auf sechs Mitglieder anwuchs. Nishitani hob hervor, wie die Einführung von Unity den Weg für die weitere Expansion des Entwicklungsteams ebnete und half, das langjährige Problem der individuellen Abhängigkeit in der Entwicklung anzugehen.
"Obwohl sie nicht speziell als Simulatorentwickler eingestellt wurden, hatten einige Teammitglieder bereits Erfahrung mit Unity, als sie ins Unternehmen eintraten, und mehrere andere begannen, Unity nach dessen Einführung zu lernen. Durch die Einbeziehung dieser Mitglieder haben wir das Potenzial gesehen, das Entwicklungsframework zu stärken. Dies stellt einen bedeutenden Wandel im Vergleich zur Entwicklung früherer Versionen dar."
Was die Zukunft bringt
Derzeit arbeitet das Simulatorentwicklungsteam an Plänen für das nächste Update. Das Ziel des kommenden Updates ist es, den Umfang der Simulation zu erweitern.
In diesem Stadium ist RC+ auf die Simulation der Bewegungen von Robotern beschränkt. Nishatani teilte jedoch die Pläne von Seiko Epson Corp. für die Zukunft mit: "Wir streben an, es zu einer Software weiterzuentwickeln, die auch zur Simulation der verschiedenen Peripheriegeräte verwendet werden kann, die unser Unternehmen anbietet."
"Wir freuen uns darauf, die vielfältigen Funktionen, die Unity bietet, zu nutzen, während wir mit dieser Vision vorankommen," fügte er hinzu.
Durch die Annahme neuer Technologien und die Förderung einer Innovationskultur hat die Seiko Epson Corp. nicht nur ihr Entwicklungsframework gestärkt, sondern auch die Grundlage für einen skalierbareren, effizienteren und zukunftsorientierten Ansatz für die industrielle Automatisierung gelegt.