В этом тексте написал о забытом понятии: блок-схемы для разработки электроники. В ГОСТ(е) их называли Э1 (Схема структурная). Блок-схем это хороший уровень абстракции при анализе электронного устройства или PCB. Представил несколько атрибутов, которые сформировались при создании блок-схем. Привел примеры образцовых блок-схем.
Как часто говорил университетский лектор: “Инженеры - это про схемы”. Также существует отличная английская пословица: “Картинка стоит тысячи слов”.
Почему важно создавать блок-схемы?
1> Чтобы быстро ввести в курс дела новых людей.
2> Чтобы увидеть потенциальные ошибки дизайна на ранней фазе разработки продукта.
3> Блок-схемы это, как говорит старинная американская народная поговорка, “helicopter view”. Глядя на схему можно увидеть архитектуру платы с высоты птичьего полета.
3> Чтобы упростить навигацию по сложной схемотехнике (Э3)
У меня была схема электрическая(Э3) на 101 страницу. Э3 на 30-42 страниц - это вообще норма жизни. Нужно, например, понять какой designator у JTAG разъема. Прежде чем искать его в электрической схеме я за пару секунд найду его имя из блок-схемы. Далее одним поиском нахожу разъём на 70-страничной Э3 по имени designator(а). Easy
4> Чтобы определить на что вообще способна аппаратная платформа прибора.
На блок схеме сразу видно какие есть датчики, интерфейсы, сколько памяти, какие процессоры (мозги) и какие исполнительные механизмы. Все это понятно просто просмотрев блок-схему по диагонали.
5> блок-схема позволит верифицировать принципиальную схему.
Проще говоря, если по Э3 никак не составить Э1 (в Э3 не указано куда идут некоторые провода), то Э3 следует отправить на доработку.
6> Блок-схема поможет составить firmware. Сразу понятно какие компоненты надо подключать к сборке, глядя на блок-схему. Как говорил университетский профессор: “Hardware первично Software вторично”.
7> Блок-схема поможет интеграторам в установке устройства. Поможет им найти нужный разъём и они поймут с какой стороны подходить к плате. И это всё благодаря блок-схеме.
Почему не достаточно электрической принципиальной схемы?
Главная проблема электрический принципиальных схем (Э3) это “летающие фрагменты”.
Надо постоянно пользоваться поиском, чтобы проследить куда идет конкретный провод(например 3V3 или VBUS). Хорошо когда Э3 в *.pdf. Однако зачастую в российских компаниях электрические принципиальные схемы Э3 до сих пор распространяется внутри организации в виде фотографии (*.JPG файле или даже *.PNG или *.TIF) и там естественно нет никакого поиска. Это же картинка. Поэтому крайне желательно делать блок-схемы PCB в векторном формате.
Как создавать, редактировать и распространять блок-схемы?
Для блок схем идеально подходит векторная графика и *.svg файлы. Есть бесплатная и мощная программа Inkscape. Inkscape это редактор векторной графики и *.svg файлов. Простой как Paint, только для векторной графики, а не для растровой. В отличии от пресловутого draw.io (где надо зачем-то авторизироваться) в Inkscape ставится в 2 минуты. В Inkscape есть слои! Можно уменьшать сложность схем путем отключения, например, слоя с распределением питания и рассматривать только system design. В Inkscape множество интуитивно понятных инструментов и никакой авторизации. Также Inkscape выигрывает по сравнению с MS Visio так как Inkscape бесплатный. Inkscape еще хорош тем, что в нём чертить можно. Бесплатная альтернатива AutoCAD.
Понятно, что блок схемы следует рассматривать на мониторе в специальном софте со слоями и с увеличением нужных мест из *.pdf или *.svg файла через редактор/браузер. Отличительная особенность векторной графики как раз в том, что качество изображения ни разу не ухудшается при бесконечном увеличении изображения как это повсеместно в растровой графике(фотографиях). Очень редко, когда блок-схемы надо печатать на бумаге так как они очень информативны.
Все известные западные вендоры уже давно предоставляют качественные и подробные блок схемы своих чипов, плат, систем. Впереди всех в вопросе предоставления высококачественных блок-схем конечно же STMicroelectronics. Их блок схемы SoC(ов) просто шедевры.
Атрибуты хорошей блок-схемы для PCB:
Далее следует методичка по составлению блок-схем. Правила сформировались как обычно из реальных многолетних инцидентов при создании блок-схем.
1) Блок-схема должна умещаться на одном листе. В этом её смысл. Минимум площади - максимум информации.
2–Показываться непрерывными стрелками куда идут данные и питание.
3–использовать разные цвета для обозначения разных шин данных и рельсов напряжения.
4–Показывать разрядность шин данных: UART, SPI, I2S,I2C,PCI, VR12, SDIO, SWD, CAN, MII, MDIO, USB, 100BaseT1, SpaceWire и пр.
5–Показывать сколько pin(ов) на каждом чипе и разъеме (и сколько свободных Pin(ов))
Это позволит найти соответствие между схемой и реальным физическим устройством при Bring-up(е) гаджета.
6–Желтым цветом показать кварцевые резонаторы/генераторы и указывать какими частотами тактируются чипы.
7–Показывать названия интерфейсов: I2C, MDIO, I2S, SPI, JTAG, SWD, SWI и их максимальные битовые скорости в данном устройстве.
8–Показывать сверху интерфейсы, которые работают в обе стороны CAN, RS232, 100BaseTX, 100BaseT1.
9-Снизу показывать память PCB.
10–Слева показывать делители напряжения. Обязательно указать коэффициент деления.
11–Показать каким напряжением запитана каждая микросхема
12–Зелёным цветом показывать аналоговые фильтры
13–Если у микросхемы есть внутренние регистры, то указывать количество регистров и их разрядность. Это позволит оценить трудозатраты на написание драйвера для этой умной навороченной микросхемы.
14–подписать имя основных проводов
15--То что на входе устройства: кварцевые генераторы, датчики, кнопки то слева.
16–То что на выходе устройства: светодиоды, экраны, цифро-аналоговые преобразователи DAC, реле, моторы, аудио кодеки. отражать в правой части схемы.
Человеку естественно анализировать информацию в направлении слева-направо и сверху-вниз. Автор блок-схемы должен иметь это в виду.
17–Отражать по краям разъемы. Благодаря этому пройдя взглядом по периметру блок-схемы можно перечислить все разъёмы на PCB.
29--Если в устройстве есть I2C микросхемы, то на блок-схеме надо обязательно указывать 7-ми битные I2C адреса каждой микросхемы. Это сильно поможет при отладке гаджета. Аналогично с другими интерфейсами, где есть адреса: 1Wire, PCI, DALI, PMBus, SMBus, LIN и пр.
18–цветом показать какая микросхема в каком слое.
19–Отражать дескрипторы микросхем U1...Un
20–Отражать дескрипторы разъемов (X1...Xn) и
21–Отражать названия микросхем и их назначение
22–Отражать теоретическое и практическое значение потребляемой мощности. Можно выявить короткое замыкание, если реальное значение мощности превышает теоретическое значение из блок-схемы.
23–Показывать стрелками как распространяется питание на плате.
Дополнительные атрибуты блок схемы
24-показать стоимость каждого чипа
25-показать количество слоев PCB
26–показать разрядность чипов DAC/ADC
27--показать тип корпуса каждой микросхемы
28-показать температурный диапазон чипов
Шоурум блок схем
Вывод:
Блок-схемы это мощный инструмент визуализации архитектуры электронного изделия. Существует программный инструмент Inkscape и специальные формат файла *.svg для редактирования векторной графики и создания высококачественных блок-схем. Качественная блок-схема является отличным дополнением паспорта устройства.
Текст может быть полезен техническим писателям, программистам МК, тестировщикам, схемотехникам, конструкторам, топологам, интеграторам и графическим дизайнерам.
Ссылки на статьи по теме
Схемы электрические. Типы схем https://habr.com/ru/post/451158/
https://habr.com/ru/post/541478/
https://habr.com/ru/post/317172/
https://habr.com/ru/post/337078/
Если у вас есть замечания, что еще следует указывать на блок-схемах или как их вообще создавать, то укажите это в комментариях
Комментарии (56)
nerudo
21.05.2022 18:15+2То что вы называете блок-схемой — это один из этапов документирования создаваемого устройства. Она может очень сильно отличаться и размерами и детализацией. В том числе быть иерархитческой. Для сложных плат схема верхнего уровня может вмещать десяток-другой составляющих, связанных абстрактными интерфейсами. А дальше все это может раскрываться в десятки отдельных структурных схем.
У нас рисуют в LibreOffice Draw, как-то больше всего прижилось.aabzel Автор
21.05.2022 19:05Этапы разработки дают разную документацию.
Проблема в том что российские компании часто пренебрегают выпуском КД.
Блок-схемы не делают в первую очередь. Перечни компонентов заполняют без названия чипов, что даже datasheet приходится искать по надписям на корпусе микросхемы (при помощи камеры с увеличением на смартфоне).
alinkagalichina
21.05.2022 19:38+1Делала блок схемы плат в Visio, до составления Э3. Недостатков помимо платного распространения у инструмента нет.
Плату собирали и отлаживали как с блок схемой, так и без неё. Во втором варианте плата мягко говоря взлетела не сразу, вопросов к схемотехнику было немало)
Abwindzentrierer
21.05.2022 19:55+2Я бы разбил блок-схемы на две категории: одна блок-схема, которая используется на первом листе схемы платы. Другая - которая идёт в документацию к изделию.
Первую мы обычно рисуем в САПРе (Mentor, KiCad, Altium...), с помощью простых инструментов, она чаще всего монохромная, потому что зачастую распечатывается в ч/б формате.
К Вашему списку я бы добавил номера страниц, на которых находятся компоненты куска схемы для упрощения поиска. Или иногда удобно рисовать рядом таблицу "оглавление", где в первой колонке обозначен интерфейс/компонент, а во второй - номер страницы.
Второй тип блок-схем идёт в документацию. И для них мы используем утилиты вроде DrawIO. Их плюс - простота встраивания в Confluence, Polarion и прочие системы, используемые для гибкой системы разработки. Удобство так же заключается в том, что редактирование возможно в обычном браузере, отпадает необходимасть установки дополнительных программ.
aabzel Автор
21.05.2022 20:04В DrawIO есть слои?
Abwindzentrierer
21.05.2022 20:44+1Нет, там достаточно простой редактор.
aabzel Автор
21.05.2022 21:26-4Раз нет слоёв то, тут и говорить не о чем, это значит, что в DrawIO можно делать исключительно и только очень простые и дешевые схемотосы.
Пока в DrawIO нет поддержки слоёв, то DrawIO так и будет позиционирует себя как программа для начальной школы.Abwindzentrierer
21.05.2022 22:07+2Вы напрасно считаете DrawIO программой для начальной школы. В списке самых распространённых систем менеджмента проектов, DrawIO будет поддерижваться, думаю, большинством популярных приложений.
Использование того или иного приложения обосновано масштабом разработки и наличием стандартов предприятия/производства. Если разработка делается узким кругом специалистов, и в последствии не требуется поддержка, правки, а так же все члены команды умеют пользоваться Inkscape'ом, то проблем нет.
Но если в процессе разработки участвует большое количество людей (продкутовые менеджеры, менеджеры проектов, разработчики железа, разработчики софта, тестировщики, производство, контроль качества, инженеры по внедрению), то необходим единый стандарт и системы контроля версий и учёта документации. Универсальность, простота и возможность создавать графику непосредственно в браузере, сильно упрощают работу большого коллектива.
Если нет стандартов разработки, то, к примеру, другой инженер, которому придётся делать новую ревизию схемы через пару лет, потратит на рисование блок-схемы значительно больше времени - ему придётся либо осваивать работу графического редактора либо рисовать её заново с помощью другого инструмента.
aabzel Автор
21.05.2022 20:15я бы добавил номера страниц, на которых находятся компоненты куска схемы для упрощения поиска
Не могу согласится.
Блок-схема должна показывать сущность только устройства, а не сущность документации.
Иначе получится документация о документации. Бесконечный Doc Food.Abwindzentrierer
21.05.2022 20:43+1Я имею в виду блок-схему на первом листе электрической схемы.
По сути она не относится к документации. Когда надо быстро найти, к примеру, часть с USB - смотрю на блок-схему, и нахожу нужную страницу.
Примерно как на схеме к MiniZedBoard. (дизайн у них, конечно, вырвиглазный)
quaer
21.05.2022 21:03+2Вы приводите пример принципиальной схемы из Altium. Там обычный векторный редактор. Что мешает в нём же и рисовать блок-схему? Он же и создаст готовый pdf где будет сразу и блок-схема и принципиальная и сборочная.
aabzel Автор
21.05.2022 21:31Altium это платный софт.
Firmware программистам не покупают Altium.Также Altium объявили Россию санкционной страной.
Indemsys
22.05.2022 11:56А разве теперь в России нельзя официально использовать Altium без лицензии?
Где-то читал новости, что лицензионные ограничения перестают работать в случае недружественной страны или корпорации из такой страны.
aabzel Автор
22.05.2022 12:32-1Боюсь, что скоро в России придется разводить топологию PCB на миллиметровке при помощи рейсшины.
quaer
22.05.2022 12:01+3Если основная схема создаётся в Altium, значит он есть. Firmware програмист смотрит блок-схему в pdf, который создаёт разработчик схемы. Редактировать блок-схему устройства программисту не требуется.
aabzel Автор
22.05.2022 12:37Схемы с первой страницы мало информативны. Нужны лишь для прощёлкивания на нужный лист.
quaer
23.05.2022 12:34Что такое "схемы с первой страницы"? То, что у вас нарисовано - не блок схема, а просто более высокий уровень иерархии в схеме.
Также, если у вас в разных версиях изделия могут быть смонтированы разные узлы, то блок-схема, созданная в программе проектирования, также способна отображать такие изменения без лишних усилий.
aabzel Автор
22.05.2022 13:31Российские разработчики HW часто делают только электрическую Э3 и топологию Э4.
На блок-схемы Э1 они забивают.
Не знают как составлять блок-схемы Э1.
А зачастую даже не догадываются о существовании блок-схем Э1.Karlson_rwa
22.05.2022 13:48〈sarcasm〉Ну а вы не знакомы с правильным названием схем Э1 и Э2.〈/sarcasm〉
Откуда такая страсть к обобщению?
lelik363
21.05.2022 22:10+1Зачем для для стандартных интерфейсов (I2C, CAN, UART и т.д.) указывается разрядность? На мой взгляд ваши схемы перегружены, что в последующем будет отнимать много ресурсов на администрирование (поддержание в актуальном состоянии), но это дело вкуса или правил в компании.
aabzel Автор
22.05.2022 00:01Про CAN I2C согласен.
Не всегда UART делают 2х проводным.
Я уже в двух российских организациях видел как разработчики железа выводят на разъём только UART_TX.
Есть интерфейсы где количество проводов варьируется в зависимости от режима: MII, I2S, SPI, SDIO. Поэтому лучше указывать битность шины.lelik363
22.05.2022 11:11+2Есть интерфейсы где количество проводов варьируется в зависимости от режима: MII, I2S, SPI, SDIO. Поэтому лучше указывать битность шины.
Это не принципиально.
Блок схема показывает тип соединения и не должна подменять собой Э3.
Karlson_rwa
21.05.2022 23:40+7Схемы нужны, да.
Но не такие перегруженные, как на примерах. Это вкусовщина, а не канон. В них сложно разобраться. Для программиста они излишни, на мой взгляд. Так же как и ваше предложение пихать туда все характеристики используемых ЭРИ. Для характеристик компонентов есть ПЭ3 (ну или его заменитель в каком-либо виде). Мне вот очень нравятся «схемы» плат FriendlyARM, особенно что они рисуют Power Tree отдельно. Сразу можно понять, какой преобразователь что питает.
yEd замечательная вещь! Позволяет сначала накидать схему как угодно, соединить связями блоки, а потом тем или иным алгоритмом причесать всё.
А, и еще. Вы бы завязывали с жирным. Не очень приятно читать такой шахматный, кхм, текст.aabzel Автор
22.05.2022 13:11Но не такие перегруженные, как на примерах В них сложно разобраться
Это ни разу не проблема. Исходник схемы это векторный *.svg файл.
Открываете его в Inkscape или Adobe Illustrator(e) и отключаете видимость тех слоев, которые вас не интересуют.
Упрощаете схему до тех пор пока она не окажется достаточно простой или пока там не останется тот модуль который вас особенно интересует.
Еще раз, такие блок-схемы не для печати на бумаге. Это для анализа в векторном редакторе/браузере.halfworld
22.05.2022 16:32+1... отключаете видимость ... в векторном редакторе
А что получится, если подвигать что видно, а потом сохранить. При следующем открытии файла и включении слоёв будет каша или нет?
P.S. Пришлось гуглить, что такое DMM. В наших палестинах такое не используется. И еще режет глаз пренебрежительное "схемотос ".
aabzel Автор
22.05.2022 17:09В Inkscape как в Photoshop видимость слоев можно включать отключать.
Каши не будет.
DMM это цифровой мультиметр (Digital multimeter). DMM - единственное и правильное название этого прибора.
Я уже устал слышать в российских организациях слова токомер и напряжометр.halfworld
23.05.2022 12:06+1Видать мы "слишком далеки от народа", в разговоре пользуемся термином "мультиметр". (Зачем использовать английское слово файевол, если есть русское брандмауэр)
Indemsys
22.05.2022 12:21+3Как понимаю, автор работает в рамках довольно архаичных бизнес процессов.
Не имеет доступ к документации на плату и не использует развитые EDA типа Altium.Потому что в Altium немыслимо рисовать схему без иерархии, а верхние уровни иерархии и есть те самые блок схемы:
Автор, кстати, проигнорил что блок схемы должны еще и функциональную модульность показывать, чтобы редуцировать представление о схеме. Редукция - лучший способ познания.
У автора редукция недостаточно гомогенная и консистентная. Светодиод может занимать на схеме столько же места как и целая микросхема, много малозначимых атрибутов расфокусирующих внимание, но при этом функциональность схемы остается непонятной.
В Altium чтобы найти деталь на схеме обращаются либо к верхнему уровню иерархии либо к образу платы. Щелкают на плате по компоненту и сразу открывается участок схемы с этим компонентом. Или щелкают на схеме по компоненту и сразу открывается участок на плате с эти компонентом.
Другая проблема блок схем автора в их неточности. С целью упрощения автор может опустить множество сигнальных соединений. Блок схемы же иерархической структуры в Altium всегда абсолютно точные.
Ну и наконец сама технология рисования в Altium лучше подходит для изображения электрических связей. Компоненты имеют свободно перемещаемые точки входов и выходов. Провода тянутся за компонентами. Пересечения без соединения автоматически отображаются дугами. Соединения автоматически отображаются точками. И т.д. Т.е. экономия времени значительна по сравнению с Inkscape.
aabzel Автор
22.05.2022 12:48По этой схеме из Altium невозможно ответить даже на такой простецкий вопрос "сколько у платы разъёмов?" Надо просмотреть все листы, чтобы перечислить разъёмы.
В представленной же в статье нотации разъёмы видны сразу. Достаточно просмотреть схему по периметру по или против часовой стрелки.
Структурная схема из Altium нужна только для прощёлкивания (кликерства). На этом ее польза целиком и полностью заканчивается.Плюс явные недостатки:
--Сетка(абсолютно непонятно зачем) отвлекает внимание.--Не указана битовая скорость
--не указано как распределяется питание
--не указано сколько пинов на каждом чипе
--не указано какими частотами тактируются чипы--не показывает сколько памяти доступно в плате
--не показывает сколько регистров в периферийных чипах
Структурная схема из Altium - это инфантильная документация про документацию. Она практически никак не характеризует само устройство и намекает на то, что надо просмотреть оставшиеся 30-100 страниц схемотоса.Indemsys
22.05.2022 20:00+3По этой схеме из Altium невозможно ответить даже на такой простецкий вопрос "сколько у платы разъёмов?"
Сама постановка вопроса интересна. Зачем знать сколько у платы разъемов?
Нет, без всякой задней мысли, ну зачем?
Перед вами плата, ну взгляните просто на нее и все увидите.В Altium список всех компонентов и по отдельности каждых типов открывается по щелчку с левой стороны, если уж так припекло узнать их количество:
Хотя такие вопросы узнают из BOM-а, поскольку реально большие схемы имеют широкую вариантность сборки.
Хотел бы я увидеть как на своих блок схемах вы будете отражать варианты.Остальные заданные вами вопросы просто капля в море от того что действительно надо знать программисту чтобы писать софт для таких плат. Все это не поместиться ни на каких блок схемах. Каталог даташитов всегда должен быть под рукой.
У одного STM32 или подобных чипов десятки доменов тактирования, десятки функций на пинах. Чтобы не ошибиться приходиться вот так описывать пины:
По моему опыту блок-схемы вроде вашей хороши на этапе концептуальной подготовки к разработке или на этапе маркетинга:
Но программисту такие блок-схемы мало помогут.
Такими блок-схемами обычно обмениваются с заказчиками.
aabzel Автор
22.05.2022 20:06Сама постановка вопроса интересна. Зачем знать сколько у платы разъемов?
Чтобы изготовить harness.
Karlson_rwa
22.05.2022 22:00+1приходиться вот так описывать пины
Как бы ни ругали некоторыекалокуб, в плане маппинга пинов он весьма удобен. Также в нём очень удобно согласовывать с программистом назначение выводов. Сложно ошибиться. И схема тогда выглядит намного симпатичнее, чем раздутое до невозможности УГО микроконтроллера со всеми возможными функциями.Indemsys
22.05.2022 22:41+1Я придерживаюсь концепции, что польза от инструмента зависит исключительно от способа организации труда. Часто даже инструмент меняет организацию труда если выясняется что при новой организации от него будет больше пользы.
Вот и блок-схемы автора вполне годны в его организации, я не сомневаюсь.
Но если б автор сам ставил задачу, сам разрабатывал схему, сам трассировал, сам программировал и сам сопровождал, он бы точно не рисовал таких блок схем, либо рисовал их только в рекламных буклетах.
Так и с кубом. Он хорош на стадии освоения, я интенсивно пользовался им в течении нескольких недель. Но потом надобность в нем отпадает. Он слишком неповоротлив и ограничен в своих функциях, он тормозит рефакторинг. А в консервативных организациях рефакторинг на поздних стадиях вообще может быть невозможен. Им куб самое то. Отсюда и войны разных технологических школ.
aabzel Автор
22.05.2022 22:53-1Какой смысл в тенях в этой коричневой схеме? Какой смысл в градиентах?
Поймите, блок-схема это абстракция.
В блок-схеме в принципе не должно быть случайных изображений: градиенты, подтенения, стразики и прочее.
Тени и градиенты на блок-схеме это уже слишком. Какая-то оригами из детского садика.
Тени и градиенты это не иначе как пыль в глаза для тех кому с этим работать.Indemsys
22.05.2022 23:26+3Какой смысл в тенях в этой коричневой схеме? Какой смысл в градиентах?
Там еще блур есть немного, если присмотреться.
Ну что ж, у нас разное представление о прекрасном.
На самом деле на моей диаграмме применен стиль, этих стилей десятки в Visio, от монохромных чертежных до LGBT. Выбирается одним кликом.
aabzel Автор
22.05.2022 23:07У одного STM32 или подобных чипов десятки доменов тактирования, десятки функций на пинах. Чтобы не ошибиться приходиться вот так описывать пины:
Лучше делать WireTable в Google SpreadSheets для всех проводов из Э3.
В Google SpreadSheets сортировка есть. Точно не ошибешься так как после сортировки сразу будет видно чего не хватает. + Коллективный одновременный доступ и формулы.Перечислять функции пинов внутри Designator на Э3 это пустая трата времени.
Лучше накропать полноценный WireTable в Google SpreadSheets и расшарить его всем заинтересованным.
Вот пример
https://docs.google.com/spreadsheets/d/1OORWLG3IgiS_SvEASOm0HJW1asHwws-V46CHfTqbaBE/edit#gid=0Indemsys
23.05.2022 10:09Перечислять функции пинов внутри Designator на Э3 это пустая трата времени.Лучше накропать полноценный WireTable в Google SpreadSheets и расшарить его всем заинтересованным.
Тут вы противоречите логике.
У меня при разработке схемы будет открыт только один документ и не будет проблем с синхронизацией источников данных, а у вас будет два документа и головная боль с их синхронизацией.
Чтобы у вас не возникло подозрений в том что пины описываются в ручную дам вам ссылку вот на эту статью https://habr.com/ru/post/327628/aabzel Автор
23.05.2022 12:13Есть ли в Atlium опция сгенерировать таблицу проводов и их свойств из электрической схемы в Exlece таблицу?
Indemsys
23.05.2022 14:40+1Altium не предназначен для 3D трассировки, хотя в последней версии что такое уже предлагают для трассировки по произвольным поверхностям, я не разбирался.
У нас слишком много проводов чтобы использовать неспециализированные инструменты. Я только краем уха слышал как это у нас делают. Вроде скриптами и с помощью SolidWorks.
А так законный инструмент для разработки проводки - SolidWorks Electrical 3D + routing. Там провода автоматически трассируются по оптимальному пути и через заданные крепежи и с нужными загибами и в указанных каналах, и отчёт по всем типам и калибрам проводов сделает и даже развёртку для монтажных столов нарисует чтобы на плоскости жгуты из проводов изготавливать.
aabzel Автор
22.05.2022 13:22Как понимаю, автор работает в рамках довольно архаичных бизнес процессов.Не имеет доступ к документации на плату и не использует развитые EDA типа Altium.
Схемотехнику часто держат в тайне от программистов МК. О топологии и говорить не приходится. Максимум, что давали это *.txt файл с некоторыми пинами микроконтроллера и названиями проводов, которые к ним припаяны.
Остальное приходится прозванивать DMM(ом) прямо на PCB. Реверс инжиниринг схемы.Karlson_rwa
22.05.2022 13:51+1Схемотехнику часто держат в тайне от программистов МК.
Вы работаете(ли) в шарашке что ли, где каждый сидит в отдельной камере? Что за ерунда? Как можно запрогать устройство без схемы?aabzel Автор
22.05.2022 13:59Вот именно что никак. Либо очень медленно через реверс инжиниринг.
Так устроено в Yandex.Drive.
Схемота телематики каршеринга строго охраняется. Даже от программистов.
То же самое в Sercomm. Там еще жестче. Схемота маршрутизатора S1010 настолько секретна, что даже datasheet(ы) CPU и WiFi трансивера для штатских программистов под запретом.
В НПЦ ЭЛВИС был случай, когда компания попала под санкции после 2014г и ST отказались высылать полный datasheet на регулятор мощности PM6766.
Поэтому работать без Doc Food приходится время от времени.Karlson_rwa
22.05.2022 14:24+1Так устроено в Yandex.Drive. То же самое в Sercomm.
Тогда это всё, что нужно знать потенциальному работнику об этих шарагах. Это не нормально, когда программист не знает, как что соединено в железке, которую он прогает. Защита секретов должна делаться немного другими методами.aabzel Автор
22.05.2022 15:30Защита секретов должна делаться немного другими методами.
Какие тут могут быть методы, кроме старого советского ржавого амбарного замка?
Karlson_rwa
22.05.2022 17:55+1Как ни странно, правовые.
Только чтобы это работало по-нормальному, нужно много геморроя (бумажки о коммерческой тайне, журналы учета доступа и прочие прелести). Поэтому всё вот так через задницу. Видимо, менеджменту проще костыльно ограничивать погромистов и прочих причастных, чем нормально организовать процесс. Рассуждаю об этом как диванный аналитик, ибо никогда не работал в компании, где коммерческая тайна была бы правильно организована. Хотя NDA подписывал, составлено оно было безграмотно.
Просто, замечание насчет прозвонки. Вы никогда не сталкивались с микросхемами, у которых в документации было в явном виде указано, что их не стоит прозванивать мультиметром? :) А такие есть.
quaer
23.05.2022 12:39+1А если у вас в разных версиях изделия будут монтироватьс разные или не все блоки, как вам такой "рисунок" поможет?
Да и глядя на него сказать, что делает устройство, куда и как подключается, крайне затруднительно.
Flammmable
Вы пробовали редактор блок-схем yEd? Он бесплатный, поддерживает импорт примитивов из svg, а также экспорт всей схемы в svg же. И в целом, кажется достаточно симпатичным пакетом. Хотя лично я обычно пользуюсь напрямую Inkscape.
aabzel Автор
Еще не пробовал yEd. Что-то не видно чтобы в yEd были слои (как в Photoshop и Inkscape).
aabzel Автор
Inkscape еще хорош тем, что в нем чертить можно. Бесплатная альтернатива AutoCAD.
Flammmable
В Автокаде есть масса крайне удобных вещей типа:
продлить линию до пересечения
обрезать линию по пересечению
привязать курсор к воображаемому продолжению линии
провести касательную к двум окружностям и т.д.
Понятно, что в Inkscape есть всякие скрипты и поплевав-постучав кое-как можно добиться результата "ну вот, оно само провело касательную, удобно же всё!" Но в Автокаде это всё есть из коробки, под рукой, работает быстро, надёжно и зачастую в 1-2 клика. Поэтому более-менее сложные изображения я рисую в Автокаде, а потом уже раскрашиваю в Inkscape.