Seiko Epson が Unity を活用して製品開発の効率を向上させる方法

Mar 27, 2025|5 分
RC+ シミュレーターのアクション3Dビュー

Seiko Epson Corp., は、幅広い産業機械を提供することで知られ、20 年以上前に統合ソフトウェア Epson RC+ (以下RC+と呼ぶ) を初めてリリースしました。このソフトウェアは、社内ロボットのDeploymentとメンテナンスをサポートするために構築されました。それ以来、数回のバージョンアップを経て、2024 年 9 月に最新バージョンRC+ 8.0 がリリースされました。Unityは、ロボットの動きを検証するために設計されたソフトウェアツール RC+ 8.0 シミュレーターの開発に採用されました。

シミュレーターの前のバージョンが提供する機能を保持しつつ、Unity を使用して再開発を行う決定は、RC+ のコアが大幅に再構築されたことに適応することと、開発における個別依存の課題に対処するという 2 つの主要な目的によって推進されました。

製造ソリューションオペレーション部門が RC+ の開発に Unity を使用するのは初めてだったため、チームは製品の品質と開発のスピード感を確保するために Unity の有料サポートサービスを利用しました。

このケーススタディは、Seiko Epson のチームが Unity を活用して、開発における個別依存の課題に対処し、ソフトウェアの品質と全体的な体験を向上させ、部門内のチーム構造の拡大に関連する問題に取り組むための道を成功裏に確立した方法を強調しています。


開発の合理化:最新のテクノロジー スタックの採用は、開発チームの拡大を促進するだけでなく、開発プロセスにおける個々の依存関係も改善しました。その結果、特徴の追加やメンテナンスなどの更新が大幅に容易になった開発環境が実現しました。

  1. 3D 技術:高度な 3D レンダリング機能を備えたUnityの採用は、前のバージョンに比べてレンダリング速度が速くなるなど、いくつかの利点をもたらしました。
  2. 体験の向上:さらに、開発者は開発中に 3D オブジェクトを視覚的に検査しながらデバッグすることができ、全体的な体験を向上させました。
  3. エキスパートサポート:Unity の有料サポートサービス、統合成功は、Unity エンジニアによるプロジェクトレビューとコンサルティングへのアクセスを提供しました。このサービスを利用することで、チームはソフトウェアの品質を大幅に向上させることができました。

古い機能ソフトウェアにおける複雑さと依存関係の克服

Epson RC+ は、発売以来継続的にアップグレードされ、多くの顧客から広く支持される製品へと進化しました。第七世代 — RC+ 7.0 — は 2012 年 12 月にリリースされました。機能を強化するために徐々にマイナーアップデートが実装されましたが、時間の経過とともにユーザーインターフェース(UI)に欠点があることが明らかになりました。これにより、小規模なアップデートではなく、基本的なモデルのオーバーホールが必要となり、RC+ 8.0 の開発につながりました。

しかし、RC+ 7.0 が開発された時点で、2 つの大きな課題が浮上していました。1 つ目は、機能開発に特定のチームメンバーに過度に依存していることで、2 つ目はソフトウェアの高い複雑さです。

RC+ は、Seiko Epson が提供するさまざまなロボットの展開からメンテナンスまでをサポートする統合ソフトウェアとして機能するため、幅広い機能を提供しています。その結果、これらの機能が複雑に絡み合うアーキテクチャとなり、追加機能の導入時に新機能がシステムのどこにどのような影響を与えるかを把握することが困難になりました。

これらの課題に対処するため、RC+ 8.0 の開発は 2017 年に始まり、さまざまな機能で共有されるコンポーネントの共通プラットフォームを作成し、アーキテクチャを再編成することに焦点を当てました。これらの取り組みは、開発スピードとソフトウェア品質の両方を向上させることを目的としていました。


Epson RC+ シミュレーター 3D ビュー

Epson RC+ シミュレーター画面。画像提供:Seiko Epson Corp.

RC+ シミュレーターの再構築:技術的および構造的なハードルへの対応

RC+ にはロボットの動きを検証するためのシミュレーターが含まれていますが、これも課題に直面しました。MS企画設計部のシミュレーター開発リーダーである Masanobu Nishitani 氏は、「RC+ 8.0 の開発の初めに、Seiko Epson Corp. は最初にバージョン 7.0 で使用されたシミュレーターの再利用を検討しましたが、すぐに問題が発生しました。」と説明しました。

RC+ 7.0 は C++ でプログラムされていましたが、バージョン 8.0 は C# に切り替えました。さらに、UI フレームワークは以前使用されていた Windows Forms から WPF に移行しました。RC+ システムの構造的な変更により、シミュレーターの特定の機能が動作しなくなりました。

さらに、シミュレーターの開発は、メインの RC+ アプリケーションを開発しているチームとは独立した別のチームによって行われました。しかし、シミュレーターのプラットフォームが OpenGL に基づいていたため、社内外の有資格者の利用可能性は限られており、開発チームを拡大するのが難しくなりました。

さらに厄介なことに、同じ部門がRC+とは別に3D表現を組み込んだソフトウェアもいくつかリリースしていました。しかし、これらのソフトウェア製品はそれぞれ異なる環境で開発され、個別にメンテナンスされていました。これにより、Nishitani 氏が「車輪の再発明」と説明した状況が頻繁に発生し、非効率が生じました。

RC+ シミュレーターの革命:なぜ Unity が明確な選択だったのか

C# と WPF で構築された現代の環境に合わせるために、3D エンジンを導入し、シミュレーターを再開発することが決定され、部門全体で統一された 3D 開発環境を確立することになりました。2021 年 3 月、潜在的な 3D エンジンの評価が始まりました。

Nishitani 氏と開発チームは、さまざまなゲームエンジンやオープンソースの 3D エンジンを慎重に検討し、広範にテストしました。最終的に、Unity を採用することに決定しました。「既存のシミュレーターの機能を再現できること、モバイル開発に適していること、日本語で利用できる情報の豊富さ、活発な開発者者コミュニティが大きな違いをもたらした」と、この決断のキー理由を強調しました。


RC+ シミュレーターのアクション3Dビュー

Unity は Epson RC+ に導入されました。画像提供:Seiko Epson Corp.

「既存のシミュレーターの機能の複製機能、モバイル開発への適合性、日本語で利用できる情報の豊富さ、Unityが提供する活発な開発者コミュニティが大きな違いとなりました。

Masanobu Nishitani
Masanobu Nishitani - Seiko Epson Corp.
Development Leader Simulator, MS planning and design department

RC+ シミュレーターのアップグレード:Unity の利点

2021 年 10 月、Nishitani と彼のチームは Unity を採用することを決定し、RC+ シミュレーターの変革を始めました。実際の開発を担当した戸田純は、Unity を使用する利点を強調し、「デバッグ中に 3D オブジェクトを視覚的に検査できるなど、開発が非常に進めやすくなりました。」と述べました。

開発は新しいものでしたが、RC+ 7.0 シミュレーターの機能をトレースすることから始まりました。以前のバージョンを実装した Nishitani は、「OpenGL でシミュレーターを開発していた頃と比べて、同じ 3D データを使用しているにもかかわらず、ビジュアルが大幅に向上したと感じました。」と説明しました。

彼はまた、Unity によってもたらされた変化のおかげで、将来的に新機能を追加する際のより効率的な開発に対して楽観的な見方を示しました。


RC+ シミュレーター

画像提供:Seiko Epson Corp.

エキスパートによるサポートでイノベーションを加速

この部門は、Unityの採用とともに、有料サポートプログラム Essential Success に最初に登録しました。

「Unityを使用するのが初めての部門であったため、自分たちで問題を解決するのに多くの時間がかかるのではないかと懸念していました。さまざまな問題に迅速に対処し、緊急感を持って高品質な製品を生み出すためには、有料サポートが必要だと感じました。」 - Masanobu Nishitani

2023 年 11 月、Seiko Epson Corp. はサポートプランを Integrated Success にアップグレードしました。このアップグレードの目的は、Unity のシニアエンジニアから直接技術指導を受けることができるプロジェクトレビューを実施することでした。2024 年 4 月、Unity のエンジニアが長野県諏訪市にある Seiko Epson Corp. の本社を訪れました。

「複雑で大規模な CAD モデルをレンダリングする際に、非常に長い時間がかかりましたので、Unity チームにその側面に焦点を当ててもらいました。」と戸田はプロジェクトレビューを振り返りました。「ボトルネックを特定するだけでなく、直接的なコミュニケーションを通じて問題を解決するプロセスからも、デバッグ時のプロファイリング ツールの使用方法など、貴重な知見が得られました。今後の開発において、非常に有意義な経験となりました。」


重役室でのチームミーティングで画面に表示されるプレゼンテーションに参加するエンジニア

Seiko Epson Corp. 本社での Unity エンジニアによるプロジェクトレビュー

マインドセットのシフト:自信を持って革新を受け入れる

これまで、Unity の RC+8.0 の開発における役割は公表されていませんでしたが、Nishitani 氏と Seiko Epson Corp. の営業部門は、RC+8.0 のさらなる普及を目指して積極的に推進していきたいと考えています。

開発環境もさまざまな変更が加えられています。

Nishitani 氏は説明します。「OpenGL を使用していた頃は、新機能の開発に踏み込むのが難しかった... 開発チームの間には、現実的に達成可能なことについての懐疑的な見方があり、発生する可能性のある問題への対処方法についての懸念がありました。」

Unityの実装後、チームは課題を解決するための知識とソリューションをオンライン検索で簡単に利用できることに気付きました。このシフトにより、チーム内に新しい雰囲気が生まれ、開発プロセス中に発生する可能性がある障害に自信を持って取り組むことができるようになりました。


チームの弾力性:依存関係の課題の克服

RC+ シミュレーターは、もともと約4人のメンバーで開発され、ピーク時には 6 人に拡大しました。Nishitani 氏は、Unity の採用が開発チームのさらなる拡大への道を開き、開発における個々の依存の長年の問題に対処するのに役立ったことを強調しました。

「彼らはシミュレーター開発者として特別に採用されたわけではありませんが、入社時にすでにUnityの使用経験があるチーム メンバーもいれば、Unityの導入後に学習を開始したチーム メンバーもいました。これらのメンバーを巻き込むことで、開発フレームワークを強化できる可能性があることがわかりました。これは、以前のバージョンの開発と比較して、大きな変化です。」


未来に何が待っているか

現在、シミュレーター開発チームは次のアップデートの計画に取り組んでいます。今後のアップデートの目標は、シミュレーションの範囲を拡大することです。

現段階では、RC+ はロボットの動きをシミュレートすることに限定されています。しかし、Nishitani 氏は Seiko Epson Corp. の将来の計画を共有しました。「私たちは、当社が提供するさまざまな周辺機器をシミュレートするためにも使用できるソフトウェアに進化させることを目指しています。」

「このビジョンを持って前進する中で、Unity が提供する多様な機能を活用できることを楽しみにしています。」と彼は付け加えました。

新しい技術を受け入れ、革新の文化を育むことで、Seiko Epson Corp. は開発フレームワークを強化しただけでなく、産業オートメーションに対するよりスケーラブルで効率的、未来に備えたアプローチの基盤を築きました。

リアルタイム 3D の力を活用する