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