У инженеров часто возникает необходимость транслировать проекты из одной САПР в другую. Трансляция может потребоваться, если разные отделы предприятия проектируют в разных САПР, или в случае, когда система проектирования уже не справляется с поставленными задачами и разработку нужно продолжить в более мощном решении.
PADS Professional обладает набором трансляторов, которые помогут вам без труда перенести проекты и библиотеки из всех популярных САПР (Allegro, Altium Designer, CADSTAR, OrCAD, P-CAD и Protel). В этой статье мы подробно остановимся на трансляции проектов и библиотек из Altium Designer.
Порядок трансляции (рис. 1):
- Чтобы процесс трансляции прошел успешно, в первую очередь нужно убедиться, что схема полностью синхронизирована с топологией в самом Altium. Мы, конечно, можем транслировать несинхронизированные проекты, но это с большой вероятностью приведет к ошибкам в процессе трансляции.
- Далее необходимо создать пустую библиотеку, куда мы в ходе трансляции добавим символы, посадочные места и компоненты из нашего проекта.
- Следующим шагом нужно перечислить посадочные места, в которых содержатся монтажные отверстия, и указать их в специальном файле. Это позволит сохранить правильную информацию о количестве контактных площадок в компоненте. В противном случае транслятор при переводе футпринта, который состоит, например, из пяти пэдов и двух монтажных отверстий, преобразует его в футпринт с семью пэдами.
- Далее мы транслируем в созданную библиотеку информацию о футпринтах и контактных площадках. Для этого будем использовать файл топологии.
- После этого мы транслируем схему в проект, а символы УГО и информацию о компонентах в нашу библиотеку.
- Затем транслируем из Altium всю топологию.
- И последний, один из самых важных шагов: выполняем упаковку проекта и синхронизацию схемы и топологии. Это нужно для того, чтобы все последующие изменения в топологии или схеме автоматически синхронизировались друг с другом, и мы были уверены в целостности данных.
Рис. 1
Поддерживаемые форматы проектов и библиотек
Поддерживаются следующие типы файлов:
- файлы схем (*.sch) в двоичном формате, а также в формате ASCII, включая схемы, хранящиеся в базе данных проектирования Protel (*.dtb);
- файлы проекта печатной платы Altium Designer (*.PrjPcb);
- файлы библиотек Protel 99 (*.lib), включая библиотеки схем, хранящиеся в базе данных проектирования Protel (*.dtb);
- файлы схем (*.SchDoc) в двоичном формате, а также в формате ASCII;
- файлы библиотек (*.schlib и *.intlib).
Что нам нужно для успешной трансляции?
- Лицензированный PADS Professional.
- Проект в Altium (*.PrjPcb, *.SchDoc, *.PcbDoc). Должен быть синхронизирован на стороне Altium.
- Список монтажных отверстий, которые находятся в футпринтах. Если его нет, список можно будет затем добавить вручную либо заново перетранслировать проект.
Процесс трансляции
- Синхронизация проекта в Altium Designer
-
В первую очередь нам нужно, чтобы проект в Altium уже был синхронизирован (скомпилирован). Весь процесс достаточно подробно описан на сайте www.altium.com в разделе «Документация» (рис. 2).
Рис. 2
- Создание библиотеки проекта
-
Теперь под наш проект нужно создать пустую библиотеку. Для этого запускаем PADS Designer:
- переходим на вкладку создания нового проекта и создаем библиотеку. Для этого кликаем на соответствующую иконку, указываем директорию, где будет храниться наша библиотека, и задаем ей имя. Будет создана пустая библиотека, в которой находятся несколько стандартных символов, а также стандартные разделы;
-
далее указываем название самого проекта и нажимаем Create (рис. 3).
Рис. 3
-
Итак, у нас есть пустой проект. Давайте откроем библиотеку (Tools → PADS Library Tools) и посмотрим на нее. Мы видим, что в библиотеке были автоматически созданы стандартные разделы для символов, компонентов и посадочных мест, а также сами символы — например, рамки листов (рис. 4).
Рис. 4
- Определение монтажных отверстий
-
Следующим шагом нам необходимо определить футпринты, в которых содержатся монтажные отверстия, и прописать их в конфигурационных файлах.
Для корректной трансляции футпринтов, содержащих монтажные отверстия, требуется отредактировать два файла: alt2pads.ini и ppcb2hkp.ini. Оба находятся в установочной директории PADS Professional.
Синтаксис в этих файлах следующий: нужно указать название футпринта, который содержит монтажные отверстия, а затем перечислить имена самих монтажных отверстий.
Если мы проигнорируем этот шаг или выполним его неправильно, можем получить показанную на рис. 5 ошибку при Forward Annotation.
Рис. 5
Эта ошибка говорит о том, что футпринт TO-263 имеет четыре контактные площадки, хотя в информации на сам компонент у нас прописано только три. То есть при трансляции монтажное отверстие превратилось в пэд и, соответственно, увеличило общее число пэдов в футпринте.
-
-
Переходим в директорию, где хранятся файлы alt2pads.ini и ppcb2hkp.ini. Если при установке вы не меняли директорию, это будет C:\MentorGraphics\PADSProVX.2.5\Sdt_HOME\pads\win32\bin.
Рис. 6
-
Первый файл, который нам нужен, — alt2pads.ini (рис. 6). Откроем его. Здесь собрано много сведений, так как в этом файле содержится конфигурационная информация и для других трансляторов. В нашем случае нас интересует раздел [Protel Mounting Holes] (рис. 7).
Рис. 7
-
Нужно указать префикс, используемый для обозначения монтажных отверстий. По умолчанию указан стандартный вариант MH, для нашего случая он подходит. Если в ваших проектах монтажные отверстия обозначаются иначе, указать это необходимо здесь.
Теперь перечисляем футпринты, которые содержат монтажные отверстия. В нашем случае — один футпринт. Вводим его название: PSC 1.5/5, далее ставим знак равенства и в кавычках перечисляем сами монтажные отверстия — M1 и M2. Если есть другие такие футпринты, каждый из них нужно прописать с новой строки.
- После редактирования не забываем сохранить изменения (Файл → Сохранить).
-
Нам нужно отредактировать еще один файл — ppcb2hkp.ini. Открываем его и убеждаемся, что PinNumberPrefix здесь указан точно такой же, как мы задали в файле alt2pads.ini (рис. 8).
Рис. 8
Сохраняем изменения и идем дальше.
Почему мы указываем эти данные в разных конфигурационных файлах?
Раньше процесс трансляции проектов из Altium в PADS Pro проходил в два этапа:
- трансляция из Altium в PADS Standard/Standard+;
- трансляция из PADS Standard/Standard+ в PADS Pro.
Начиная с версии VX2.4 транслятор обновился, и теперь промежуточный шаг он делает автоматически в фоновом режиме. То есть он по-прежнему транслирует сначала в PADS Standard/Standard+, а затем из PADS Standard/Standard+ в PADS Pro, но для пользователей это происходит за одну итерацию.
- Возвращение трансляторов в меню Пуск
-
Начиная с версии PADS Pro VX2.5, Mentor Graphics убрал из меню Пуск раздел Трансляторы.
Если у вас VX2.5 или более новая версия, то для запуска трансляторов вам нужно будет искать их в установочной директории либо запускать через командную строку.
Ниже описан способ возвращения всех ярлыков в меню Пуск.
-
- Открываем через блокнот файл startmenu.ini. Он расположен по адресу C:\Mentor Graphics\PADSProVX.2.5\Sdt_HOME\pads\win32.
-
Теперь необходимо раскомментить все строки в этом файле — для этого удалим точки с запятой в начале каждой строки. Удобнее всего это сделать через функцию Заменить (Правка → Заменить). Указываем точку с запятой в строке Что заменить, а вторую строку оставляем пустой. Нажимаем Заменить все. После замены файл будет выглядеть так, как показано на рис. 9.
Рис. 9
- Сохраняем все изменения.
-
Далее нам нужно заново зарегистрировать приложение. Для этого идем в меню Пуск и запускаем MGC BSD Release Switcher (рис. 10).
Рис. 10
-
Ставим галочку Don’t Unregister Anything, а из второго списка выбираем нашу рабочую версию приложения PADS ProVX.2.5. Нажимаем ОК (рис. 11).
Рис. 11
- Ждем, пока завершится процесс регистрации приложения.
- После завершения в разделе PADS Pro Tools меню Пуск появятся трансляторы.
- Трансляция футпринтов и контактных площадок
-
Теперь запускаем транслятор, чтобы транслировать футпринты и контактные площадки в нашу библиотеку. В разделе трансляторов выбираем Altium to PADS Pro (рис. 12).
Рис. 12
-
- В первой строке указываем файл платы Altium с расширением *.PcbDoc.
- Во второй строке указываем файл пустого проекта DxDesigner, который мы создали ранее.
- Ставим галочки на Translate design и Update Central Library, чтобы автоматически создать проект платы с расширением *.pcb, обновить нашу библиотеку и добавить туда все контактные площадки и футпринты из проекта.
-
Нажимаем Translate (рис. 13).
Рис. 13
- Дожидаемся сообщения об успешной трансляции.
Если вы увидели сообщение Translation succeeded. Check log for details, то все отлично, можно двигаться дальше.
Также можно посмотреть подробную информацию о процессе трансляции, открыв соответствующий лог. Его можно найти в директории с проектом в папке PCB → Log Files. Здесь представлены все операции транслирования и их результаты. Этот лог поможет, если в ходе трансляции возникают ошибки.
Давайте теперь посмотрим, как изменилась наша библиотека.
Открываем PADS Library Tools. Нас интересует раздел Cells и далее подраздел board1, который был автоматически создан при трансляции платы. В нем теперь находятся все футпринты. Можно кликнуть по ним и убедиться, что они транслировались корректно (рис. 14).
Рис. 14
- Трансляция схемы символов и компонентов
- Следующий шаг — трансляция схемы, символов УГО и информации о компонентах. Так как мы только что транслировали плату, не связав ее ни с какой схемой, это может вызвать массу ошибок в последующем. Операция была нужна только для наполнения нашей библиотеки, поэтому дальше выполняем следующие шаги:
-
- Полностью удаляем папку с нашим проектом.
- Запускаем DxDesigner.
- Создаем новый чистый проект с таким же именем и связываем его с нашей уже наполовину наполненной библиотекой. Теперь мы готовы транслировать схему.
- Запускаем транслятор. Он встроен непосредственно в DxDesigner (меню File → Import → Altium).
-
В открывшемся окне на вкладке Schematics нажимаем кнопку Add и указываем путь к схемному проекту Altium с расширением *.PrjPcb либо *.SchDoc (рис. 15). Если у вас есть файл *.PrjPcb — это намного лучше, так как он содержит в себе все листы схемы, связанные с данным проектом. Если же нет, то нужно будет по очереди транслировать все листы с расширением *.SchDoc.
Рис. 15
- Переходим на вкладку Settings. Здесь можно определить маппинг различных атрибутов, то есть как тот или иной атрибут из Altium будет преобразован в PADS Pro. Где взять конфигурационный файл маппинга? В установочной директории уже есть несколько конфигурационных файлов с маппингом свойств (C:\MentorGraphics\PADSProVX.2.5\Sdt_HOME\standard\cnv\altium_dx.cnv). Они подходят для большинства случаев; если же в ваших проектах присутствуют какие-то специфические атрибуты, вы можете перечислить их вручную.
- Хочу обратить внимание на строку Use Translated Central Lib в разделе [CONVERSION]. Сегодня мы оставим ее пустой, так как уже создали библиотеку для конкретного проекта, но если у вас есть корпоративная библиотека Altium и на ней построены все проекты, вы можете указать ссылку на нее здесь, предварительно транслировав ее.
- Возвращаемся на вкладку Schematics, нажимаем Translate и ждем.
- По окончании процесса трансляции появится окошко, в котором будет описан результат.
- Анализ результата
- Здесь для нас важно, чтобы не было сообщений Error. Могут быть сообщения Warning, но они обычно не влияют на целостность данных проекта. В нашем случае транслятор переименовал название пинов GND, чтобы они не дублировались, и присвоил им порядковые номера (рис. 16).
-
|
|
Рис. 16
|
Закрываем транслятор. У нас появляется транслированная схема.
Откройте библиотеку проекта и проверьте наличие новых символов и информации о компонентах в ней. В разделе символов появился новый подраздел с названием самого проекта — в нашем случае USB panel. Открыв его, вы увидите все символы, содержащиеся в проекте. Также аналогичный подраздел был создан в разделе Parts. Мы видим, что каждому компоненту определены соответствующий символ и посадочное место (рис. 17).
Рис. 17
- Трансляция топологии
-
Теперь нам нужно транслировать саму плату.
Внимательно посмотрите проект и проверьте корректность трансляции. Если все хорошо, двигаемся дальше.
- Упаковка и синхронизация проекта
-
Давайте теперь откроем DxDesigner и выполним упаковку проекта.
- Переходим в меню Tools → Package.
- В разделе Operation выбираем Package symbols.
- В разделе PDB Extraction Options выбираем Delete local data, then rebuild all local library data.
-
Нажимаем ОК и смотрим результат (рис. 21).
Рис. 21
Если все хорошо, то в окне Output вы увидите сообщение The iCDB is up to date.
Теперь, когда мы упаковали проект, следует сделать прямую аннотацию изменений, чтобы синхронизировать схему и топологию.
- Возвращаемся в Layout и переходим в меню Setup → Project Integration. Нам нужно сделать так, чтобы индикаторы стали зелеными — это будет означать полную синхронизацию (рис. 22).
- Убираем галочки с опций Remove floating traces & vias и Remove Hangers — для того чтобы система не удалила из проекта никакие проводники и переходные отверстия, которые могут после трансляции оказаться «висящими в воздухе».
- Нажимаем на желтый индикатор и ждем (рис. 23). Если все индикаторы стали зелеными — работа выполнена!
Ошибок, конечно, не избежать, но их, как правило, достаточно легко исправить.
Узнать о путях исправления ошибок, возникающих при прямой аннотации проекта, вам поможет вебинар «Трансляция проектов и библиотек из Altium Designer в PADS Professional» на нашем YouTube-канале www.youtube.com/c/CADEXPERT.
Для получения 30-дневной демонстрационной версии PADS Professional или другого продукта Mentor, a Siemens Business для проектирования печатных плат отправьте заявку на filipov@nanocad.ru.