LINUX.ORG.RU

Kicad batch editing

 ,


0

1

Нет ли в кикаде случаем "шаблонного" редактирования?

Пример: рисую я три шины на 16 проводников. Каждую надо промаркировать на чертеже Hierarchy и на главном. Копирование решается при помощи ctrl+c (кстати, странно, что нет ctrl+v — приходится жамкать в панельке кнопочку). А вот создание...

Хочется так: нарисовал 1 метку, жамкнул "копировать с инкрементом" и создалось 16 меток вида T1_1...T1_16. Или же так: создал 16 меток, скопировал, затем выделил и щелкнул "заменить по regex", ввел "T1 → T2a" и получил набор меток T2a_1...T2a_16.

Пока что приходится делать так: нарисовал 16 первых меток в виде Txxx_1 в свободной части листа + скопировал еще раз, закрыл кикад (иначе он, собака, из кэша файлы восстановит), открыл в mcedit нужный sch-файл, нажал F4, заменил 16 раз Txxx на T1, сохранил, открыл кикад, перенес куда надо, повторил для остальных. Жутко неудобно.

Или, быть может, кикад умеет скрипты, а я этого не знаю?

☆☆☆☆☆

Последнее исправление: Eddy_Em (всего исправлений: 1)

Копирование решается при помощи ctrl+c (кстати, странно, что нет ctrl+v — приходится жамкать в панельке кнопочку)

Есть способ проще — зажимай Shift. Это автоматически делает и копирование, и вставку.
На самом деле в кикаде есть питоноскриптинг, но я им никогда не пользовался, ибо питон не Ъ.

CYB3R ★★★★★
()
Ответ на: комментарий от CYB3R

затем выделил и щелкнул «заменить по regex», ввел «T1 → T2a» и получил набор меток T2a_1...T2a_16.

Гораздо проще это сделать в пару строчек на баше (man sed). Ибо sch-файл — это текст, который легко парсится.

CYB3R ★★★★★
()
Ответ на: комментарий от CYB3R

На самом деле в кикаде есть питоноскриптинг

Кошмар какой-то. И, судя по количеству мануалов, только в зачаточном состоянии.

Пхытон-то не Ъ, но что делать? Скажем, в том же FreeCAD'е тоже скриптинг только на пхытоне. Уныло, конечно...

Гораздо проще это сделать в пару строчек на баше

Понятно. Я вот сейчас сижу, ассоциации элементам проставляю (футпринты). Вручную для нескольких сотен элементов это делать очень уныло (тем паче, что у меня многие элементы по 5 раз повторяются из-за иерархических листов). Пробовал на самом листе указывать футпринты для деталюшек — фигвам! Не хочет, собака, их брать.

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

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Вручную для нескольких сотен элементов это делать очень уныло

Если я не ошибаюсь, можно заранее прописать компоненту «по дефолту соответствует модулю Х» и тогда работы становится в разы меньше.
Что ты там такое интересное проектируешь?

CYB3R ★★★★★
()
Ответ на: комментарий от CYB3R

Если я не ошибаюсь, можно заранее прописать компоненту «по дефолту соответствует модулю Х» и тогда работы становится в разы меньше.

Дык, для резисторов и кондеров рисовать что ли свою библиотеку? А их тьма тьмущая! А если непосредственно в схеме нажмешь F и укажешь footprint, нифига не срабатывает!

Что ты там такое интересное проектируешь?

Да вот, подбиваю итоги — готовлю результирующие схемы для системы управления спектрометром.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

для резисторов и кондеров рисовать что ли свою библиотеку?

Почему бы и нет? Открыл из стандартной библиотеки, поправил, сохранил в свою, заюзал.

CYB3R ★★★★★
()
Ответ на: комментарий от DR_SL

<\?xml version="1.0" encoding="UTF-8"?>

да что ж так страшно-то? То питон, то XML? Ужас! Но за ориентацию в правильном направлении спасибо.

Кстати, не подскажешь: возможно ли в pcbnew, разведя один модуль для hierarchy sheet, скопировать аналогично все оставшиеся листы? Или с этим туго и придется вручную разводить все 5 методом копипасты? Я-то надеялся, что hierarchy sheet позволит не только обойтись без копипасты в построении схемы, но и при разводке дорожек. А сделал пробный запуск pcbnew — он мне в кучу все элементы и свалил... Я даже не предствляю, как из этой кучи их выуживать, чтобы хотя бы сгруппировать для начала...

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Я всегда так делаю и любой проект имеет свой собственный набор файлов *.lib и *.mod, так как никогда не знаешь, что у кого-нибудь под такими именами в системе установлено.

CYB3R ★★★★★
()
Ответ на: комментарий от DR_SL

Это работает только в pcbnew или в eeschema тоже?

CYB3R ★★★★★
()
Ответ на: комментарий от Eddy_Em

Вполне, я иерархические листы вообще в отдельный репозиторий кидаю, где храню мелкие кусочки схем. Просто давишь добавить иерархический лист и прописываешь путь к существующему .sch файлу.

ncrmnt ★★★★★
()
Ответ на: комментарий от ncrmnt

А как печатки-то делать по аналогии (т.е. "иерархические листы" внутри самой печатки)?

Я ж помру разводить 5 одинаковых модулей в пределах одной платы!!! Хотя бы группировку какую что ли...

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от ncrmnt

Да я уже вторую неделю схему-то рисую (дофига времени уходит на рисование элементов и посадочных мест; сейчас вот разбираюсь с форматом mod-файлов, чтобы баш-скриптом каким-нибудь генерить, т.к. fped какой-то уж больно кривой: полноценно в нем сделать посадочные места не получается, он if, похоже, не умеет)! Сколько ж я ее разводить-то буду...

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от ncrmnt

Есть, оказывается, даже скриптик, которым можно копировать куски как схем, так и печаток!

Вона как!

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

ХЗ что... Похоже, тут пилить и пилить... Хоть вступай в ряды разработчиков кикада.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от ncrmnt

В свете увиденного на тытрубе, я решил запилить свое. Для начала — нормальная нумерация идентичных деталей (вида детальXX_Y — детальХХ на Y-м листе).

Как дойду до разводки, придумаю еще, что делать с копированием, чтобы попроще.

Eddy_Em ☆☆☆☆☆
() автор топика
Ответ на: комментарий от Eddy_Em

Такое надо сразу в кикад интегрировать, а не внешними костылями. Удобно тут не сделаешь. В идеале - привязывать к иерархическому листу сниплет с готовой разводкой.

ncrmnt ★★★★★
()
Последнее исправление: ncrmnt (всего исправлений: 1)
Ответ на: комментарий от ncrmnt

Такое надо сразу в кикад интегрировать

Согласен. Самым идеальным вариантом был бы экспорт кусков "извне": добавил схемку + разведенную печатку, склонировал — и у тебя все четко соединено, и никакой ручной работы не надо делать.

В идеале - привязывать к иерархическому листу сниплет с готовой разводкой.

Во-во.

Я так и хочу сделать. Т.е. саму схемку перенумеровал, подправил (удалил ненужное + добавил иерархических пинов), далее взять файл с печаткой и так же клонировать, соответствующим образом изменяя названия элементов.

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

// вот же, едрен батон, процесс разработки! Рисуешь принципиальную схему, а заодно в geany велосипеды строишь...

Eddy_Em ☆☆☆☆☆
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.