metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2013-01-30 01:42 pm

PCB копипаста частей.

http://kincajou.livejournal.com/3259376.html?style=mine&nc=5#comments
Стою перед нелёгким выбором: разводить одну здоровенную плату с двенадцатью повторяющимися фрагментами схемы или же развести такой фрагмент на одной небольшой платке и размножить ёжиков на той большой доске оставить только гнёзда в количестве ста двадцати двенадцати штук, аккурат под эти модули.

Интересно, разве в CAD софте до сих пор нет функции повторного использования частей дизайна?
Т.е. в чем-то вроде языка шаблонов мы бы просто сделали 1 прототип и повторили бы его 12 раз, соответственно, изменение в прототипе сразу бы отражалось в копиях.
Впрочем, судя по тому, что я наблюдаю, когда жена рисует в 3D Max - функции скриптинга то есть, особо полезные функции вынесены вообще в основную программу (или плагины), но из-за этого интерфейс софта выглядит как дикий непонятный ад.

[identity profile] kincajou.livejournal.com 2013-01-30 10:58 am (UTC)(link)
вообще есть,но сделано всё через жопу. во всяком случае, в P-CADе. Можно развести один фрагмент, затем мультиплицировать его с соответствующим размножением и/или подключением нужных цепей, но при попытке сделать перенос данных в схемотехнический редактор получим там вместо удобочитаемых фрагментов просто набор разрозненных элементов. Они все будут включены в схему, конечно, но только при помощи портов, рисунка проводников не будет - надо будет всё расставлять вручную

И наоборот, если мультиплицировать в схемотехническом редакторе, то расставлять-трассировать (я делаю вручную) всё равно надо будет каждый фрагмент заново. Увы-увы.

[identity profile] metaclass.livejournal.com 2013-01-30 11:27 am (UTC)(link)
Да, ожидаемо.

[identity profile] aamonster.livejournal.com 2013-01-31 07:37 am (UTC)(link)
Т.е. проблема действительно в CAD, а не в том, что лучше использовать?

[identity profile] kincajou.livejournal.com 2013-01-31 06:02 pm (UTC)(link)
проблема в том, что ежели описывать схему _и_ плату чисто на каком-то hdl, то получается чудовищно-монструозная конструкция, при попытке "упростить" кою получаем... tada.wav... интерактивный графический ввод!

[identity profile] dmzlj.livejournal.com 2013-01-30 11:25 am (UTC)(link)
потому что графические CAD --- хрень, нужен DSL
для описания электрических схем.


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

[personal profile] ex0_planet 2013-01-30 12:50 pm (UTC)(link)
простой DSL будет генерить хреновые платы, а в сложном задолбаешься описывать как именно автоматика должна работать. по описанию "землю звездой, +5В елочкой" любой вменяемый конструктор понимает что именно нужно сделать, а вот железяка.....

PS. это не "поспорить", мне правда интересно - я тоже считаю что от графического редактирования нужно уходить, но вижу вот эту вот непреодолимую? стенку.

[identity profile] dmzlj.livejournal.com 2013-01-30 01:26 pm (UTC)(link)
я никогда не смогу освоить CAD, от вида, как им пользуются, у меня сводит мозг.

DSL бы может быть освоил бы. С другой стороны, я верю что на тьюринг-полном DSL можно описать любую плату,
констрейнты там всякие и прочие костыли ввести. Это как сложную диаграмму или документ делать в латехе --- там есть такие приборы, что охренеть можно. В т.ч и такие, какие ни в каком векторном редакторе не сделаешь, не спятив.

Опять же, надо различать circuit design и pcb routing, хотя во втором случае по моему в 90% случаев сложных плат все используют только авто-роутинг. но в общем, не знаю --- железячники привыкли к CAD, а мне мозг реально спазм сводит даже от такого прстенького, как Eagle.

[personal profile] ex0_planet 2013-01-30 01:34 pm (UTC)(link)
Надо сделать скидку на то, что Eagle ist krieg, в том смысле, что его немцы дизайнили со всеми вытекающими особенностями; если для решения какой-то задачи может существовать дуболомный прямой путь из ста кликов мыши и команды STDELATKRUTO в консоли - это будет реализовано как сто кликов мыши....

> надо различать circuit design и pcb routing

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


> 90% случаев сложных плат все используют только авто-роутин

Это скорее очень сложные платы, обычно все что меньше нескольких сотен проводников проще накидать руками (при некотором навыке).

[identity profile] metaclass.livejournal.com 2013-01-30 01:36 pm (UTC)(link)
Аналогично. Я специально осиливал Eagle, чуть с ума не сошел. Юзабилити там ебанутое до крайности.

[identity profile] dmzlj.livejournal.com 2013-01-30 01:57 pm (UTC)(link)
но мне сам подход не нравится. вот был бы circuit definition lang, тогда б можно было прям из даташитов референс-дизайны копипастить к себе и всё. самое сложное-то --- это грамотно обвес повесить вокруг запчасти, ну, не считая аналоговой хни и ВЧ.

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

[identity profile] metaclass.livejournal.com 2013-01-30 02:03 pm (UTC)(link)
Да, ре-юз в этой вуду-области предусмотрен, похоже, весьма условно.

[identity profile] kincajou.livejournal.com 2013-01-30 05:47 pm (UTC)(link)
внутри CAD хранит данные в виде "dsl", между прочим. Не хотите осваивать - пишите вручную. Во всяком случае, файлы от P-CAD, ежели сохранять в ascii, подозрительно похожи на lisp-код. Ну прям настолько похожи, что можно попробовать их скомпилировать. AutoCAD тоже использует lisp внутри самоё себя.

Так что это не от вида CAD сводит мозг, это просто сам мозг такой ;)
Edited 2013-01-30 17:49 (UTC)

[identity profile] nicka-startcev.livejournal.com 2013-01-31 01:17 pm (UTC)(link)
а мне kicad почти понравился.
Там эргономика почти вменяемая.

А автоматический роутинг даже в TopoR заметно хуже (раза в 1.5 по площади и раз в 5 по проходным отверстиям) чем я делаю руками.

схемка была простая - атмега8, 8 аналоговых разъёмов, 8 цифровых, 32 с ШИМом, все разъёмы трехконтактные.

[identity profile] fukanchik.livejournal.com 2013-01-30 07:01 pm (UTC)(link)
Seven Segment Controller (http://phdl.sourceforge.net/2.0/samples/samplef1.php)
SubDesign Declarations (http://phdl.sourceforge.net/2.0/tutorial/subdesign.php)

[personal profile] ex0_planet 2013-01-31 10:29 am (UTC)(link)
Ну нетлист, ну с повторяемыми элементами, и что?

[personal profile] ex0_planet 2013-01-30 01:37 pm (UTC)(link)
> програмизды обходились без их помощи. наверное, тоже не

это да, сложно. как человек попробовавший и то и другое, могу сказать что различия фундаментальные - способ декомпозиции задач отличается (но не могу сформулировать чем).

[identity profile] v-l-a-d.livejournal.com 2013-01-30 02:37 pm (UTC)(link)
а чем Verilog-AMS не торт?

[identity profile] dmzlj.livejournal.com 2013-01-30 03:02 pm (UTC)(link)
может, и торт , кто ж его знает. надо посмотреть

(Anonymous) 2013-01-30 03:11 pm (UTC)(link)
Из него синтезировать схему нельзя. А то что можно, ничем от обычного netlist-а не отличается.

[identity profile] sbj-ss.livejournal.com 2013-01-30 12:25 pm (UTC)(link)
Proteus такие фокусы позволяет с помощью т.н. модулей, в которых вдобавок можно параметризовать номиналы деталей.
Правда, при автоматической разводке платы детали модулей явно не будут расположены одинаково.

(Anonymous) 2013-01-30 03:08 pm (UTC)(link)
В всех редакторах топологии микросхем (не PCB) такая возможность имеется. Представил, что нет возможности создавать и мультиплицировать ячейки и аж поплохело.

[identity profile] nealar.livejournal.com 2013-01-30 03:20 pm (UTC)(link)
Сидят тысяча китайцев, и день за днём рисуют руками 786 процессор. =) А потом 30 лет вычищают баги!

[identity profile] berezovsky.livejournal.com 2013-01-31 02:00 am (UTC)(link)
Viva la resistance!

[identity profile] aamonster.livejournal.com 2013-01-31 07:35 am (UTC)(link)
Как я понимаю, вопрос не в CAD, а в производстве - что проще производить и потом чинить/менять.