Привет, Хабр!
Меня зовут Илья, я руководитель группы инженеров по внедрению в компании ЭРЕМЕКС.
Одним из неотъемлемых этапов любого из проектов по тестированию и внедрению наших программных продуктов является этап конвертации данных из исторических систем заказчика. В этой статье я хотел бы описать один из показательных примеров импорта проекта из Altium Designer(R) в Delta Design(ТМ), который мы проводили для нашего заказчика УП «АТОМТЕХ». Порядок и методы импорта в зависимости от используемых версий САПР или подходов к разработке могут отличаться. Тем не менее, представленный в статье вариант вы сможете использовать как список рекомендаций или инструкцию описывающую значительную часть возможных дополнительных операций, которые необходимо будет проделать помимо самой процедуры импорта/экспорта.
Процесс конвертации содержит следующие ключевые моменты:
Подготовка исходного проекта в Altium Designer.
⦁ Проведена верификация проекта.
Для верификации в Altium Designer требуется настройка в окне Error Reporting: события Missing components models, Floating net labels, Floating power objects, Nets with multiple names, Nets with only one pin переводятся в разряд Error/Fatal Error.
В моем случае из-за особенностей проектирования Э3 некоторые объекты (выводы соединителей, ТТ) попадают в список ошибок по ERC:
С точки зрения импорта данная ситуация может быть проигнорирована.
⦁ Проверка графических и электрических объектов на схеме и плате.
Также следует обратить внимание, что часть объектов Э3 могут быть выполнены не электрическими, а графическими объектами (например, групповая линия передачи цепей), что является особенностью оформления схем согласно требованиям ГОСТ в Altium Designer. В дальнейшем, после импорта, необходимо с особым вниманием отнестись к верификации этих объектов.
На плате в Altium Designer присутствует область запрета, размещенная в multi-layer в виде region – на текущий момент такой объект корректно перенесен не будет, его необходимо отрисовать линией по периметру на keep-out слое, а после импорта – восстановить как регион запрета.
⦁ Синхронизация схемы с платой
В случае если синхронизация схемы и платы критичных расхождений не выявила, проект может быть передан в полном объеме.
Формирование библиотеки на основе проекта для предварительной ее передачи в Delta Design.
Данная процедура позволяет заранее передать библиотеку, верифицировать ее после передачи, сделать «глобальной» библиотекой и уже затем осуществлять импорт проекта с привязкой к ней. Для удобства выбран формат библиотеки intlib.
Ремарка. Самый правильной маршрут импорта – предварительно подготовить и передать исходную библиотеку AD в DD, если у вас она ведется централизованно. В моем случае, так как библиотека не предоставлена, импорт был произведен с применением описанного выше подхода.
Из особенностей: полученная библиотека может содержать компоненты, не имеющие префикса позиционного обозначения, и по своей логике не вписывающиеся в формат ведения компонентной базы DD. В моем случае это Voltage Description Vertical и Led Arrow. Рекомендация: сформировать полноценные компоненты на основе УГО диодов/резисторов.

Некоторые компоненты могут иметь скрытые выводы, не подкрепленные КП в ПМ. К этим объектам после импорта необходимо отнестись с особым вниманием.

Импорт библиотеки в Delta Design.
⦁ Активируются опции «Рассортировать компоненты по семействам» и «Импорт 3D моделей».
Пустая строка – это мои Voltage Description Vertical и Led Arrow.
Для передачи значений основных атрибутов необходим ряд подготовительных действий: корректировка стандарта Семейства компонентов в DD либо приведение к общему виду всех атрибутов на стороне AD. В рамках текущей задачи импорта в качестве примера для компонентов типов Резистор, Конденсатор и Диод, стабилитрон добавлены соответствующие заполненным в AD параметрам атрибуты.
108 – отсутствие ПМ,
156 – дублирование выводов УГО,
355 и 356 — вызваны использованием скрытых выводов в УГО, устранены вручную после импорта.
Библиотека импортирована с разнесением компонентов по каталогу согласно принадлежности к семействам в формате «как было в AD». При необходимости можно объединить однотипные компоненты в радиодетали одного элемента. Проделать это можно либо вручную после импорта, либо, предварительно сформировав таблицу компонентов на стороне AD, импортировать ее в DD в состав радиодеталей отдельного компонента.
⦁ После импорта библиотек проделано следующее:
УГО резисторов неверно передается и требуют корректировки. Подобное поведение связано, в первую очередь, с шагом сетки 100 мил и нулевой длиной выводов – при пересчете на сетку 2.5 произошла модификация графики. Устраняется такое вручную. В дальнейшем рекомендуется подобные резисторы импортировать в виде таблицы радиодеталей, тогда УГО может быть использовано готовое из «Стандартов» Delta Design и будет общим для однотипных компонентов.
Аналогичная ситуация может возникнуть и с другими типами компонентов, например, соединителями, предохранителями – их также необходимо корректировать в части графики.
Импорт проекта в Delta Design.
Предварительный рекомендуемый шаг – сформировать в стандартах системы необходимые классы слоев, соответствующие используемым опорным (экранным) слоям, а также вспомогательным механическим слоям. В моем примере имеющиеся в исходнике слои:
M1 и M2 – 3D модели компонентов.
M5 и M6 – сборочные слои.
M11 и M12 – вспомогательные слои.
Такой подход облегчает читаемость платы и позволяет максимально приблизить результат импорта к исходнику.
-
На первом шаге мастера импорта следует отключить импорт вспомогательных плат мультизаготовки. При необходимости подобная заготовка может быть сформирована отдельно на основе проекта ПУ в системе DeltaCAM (наш аналог CAM350)
-
На втором шаге система проводит анализ импортируемого проекта и формирует список найденных ошибок и предупреждений. В текущем проекте в раздел предупреждений попадают события типа:
Для импорта эти события ошибками не являются, т.к. подобным образом DD реагирует на составные (многосекционные) компоненты.
-
На третьем шаге необходимо установить соответствие семейств компонентов проекта с семействами DD – настраивается аналогично соответствующему шагу мастера импорта библиотек.
-
Четвертый шаг – необходимо выбрать формат импорта компонентов проекта – в виде отдельной (локальной) библиотеки либо же с установкой соответствия с уже имеющейся библиотекой. После выбора имеющейся библиотеки система снова сигнализирует об ошибках в компоненте:
Остальные элементы библиотеки найдены автоматически, т.к. наименования не менялись. В случае корректировки наименований (либо объединения радиодеталей в один компонент) соответствия можно установить вручную.
-
Пятый, заключительный шаг – установка соответствия между механическими слоями AD и документирующими слоями DD.
Работа после импорта
Необходимо восстановить область запрета объектом типа Регион.
Области металлизации повторяют форму внешней границы полигонов, однако залиты без применения правил заливки. Эти настройки необходимо перенести вручную в раздел Стили металлизации DD. Пример для области металлизации слоя питания Int2 приведен ниже.
После формирования стиля необходимо назначить стиль всем требующим этого областям металлизации и выполнить команду их перезаливки.
Из изображений видно, что области металлизации не соответствуют оригиналу в части отступов (зазоров) до других цепей. Для устранения необходимо перенести в DD используемые в AD правила проектирования, т.к. на текущий момент автоматического импорта не предусмотрено.





Также важно сформировать правило запрета размещения металлизации при ее заливке в областях запретов (Регион в DD).

После перезаливки областей металлизации плата приобретает следующий вид:
Области металлизации не на 100% идентичны исходной меди, но с высокой степенью ей подобны.
Проект содержит варианты исполнения. В актуальной версии DD 4.2 исполнения реализованы на уровне схемы и КД, однако перенос при импорте пока не реализован, поэтому таблицу Variants необходимо перенести вручную в интерфейс свойств проекта DD.
Отчеты и сборочный чертеж ПП для проекта после импорта можно сформировать в автоматизированном режиме при помощи мастера создания КД.
Заключение
Практический опыт внедрения и миграции данных между любыми САПР показывает, что идеального, полностью автоматизированного переноса «в один клик» не существует.
Различия в логике построения, архитектуре данных и функциональных возможностях разных систем неизбежно приводят к необходимости корректировок и доработок перенесенной информации.
Наша задача как вендора и внедренцев в этом случае заключается не в обещании 100% автоматизации, а, скорее, в максимальном сокращении объема таких ручных операций.
Наша команда как разработчик/интегратор видит своей задачей именно такую работу: не просто предоставить инструмент, а стать вашим технологическим партнёром. Мы готовы предложить комплексный подход — от глубокого анализа ваших задач и процессов до полного сопровождения проекта внедрения, включая в том числе и доработки нашей САПР.
Давайте обсудим, как мы можем оптимизировать и автоматизировать именно ваш рабочий процесс.
ссылка на оригинал статьи https://habr.com/ru/articles/1054072/