KREMEN Реклама
KREMEN Реклама

Реверс-инжиниринг: точно - значит криво.

Alexey_formfactor
Идет загрузка
Загрузка
07.11.2026
551
12
3D-моделирование

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

8

Реверс-инжиниринг: точно - значит криво.Как-то у меня в работе был старый чугунный корпус водяного насоса, отлитый в песчаную форму. Я заметил: отверстия по периметру корпуса не лежат на одной окружности и находятся на разном расстоянии друг от друга. Сначала я создал окружность нужного диаметра, указал количество отверстий и угловой шаг — отверстия не совпали со сканом.

Реверс-инжиниринг: точно - значит криво.Тогда я сменил подход: вместо радиуса стал ставить длины от начальной точки слева направо, как по миллиметровке. Отверстия сошлись, и до меня дошло: их сверлили на ручном станке по бумажному чертежу.

Реверс-инжиниринг: точно - значит криво.Фрезеровщик указывал положение каждого отверстия координатами по X и Y. Небольшие погрешности при округлении размеров, позиционировании сверла и установке детали привели к тому, что фактические отверстия не совпадали с заданными изначально. Такую деталь нам и принесли для реверс-инжиниринга. 

Что делать?

Точно повторить расположение отверстий или построить идеальную окружность и распределить их по ней? Мы обсудили этот вопрос с клиентом и сделали отверстия на равном расстоянии, как они и должны быть. 

На первый взгляд задача реверс-инжиниринга простая: есть готовая деталь — нужно воссоздать его цифровую модель. Но это не просто цифровое копирование.

3D-сканирование — ещё не реверс-инжиниринг

Цифровая копия создаётся 3D-сканированием. Сканер фотографирует предмет либо измеряет лазером расстояние до него с разных ракурсов, объединяет данные в облако точек и соединяет их. На выходе получается полигональная сетка - поверхность из множества маленьких треугольников.

В большинстве задач производства полигональная сетка сама по себе не является полноценной геометрической моделью. Мы отсканировали цилиндрическую деталь — сканер описал её поверхность тысячами или миллионами треугольников. Но геометрическая модель цилиндра, с которой работает конструктор, - это математически заданная поверхность с определёнными длиной и диаметром, осью и положением в пространстве.

Поэтому 3D-сканирование и обратное проектирование — не одно и то же. При сканировании безразлично оцифруется всё: царапины, вмятины, сколы, следы коррозии и износа, деформации конструкции. Чем точнее мы сканируем, тем точнее копируем все несовершенства детали.

А что с точностью?

Главный вопрос тех, кто обращается за 3D-сканированием и реверсом: «Насколько точно вы сможете воспроизвести деталь?» С позиции заказчика он кажется понятным: вот деталь, нужна такая же цифровая — насколько близко в микронах вы её повторите?

Реверс-инжиниринг: точно - значит криво.Но такая постановка не совсем корректна. Представьте: приносят сломанную ручку и просят «такую же, только целую». Что значит «такую же»? Заказчику не нужна точная копия сломанной ручки — ему нужна целая, какой она была до поломки. А целая — уже не копия сломанной с утерянными фрагментами. Выходит, что точная копия исходной детали — не то, что нужно заказчику.

Точность 3D-сканирования

Со сканированием ситуация понятнее. У каждого сканера есть заявленные производителем характеристики — в определённых условиях их можно использовать для оценки точности измерений. Например, наш сканер RangeVision Pro 2 при габарите детали 200 мм имеет заявленную точность 0,036 мм. Но это значение относится именно к измерению, а не к готовой инженерной модели. Здесь есть принципиальная разница.

Реверс-инжиниринг: точно - значит криво.На фото 3д-сканер RangeVision ProII.

3D-сканирование — измерительная задача, построение детали — инженерная. Предположим, сканер измерил поверхность с точностью 0,04 мм. Значит ли это, что мы построим CAD-модель с точностью 0,04 мм? Нет. Между измерением и построением модели есть ещё один большой этап — интерпретация данных. Инженер решает, какие размеры находятся в пределах допуска, а какие имеют отклонения, какими они должны быть на самом деле. И чем выше требования к точности, тем важнее правильно интерпретировать исходные данные.

И снова мы упираемся в главную проблему реверса: наш мир не идеален.

Все предметы вокруг нас имеют отклонения от идеальной геометрии: поверхности не идеально плоские, круги не идеально круглые, углы не идеально прямые. Даже совершенно новая деталь уже имеет отклонения: усадку материала, следы инструмента, температурные деформации, погрешности станка. А поверх производственных отклонений ложатся следы жизни — износ, истирание, трещины, вмятины, деформации, неудачный ремонт. Просто в жизни мы этого почти не замечаем. Поэтому ответить на вопрос о точности в миллиметрах или микронах часто невозможно.

Чем точнее - тем больше ошибок

Попытка максимально точно скопировать физическую деталь даёт неожиданный результат: чем точнее копируем поверхность скана, тем больше отклонений попадает в цифровую модель. К несовершенствам детали добавляются собственные погрешности измерения: особенности оптики, совмещение отдельных сканов, шум. 

Чтобы понять это, вернёмся к самому началу. До того как деталь изготовили, она существовала как чертёж или цифровая модель: идеальная, симметричная, математически определённая форма. Например, задан радиус 14,8 мм.

Так указан номинальный размер — значение, характеризующее конструкцию до появления производственных отклонений. Затем модель уходит в производство. И вот вместо ровных 14,8 мм получаем, например, 14,79 мм — уже очень точно.

Но это реальная физическая деталь, а не математическая модель. Причём 14,79 мм — лишь результат нашего измерения. В реальности радиус будет не ровно 14,790000 мм, а 14,793638… мм. Деталь не знает, сколько знаков после запятой мы способны отобразить в программе или на измерительном оборудовании. Она просто имеет реальную геометрию, которая отличается от идеальной номинальной.

Реверс-инжиниринг: точно - значит криво.На изображении: жёлтый - 3D-скан детали, серый - цилиндрическая автоповерхность, которая повторяет 3D-скан. Обратите внимание на два момента: 1) скан и автоповерхность не совпадают - скан не идеально круглый; 2) радиус авто-цилиндра имеет 4 знака после запятой - в нормальной 3D-модели размер ставят максимум на 2 знака.

Реверс – это работа с отклонениями

Все отклонения, которые влияют на результат обратного проектирования, можно разделить на десять групп:

  1. Ошибки при разработке;
  2. Технологическая подготовка к производству;
  3. Производство;
  4. Эксплуатация;
  5. Характер поверхности детали;
  6. Точность и разрешение измерительного инструмента;
  7. Особенности технологии 3D-сканирования;
  8. Подготовка 3D-скана;
  9. Интерпретация 3D-скана человеком;
  10. Особенности программ для 3D-моделирования (САПР).

Разберём их по порядку.

1. Ошибки при разработке

Как ни странно, первый источник отклонений появляется ещё до производства. Всё вокруг нас так или иначе спроектировано людьми, а люди ошибаются — и разработчики не исключение. Если мы делаем реверс изначально неудачной конструкции и просто воспроизводим её без изменений, получаем ту же неудачную конструкцию.

Но именно на этапе разработки создаётся номинальная форма — то самое идеальное представление о том, каким должно быть изделие. И именно её мы по умолчанию пытаемся восстановить при обратном проектировании.

2. Технологическая подготовка к производству

На этом этапе квадрат становится трапецией, на ровной стенке появляется стык, красивое становится приземлённым, а простое — дорогим. Дизайнеров и конструкторов сменяют технологи, которые адаптируют идеальный продукт к реальным условиям производства: нужно выбрать технологию изготовления, учесть её ограничения и одновременно уложиться в требуемую себестоимость.

Например, при производстве пластиковых деталей литьём в пресс-форму красивую дизайнерскую 3D-модель адаптируют к возможностям технологии: сложную форму делят на несколько элементов, задают технологические уклоны, стенкам придают определённую толщину.

Реверс-инжиниринг: точно - значит криво.На изображении: типовой уклон, необходимый для производства деталей методом литья в пресс-форму.

3. Производство

В производстве действует система допусков и посадок — диапазоны, в рамках которых отклонение от заданного размера считается нормой. Например, если на чертеже длина указана 60,0 мм с допуском ±0,2 мм, то деталь с фактическим размером 60,18 мм полностью соответствует чертежу и не считается браком. Но при обратном проектировании этот размер должен стать обратно 60,00 мм.

Помимо этого каждое производство оставляет на детали характерные следы:

- после сварки — сварные швы;

- после механической обработки — следы режущего инструмента;

- после формовки — облой, усадки, утонения.

Эти следы — не часть исходной конструкции, их не нужно автоматически переносить в новую CAD-модель. Для это нужны знания технологий. Именно производственные деформации и технологические артефакты часто становятся главной причиной, почему точное копирование не даёт правильной инженерной модели.

Реверс-инжиниринг: точно - значит криво.На изображении стрелками показаны вмятины от усадки пластика при производстве - так называемые “утяжины”.

4. Эксплуатация

Сколы, трещины, отломанные куски, истирания, перегибы и вмятины повторять никто не просит. Если деталь не абсолютно новая, она точно несёт следы жизни.

В своё время для меня стало открытием, что автомобильные кузова уже после первых поездок перестают быть ровными и симметричными. Они не обладают абсолютной жёсткостью, металл пластичен, и любой автомобиль незаметно гнётся на ямах, кочках и даже в повороте.

То же происходит с любой деталью, которая работает под нагрузкой. Поэтому при реверс-инжиниринге нужно отделить исходную геометрию от того, что случилось с деталью за время эксплуатации. Иначе можно очень точно воспроизвести не конструкцию, а историю её использования.

Реверс-инжиниринг: точно - значит криво.На изображении изрядно потёртая деталь. Стрелками показаны участки, сохранившие исходную толщину - по ним была восстановлена исходная поверхность.

5. Характер поверхности детали

Очевидно, что размеры скан-модели изначально покрашенной, не очищенной от грязи и смазки и вдобавок задутой матирующим спреем детали станут чуть больше исходных. Истинная поверхность окажется под многослойным «бутербродом» из покрытий. Бывает, толщина такого «бутерброда» достигает пары миллиметров. 

В норме при поточной промышленной покраске толщина слоя составляет 0,1–0,2 мм и меньше. Слой небольшой, но всё равно добавляется к реальному габариту детали. Краска ложится неравномерно и иногда собирается наплывами на краях и рёбрах, а острые углы скругляются. Именно на наплывах при многократной покраске «набегают» те самые +2 мм к габариту.

А ещё есть грязь и смазка. Детали станков и механизмов как при хранении, так и при эксплуатации, особенно снятые со старого оборудования, часто покрыты смесью грязи с маслом или иной смазкой. Если сканировать такую деталь без очистки, сканер честно зафиксирует поверхность грязи, а не основного материала под ней. Грязь забивается в углы и мелкие элементы рельефа и может полностью изменить их геометрию на скане.

Следующий фактор — сама поверхность материала. Здесь играют роль шероховатость, возникающая при производстве, и фактура (рельеф), которую создают целенаправленно.

Яркий пример — поверхность металлической детали, отлитой в песчаную форму. По ГОСТ Р 70117-2022 допускается шероховатость литейных поверхностей до 0,8 мм. При этом наш сканер снимает такую деталь с точностью до 0,036 мм. Получается парадокс: 3D-сканер может снять деталь в 20 раз точнее, чем она изготовлена относительно исходной геометрии. В таких случаях нужно понять, где среди песчинок находится та самая поверхность конструкции, которой и должна соответствовать 3D-модель.

Реверс-инжиниринг: точно - значит криво.Типичная металлическая деталь, отлитая в песок. Отчётливо видны все неровности.

6. Точность и разрешение измерительного инструмента

У 3D-сканеров точность зависит в том числе от размера объекта, на который настроен сканер, — так называемой рабочей области, или поля сканирования. Чем меньше поле, тем выше точность. Например, для нашего RangeVision Pro 2 заявленная точность при работе с объектами до 10 см достигает 24 микрон (0,024 мм). Это максимальное отклонение, на которое Pro 2 может ошибиться на маленькой детали.

Именно точность сканирования ошибочно могут выдавать за точность реверс-инжиниринга.

Помимо точности у сканера есть ещё один важный параметр — разрешение. Оно показывает, насколько мелкие элементы поверхности сканер способен различить. Оно всегда ниже точности в 2 и более раз. Для RangeVision Pro 2 на тех же объектах до 10 см разрешение составляет 0,04 мм против погрешности 0,024 мм. Из-за этого большие предметы получаются достаточно точными по размеру, но заметно менее чёткими, чем маленькие.

7. Особенности технологии 3D-сканирования

На фокусах с точностью и разрешением проблемы не заканчиваются. Помимо зеркальных и прозрачных поверхностей есть геометрия, которую оптический сканер физически не может распознать или видит плохо и куда сканер просто не может заглянуть. Например:

- узкие и глубокие отверстия;

- внутренние полости;

- глубокие канавки;

- внутренняя резьба;

- острые кромки;

- поднутрения;.

Если луч лазера или камера не имеют прямой видимости участка, информация о нём просто не попадает в измерение — возникает слепая зона. На итоговой полигональной модели это выглядит как неровное отверстие или разрыв поверхности. Поэтому файл сканирования часто нельзя напрямую отправить в 3D-печать — его приходится обрабатывать, “лечить” модель. 

Реверс-инжиниринг: точно - значит криво.На изображении ручка багажника. Видны сквозные дыры вместо углублений.

8. Подготовка 3D-скана

Реверс-инжиниринг: точно - значит криво.Подготовка, сканирование и итоговый 3D-скан крыла мотоцикла.

Результатом непосредственно 3D-сканирования является облако точек с координатами. Чтобы превратить его в поверхность, программа соединяет точки и формирует полигональную сетку.

В зависимости от алгоритмов и настроек один и тот же набор данных программа интерпретирует по-разному. Например, можно получить модель, в которой сомнительные участки будут удалены — тогда появляются дыры. А можно позволить программе достроить поверхность по окружающим данным — дыры исчезнут, но часть геометрии окажется предположительной, а не измеренной.

Помимо этой проблемы, поверхность 3D-скана всегда получается с шагренью — микрошероховатостью, которая появляется, какой бы гладкой ни была сама деталь. И она тоже напрямую влияет на итоговый результат.

Реверс-инжиниринг: точно - значит криво.Видна шагрень на поверхности винта. Сам винт гладкий, а его скан - с рытвинами.

Самое очевидное решение — просто сгладить шагрень. Но здесь легко испортить результат. При агрессивном сглаживании исчезают не только шумы, но и реальные элементы геометрии: острый угол становится мягким, радиус скругления увеличивается. Например, реальный радиус 4 мм после чрезмерного сглаживания может превратиться в заметно больший — вплоть до 6 мм.

Как правило, любое автоматическое восстановление сетки работает довольно вольно, поэтому для ответственных технических деталей мы предпочитаем не обрабатывать сканы дополнительно. 

9. Интерпретация 3D-скана человеком

Или человеческий фактор в полной мере. У нас есть тестовое задание для претендентов на должность реверс-инженера: сделать реверс кронштейна для очков офтальмолога. Изначально это был обычный заказ, но модель оказалась настолько разносторонней в работе, что я сделал её тестовым заданием. На момент написания статьи по одним и тем же исходным данным тестовое выполнили 23 человека — и все 3D-модели вышли разными.

Обратное проектирование похоже на работу сыщика: вещи бывают спроектированы так тонко, а 3D-скан так замылен, что разглядеть построение формы бывает непросто даже опытному человеку.

Реверс-инжиниринг: точно - значит криво.На изображении: зуб (красный) и коронка (жёлтая) от ковша экскаватора. Синим обведены питатели - каналы, через которые в форму заливали расплавленный металл. После застывания питатель спиливают, но характерный выступ остаётся. При реверс-инжиниринге (ниже) такие элементы не воспроизводят, так как они не являются частью исходных 3D-моделей.

Реверс-инжиниринг: точно - значит криво.

10. Особенности CAD/САПР

Довольно часто для задач реверс-инжиниринга используют специализированные программы — например, Geomagic Design X, созданную именно для работы с результатами 3D-сканирования и восстановления CAD-геометрии.

В Geomagic есть инструменты анализа 3D-сканов и автоматического построения. Но при этом программа сама по себе не является типичной САПР вроде распространённых в нашей стране систем SolidWorks, T-Flex или Компас: в них намного больше инструментов проектирования, но нет или мало инструментов, полезных для реверс-инжиниринга.

Любая программа имеет специализацию, а значит — свои возможности и ограничения. Если пытаться решать любую задачу одним инструментом, рано или поздно упрёшься в его ограничения. Например, задать 3D-скану точную ориентацию в пространстве в бесплатном Blender и дешёвом Rhinoceros бывает намного проще, чем в дорогущих «всесильных» Siemens NX и Catia.

Заключение

Так что же на самом деле означает «точность» в реверс-инжиниринге?

Теперь, надеюсь, понятно, почему на этот вопрос нельзя ответить одной цифрой в микронах. У нас никогда нет прямого пути от физической детали к идеальной CAD-модели. Между ними — длинная цепочка, которая начинается ещё до рождения детали:

проектирование → технологическая подготовка → производство → эксплуатация → подготовка детали → 3D-сканирование → обработка данных → интерпретация инженером → построение CAD-модели.

На каждом этапе появляются свои отклонения. Поэтому главная задача реверс-инжиниринга — понять, что из увиденного действительно соответствует исходной геометрии, а что является результатом производства, следствием износа, неточностью измерения или артефактом сканирования.

  • Если нужна точная замена существующей детали — максимально сохраняем фактическую геометрию и компенсируем только износ.
  • Нужно восстановить исходную конструкцию — отделяем номинальные размеры от производственных и эксплуатационных отклонений.
  • Нужно улучшить деталь — сознательно меняем геометрию.

Во всех трёх случаях исходная деталь одна и та же, а результат разный.

А бывает, что всё это нужно совместить: сохранить то, что определяет работу детали, восстановить утраченное и одновременно адаптировать конструкцию к современной технологии производства.

Это путь восстановления номинальной формы. И именно здесь заканчивается работа 3D-сканера и начинается работа инженера. Сканер может показать поверхность с точностью в десятки микрон. Но только инженер решает, оставить ли эти десятки микрон в итоговой модели. Потому что точность копирования и правильность конструкции — не одно и то же.

Хороший реверс-инжиниринг — это когда новая 3D-модель повторяет ту геометрию, по которой создавали деталь.

---------------

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

8
Комментарии к статье
Lider 3D Реклама
Lider 3D Реклама