SEIKO EPSON 如何利用Unity提高产品开发效率

Mar 27, 2025|5 最低
RC+ 模拟器的 3D 视图演示

精工爱普生公司以提供广泛的工业机械而闻名,20多年前首次发布了其集成软件Epson RC+(以下简称RC+)。该软件旨在支持内部机器人的部署和维护。自那时以来,它经历了多次版本升级,并于2024年9月发布了最新版本RC+ 8.0。Unity被采用用于RC+ 8.0模拟器的开发,这是一个旨在验证机器人运动的软件工具。

在保留模拟器先前版本提供的功能的同时,使用Unity进行重新开发的决定主要是出于两个目标:通过开发版本8.0适应RC+显著重构的核心,并解决开发中的个体依赖性挑战。

由于这是制造解决方案运营部首次使用Unity,该部门负责RC+的开发,团队利用Unity的付费支持服务,以确保产品质量和开发速度感。

本案例研究突显了 SEIKO EPSON 团队如何利用Unity成功建立解决开发中个体依赖挑战的路径,提高软件质量和整体体验,并解决与扩大部门内团队结构相关的问题。


简化开发:采用现代技术栈不仅促进了开发团队的扩展,还改善了开发过程中的个体依赖性。这导致了一个开发环境,使得更新(如功能添加和维护)变得显著更容易。

  1. 3D技术:采用Unity及其先进的3D渲染能力带来了几个好处,包括比先前版本更快的渲染速度。
  2. 增强体验:此外,开发人员能够在开发过程中调试并可视化检查3D对象,从而增强了整体体验。
  3. 专家支持:Unity的付费支持服务集成成功提供了项目评审和Unity工程师的咨询。通过利用此服务,团队能够显著提高软件的质量。

克服遗留软件中的复杂性和依赖性

爱普生RC+自推出以来经历了持续的升级,演变成一款获得众多客户广泛支持的产品。第七代——RC+ 7.0于2012年12月发布。虽然随着时间的推移实施了小的更新以增强其功能,但时间的推移暴露了用户界面(UI)的不足。这导致了对基本模型的彻底改造的需求,而不是小的更新,最终导致了RC+ 8.0的开发。

然而,当RC+ 7.0开发时,出现了两个主要挑战。第一个是对特定团队成员在功能开发上的过度依赖,第二个是软件的高复杂性。

由于RC+作为一个集成软件,支持从部署到维护由 SEIKO EPSON 提供的各种机器人,因此它提供了广泛的功能。这导致了一个架构,其中这些功能变得错综复杂,使得在引入额外功能时,很难理解新功能可能如何影响系统。

为了解决这些挑战,RC+ 8.0的开发于2017年开始,重点是创建一个共享各种功能的组件的公共平台,并重新组织架构。这些努力旨在提高开发速度和软件质量。


爱普生RC+模拟器3D视图

爱普生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 提供。

通过专家支持加速创新

该部门最初注册了付费支持计划 Essential Success,并采用了 Unity。

“由于这是我们部门第一次使用 Unity,我们担心自己解决问题可能会花费很多时间。我们认为付费支持是必要的,以便快速解决各种问题,并以紧迫感生产高质量的产品。” - MASANOBU NISHITANI

在2023年11月,SEIKO EPSON CORP 将支持计划升级为Integrated Success。此次升级的目标是进行项目评审,以便他们能够从 Unity 的资深工程师那里获得直接的技术指导。在2024年4月,Unity工程师访问了位于长野县的 SEIKO EPSON CORP。

“在渲染复杂和大规模的 CAD 模型时,耗时非常长,因此我们让 Unity 团队专注于这一方面,”户田在回顾项目评审时说道。“他们不仅识别了瓶颈,而且通过直接沟通解决问题的过程也提供了宝贵的见解,比如在调试时如何使用分析工具。这对未来的开发来说是一次非常有意义的经历。”


团队会议中的工程师在会议室展示屏幕

Unity工程师在 SEIKO EPSON CORP 总部进行项目评审

思维方式的转变:自信地拥抱创新

直到现在,Unity在RC+8.0开发中的角色并未公开,但 NISHITANI 和 SEIKO EPSON CORP 的销售部门希望积极推广,以进一步扩大RC+8.0的影响力。

开发环境也经历了各种变化。

NISHITANI 先生解释道:"在我们使用OpenGL的日子里,开发新功能是困难的……开发团队对实际能实现什么持怀疑态度,并担心如何处理可能出现的任何问题。"

在实施 Unity 后,团队发现解决挑战的知识和方案可以通过在线搜索轻松获得。这种转变在团队内部创造了一种新的氛围,他们感到有信心应对开发过程中可能出现的任何障碍。


团队的韧性:克服依赖性挑战

RC+ 模拟器最初由大约四名成员的团队开发,最高时扩展到六名成员。NISHITANI 强调,Unity的采用为进一步扩展开发团队铺平了道路,并帮助解决了开发中长期存在的个人依赖问题。

"尽管他们并不是专门作为模拟器开发人员被雇佣的,但一些团队成员在加入公司时已经有了使用 Unity 的经验,其他几名成员在引入 Unity 后开始学习。通过让这些成员参与,我们看到了加强开发框架的潜力。这与之前版本的开发相比,代表了一个重大变化。"


未来会怎样

目前,模拟器开发团队正在制定下一个更新的计划。即将更新的目标是扩大模拟的范围。

在这个阶段,RC+ 仅限于模拟机器人的运动。然而,NISHITANI 分享了精工爱普生公司的未来计划:"我们旨在将其发展为一种软件,也可以用来模拟我们公司提供的各种外部设备。"

"我们期待在推进这一愿景时利用 Unity 提供的多样化功能,"他补充道。

通过拥抱新技术和培养创新文化,SEIKO EPSON CORP 不仅加强了其开发框架,还为更具可扩展性、高效性和面向未来的工业自动化方法奠定了基础。

利用实时 3D 的力量