реклама на сайте
подробности

 
 
> Опыт использования KiCAD, чертежи платы приложены
embddr
сообщение Sep 1 2016, 08:04
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 127
Регистрация: 16-09-08
Из: Москва
Пользователь №: 40 233



Здравствуйте!

Я уже давно пользуюсь KiCAD-ом (первое устройство в нем я сделал 10 лет назад), но в основном использовал его для рисования схем (платы разводили другие люди в более серьезных CAD-ах) или для совсем простых устройств.

С появлением новых возможностей решил попробовать развести что-то посложнее с дифпарами и выравниванием длин. Результат в прикрепленном файле.

Сразу скажу, что я не занимаюсь трассировкой, т.е. теорию знаю, но практикой не особо владею. По этому судите не сильно строго.

И собственно, вот то, чего мне не хватало:

Более гибкого задания правил трассировки. Например, хочется задать разную ширину дорожек на внешних и внутренних слоях. Сделать зоны на плате со специфическими параметрами трассировки (у меня есть корпус BGA с шагом 0.5, там нужны очень тонкие дорожки).

Не хватало раскраски цепей. Я видел в интернете наколеночный патч, но его не приняли в апстрим.

Не совсем понятно по какой причине сделано так, что при выключении внешних слоев контактные площадки продолжают отображаться. Это часто мешает, когда находишься на внутреннем слое (даже в контрастном режиме). При этом их отключение находится не на вкладке "Слои".

Хотелось бы иметь возможность выравнивать длину дорожек по сумме длин нескольких цепей. Например, сигнал проходит через резистор, и нужно выравнять длину по сумме до резистора и после.

Очень полезной опцией было бы отключение неиспользуемых контактных площадок на внутренних слоях на переходных отверстиях (да и в обычных отверстиях тоже). В моем случае это позволило бы сократить количество слоев до 4-х.

Я не смог стандартными средствами сделать нормальный сборочный чертеж, потому что в редакторе компонентов нельзя добавить еще один экземпляр текста REFDES на другой слой. Пришлось править файл kicad_pcb вручную (не совсем вручную, с помощью скрипта в Emacs), чтобы сделать копии текста и линий с шелкографии на слой Fab с одновременным уменьшением размера и толщины.

Наверное это не всё, есть какие-то еще мелкие придирки, но они не существенны. Например, нельзя отключить связь между Pcbnew и Eeschema, когда выделяешь компонент на плате, и указатель на схеме тоже переносится на этот компонент.

Вот как-то так. Плата отправилась в производство, посмотрим, что из этого получится.

Чертежи:
Прикрепленный файл  board.pdf ( 598.04 килобайт ) Кол-во скачиваний: 285
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 5)
break
сообщение Sep 1 2016, 14:34
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 469
Регистрация: 13-07-11
Из: С-Пб.
Пользователь №: 66 206



embddr
Я разводил DVI и LVDS с дифпарами. На разрешении 640х480 - всё было нормально, на большем пока не проверял. Переделаем матрицу, тогда проверю на 1024х768.
Выравнивание можно сделать в ручном режиме - длина проводника отображается. И "загогулины" тоже приходится рисовать вручную - штатный инструмент глючит. Не слишком удобно, но и денег (у некоторых пакетов запредельных) не стоит.
Для сборочного чертежа я пока нашёл такой способ: сгенерировать все нужные слои в формате SVG, отредактировать их в Inkscape, объединить в одну картинку и сохранить в нужном формате. Только при преобразовании в DXF масштаб меняется (а может при получении SVG).
Смысла в отключении связи Pcbnew и Eeschema не понял.
Go to the top of the page
 
+Quote Post
faa
сообщение Sep 1 2016, 19:00
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 726
Регистрация: 14-09-06
Из: Москва
Пользователь №: 20 394



Цитата(break @ Sep 1 2016, 17:34) *
Выравнивание можно сделать в ручном режиме - длина проводника отображается. И "загогулины" тоже приходится рисовать вручную - штатный инструмент глючит.


Макросы в гост-версии кикад помогают рисовать "загогулины". Из основного их успешно выпилили.

to embddr

Насчет скриптов - это правильный подход.
Форматы все открыты и текстовые -> чудить можно как угодно.

Я скриптами заношу задержки в чипе у плис по данным из файла производителя.

Насчет длин - ИМХО, надо еще учитывать толщину платы при переходах со слоя на слой, при двух переходах на 2мм плате до 25 псек набегает.
Go to the top of the page
 
+Quote Post
embddr
сообщение Sep 2 2016, 06:09
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 127
Регистрация: 16-09-08
Из: Москва
Пользователь №: 40 233



Цитата(break @ Sep 1 2016, 17:34) *
Смысла в отключении связи Pcbnew и Eeschema не понял.

Я точно не помню, но было как-то так: мне нужно было найти элемент на схеме по расположению на плате (связь включена), а потом определить название цепи на ножке микросхемы, воле которой он стоит. Вот если не отключить связь, то после щелчка по пину микросхемы курсор перепрыгивает на страницу с микросхемой, а мне этого не нужно.

Цитата(faa @ Sep 1 2016, 22:00) *
Насчет скриптов - это правильный подход.
Форматы все открыты и текстовые -> чудить можно как угодно.

Я скриптами заношу задержки в чипе у плис по данным из файла производителя.

Насчет длин - ИМХО, надо еще учитывать толщину платы при переходах со слоя на слой, при двух переходах на 2мм плате до 25 псек набегает.

Да, этим мне и нравится KiCAD. Особенно после того, как начали внедрять s-expressions, с ними очень удобно работать из лиспа.
У меня есть скрипт на scheme, который парсит схемные файлы в обе стороны. Я из этих даных делаю BOM и вношу какие-то изменения в схему (например, можно автоматически проставить футпринты, переименовать поля в элементах, и пр.).

Про длины согласен, для корректной работы нужно добавить описание стекапа с толщинами диэлектрика, и можно будет автоматически прибавлять длину переходного отверстия.
Хотя, если копать еще дальше, то нужно учитывать геометрию проводника и вычислять кратчайшие пути, но это по-моему не все большие кады делают.

Цитата(faa @ Sep 1 2016, 22:00) *
Макросы в гост-версии кикад помогают рисовать "загогулины". Из основного их успешно выпилили.

У меня 4.0.3-stable из репозитория ArchLinux, там есть макросы. В unstable выпилили? Зачем?
Go to the top of the page
 
+Quote Post
embddr
сообщение Sep 2 2016, 08:06
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 127
Регистрация: 16-09-08
Из: Москва
Пользователь №: 40 233



Вот еще что забыл: copper thieving - заполнение пустых пространств на внутренних слоях медными квадратиками (или кружочками).
Можно было бы это сделать на базе зон с заполнением квадратами, а не сплошняком. И еще прибавить к этому удаление квадратов меньше определенной площади.

Я делал вручную:
  1. нарисовал неподключенную зону;
  2. экспортировал в SVG;
  3. в Inkscape сложил это с шаблоном заполнения квадратиками;
  4. вручную удалил неполные квадраты;
  5. экспортировал в DXF;
  6. в QCAD'е заполнил квадратики заливкой линиями;
  7. импортировал DXF в KiCAD'е.

Не сложно, но много лишних телодвижений. Хотя, по большому счету, можно было вообще не делать, а залить сплошной зоной с большими зазорами.
Go to the top of the page
 
+Quote Post
embddr
сообщение Oct 22 2016, 09:08
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 127
Регистрация: 16-09-08
Из: Москва
Пользователь №: 40 233



Вот что получилось:
Прикрепленное изображение


А это микросхема, под которой проводники шириной 0.075мм:
Прикрепленное изображение


Были некоторые вопросы со стороны производителя, связанные со сборочным четрежом (который в KiCAD'е нельзя сформировать автоматически). Например, на некоторых элементах я не указал первый вывод, и пришлось ориентироваться по шелкографии. В остальном проблем не было.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 02:13
Рейтинг@Mail.ru


Страница сгенерированна за 0.01409 секунд с 7
ELECTRONIX ©2004-2016