Как выложить схему для обзора? Пожалуйста, покритикуйте

Итак, поскольку я раньше не размещал схему для обзора, я понятия не имею, как это сделать. Судя по всему, моя предыдущая попытка была неудачной. Я получил некоторые действенные отзывы, но я ищу больше!

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

Основные функции: - вход от настенной розетки - LDO регулируется до 6В - обеспечивает 5,15В на VCC при подключении - коммутируемый ток MOSFET на литий-ионную батарею - выход батареи (как и выход LDO) ступенчатый до 5В ВКК

Напряжение заряда будет измеряться по одной линии, а ШИМ-управление — по другой линии.

В качестве второстепенной проблемы я утверждаю, что двойной вход в VCC безопасен, потому что, если обе системы работают одновременно, D2 и тот факт, что Vsense на R25 выше, чем целевое значение, по сути, просто «бездействует» контроллер переключения.

схема зарядного устройства

https://watte.net/charger-switcher-schematic.png

Единственное, что я вижу, это некоторые места, где текст перекрывается проводами или другими элементами рисования, что затрудняет чтение. Другие будут жаловаться на вертикальный текст...
Танис за отзыв. Интересно, есть ли ULP для горизонтализации текста?
Кроме того, как насчет множества отводов заземления по сравнению с одной линией заземления?
возможный дубликат Critique на моей первой схеме?
@OlinLathrop - я думаю, что для нас нормально иметь несколько вопросов по этой теме; каждая схема будет иметь разные проблемы.

Ответы (2)

Я согласен со многим из того, что сказал Фейк, но некоторые из его пунктов кажутся религиозными вопросами, не имеющими большого значения.

  1. Нет, используйте сетевые метки. Если это разумно сделать, то лучше соединить точки напрямую линиями. Однако это не всегда возможно или разумно. Очевидно, что это невозможно сделать с несколькими листами, а беспорядочное скопление проводов хуже, чем несколько тщательно подобранных «воздушных проводов». Маркировка цепей — это один из способов показать соединения. Предполагается, что все с одинаковым именем подключено, и большинство программ в любом случае будут обеспечивать это. По этой причине рекомендуется использовать метки цепей, сгенерированные программным обеспечением из имени в базе данных, а не вводить его вручную. Если отдельные участки сети когда-либо будут отключены или случайно переименованы, программное обеспечение автоматически покажет это. поскольку отображаемое имя происходит от фактического имени сети, а не от того, что вы вводите отдельно. Это очень похоже на переменную в языке программирования. Вы знаете, что многократное использование символа переменной относится к одной и той же переменной.

    Еще одна хорошая причина для сетевых имен — короткие комментарии. Иногда я называю, а затем показываю названия цепей только для того, чтобы дать быстрое представление о назначении этой сети. Например, то, что сеть называется «5V» или «MISO», может сильно помочь в понимании схемы.

  2. Да, покажите выводы микросхем в положении, соответствующем их функции, а НЕ ТОЛЬКО ТАК, КАК ОНИ НАХОДЯТСЯ НА ЧИПЕ. Одной из важных целей схемы является передача схемы другим, чтобы они могли ее понять. ИС с выводами в физическом порядке трудно понять. Некоторые используют оправдание, что это помогает при отладке, но если немного подумать, то можно увидеть, что это неправда. Когда вы хотите посмотреть на что-то в прицел, какой вопрос чаще встречается: «Я хочу посмотреть на часы, что это за булавка?» или «Я хочу посмотреть на контакт 5, что это за функция?» . В некоторых редких случаях вы можете захотеть обойти микросхему и посмотреть все контакты, но первый вопрос встречается гораздо чаще.

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

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

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

    Хорошие схемы показывают вам цепь. Плохие схемы заставляют их расшифровывать.

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

  5. Нет, не используйте слишком длинные имена. Опять же, дело в ясности. Отсутствие имен — это отсутствие информации, но множество длинных имен создают беспорядок, что снижает ясность. Где-то посередине — хороший компромисс. Я не хочу видеть «часы 8 МГц для моего PIC», когда достаточно просто «CLK», «CLOCK» или «8MHZ».

  6. Нет, используйте заглавные буквы для имен цепей и контактов. Названия выводов почти всегда отображаются в таблицах данных и схемах прописными буквами. Различные схематические программы, включая Eagle, даже не позволяют использовать имена в нижнем регистре. Одним из преимуществ этого, которое также помогает, когда имена не слишком длинные, является то, что они выделяются в обычном тексте. Если вы пишете реальные комментарии к схеме, всегда пишите их в смешанном регистре, но убедитесь, что имена символов заглавные, чтобы было ясно, что это имена символов, а не часть вашего повествования. Например, «Входной сигнал TEST1 становится высоким, чтобы включить Q1, который сбрасывает процессор, переводя MCLR в низкий уровень». . В этом случае очевидно, что TEST1, Q1 и MCLR относятся к именам на схеме и не являются частью слов, которые вы используете в описании.

  7. ОЧИСТИТЬ РАЗМЕЩЕНИЕ ТЕКСТА. Программы создания схем обычно подбирают имена и значения деталей на основе общего определения детали. Это означает, что они часто оказываются в неудобных местах на схеме, когда рядом располагаются другие детали. Почини это. Это часть работы по рисованию схемы. Ваша схема выше особенно виновата в этом. Есть названия частей и значения, перекрывающие все виды вещей и даже сбоку во многих местах. Опять же, наиболее важным моментом является ясность.

    В этом случае есть еще один момент. Небрежная схема свидетельствует о недостаточном внимании к деталям и раздражает и оскорбляет любого, кого вы попросите на нее взглянуть. Думаю об этом. Он говорит другим : «Ваше раздражение из-за этой схемы не стоит моего времени, чтобы очистить ее», что, по сути, говорит : «Я важнее вас».. Во многих случаях говорить об этом неразумно, например, когда вы просите здесь о бесплатной помощи, показываете свою схему клиенту, учителю и т. д. Аккуратность и презентация имеют значение. Много. О вас судят по качеству вашей презентации каждый раз, когда вы что-то представляете, независимо от того, считаете ли вы, что так должно быть или нет. В большинстве случаев люди тоже не станут говорить вам об этом. Они просто наймут кого-то другого, продолжат отвечать на другой вопрос, а не будут искать какие-то положительные моменты, которые могут поднять оценку на одну ступень выше, и т. д.

Чем больше я думаю об этом, тем больше я соглашаюсь с попыткой сопоставить таблицу данных в отношении именования выводов. Тем не менее, я все еще думаю, что использование заглавных букв в сетевых метках глупо.
Я думаю, что у нас обоих есть некоторые религиозные проблемы в отношении схем. У меня есть мнение о allcaps, а у вас есть мнение об использовании mF и nF. В любом случае, в любом случае, я думаю, мы больше согласны, чем не согласны.
Спасибо за предложения. Я ценю их. И я действительно думаю, что публикация неудобных для чтения схем может означать нечто иное, чем «я важнее тебя». Он может сказать: «Я новичок в этом и не знаю, что означает «читабельный»» или может сказать: «У меня другие предпочтения в отношении читаемости, чем у вас». Предполагать, что намерение является наихудшим из возможных, редко бывает полезной стратегией ;-)
Кроме того, я был бы признателен, если бы вы указали конкретные места, где, по вашему мнению, метки/значения деталей не очищены. (Напротив, метки выводов берутся из библиотек и не допускают замены в программном обеспечении компоновки — так же, как и выводы схемы)
@Jon Watte - Если вы не можете переместить метку, попробуйте переместить провод. В любом случае, неполный список: метки контактов катушки индуктивности (как номера контактов, так и описания контактов), номер детали D2, примечание «ПИТАНИЕ» на светодиоде питания, примечание «ЗАРЯДКА» на светодиоде состояния зарядки, этикетки на разъем питания ("CENTER", "BRK", "SLEEVE"). Обозначение «C7», на мой вкус, немного близко к горизонтальному проводу. Если возможно, расположите обозначение и номер Q5 горизонтально.
Судя по всему, некоторые из этих изменений могут потребовать редактирования библиотеки деталей, содержащей детали. Сделай мне одолжение и шлепни по голове того, кто нарисовал тебе библиотеки. Судя по всему, они сделали отвратительную работу.
Есть еще несколько вещей, но в этот момент все граничит с более эстетическими предпочтениями, чем с чем-либо еще. Например, я бы хотел, чтобы R-число и значения сопротивления резисторов были чуть дальше от детали (1-2 пикселя). То же самое касается диодов. Пометка «1uH» на L1 касается чертежа детали. Это читабельно, но выглядело бы лучше, если бы между текстом и частью было небольшое пространство. То же самое на LDO6V. Кроме того, орел, кажется, ставит «+» в центре каждой части. Есть ли способ это отключить? Выглядит некрасиво. К тому же в нескольких местах конфликтует с текстом.

Вы используете сетевые метки.

Сетевые метки ужасны с точки зрения ремонтопригодности. Я вижу как минимум одну сеть (Bat+), для которой нет смысла использовать метку сети.

Метки цепей являются схематическим эквивалентом GOTO. По сути, он позволяет одной точке на схеме соединиться с любым количеством других точек на схеме, не предоставляя при этом четкого указания на то, со сколькими точками она связана или где эти точки находятся.

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

К сожалению, правильный способ управления многостраничными проектами недоступен в eagle. Это называется иерархический дизайн . По сути, каждая страница схемы используется как метакомпонент, и у вас есть схема верхнего уровня, описывающая взаимосвязи между листами. Это позволяет определить все, что подключено к любой сети, по проводам. Любой провод, выходящий из листа, идет только в одно место , верхний лист. Этот лист может быть подключен к нескольким другим листам, но это явно показано, а не неявно, как метки цепей.

Я знаю, что вы можете сделать это в Altium Designer, и я считаю, что это также возможно в Cadence Allegro, хотя я не часто использую cadence.

Честно говоря, единственная особенность Eagle — это его дешевизна. Многие из других пакетов EDA намного приятнее в использовании и создают гораздо более привлекательные рисунки. Я не думаю, что когда-либо видел рисунок, сделанный Орлом, который не был бы уродливым. В лучшем случае они просто неприятны. В худшем случае они представляют собой ужасный кошмар.


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

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

Как правило, вы хотите, чтобы контакты Vcc были сверху, контакты заземления — снизу, входы — слева, а выходы — справа.

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

Например, вот как я бы нарисовал ваш повышающий преобразователь (мне пришлось некоторое время смотреть на него, чтобы понять, что это такое, и теперь я заметил, что вы указали, что это было в вопросе. DERP! ):
введите описание изображения здесь

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

Кроме того, обратную связь намного легче увидеть.

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

Кстати, что это за часть? Теперь, когда я нарисовал его в своей библиотеке схем, я мог бы правильно его обозначить и, возможно, даже использовать в будущем.


Прочие глупости:

  • С5 470 пФ - я так понимаю, это керамика? Если это так, не используйте объект схемы для поляризованной кепки. Это должны быть две прямые линии, а не одна прямая, а одна изогнутая.

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

введите описание изображения здесь

введите описание изображения здесь

Что касается расположения микросхемы, я всегда рекомендую делать это так, как указано в примечании к приложению в таблице данных. Это значительно упрощает сравнение того, что у вас есть, с таблицей данных.
@Kellenjb - На самом деле это неплохая идея. Я бы сказал, что я видел некоторые довольно странные схемы заметок приложений. Может быть, относитесь к примечаниям к приложениям с недоверием.
Да, конечно, полностью согласен.
С вашим последним пунктом я не согласен. Мой выбор состоял бы в том, чтобы пометить контакты точно так же, как они помечены в таблице данных.
Я сделал иерархический дизайн в бесплатной версии Eagle; вы можете создать несколько «листов», добавив несколько рамок заголовка. Лист верхнего уровня определяется на ранней стадии и является скорее документацией, чем функциональностью (процесс его создания очень ручной), но это выполнимо, и конечный результат выглядит намного лучше.
@Kevin Vermeer - Хорошая вещь в некоторых из лучших пакетов EDA заключается в том, что иерархический дизайн буквально управляет межлистовой связью. В Altium (по крайней мере), если вы не соедините подлисты вместе на верхнем листе, они не будут соединены. Это вынуждает документ верхнего уровня непосредственно представлять реальную схему. В этой ситуации это вообще не документально.
Это хорошие предложения! Первое предложение, которое я слышу, это «не использовать Eagle», что, к сожалению, не очень хороший вариант — у меня здесь не так много бюджета. (Я использую даже бесплатную/ограниченную версию)
Второе, что я слышу, это «переместите контакты, чтобы быть более логичным», что, я думаю, полезно, за исключением того, что я не понял, как это сделать с библиотеками деталей Eagle — контакты кажутся жестко связанными. (Кстати, это старый добрый MC34063)
Третье, что я слышу, это «используйте прямые линии для неполяризованных кепок», и это хорошо для меня — я вырос в Европе. Однако в библиотеке Eagle «C-US» используются изогнутые линии для поляризованной и неполяризованной версии и добавляется «+» для поляризованной версии. Возможно, я просто буду использовать версию для ЕС, предполагая, что смогу получить пакеты на основе mil с этими символами. Есть ли у кого-нибудь хорошее/плохое отношение к использованию символов ЕС?
Итак, в целом, иерархический дизайн — звучит великолепно! На самом деле, я искал «сохранить эту группу вещей как повторно используемый компонент» и не нашел его в Eagle. Я предполагаю, что большие пакеты тоже делают это?
Спасибо за все ваши комментарии. Я вернусь и пересмотрю.