Отзыв о САПР «DipTrace» (разработка электроники)

Отзыв о DipTrace

Возникла задача легализовать софт для разработки электроники… В наших реалиях, такие замечательные и мощные САПР как Altium (работал в ней раньше) и OrCAD — слишком дорогие. Пришлось обратить свой аналитический поиск на САПР бюджетного и любительского диапазона…

Среди доступных по цене САПР, лучшей на сегодняшний день, и подходящей мне по функционалу — была выбрана DipTrace. О «плюсах» и «минусах» данной САПР, как я их вижу после начального знакомства (IMHO) — данная статья.

 

Относительно альтернативных САПР:

В целом, DipTrace мне понравился. И я не нашёл ничего лучше. Предварительно, также смотрел обзоры, читал отзывы на разные САПР доступного (бюджетно-любительского) диапазона цен. Тот же Eagle — несерьёзен, даже по размеру дистрибутива. Вообще, все САПР любительского назначения примерно похожи и предоставляют сходный ограниченный функционал.

 

Например, в статье «Choosing PCB Layout Software» (ENG) (статья с размышлениями о выборе САПР для проектирования ПП) высказываются мнения:

  • Eagle (интерфейс тупой и древний, как гавно мамонта, ещё DOS-ковой эры)
  • KiCAD (опенсорс, но слабый функционал)
  • DipTrace (рулит).

И люди подтверждают про Eagle в комментах:

«I agree, it’s now 4 years later since you first published this and Eagle  has  hardly  improved.  Eagle  is  unintuitive,  clunky  and over-rated.  If  you grew up with it, then fine but for the rest of us it’s past its sell buy date.»

В целом, многие любители выбирают DipTrace. Даже за рубежом.

 

Отдельной категорией проходят Opensource и Online CAD. Обычно, они слабофункциональны и неудобны. Но их выбирают по специфическим причинам:

  • OPENSOURCE CAD — выбирают линуксоиды: по идеологическим соображениям, а ещё из-за хорошей совместимости с линукс (зачастую эти CADы даже устанавиваются автоматом из Портов).
  • ONLINE CAD, типа EasyEDA.com — выбирают за поддержку производителем ПП: когда это ВСПОМОГАТЕЛЬНЫЙ ИНСТРУМЕНТ для подготовки дизайна, чтобы заказать китайцам изготовление небольшой ПП.

 

Что есть в DipTrace — чтобы сразу понимать, чем он крут:

  • DipTrace обладает обширным функционалом (как для любительской САПР) и хорошей, продуманной эргономикой.
  • DipTrace легко осваиваем (т.н. «низкий порог вхождения»).
  • DipTrace на русском — как интерфейс, так и учебник. Действительно — мелочь, а приятно.
  • DipTrace хорошо отлажен и не глючит (у меня например не было зависаний и вылетов).

 

  • DipTrace сразу определяет «Слои служебной графики», для верстки ПП —
    это даёт прозрачность и непротиворечивость при создании библиотек компонентов — лёгкость обмена библиотеками.
    Например, Altium определяет 32 «механических слоя», которые каждая компания может использовать как ей заблагорассудится — да, это гибкость! Но это требует, предварительно 1.5 года ставить техпроцесс в крупной компании, продумывать свои Workflow… Т.е. Altium — Это мощный инструмент калибра ERP-системы. Потому, сходу не заводится, но требует адаптации. А DipTrace нет — просто сел и поехал…
  • DipTrace, из коробки, сразу же обладает очень большой библиотекой компонентов. Особенно доставляет коллекция 3D-корпусов (ох, как же я намучился с этим в Altium — 2.5 месяца просто создавал базовую библиотеку, собирал футпринты и 3D модели для всех распространённых типоразмеров корпусов — чтобы хоть что-то в Altium сверстать толковое).

 

  • DipTrace имеет хороший «автороутер дорожек», и удовлетворительный расстановщик корпусов — оба просто настраиваются, а работают хорошо. Их удобно использовать.
    Например,  в  Altium  их  так  мудрёно настраивать, и столькоправил  ограничений  надо предварительно сверстать, что я такни  разу и не использовал его автороутер — разводил платы вручную (долго)! А в DipTrace, легко использовать автоматизацию.

 

  • DipTrace имеет средства для итеративного применения изменений к печатной плате, при редактировании/доделке исходной схемы. Да это есть! И работает просто и удобно — автоматически, без всяких ECO-файлов (как в старом PCAD). Но кстати, вот разница в пользу Altium:
    • В   Altium,   все  подобные  изменения  к  ПП  предварительно журналируются и отдаются на ревизию инженеру, где можно/нужно всё  пересматривать, к какому компоненту/цепи какие изменения будут применени, и утверждать по пунктам.
    • А  в  DipTrace всё сразу применяется втихаря, по умолчанию, и даже  без  подсветки  «областей  последних изменений» — вот и признак «любительской САПР».
  • DipTrace обладает средствами самоконтроля от тупых ошибков как в Схеме принципиальной (ERC check), так и в Разводке Платы (DRC check) — это необходимо и действително помогает!
  • DipTrace конечно позволяет задавать «Классы цепей» и «Переходов» (ширину дорожек, отступы) — это сейчас уже стандарт дефакто.
  • DipTrace умеет иерархические (многоканальные) схемы/подсхемы. И немного глючноватно, но в общем как-то помогает автоматизировать их разводку на ПП, и сгенерировать «Спецификацию» (BOM, список деталей).

 

  • DipTrace лицензия стоит недорого. А разрабы сразу дарят радиолюбителям Standard-лицензию (для некоммерческого использования программы).
    И ситуация такова, что даже crack на DipTrace отечественные хакеры не делают.

 

Чего в DipTrace нет — чтобы сразу понимать ограничения:

Проработав учебник, поэкспериментировал со всеми фичами.
Пропустил (оставил без внимания) пока только самые специфические:

  • трассировка Дифференциальных пар (нужна только для ПЛИС);
  • SPICE моделирование (для справки: в DipTrace нет встроенного SPICE-движка, но только настраивается экспорт нетлиста. А собственно SPICE-моделирование делается во внешнем ПО.);
  • экпорт Gerber (к этому я, всё равно, ещё вернусь позже)…

 

В общем, осознал концепцию учёта в этой программе и возможности.
Сравнивая с Altium, могу с уверенностью заявить, что «DipTrace — наверное, лучшая (или одна из лучших) ЛЮБИТЕЛЬСКИХ САПР на сегодняшний день».
Именно «любительская», потому что в ней удобно проектировать платы МАЛОГО и СРЕДНЕГО размера (до 4 сигнальных слоёв включительно, но не более; и до 100-200 корпусов, но не более).

 

Но Крупные проекты не потянет! Потому что:

  1. В DipTrace отсутствуют (или слабо развиты) СРЕДСТВА ГРУППОВОГО РЕДАКТИРОВАНИЯ ПРИМИТИВОВ ПП.
    • «Групповое редактирование» предполагает наличие развитой модели «Свойств Компонентов» и средства их просмотра/редактирования (Например, в DipTrace панель «Object Inspector» очень примитивна, отображает не все свойства, не всё редактируемо — это больше как вспомогательный инструмент, для эргономики).
    • Возможность изменять одноимённые свойства сразу для группы выделенных компонентов — вроде как развивается, и уже что-то работает в этом направлении… Хотя подглючивает, при попытке выделить разнотипные объекты (корпус, дорожку и via). Т.е. у него какая-то своя внутренняя логика, и он тупо скрывает свойства других типов, отображая только свойства объектов главного типа в выделении (в порядке приоритетов корпус -> дорожка -> via).
    • Также, ещё требуются мощные стредства выборки/фильтрации Компонентов ПП по разным критериям. (В DipTrace есть мастер «Правка \ Редактировать выделение…» Но он очень скромный.)
  2. Контактные площадки не являются самостоятельными объектами (считаются частью посадочных мест), и выделение и редактирование их свойств «Панелью Свойств» невозможно. Хотя, предлагаются некоторые мастера для полу-ручного редактирования контактных площадок. Но запускаются эти мастера («Свойства выводов…» и «Параметры вывода») в привязке к Компонентам.
    1. Но  к  чести DipTrace: у него всё же есть «фича подстройки размеров контактных площадок» без редактирования библиотеки компонентов, уже непосредственно на разведённой ПП. Это важно и необходимо! Особенно для макетирования ЛУТом (когда после разводки нужно максимально увеличить пятаки).
    2. Это важная и часто востребованная фича — поэтому поясню подробнее концепцию данных:

      У каждого Компонента/Корпуса могут быть «Контактные Площадки» (КП) разных размеров. /Кроме того, могут быть ещё «технологические (крепёжные) отверстия», но сейчас не о них./

      Например, разъём D-SUB имеет три типа отверстий:
      1) Два здоровых отверстия для крепления самого корпуса (контакт «Земля»).
      2) Сигнальные КП.
      3) Причём, один из сигнальных (Контакт №1) — другой формы, чтобы отличался на плате.

      DipTrace позволяет задать «Стандартный для копуса» размер КП, ещё при вёрстке в Библиотеке. Обычно, этим размером делают КП которых больше всего — это под пунктом 2) у нас. Но КП типа 1) и 3) приходится задавать отдельно, кастомно прописывая свойства для каждой отдельной КП!

      А ещё такая прелесть: каждой из двух больших КП типа 1) — прийдётся настроить свойства вручную поотдельности! Т.е. два раза, одно и то же действие: кликая на каждой КП, вызывая Свойства, настраивая размеры, Ок. А если «КП кастомного типа» не две, а несколько штук — то для каждой отдельной КП, прийдётся настроить свойства вручную поотдельности! Потому что «КП не являются самостоятельными объектами» и их нельзя выделить мышкой в группу, для которой уже скопом задать Свойства.

      Окей, разместили на Печатной плате несколько корпусов… У каждого из них по три типа КП, по несколько штук… Как работают мастера «группового изменения свойств КП»? Фигово работают!
      Т.е. Мастер запустится и перенастроит все КП во всех выделенных корпусах в один размер/форму — он не может редактировать только размер, например, а оставить нетронутой форму. (ограниченный функционала — может со временем доделают, но пока так) И фактически, приходится кликать каждый Компонент, и каждую его КП поотдельности, и подстраивать размеры — вручную и последовательно. Если потом пересмотрел Дизайн и размеры площадок не понравились — то повторно редактировать, каждый и вручную…

      Т.е. перенастроить КП в итоговой вёрстке можно — раз ручные средства есть. Но работают они неудобно: долго, вручную, муторно. Нужно терпение и время… Вот поэтому большие платы DipTrace в принципе можно делать, но лишь номинально.

  3. В DipTrace слабоватая эргономика редактирования многослойной платы — т.е. недостаточная интерактивность редактора: заставляет разработчика держать в уме разводку, когда дорожка пронизывает несколько слоёв. Особенно неудобно видеть «Экранные слои» — они закрывают обзор (их отображение приходится постоянно отключать/включать).
    В общем, это кажется просто ворчанием. Но при действительно большой платеэти мелочи будут создавать большие накладки. И сложность работы по разводке будет расти нелинейно. Поэтому предупреждаю: DipTrace — это не для больших плат!
  4. Нет средств автоматизации генерации «Выходной документации». Что на окончательных этапах отладки/доводки проекта создаёт большие накладки и путаницу с необходимостью помнить «актуален ли тот или иной документ?»
    1. Т.е. можно вручную сгенерировать BOM — получается статическая таблица, никак не связанная со схемой. Схему изменил — перегенерируй BOM, с нуля и вручную. Ну, хорошо хоть, при закрытии диалога, настройки последнего BOM сохраняются в реестре и в следующий раз не приходится с нуля его верстать!
    2. А вот, распечатка «Сборочного чертежа», «Сверловки», «Разводки слоёв ПП» — это вообще непроработано! Есть только универсальный диалог печати, в котором (каждый раз с нуля!) нужно выбрать слои для печати, масштаб, цвет, зеркальность/инверсия и т.п.
      Можно как-то подогнать картинку под что-то похожее на «Сборочный чертёж». Но после распечатки — закрываешь диалог, открываешь заново — а там всё с нуля настраивать. «Шаблоны документации? Нет не слышали…» (с)
  5. Diptrace умеет панелизацию, но в ограниченном функционале. Поэтому напишу это в «недостатках».
    1. Меню «Правка \ Панелизация…» позволяет настроить дублирование маленькой разведенной Платы матрицей на лист — чтобы экспортировать общий Gerber и заказывать на заводе оптом… Но автоматически панелизировать можно только текущую печатную Плату: растиражировать разведённую в текущем документе плату — матрицей на Листе.
    2. При необходимости сверстать один Лист из разных плат, из разных схем/разводок/документов — нет никаких штатных средств (никаких связанных-документов с динамическими обновляемыми дизайнами)! Но учебник предлагает лишь лайфхак:
      1. создаём временный документ, в котором мы вручную распределим несколько разных плат (просто копи-пастой);
      2. включаем опцию «Правка \ Не менять метки при копировании»;
      3. и из разных документов копи-пастим готовые дизайны на большой лист;
      4. выравниваем как надо, экспортируем Gerberы (всё что надо для производства);
      5. и удаляем временный документ — это была просто ручная компиляция, и она потеряет актуальность при правках к исходным платам.
    3. И ещё, вот что я заметил: когда копируем дополнительные платы на лист — тут DipTrace уже отдельно суммирует количество выводов компонент — и реально можно быстро превысить предел ограничений по лицензии!
      1. И вот, замечание относительно Standard-лицензии: если 4 сигнальных слоя вполне хватит очень надолго, то лимит в 1000 выводов (на общем Листе) очень быстро исчерпается.
      2. Подробнее о ценах на лицензию см. https://diptrace.com/ua/buy/online-store/

 

Комментарии закрыты.