Когда первый раз установил KiCAD и попробовал открыть уже готовые проекты, то первое впечатление было - WOW! Все красиво, понятно, ничего лишнего. Но когда попробовал сделать в KiCAD свой первый проект, то оказалось что не все так просто, как кажется.
При освоении пакета KiCAD многое казалось неудобным и нелогичным, но в конце концов можно сделать вывод - пользоваться системой можно. Если закрыть глаза на неудобства, то можно быстро научиться и начать создавать полноценные печатные платы - у меня ушла примерно неделя на процесс от обучения с нуля до создания схемы, платы, и получения Gerber-файлов.
[Что плохо в KiCAD?]
Для начала перечислю недостатки, которые заметил в KiCAD, и сравню их с аналогичными возможностями в Eagle и PCAD2004.
1. Недоработанная организация библиотек. В KiCAD она сделана в виде отдельных файлов *.lib (для символов схемы) и *.mod. Это простые текстовые файлы, которые можно открыть текстовым редактором, и в которых можно нормально разобраться. Но на этом достоинства заканчиваются. К сожалению, в KiCAD библиотеки нелогично интегрированы в систему. Например, по-разному работает обновление схемы при смене внешнего вида символа в библиотеке *.lib (схема обновляется сразу при сохранении библиотеки), и совсем по-другому работает посадочного места детали в библиотеке *.mod (чтобы обновить посадочное место на плате, необходимы специальные действия). По-разному сохраняются и используются элементы библиотек *.lib и *.mod. Если *.lib всегда хранятся отдельно от схемы, и в редакторе схемы нужно обязательно настроить необходимые для схемы библиотеки (иначе схема не откроется), то *.mod используется только при создании платы, или при её обновлении, потому что копии посадочных мест деталей хранятся в файле печатной платы как копии посадочных мест в библиотеке *.mod. В системах Eagle и PCAD2004, несмотря на их недостатки, библиотеки организованы логичнее. Другое неудобство - нет отдельного редактора для библиотек, где можно сразу посмотреть и схему детали, и её посадочные места, нет системы поиска по библиотекам. Редактор символов можно запустить только из редактора схем, редактор посадочных мест можно запустить только из редактора платы. Почему бы не сделать возможность запуска редакторов из общей оболочки системы KiCAD? Прямое копирование компонентов из одной библиотеки в другую в системе KiCAD невозможно. В Eagle и PCAD2004 с этим все тоже не шоколадно, но хотя бы есть специальные команды и инструменты для копирования элементов и просмотра библиотек. Все процедуры создания, редактирования библиотек нужно изучать специально.
2. Система меню программы, тулбаров и контекстного меню не имеют четкую взаимосвязь. Некоторые действия нельзя найти в меню (например, создание нового компонента), их можно выполнить только через кнопки на тулбаре. Нужно обязательно запомнить, какой кнопкой на тулбаре какое действие выполняется, иначе никак. В этом отношении Eagle и PCAD2004 устроены лучше, несмотря на то, что система меню в них сложнее.
3. Редакторы схемы и платы в KiCAD имеют удобный и понятный интерфейс только тогда, когда Вы научились этим интерфейсом пользоваться. Такая же точно болезнь и с Cadsoft Eagle - не хотят почему-то программисты этих систем сделать интуитивно-понятный, привычный интерфейс графического редактирования. В редакторах неудобно делать повторяющиеся операции. Забудьте про стандартные инструменты копирования и вставки - этого нет, всему придется обучаться заново, с чистого листа. Drag-and-drop не работает как надо - оказывается, чтобы что-то перетащить, нужно это сначала обвести рамочкой, или навести курсор и нажать на клавишу M. Метки не привязываются к проводам, если кликать и тащить, то провод отрывается от детали. В PCAD2004 устроено все намного лучше.
4. В редакторе платы неудобно менять толщину линии графики (только через меню и через ручной ввод нового значения). Как менять толщину дорожки проводника при ручной прокладке трасс, я до сих пор не разобрался.
5. Нелогично сделана визуализация слоев и элементов печатной платы в редакторе. Зачем надо было делать отдельное разрешение/запрещение слоев, и отдельные опции визуализации Render? Это очень запутывает регулирование внешнего вида чертежа и усложняет редактирование платы.
6. Автотрассировщик FreeRoute работает довольно медленно. Затруднено управление трассировкой, так как нельзя зафиксировать отдельные дорожки, и FreeRoute не перекладывает уже проведенные трассы. Нельзя остановить трассировку в любом месте, и затем что-нибудь поменять и продолжить трассировать то, что уже оттрассировано.
7. По сравнению с Eagle не очень удобно работать с шелкографией. В KiCAD шелкография комплектуется из графики, которая нарисована в библиотечном модуле компонента (из линий, обозначающих границы корпуса, атрибутов аннотации RefDes и значений Value), а также из графики, которую нарисовал пользователь в слоях F.SilkS и B.SilkS. Неудобство заключается в том, что нет возможности экспортировать шелкографию в один слой, и потом её редактировать, нужно отдельно возвращаться к редактированию модуля детали и к редактированию слоев F.SilkS и B.SilkS. И еще помнить о том, что нужно правильно установить галочки в меню File -> Plot (когда получаете Gerber).
Однако все недостатки перекрываются важным обстоятельством: KiCAD бесплатный пакет, причем его возможности достаточны для получения профессионально выполненных проектов плат. Для этого в пакете предусмотрены все возможности - средство контроля DRC, автотрассировщик, даже есть возможность трехмерной визуализации печатной платы. Причем система KiCAD проста в освоении.
[KiCAD FAQ]
Эти ответы на часто задаваемые вопросы составлялись на основе чтения документации (кстати, документация очень неплоха, хотя она на английском языке) и поиска ответов в Интернете. Поэтому решения всех вопросов Вы тут не найдете, поэтому не забывайте обращаться к документации и к другим свободным источникам информации. На YouTube есть также видеоруководства по использованию KiCAD.
Q001. Как найти нужный элемент схемы (символы), и нужное посадочное место для детали (корпуса)? A001. Библиотечные символы компонентов (symbol) для принципиальных схем собраны в файлы библиотек *.lib, а библиотечные символы корпусов (package) - в файлы библиотек *.mod. Посадочные места (корпуса) элементов в KiCAD почему-то называются модулями (module). Несмотря на то, что в KiCAD нет единого библиотекаря с просмотром всех символов и их корпусов, и нет поиска по библиотекам, можно искать нужные компоненты благодаря тому, что файлы библиотек *.lib и *.mod - это простые текстовые файлы. Так что любой компонент можно найти по имени, если организовать поиск файлов по содержимому в каталоге библиотек. Библиотеки символов (файлы *.lib) находятся в папке KiCad\share\library, а библиотеки модулей (файлы *.mod) в папке KiCad\share\modules.
Q002. Как копировать символы и корпуса из одной библиотеки в другую? A002. Прямой операции копирования в библиотеках не предусмотрено. Можно только загрузить в редакторе из библиотеки символ или модуль, затем выбрать текущей другую библиотеку и сохранить туда символ.
Q003. Как копировать элементы чертежа? Где команды Copy/Paste? Как перетащить элементы чертежа? A003. Привычные команды копирования и вставки отсутствуют. Чтобы скопировать что-то, нужно навести на это курсор и нажать клавишу C (проследите, чтобы у Вас случайно не был включен русский язык!). Другой способ - нажать Shift и перетащить то, что нужно скопировать. Можно также сначала выделить блоком копируемые элементы, передвинуть их, а потом из контекстного меню выбрать Copy Block. Можно скопировать блок, если нажать Shift, обвести рамочкой копируемую область (блок), и затем перетащить блок в другое место - перетащится копия.
Переместить элемент чертежа можно, если навести на него курсор и нажать клавишу M. Также можно перетащить блок, если его выделить курсором мыши (обвести область блока рамкой).
Q004. Как сделать новую библиотеку KiCAD? A004. В редакторах библиотек есть кнопки на тулбаре для того, чтобы создать новую библиотеку. Другого штатного способа создать новую библиотеку нет.
Q005. Как управлять областью видимости (слоями) на чертеже печатной платы? A005.
Q006. Как вручную разводить схему? Почему не могу вручную проложить дорожку? Только что проложенная трасса сразу исчезает. Нельзя почему-то провести дорожку, которая не заканчивается на выводе компонента. A006. Правила разводки следующие: чтобы начать прокладывать трассу, кликните на выводе детали, или на уже проложенной дорожке. Далее ведите трассу, кликая на каждом конце сегмента. Направление трассы можно менять клавишей /, слой можно поменять клавишей V (при этом ставится переходное отверстие). Толщина прокладываемой дорожки и зазоры зависят от Design Rules, и может назначены на класс цепей. Заканчивается трасса двойным щелчком мыши.
Если дорожки не прокладываются ни вручную, ни автоматически, то значит это не позволяют правила Design Rules. Причем редактор не дает никаких предупреждений, и только что разведенная дорожка сразу исчезает. Исправить проблему можно, если исправить ограничения на толщину дорожки и зазор на класс проблемной цепи. Другое решение проблемы - откройте меню Preferences -> General и снимите галочки: Enforce design rules when routing - если эта галочка снята, то Вы можете прокладывать дорожки как угодно, не взирая на установки DRC и существующие цепи.
Delete unconnected tracks - если эта галочка снята, то Вы можете проложить сегменты дорожек, ни к чему не подключенные. Например, Вы можете теперь для ножек питания микросхем с мелким шагом провести короткие тонкие сегменты, которые не укладываются в требования DRC.
Q007. Автороутер FreeRoute не запускается с сообщением "could not start java virtual machine". A007. Решение проблемы описано на главной странице FreeRoute [1]. Суть решения заключается в том, что нужно скачать свежую версию Java (обычно по ссылке http://java.com/en/download).
Q008. Где в KiCAD операция Force update? Как обновить посадочные места на печатной плате (module, footprint, package), если я поменял их в библиотеке? К примеру, я просто назначил посадочное место резистора 0.25 Вт резистору 0.5 Вт, потому что у меня не было посадочного места на 0.5 Вт. Зятем я загрузил список цепей в Pcbnew и перешел к редактированию модуля резистора 0.25 Вт (редактор Module Editor, где редактируются посадочные места деталей, footprint). Есть ли возможность заменить только то отдельное посадочное место, которое я отредактировал в библиотеке модулей? У меня не получается обновить все те же самые модули в библиотеке. A008: Решение проблемы: в редакторе модулей (module editor) Вам нужно сохранить измененное посадочное место в существующую или новую библиотеку, дав посадочному месту (модулю) НОВОЕ (!) имя. Вот следующие шаги, которые могут показаться неочевидными: 1. Запустите Module Editor (это можно сделать в редакторе печатной платы Pcbnew). Отредактируйте модуль (внешний вид корпуса компонента(, сохраните его в библиотеку .mod под новым (обязательно новым!) именем. 2. Установите рабочую библиотеку (меню File -> Current Library), или создайте новую библиотеку (кнопка Create new library). 3. Создайте или отредактируйте модуль. Сохраните измененный модуль под новым (это важно!) именем в библиотеку. 4. Если была создана новая библиотека, то добавьте её в проект. 5. И наконец, теперь Вы можете обновить все компоненты, которые используют новый footprint (посадочное место) в программе CVpcb (да, это ручная работа, но она не будет сложной, если все символы и модули поименованы должным образом). Откройте CvPcb, укажите новый модуль (с новым именем) для нужного компонента. Сохраните в CvPcb файл .cmp. 6. Перезагрузите netlist в программе pcbnew, при этом убедитесь, что выбрана опция "Change" в разделе Exchange Module. В Pcbnew войдите в Tools -> Netlist, поставьте Module Name Source: From separate .cmp file, Exchange Module: Change и нажмите кнопку Read Current Netlist. Все компоненты, у которых Вы указали в CVpcb новое посадочное место, поменяют на плате свои модули (на плате появится компонент с новым посадочным местом).
Модуль на плате можно также поменять вручную, если выбрать из контекстного меню компонента Edit Parameters. Откроется окно Module Properties, где на закладке Properties увидите кнопку Change Module(s).
Есть еще более грубый способ, если в Module Editor Вы не меняли имя модуля. Способ подойдет, если таких модулей на плате немного. Удалите с платы старый модуль, и заново загрузите netlist в программе Pcbnew. Новый модуль появится в правом нижнем углу платы, установите его вручную в нужное место.
Q009: Почему в редакторе Eeschema команда Place net name (local label) размещает невидимые метки? A009: Это происходит потому, что цвет фона рабочего поля редактора совпадает с цветом меток. Поправить дело можно через меню Preferences -> Colors.
Q010: Как отредактировать чертеж печатной платы? Как удалить ненужные дорожки? A010: Чтобы удалить проложенные токопроводящие дорожки, сначала убедитесь, что у Вас включен инструмент Add tracks and vias, затем поместите курсор на удаляемую дорожку, и нажмите клавишу "backspace" для удаления одного сегмента или "delete" для удаления всего трека между двумя контактными площадками. Можно просто перерисовать дорожку, не удаляя старую, и тогда KiCAD удалит старую прокладку трассы автоматически, а новая останется.
Q011: Как работает FreeRoute? Как его лучше всего использовать? A011:
Q012: Какие параметры должны быть у полигонов (заливка меди, Copper Zone Properties)? A012: Настройка свойств заливки меди (Copper Zone Properties): Clearance 0.2 мм зазор между заливкой медью и проводящим рисунком других цепей. Priority level 0 имеет значение, когда одна зона меди расположена поверх другой. Pad connection Thermal relief тип термобарьера при подключении заливки к контактной площадке. Minimum width 0.2 мм минимальная ширина линий. Antipad clearance 0.2 мм ширина кольца термобарьера. Spoke width 0.3 мм ширина спиц термобарьера.
Q013: Как сделать новый символ (symbol, схемотехническое изображение радиоэлемента) в KiCAD? Как сделать посадочное место для детали (package, корпус, модуль)? A013: Новые символы делаются в редакторе символов, который можно запустить только из редактора принципиальной схемы Eeschema, и никак иначе. Новые символы делаются в редакторе модулей, который можно запустить только из редактора печатной платы Pcbnew (и кто придумал эти странные названия?..). Подробно процесс описан в [2].
Q014: Как в KiCAD сделать новую плату? A014: Если коротко, процесс заключается в следующих шагах: 1. Подбор и/или создание элементов схемы /символов (Eeschema -> Library editor, файлы библиотек *.lib). 2. Подбор и/или создание посадочных мест / модулей (Pcbnew -> Open module editor, файлы библиотек *.mod). 3. Рисование схемы, экспорт списка цепей (Eeschema, схема *.sch, список цепей *.net). 4. Привязка символов и модулей друг к другу (CvPcb, получение файла *.cmp). 5. Рисование контура платы, загрузка списка цепей и привязки символов и модулей (Pcbnew, загрузка файлов *.net и *.cmp, получение файла *.brd). 6. Ручная или автоматическая, или полуавтоматическая трассировка платы (Pcbnew, FreeRoute, файлы *.pcb, *.dsn, *.ses).
Более подробно см. [3].
Q015: Для чего нужны локальные (local label) и глобальные метки (global label), чем они отличаются? A015: Метки (и локальные, и глобальные) нужны для удобства инженера, разрабатывающего схему и плату. Они позволяют легко ориентироваться в схеме (и в соответствующей печатной плате), позволяют присваивать электрическим цепям понятные, легко запоминающиеся имена. Имена цепей, которые назначены метками, видны и в редакторе схем (Eeschema), и в редакторе печатной платы в виде надписей на дорожках и выводах деталей (Pcbnew). Теперь от отличиях локальных и глобальных меток.
Локальные метки - наносятся на схему инструментом Place a net name (local label), метка на схеме имеет вид простой надписи возле проводника.
Как следует из названия инструмента, локальные метки служат для назначения цепям имен (имена цепей используются для привязки к цепям классов). Локальные метки действуют только на одном уровне иерархии принципиальной схемы.
Глобальные метки - наносятся на схему инструментом Place a global label, метка на схеме имеет вид прямоугольника, внутри которого нанесена надпись. Торцы прямоугольника могут быть заостренные, чем можно показать направление тока или передачи данных.
Как следует из названия глобальных меток, они служат для сквозного назначения цепям имен (имена цепей уникальны и одно имя действует на всех уровнях иерархии схемы). Как и в случае локальных меток, назначенные глобальными метками имена цепей используются для привязки цепей к классам.
На скриншоте показаны примеры нанесенных на схеме локальных меток USBDP, USBDM, 3V3 и глобальных меток ~RSTOUT, VCC, ~RSTIN, SI/WUA, AC3, AC2. Верхнее подчеркивание над текстом, обозначающее инверсию, устанавливается тильдой в начале текста метки.
Q016: Что такое класс цепи, для чего они нужны? A016: Классы создаются только в редакторе печатной платы Pcbnew, и используются в процессе трассировки печатной платы (вручную или под управлением трассировщика). Этим KiCAD ничем не отличается от других систем проектирования печатных плат. В классе цепей можно назначить разные технологически допуски - минимально допустимую ширину дорожки, минимально допустимый зазор, минимальный диаметр переходных отверстий и т. п. Цепи привязываются к классам по имени цепи, т. е. в класс может входить несколько цепей, причем одна цепь может принадлежать одному и только одному классу.
Q017: Я поменял символ в библиотеке компонентов (.lib), нужно ли мне как-то специально обновлять схему? A017: Схему обновлять не нужно, она обновится автоматически сразу после того, как Вы сохранили библиотеку (в отличие от редактора печатной платы Pcbnew, где модули нужно обновлять специальной операцией!). Но если Вы переставляли выводы элемента, то придется в редакторе Eeschema отредактировать схему.
Q018: Какие файлы требуются для того, чтобы загрузить и редактировать проект? A018: Для того, чтобы открыть и редактировать схему (файл *.sch), необходимо иметь все *.lib файлы, в которых содержаться используемые в схеме символы, и эти библиотечные файлы должны быть загружены через установки редактора Eeschema. С другой стороны, для того чтобы открыть и редактировать печатную плату (файл *.brd), необязательно иметь в наличии файлы посадочных мест (*.mod), потому что модули (посадочные места, footprints), могут быть сохранены внутри файла *.brd. Вы можете послать кому-нибудь только файл платы *.brd и ничего больше, и этот кто-то будет в состоянии открыть и редактировать Ваш файл платы. Однако, если Вы хотите загрузить компоненты из списка цепей (netlist), то файлы модулей (*.mod) должны присутствовать, и должны быть загружены редактором плат Pcbnew (библиотеки *.mod должны быть настроены в его свойствах) - точно так же как и в случае редактора схем. Кроме того, нужно настроить загрузку *.mod файлов в свойствах Pcbnew, чтобы эти модули были видны в программе Cvpcb (программа для привязки символов к посадочным местам).
Если кто-то пришлет Вам файл платы .brd вместе со встроенными модулями, и Вы захотите использовать эти модули в другом проекте (для разработки другой платы), то Вы можете открыть редактор модулей (module editor), загрузить модуль из текущей платы, и сохранить или экспортировать его в другую библиотеку модулей. Вы также можете экспортировать все модули в файле .brd одной операцией в программе Pcbnew через меню File -> Archive Footprints -> Create footprint archive, эта операция создаст новый файл .mod, который будет содержать все модули (посадочные места) платы.
Q019. Как отредактировать Title, Rev и другие параметры, отображаемые в правом нижнем углу листа принципиальной схемы? A019. Параметры Revision, Title, Company и другие отображаемые текстовые значения в угловом штампе настраиваются в диалоге Page Settings. Чтобы попасть в этот диалог, нажмите кнопку Page Settings на верхней панели инструментов редактора схем Eeschema (Schematic Editor). Это четвертая слева кнопка. Отобразится окно диалога Page Settings, где Вы можете просмотреть и изменить введенные параметры. Установите галочки Export to other sheets, если хотите, чтобы введенные здесь значения попали и на другие листы схем Вашего проекта.
После после внесения изменений нажмите OK, и изменения отобразятся в угловом штампе чертежа схемы.
[Ссылки]
1. FreeRoute site:freerouting.net. 2. KiCAD: как сделать новый библиотечный элемент. 3. KiCAD: как создать и развести печатную плату. |
Комментарии
RSS лента комментариев этой записи