Как Seiko Epson использовала Unity для повышения эффективности разработки продуктов

Seiko Epson Corp., известная своим широким ассортиментом промышленного оборудования, впервые выпустила свое интегрированное программное обеспечение, Epson RC+ (в дальнейшем именуемое RC+), более 20 лет назад. Программное обеспечение было разработано для поддержки развертывания и обслуживания своих внутренних роботов. С тех пор оно прошло через множество обновлений версий, и в сентябре 2024 года была выпущена последняя версия, RC+ 8.0. Unity была принята в разработке симулятора RC+ 8.0, программного инструмента, предназначенного для проверки движений роботов.
Сохраняя функции, предоставленные предыдущей версией симулятора, решение о переработке с использованием Unity было вызвано двумя основными целями: адаптацией к значительно переработанному ядру RC+ через разработку версии 8.0 и решением проблемы индивидуальной зависимости в разработке.
Поскольку это был первый случай использования Unity подразделением по производственным решениям, ответственным за разработку RC+, команда воспользовалась платными услугами поддержки Unity, чтобы обеспечить как качество продукта, так и скорость разработки.
Это исследование случая подчеркивает, как команда Seiko Epson использовала Unity для успешного решения проблем индивидуальной зависимости в разработке, повышения качества программного обеспечения и общего опыта, а также решения вопросов, связанных с расширением структуры команды внутри подразделения.
Упрощенная разработка: Принятие современного технологического стека не только способствовало расширению команды разработчиков, но и улучшило индивидуальную зависимость в процессе разработки. Это привело к созданию среды разработки, которая значительно упростила обновления, такие как добавление функций и обслуживание.
- 3D технологии: Принятие Unity с его продвинутыми возможностями 3D-рендеринга принесло несколько преимуществ, включая более высокие скорости рендеринга по сравнению с предыдущей версией.
- Улучшенный опыт: Кроме того, разработчики смогли отлаживать, визуально проверяя 3D-объекты в процессе разработки, что улучшило общий опыт.
- Экспертная поддержка: Платная служба поддержки Unity, Интегрированный успех, предоставила доступ к обзорам проектов и консультациям от инженеров Unity. Используя эту услугу, команда смогла значительно повысить качество программного обеспечения.
Преодоление сложности и зависимости в устаревшем программном обеспечении
Epson RC+ прошла через непрерывные обновления с момента своего запуска, эволюционируя в продукт, который получил широкую поддержку от многочисленных клиентов. Седьмое поколение — RC+ 7.0 — было выпущено в декабре 2012 года. Хотя со временем были внедрены незначительные обновления для улучшения его функций, течение времени выявило недостатки в пользовательском интерфейсе (UI). Это создало необходимость в фундаментальном обновлении модели, а не в незначительных обновлениях, что привело к разработке RC+ 8.0.
Однако к моменту разработки RC+ 7.0 возникли две основные проблемы. Первая заключалась в чрезмерной зависимости от конкретных членов команды для разработки функций, а вторая — в высокой сложности программного обеспечения.
Поскольку RC+ служит интегрированным программным обеспечением для поддержки всего, от развертывания до обслуживания различных роботов, предоставляемых Seiko Epson, оно предлагает широкий спектр функций. Это привело к архитектуре, в которой эти функции стали тесно переплетены, что затрудняло понимание того, где и как новые функции могут повлиять на систему при введении дополнительных функциональных возможностей.
Чтобы решить эти проблемы, разработка RC+ 8.0 началась в 2017 году и сосредоточилась на создании общей платформы для компонентов, используемых в различных функциях, и на реорганизации архитектуры. Эти усилия были направлены на улучшение как скорости разработки, так и качества программного обеспечения.

Экран симулятора Epson RC+. Изображение предоставлено Seiko Epson Corp.
Перестройка симулятора RC+: Решение технических и структурных препятствий
RC+ включает симулятор для проверки движений роботов, но и это столкнулось с проблемами. Г-н Масанобу Нишитани, руководитель разработки симулятора в отделе планирования и проектирования MS, объяснил: «В начале разработки RC+ 8.0 Seiko Epson Corp. первоначально рассматривала возможность повторного использования симулятора, использованного в версии 7.0, но вскоре возникли проблемы.»
Хотя RC+ 7.0 была запрограммирована на C++, версия 8.0 перешла на C#. Кроме того, фреймворк UI перешел с ранее использованных Windows Forms на WPF. Из-за этих структурных изменений в основной системе RC+ некоторые функции симулятора перестали работать.
Более того, разработка симулятора велась отдельной командой, независимой от команды, разрабатывающей основное приложение RC+. Однако, поскольку платформа симулятора была основана на OpenGL, наличие квалифицированного персонала как внутри, так и вне компании было ограничено, что усложняло масштабирование команды разработки.
Чтобы усложнить ситуацию, то же подразделение также выпустило несколько программных продуктов, включающих 3D-репрезентации, помимо RC+. Тем не менее, каждое из этих программных продуктов было разработано в разных средах и поддерживалось индивидуально. Это часто приводило к тому, что Нишитани объяснял как "изобретение колеса заново", что приводило к неэффективности.
Революция в симуляторе RC+: Почему Unity был очевидным выбором
Чтобы соответствовать современному окружению, построенному на C# и WPF, было принято решение ввести 3D-движок и переработать симулятор, а также создать единое 3D-разработческое окружение по всему подразделению. В марте 2021 года началась оценка потенциальных 3D-движков.
Нишитани и команда разработчиков тщательно рассматривали различные игровые движки и открытые 3D-движки, тестируя их всесторонне. В конечном итоге они решили принять Unity. Он выделил ключевые причины для этого решения: "Способность воспроизводить функции существующего симулятора, пригодность для мобильной разработки, обилие информации на японском языке и активное сообщество разработчиков сделали всю разницу."

Unity был представлен Epson RC+. Изображение предоставлено Seiko Epson Corp.
“Способность воспроизводить функции существующего симулятора, пригодность для мобильной разработки, обилие информации на японском языке и активное сообщество разработчиков, которое предлагает Unity, сделали всю разницу.”
Masanobu Nishitani - Seiko Epson Corp.
Development Leader Simulator, MS planning and design departmentОбновление симулятора RC+: Преимущества Unity
В октябре 2021 года Нишитани и его команда решили принять Unity и начали трансформацию симулятора RC+. Дзюн Тода, который отвечал за фактическую разработку, выделил преимущества использования Unity: "Стало намного проще продолжать разработку, например, можно было визуально проверять 3D-объекты во время отладки."
Хотя разработка была новой, она началась с отслеживания функциональности симулятора RC+ 7.0. Нишитани, который реализовал предыдущие версии, объяснил: «По сравнению с тем, когда я разрабатывал симулятор с OpenGL, хотя используются одни и те же 3D-данные, я почувствовал, что визуальные эффекты значительно улучшились.»
Он также выразил оптимизм по поводу более эффективной разработки при добавлении новых функций в будущем благодаря изменениям, внесенным Unity.

Изображение предоставлено Seiko Epson Corp.
Ускорение инноваций с экспертной поддержкой
Подразделение изначально подписалось на платную программу поддержки, Основной успех, наряду с внедрением Unity.
«Поскольку это был первый раз, когда наше подразделение использовало Unity, мы беспокоились, что решение проблем самостоятельно может занять много времени. Мы считали, что платная поддержка необходима для быстрого решения различных проблем и производства качественной продукции с чувством срочности» - Масанобу Нишитани
В ноябре 2023 года Seiko Epson Corp. обновила план поддержки до Интегрированный успех. Целью этого обновления было проведение обзоров проектов, где они могли получить прямые технические рекомендации от старших инженеров Unity. В апреле 2024 года инженеры Unity посетили штаб-квартиру Seiko Epson Corp. в городе Сува, префектура Нагано.
«При рендеринге сложных и крупномасштабных CAD-моделей это занимало чрезвычайно много времени, поэтому мы попросили команду Unity сосредоточиться на этом аспекте», - сказал Тода, вспоминая обзор проекта. «Они не только выявили узкое место, но и процесс решения проблемы через прямую коммуникацию также предоставил ценные идеи, такие как использование инструментов профилирования во время отладки. Это оказалось очень значимым опытом для будущей разработки.»

Обзор проекта инженерами Unity в штаб-квартире Seiko Epson Corp.
Смена мышления: Принятие инноваций с уверенностью
До сих пор роль Unity в разработке RC+8.0 не была публично озвучена, но Нишитани и отдел продаж Seiko Epson Corp. хотят активно продвигать это в будущем с целью дальнейшего расширения охвата RC+8.0.
Разработческая среда также претерпела различные изменения.
Г-н Нишитани объясняет: "В те дни, когда мы использовали OpenGL, было трудно начать разработку новых функций... в команде разработчиков существовал скептицизм относительно того, что можно реально достичь, и опасения по поводу того, как справиться с любыми возникающими проблемами."
После внедрения Unity команда обнаружила, что знания и решения для решения проблем легко доступны через онлайн-поиск. Этот сдвиг создал новую атмосферу в команде, где они чувствуют уверенность в том, чтобы справляться с любыми препятствиями, которые могут возникнуть в процессе разработки.
Устойчивость команды: Преодоление проблем зависимости
Симулятор RC+ изначально был разработан командой из примерно четырех человек, которая на пике расширилась до шести. Нишитани подчеркнул, как принятие Unity открыло путь для дальнейшего расширения команды разработчиков и помогло решить давнюю проблему индивидуальной зависимости в разработке.
"Хотя они не были специально наняты как разработчики симуляторов, некоторые члены команды уже имели опыт работы с Unity, когда присоединились к компании, а несколько других начали изучать Unity после его внедрения." Вовлекая этих участников, мы увидели потенциал для укрепления структуры разработки. Это представляет собой значительное изменение по сравнению с разработкой предыдущих версий."
Что ждет нас в будущем
В настоящее время команда разработчиков симулятора работает над планами для следующего обновления. Цель предстоящего обновления - расширить объем симуляции.
На этом этапе RC+ ограничен симуляцией движений роботов. Тем не менее, Нишитани поделился планами Seiko Epson Corp. на будущее: "Мы стремимся развить его в программное обеспечение, которое также можно использовать для симуляции различных периферийных устройств, которые предлагает наша компания."
"Мы с нетерпением ждем возможности использовать разнообразные функции, которые предоставляет Unity, по мере продвижения с этой концепцией," добавил он.
Приняв новые технологии и способствуя культуре инноваций, Seiko Epson Corp. не только укрепила свою структуру разработки, но и заложила основу для более масштабируемого, эффективного и готового к будущему подхода к промышленной автоматизации.




