Всю неделю праздновал

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

Начнем отмечать, пожалуй

Так как я до сих пор развлекаюсь преподаванием в МИЭМе — то всю предстоящую неделю от дня машиностроителя до дня работника электронной промышленности я собираюсь праздновать — вот и сегодня, например, в честь дня машиностроителя покажу вам «голову» и питатели для OpenPnP оригинальной конструкции (да-да, не прошло и года!).

Питатели, что характерно, «аналогов не имеют» — да, механика частично срисована с «американского» RapidFeeder, сматыватель ленты — по мотивам китайского CleverFeeder v3, но при этом удалось сделать их компактнее и легче обоих прототипов, а главное — и питание, и управление осуществляется по одним и тем же двум проводам (точнее, направляющим, на которые эти питатели устанавливаются). Пока что отлаживаю несколько первых образцов — но и постепенно двигаюсь к небольшой серии.

А при чем тут бутылка Ведерникова? А просто мысль нарисовать на плате орнамент в стиле хохломы пришла, когда я разглядывал ее этикетку — надо же как-то подчеркнуть, что девайс — наш, отечественный?

И еще про инновационную лабораторию

Немножко меня эта тема триггернула, так что продолжу :) В комментариях телеги написали, что оснащение лабы отличное, человеку понадобилось плату изготовить — и он принес герберы на флешке, за полчаса плату отфрезеровал и тут же запаял! Что же, разберем подробно возможности того оборудования, что мы видим на снимках.

Но для начала — маленькое лирическое отступление. Практически всегда, если оснащение такой мастерской выбирают люди, от тематики далекие, оно делится на две категории. Первая — «дорого-богато», и к ней в этой мастерской относятся, например, металлообрабатывающие станки марки Optimum. Бренд, разумеется, псевдонемецкий, на самом деле они полностью аналогичны китайской продукции, продающейся под десятками брендов — от чисто алиэкспрессовских Weisan, Numobams и Fusikaya до имеющих какое-то представительство в РФ марок вроде Корвет или Metalmaster. На форуме Chipmaker даже есть списочек «близнецов» в разделе «Китайские хоббийные станки«. Optimum, правда, на этом форуме не обсуждают — угадаете, почему? Но про металлообработку поговорим при случае как-нибудь в другой раз, сегодня — про электронику.

Пример бессмысленно дорогого оборудования в этой категории — это как раз станок для фрезеровки печатных плат, LPKF Protomat, в 2019 году стоивший около 1,5 миллионов рублей. «Коммерсанты», считающие деньги, подобным оборудованием пользуются редко — а вот в вузах, ЦМИТах, «Кванториумах», всяких конторах, кормившихся вокруг WorldSkills этот станочек был безусловным хитом (нет-нет, никакой коррупционной составляющей). Чисто для понимания порядка величин — даже в считающемся недешевым «Резоните» небольшой заказ на производство однослойной печатной платы без маски обойдется в сумму около 1500 рублей (причем большую часть стоимости будет составлять «подготовка производства»). Что лучше, один Protomat или 1000 заказов в Резоните? Будучи руководителем небольшой фирмы, разрабатывавшей всякую электронику, Олег Артамонов писал на Хабре:

На данный момент лично у меня там 177 выполненных заказов и один — в процессе. Минимальная партия из того, что мы там заказывали, составляла 1 штуку, максимальная — несколько тысяч штук.

Думается мне, что «Резонит» мог бы спокойно продавать абонементы на изготовление плат по цене Protomat’а, или провести акцию «Разбей Protomat кувалдой и получи пожизненную скидку!», и даже не обеднеть! :) А статью Олега прочитайте, потому что дальше ее немножко дополню.

Но сначала — про вторую категорию оборудования, «говно на сдачу». Что мы видим на фотографии ниже?

Молодой человек паяет на обычном «столе для персонала» (ESD вышло из чата, хоть на других фото и видно браслетики, купленные в рамках карго-культа), вместо хотя бы силиконового коврика с алишечки на столе в качестве негорючего материала лежит кафельная плитка (надеюсь, не оторванная от стены в ближайшем сортире). Паяльная станция — самый дешевый Element, со всем известными недостатками. Паяет чувак, разумеется, так, как это было описано в книжке для страдающих от дефицита советских радиолюбителей, тыкая паяльником в кусок вонючей канифоли и таская припой на жале. Открою секрет — уже более 80 лет используется припой с трубкой флюса внутри:

Его на жале паяльника таскать не надо и даже вредно, флюс от этого просто выгорает. Термоусадку, кстати, тоже не завезли, вместо этого — плохо накрученная синяя изолента. Дополнительное освещение и лупа установлены так, что пользоваться ими просто неудобно — поэтому «монтажник» сидит, скрючившись.

Ручной инструмент — разумеется, Dexell из ближайшей леруашки, зачем эти пассатижи на рабочем месте монтажника — хер знает, там нужны нормальные стриппер (Proskit 8PK-3001 или что-то типа того) и кримпер (тут сложнее, но какой-нибудь SN-58B с алиэкспресса закроет большую часть потребностей — большинство Molex, крупные JST, «Dupont» с некоторыми нюансами). Вытяжек на рабочих местах, конечно, тоже нет, даже «номинальных» китайских вентиляторов, потому что зачем?

В этой категории выбор оборудования и расходников полностью описывается «правилом сарая для велосипедов» из законов Паркинсона — выбор Protomat за много денег не обсуждается, а вот остальное — ну каждый же прекрасно понимает, что самый дешевый набор инструментов Dexell ничем не отличается от какой-нибудь Ombra или Jonnesway, а если нет разницы — зачем платить больше? Вот и выбирается оборудование «любительского» класса, причем даже нищебродско-любительского, более-менее продвинутый паяла взял бы, может быть, и станцию с картриджными жалами, и нормальный ручной инструмент, и даже термостойкий силиконовый коврик с алишечки. Кстати, и выбор «производственной» мебели подпадает ровно под это же правило — те же стулья взяты из самой-самой дешевой линейки, и при активной эксплуатации быстро разваливаются.

В итоге получаем «монтажный участок», прекрасно подходящий для пайки выводных компонентов, крупных разъемов и прочего подобного говна, мечту радиолюбителя-нищеброда, дополненную дорогим, но прикольным сверлильно-фрезерным станком по текстолиту. А вот чего не хватает точно — это оборудования «промежуточной» категории, которое дилер LPKF не предложит, а занимающийся закупками представитель вуза даже понятия не имеет, что такое есть.

Например, SMD-компоненты паяльником не паяют (с), но можно относительно недорого оснастить лабораторию режущим плоттером для изготовления трафаретов (пассивка вплоть до 0603 и микросхемы с шагом выводов до 0,5 мм получаются приемлемо), самым простеньким ручным принтером для паяльной пасты с алиэкспресса и «печкой» типа T-962 — такой комплект обойдется в сумму порядка 50 000 рублей (если брать за свои и экономить), или тысяч в 100 — если деньги можно тратить, особо не оглядываясь. Например, что-то подобное получилось у американцев в том же 2019 году — просто при комплектации лаборатории цель была не «освоить бюджет», а купить оборудование, подходящее для монтажа единичных, но «современных» устройств:

https://dl.acm.org/doi/abs/10.1145/3299874.3317968

Я исключая из рассмотрения предложенные на хабре варианты типа «купить электродуховку, ардуину и твердотельное реле» — они явно не найдут понимания у вузовской администрации (хотя можно пропихнуть в формате «студенческого проекта» в том же МИЭМе — что, правда, не снимает вопроса «кто будет отвечать, если ваша электродуховка загорится»). Но из «самостроя» — можно дополнить вышеозвученное совместимым с OpenPnP pick-and-place-автоматом, по сложности он не отличается от заебавших всех 3D-принтеров, но намного, намного полезнее! Можно обойтись и готовым чем-нибудь тысяч за 150 с алиэкспресса — но тогда в хороший студенческий проект превратится доведение этого полуфабриката до ума.

Кстати, раз уж вспомнили о пожарной безопасности. Есть еще одно занятное последствие решения «оборудуем лабу всяким говном за три копейки», применительно, например, к вот этому рабочему месту монтажника: похожая паяльная станция стоит от 5 тысяч рублей, остальные аксессуары — тоже копеечные, поэтому у других вузовских лабораторий появляются собственные неучтенные «наборы монтажника» (я в МИЭМе точно знаю два, старательно спрятанные от проверяющих) — просто потому, что никакой разницы нет, но в «инновационную мастерскую» бегать не надо. При этом пожарная безопасность выходит из чата — если в «централизованной» лаборатории еще можно проверить, что в конце дня все паяльники выключены, то в каком-нибудь закутке компьютерного класса забыть включенную паяльную станцию — элементарно!

Нечеловеческий язык

От нехуй делать зашел на сайт Резонита, где очень сильно зазывали зарегистрироваться в новом личном кабинете. Почитал FAQ по нему и прихуел от вот таких вот описаний:

Если требуется удалить Заказчика (Клиента), откройте вкладку Пользователи в разделе Клиенты и действуйте по одному из сценариев:

Вы единственный Пользователь и админ Заказчика (Клиента).
В этом случае доступна прямая операция удаления Заказчика (Клиента).

У Заказчика (Клиента) несколько Пользователей, и у вас статус админа. Возможны два варианта:
  — назначить другого пользователя новым админом и после этого прекратить сотрудничество с заказчиком (клиентом), если вы не планируете продолжать работать с ним.
  — удалить всех пользователей и затем удалить заказчика (клиента), если он больше не существует.

У Заказчика (Клиента) несколько Пользователей, и вы не админ.
В этом случае вы можете только покинуть Заказчика (Клиента).

Мне кажется, что вот такая простыня в FAQ, предназначенном для пользователей (а может, Заказчиков/Клиентов/Админов — кто там еще упомянут?) — это просто признак профнепригодности аналитиков и/или техписателей. Нет, не имею ничего против такого подробного описания в материалах, предназначенных для «сайтостроителей», из этого получается и прекрасное описание ER-модели базы данных, и несколько user story и прочих юзкейсов — но блин, я нихуя не понял уже в первой фразе!

PS А также от нехер делать почитал их оферту и завис уже на такой фразе:

Продукция – результат выполненных работ по конструкторской документации (далее – «КД») Заказчика: печатные платы, трафареты, электронные модули. Область применения Продукции устанавливает Заказчик и у Исполнителя отсутствует возможность ознакомить Заказчика с Продукцией и ее назначением при заключении Договора.

Мне одному кажется, что в выделенной части что-то напутали?

Пацанский подгон электронной промышленности

Если вы думаете, что день работника электронной промышленности прошел мимо меня — вы ошибаетесь! В честь праздника отлаживал сегодня механику питателя для SMD-расстановщика (да, вот для этого мне и понадобились разнообразные шестерни). Разумеется, полностью оригинальной эту разработку назвать сложно — но я посмотрел на многочисленные варианты недорогих электрических питателей (Bing Feeder, Smart Feeder, T2 Feeder, LumenPNP, тысячи их) и понял, что их можно отнести к двум категориям:

— оверпрайснутое переусложненное говно;
— эконом-вариант с ФАТАЛЬНЫМИ НЕДОСТАТКАМИ.

Long story short, но я решился делать «свою» механику, и по первоначальным прикидкам, даже по цене оно может получиться вполне конкурентоспособным.

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

Настольный зубофрезерный станок

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

Итак, начнем с того, что мне понадобились косозубые шестерни с модулем 0,5, вроде бы понятными количеством зубьев и толщиной — ну а прочие параметры пока что не столь критичны. Возможно, будь дело где-то в Америке из воспоминаний Фейнмана, я бы просто взял каталог фирмы Boston Gear (в распространенном переводе «Вы, конечно, шутите, мистер Фейнман» его обозвали «Бостонским каталогом шестерен») и нашел бы там нужную деталь; если бы дело было в Германии, то наверное, стоило бы воспользоваться аналогичным каталогом Zahnradfabric Friedrichshafen — но, конечно, не уверен, что это было бы достаточно дешево. А какие опции доступны «микропроизводству» в Москве в 2025 году? Конечно, можно купить какие-то компоненты на Алиэкспрессе — и для некоторых типов шестерней это самый понятный вариант. Да, если речь идет о сотнях-тысячах деталей, придется подумать о вариантах доставки из Китая — но это будет работать только в случае, если эти детали достаточно «стандартные» (всякие компоненты для тех же 3D-принтеров или хоббийных станков, например). Прямозубые шестерни для игрушек с тем же модулем стоят копейки — можно даже купить в Чип-и-Дипе набор игрушечных шестерен, и может быть, если бы мне подходили стандартные шестерни из этого набора, это было бы даже экономически оправдано в варианте «покупаем набор и 90% из него выкидываем» — но мне понадобились более сложные, косозубые. Их, к сожалению, не получится сделать на термопластавтомате (а я даже приценивался к мини-ТПА, это внезапно не так дорого) — так что пришлось смотреть на другие, более традиционные методы изготовления зубчатых колес.

Чаще всего в этом контексте упоминают нарезание зубчатых колес модульной фрезой на фрезерном станке с делительной головкой, или что-то аналогичное — метод простой, не требующий специального оборудования, подходящий, к примеру, для ремонтных работ — сделать на универсальном станке в одном экземпляре шестерню взамен сломанной — и абсолютно не подходящий для более-менее серийного изготовления, даже если оснастить станок какой-то системой ЧПУ. Если же нужно делать шестерни хоть какой-то серией — то единственно оправданным методом становится зубофрезеровка, и на первый взгляд, это сложно и дорого. «Взрослый» зуборезный станок, какой-нибудь 5К32 — это дура в две тонны весом, расчитанная на нарезку здоровенных крупномодульных колес. Можно, конечно, обратиться и к [info]bougaev, у которого в мастерской есть аж настоящий Pfauter — но что-то мне подсказывает, что партия шестерен фирмы «жадинка Михалыч» выйдет буквально золотой :) Впрочем, на другом «полюсе» есть нищебродские методы, наподобие нарезания червячных эрзац-передач метчиком с крупным шагом — о которых даже пишут на Hackaday!

Что же лежит между этим нищебродством и использованием «настоящих» зуборезных станков? Дело в том, что запатентованный герром Пфаутером в 1897 году метод нарезания зубчатых колес с помощью червячных фрез довольно сложен, требует согласованного вращения фрезы и заготовки, и сложной настройки передач зубофрезерного станка — у которого есть аж две гитары — соло и бас вращения заготовки и подачи фрезы, а для нарезания косозубых шестерен добавляется еще и дифференциал с еще одной гитарой. Если добавить еще и ударные инструменты (без кувалды и зубила ты не слесарь, а мудила) — можно играть heavy metal! Какой-нибудь «справочник зубореза» состоит в основном из таблиц настройки этих гитар — которые еще и здорово отличаются у разных станков!

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

Мелкомодульную червячную фрезу по ГОСТ 10331-81 удалось недорого найти на Озоне, а остальные компоненты станка — «общего назначения» — алюминиевый профиль, Hiwin-овские направляющие, энкодер, шаговые двигатели — в общем, ничего редкого и дефицитного. Изготавливать пришлось лишь несколько пластин из капролона (для этого использовал макет фрезерного станка под названием CNC 3018) и вал для фрезы, но при наличии токарного станка последняя задача несложная, даже если учитывать то, что точил хоть какую-то деталь я в первый раз (но резьбовую пластинку все же сломал дважды). А, ну еще и надо токарить всякие оправки для закрепления заготовок — но это даже особо внимания не заслуживает.

Компоновка станка — «по мотивам» настоящих, «взрослых» зубофрезерных станков. Справа — неподвижная стойка, по ней в вертикальном направлении ездит установленная на поворотном столе ось фрезы. Стойка слева, с приводом заготовки в трехкулачковом патроне, подвижная, может двигаться вперед-назад. Возможно, я где-то немного прогадал с размерами — но сейчас сюда влезают заготовки радиусом до 40 мм, мне это «за глаза», возможная высота заготовки — тоже порядка нескольких сантиметров, если буду обрабатывать по много одинаковых колес «пакетом» — пригодится.

«Электронная гитара» на Arduino — проект прикольный, я частично подсмотрел там работу с шаговиками и энкодером — но потом все равно все переделал, конечно же :) Как это выглядит? На вал шпинделя (или, в нашем случае, червячной фрезы) ставится энкодер, выдающий, стандартно, 600 импульсов на оборот. Все же зависящие от количества оборотов шестерни передачи оснащаются шаговыми двигателями со стандартными, знакомыми многим по 3D-принтерам, драйверами, у меня завалялось несколько A4988 и TMC2208 (опять же, в виде готовых модулей для тех же 3D-принтеров). В режиме «микрошага» x16 для полного оборота шагового двигателя необходимо выдать 16*200=3200 импульсов, да еще и привод заготовки оснащен редуктором 1:4. В прошивке «электронной гитары» для этого вычисляется целая и дробная часть коэффициента деления — скажем, если мы будем резать шестерню на 127 зубьев (специально подобрал не очень хорошее число — но такие шестерни иногда нужны), то надо сделать один оборот заготовки на 127 оборотов фрезы. Соответственно, 76 200 импульсов энкодера будут соответствовать 12 800 импульсам, которые надо выдать на шаговый двигатель. Делим, и получаем, что коэффициент деления нашей «электронной гитары» должен составлять 5,953125. В ардуиновской прошивке с Chipmaker для такого дробного деления заводятся две переменных, Ks_divisor, с целой частью коэффициента деления, и Km_divisor, с дробной — давайте я приведу здесь максимально упрощенный код, без учета направления вращения вала (можете найти подобное в обработчике прерывания от энкодера):

int Ks_divisor = 5;
int Km_divisor = 9531;
int Ks_counter = 0;
int Km_counter = 0;
void isr(void){
    Ks_counter++;
    if(Ks_counter > Ks_divisor){
        step();
        Km_counter += Km_divisor;
        if(Km_counter > Km_divisor) {
            Km_counter -= 10000;
            Ks_counter = 0;
        } else {
            Ks_counter = 1;
        }
    }
}

В общем, можно понять, что автор ардуиновской прошивки пытается с помощью целочисленных переменных имитировать вычисления с точность 1/10000 (или 4 знака после десятичной запятой). Метод, может, и работающий, но имеющий очевидный недостаток — вы видите в этой программе число 5,953125, полученное в ходе расчетов? Дробную часть пришлось округлить, и это не очень хорошо — при большом количестве оборотов, то есть медленной и печальной, с подачей 0,1 мм на оборот, обработке даже не очень длинной заготовки — скажем, длиной 10 мм — ваша заготовка сделает 100 оборотов, фреза — 12700, ошибка на один шаг уже вылезет. Может, это и немного — но учитывая жесткость станка, точнее, ее отсутствие, вытекающие отсюда небольшие подачи и такой же небольшой съем материала — накапливающаяся ошибка становится проблемой.

Увеличивать разрядность в расчетах можно (хотя на Ардуине это проблема), но давайте посмотрим на задачу с другой стороны. Нам надо на каждые 76 200 шагов по одной «координате» равномерно сделать 12 800 шагов по другой. Классический алгоритм для этого был предложен Брезенхемом из IBM в 1962 году (да, все хорошее в программировании было придумано либо IBM в 60-х, либо DEC в 70-х) — и в аналогично упрощенном виде целочисленный алгоритм Брезенхема будет выглядеть так:

int dx = 76200;
int dy = 12800;
int err = 0;
void isr(void){
    err += dy;
    if(2*err > dx){
        step();
        err -= dx;
    }
}

Конечно, переменнные dx и dy можно и даже, наверное, нужно сократить на общий множитель (заодно вычисления будут умещаться в меньшую разрядность, полезно, если у вас 16-битный int на AtMega), а умножение на 2, если вы не доверяете оптимизации компилятора, заменить битовым сдвигом — но в целом тут и вычисления проще, и, что важно, ошибка не превышает 1/2 шага и не накапливается. Таким же образом можно получить и любые коэффициенты деления, выражающиеся простыми несократимыми дробями — полезно, если вам надо заменить настоящую чугунную гитару.

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

UPD Латунь («сыпучку», ЛС59-1) станочек вполне успешно обрабатывает с вертикальной подачей 0,3 мм/оборот.

Немного про электронику

Чувствую себя персонажем шуточки про «имея осциллограф, можно починить все, кроме этого осциллографа; имея два осциллографа, можно починить вообще все» — купил китайскую портативную балалайку Jinhan JDS6052s, спалил (?) в ней генератор сигналов, сейчас ковыряюсь внутри, используя «стационарный» Rigol DS1054z. Так вот, Jinhan устроен занятно:

— входные усилители на AD603 особо не удивляют;
— АЦП с затертой маркировкой (да и хрен с ним);
— ПЛИС Lattice LCMX02 (собственно, все интересное происходит в ней);
— ЦАП TI DAC904;
— выходной усилитель на Renesas EL5462 (счетверенный ОУ с токовой обратной связью).

На второй плате стоит микроконтроллер (вроде бы что-то из серии GD32, но я туда не лез), подключен экранчик и кнопочки — но опять же, ничего удивительного. Вот что мне интересно — то, что генератор сделали на ПЛИС, ЦАП и широкополосном усилителе — а в то же время «популярные» любительски-студенческие проекты обычно используют банальную AD9851. Неожиданно, что решение на «рассыпухе» оказалось более правильным и выгодным, чем полностью «интегрированное».

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

Вынесу из вконтактика

В этом году делал со студентом отладчик для микроконтроллеров с интерфейсом Ethernet и мониторингом энергопотребления, и очень хотелось презентацию к защите сделать из смешных мемов — вот как-то так:

Начнем с измерения силы тока:

Мы рассмотрели разные варианты измерительных схем:

Измерили разные параметры операционных усилителей:

Внезапно для себя поняли, что все эти измерения были напрасны, и можно обойтись дешевыми компонентами и программной калибровкой:

Заодно спроектировали для устройства немного необычный импульсный блок питания:

Долго подбирали компоненты:

Боролись с помехами:

Написали прошивку и интегрировали девайс в большую систему:

Все требования технического задания были выполнены:

Работа защищена на отлично!

Про CAD’ы для электроники

Вот пара вопросов возникла. Во-первых — вот давайте представим, что я делаю какой-то прожект под вывеской Open-Source Hardware. Собственно, вопрос — а в каком CAD-е работать? Варианты вижу примерно следующие:

— досовский PCAD;
— пизженный Altium;
— Eagle 7.7.0 (последняя версия, не требующая «подписьки»);
— хохляцкий DipTrace (трофейный);
— KiCAD (классика опенсорца, но мне от него блевать хочется);
— LibrePCB (опенсорц, но нетрадиционный);
— Lithium ECAD (отечественный импортозамещенный «дешевый CAD»).

Какой из этих вариантов позволит проявить максимальное неуважение к «потребителю»?

Во-вторых — смотрю я на CAD’ы «попроще» — ну вот тот же Eagle с DipTrace, и сдается мне, что «за деньги» в этом сегменте существовать невозможно. У меня не вызывает вообще никаких сомнений то, что Lithium ECAD в перспективе пары-тройки лет сдохнет — пользователь такой херни денег платить не намерен, «радиолюбители» у нас необычайно прижимисты (собственно, зайдите, почитайте комментарии в группе техподдержки в контакте). «Вкладываться» в его изучение, рисование собственных библиотек и так далее — путь в никуда. При этом я почему-то уверен, что существующий на «гранты» LibrePCB переживет многих, пусть и даже в состоянии «вечной беты». Вот отсюда — второй вопрос — а какие механизмы позволяют в условной Европе раздавать деньги не на ебаный стыд, а на полезные проекты?

Тоталитаризм подкрался незаметно

Как известно, тоталитарный режим определяется цитатой Муссолини: Tutto nello Stato, niente al di fuori dello Stato, nulla contro lo Stato — «Всё в рамках государства, ничего вне государства, ничего против государства» — вот и сейчас читаю чисто отраслевой сайтик про пассивные электронные компоненты (всякие там резисторы-конденсаторы), а там между делом клеймят позором фашистов из AfD:

One issue that is not good for anyone, says Steinberger, is the increasing radicalization on the right-wing fringes of society, right through to the center: “It is time for us as an industry to take a much stronger stand against anti-human and anti-democratic tendencies in society. They damage society, the economy and Germany’s reputation as a cosmopolitan country.” Michael Huether of the Institut der deutschen Wirtschaft (IW) estimates the damage caused by the ‘audacious’ economic plans of the AFD and its allies at 500 billion euros in losses and 2.2 million jobs, not to mention the social upheaval.

https://passive-components.eu/fbdi-pesimistic-about-2024-german-components-distribution-market/

Чувствую, скоро в рамках ESG введут пятиминутки ненависти и прочие атрибуты карикатурных диктаторских режимов из антиутопий и комедийных фильмов 60-х.

Про трафареты и Silhouette Portrait

Немного тут занялся нарезкой трафаретов для паяльной пасты на плоттере Silhouette Portrait, этап с экспортом DXF в штатную программу Silhouette Studio прошел быстро и мне не понравился — так как Silhouette Studio понимает в этом формате только полилинии, экспорт из «обычных» CAD’ов для электроники оказался слегка неприспособлен для этого, приходилось дополнительно редактировать эти файлы — так что я быстренько перешел к применению gerber2graphtec:

https://github.com/pmonta/gerber2graphtec

Собственно, это уже давно не новость, самой утилите уже 12 лет, упоминаниям в рунете — не меньше 7, более того, даже в ACM про организацию кустарной мастерской с такой хренью писали. Естественно, держать хотя бы и виртуалку с линуксом для этой задачи мне показалось лишним, поэтому я творчески совместил руководства по применению скрипта gerber2graphtec в WSL — с выводом в файл, и запуск file2graphtec уже в Windows (к сожалению, WSL не видит подключенные по USB устройства). Один из необходимых на этом пути шагов — это замена драйверов с помощью известной утилиты Zadig — ну и в принципе оно работало, пока я не подумал — а ведь устройство endpoint’ов у плоттера — почти такое же, как и у USB-CDC, то бишь виртуального COM-порта! А почему бы не поставить этот драйвер с помощью Zadig принудительно?

И что самое интересное — оно заработало! После такой замены плоттер распознается в Windows, как «еще один» COM-порт, и при этом его можно использовать в WSL «штатными средствами», как устройство с именем /dev/ttySn, где n — номер COM-порта.

В итоге стало возможно прямиком из WSL запускать команды вроде

./gerber2graphtec --media_size 8.5,11 --offset 0.5,0.5 file.gbr > /dev/ttyS5

а с заранее подготовленным файлом с graphtec’овскими командами — использовать банальный cat вместо «отдельного» file2graphtec.

PS Понадобилось внести еще пару изменений в gerber2graphtec — но пока не могу понять, с чем они на самом деле связаны.

Кошмар монтажника

В одном устройстве (ну вы уже знаете, в каком) одновременно используются контроллер PoE TPS2376 и операционный усилитель OPA2376. Найдите 10 отличий, а также — что не даст монтажнику перепутать такие разные чипы (картинки кликабельны)?

PS Всерьез подумываю о том, чтобы поставить где-то в схеме 1-wire EEPROM в корпусе SOT-323, подписать в шелкографии Q1488, а дорожку от неиспользуемого вывода задействовать в аналоговой части схемы, как паразитную емкость.

Про массовое производство

Не очень умные хохлы смеются над сделанным в лучших традициях «военки» блоком управления УМПК — моднейшей российской корректируемой авиабомбы. Не отрицая того, что вот эти жгутики с кембриками и разъемы DB-9 — чудовищный пример антитехнологичности, скажу просто — молитесь, чтобы начинку УМПК не начали делать по технологиям, скажем, автоэлектроники — девайс существенно проще, скажем, автомобильного ЭБУ, так что собирать их по несколько сотен в час можно без особого труда:

А тех, кто топит за жгутики и кембрики, в Прекрасной России Будущего отправят в исправительно-трудовые лагеря, на строительство заводов по производству современных разъемов (хотя вот отечественный Ethernet показывали, КРОСИВОЕ).

Embedded, мать его

Как это, руководить проектом (пусть даже студенческим) по разработке мелкого устройства на микроконтроллере? Да очень просто:

— вчера ты шутишь про «быстрые китайские чопперы» (не мотоциклы);
— сегодня — разбираешься в нюансах работы gdbserver поверх TCP;
— завтра — еще какая-нибудь ебала вылезет.

Впрочем, now it’s official — удалось прикрутить к Blackmagic Debug Probe поддержку TCP, причем нормально, а не как в ctxLink:

Дальше в планах — дальше допиливать обещанный как-то в комментах «отладчик с мониторингом энергопотребления для устройств Интернета вещей, … сочетающий в себе свойства Segger J-Link Pro, Blackmagic Debug Probe и Unwired Devices Energymon». Скорее всего, даже заопенсорсим устройство (прошивку уж точно) — хотя есть у меня обоснованные сомнения касательно всякого Open-source hardware.

Ну и в качестве развлечения — быстрый китайский чоппер (на этот раз мотоцикл):

Про матриархат

Вот кстати, вспомнил, что отладчик со счетчиком энергопотребления Energymon (у меня тут на столе две штуки валяются) по масштабу идеально подходит, как электросчетчик в домик Барби (рост куклы — около 30 см, то есть масштаб 1:6; Energymon, увеличенный в 6 раз, имел бы размеры 222*300 мм — в общем, вполне себе похоже на небольшой электрощиток). Подумал, что из этого можно было бы сделать забавную фотосессию, и если с домиками для Барби и самими Барби проблем нет — то найти Кена-электрика или разнорабочего не представляется возможным.

Нет, Барби бывают всякие, есть даже инженер-робототехник — но вот Кены в основном занимаются тунеядством и ходят в модных шмотках. Нет, не так выглядит матриархат, совсем не так!

Или это специально сделали, чтобы детишки не играли в ролевую игру по мотивам немецких фильмов «пришел электрик»? Впрочем, в рамках инклюзивности все равно нужны Кены в варианте чернорабочего, скуфа с пивным пузом и подзаборного алкаша.

А кто-нибудь у нас в американском патентном праве разбирается?

Не могу понять, как у них работает приоритет — вот, допустим, есть американский патент с filing date в августе 2019 года, при этом в качестве priority date указана дата ровно за год до этого, а именно август 2018. При этом я знаю российский девайс, почти полностью описываемый claim’ом этого патента, но выпущенный в январе 2019 («знаю» вплоть до «лично ручкался с автором, держал в руках и даже срисовывал некоторые интересные места схемы»). Собственно, вопрос: может ли этот российский прибор выступать в качестве prior art, которое было по понятным причинам неизвестно американскому заявителю, но при этом патент «обнуляет»? Или наоборот, американцы будут орать, что русские у них все спиздили и должны много $$$?

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

PS/2 Если юридической дулей дело не ограничится, придется отправлять устройство в Штаты своим ходом в составе какого-нибудь изделия.

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

Вот, допустим есть у Texas Instruments операционник OPAx376 (разработки бывшего Burr-Brown) — очень даже неплохой, и за долгие годы (17 лет уже как выпускается, скоро совершеннолетие отметим) много где примененный. Как на такую популярность должен отреагировать китайский производитель микроэлектроники? Да очень просто — взять и выпустить свой компонент с таким же названием! Некоторые скромничают, мнутся где-то в уголке, и даже если их деталька по каким-то параметрам похожа на «оригинал» — все равно припишут лишнюю буковку в обозначение, за что их обосрут на хабре:

https://habr.com/ru/articles/721750/

Другие же ничего не стесняются, спиливают напильником маркировку с какого-то говна и продают свои поделия под тем же названием, что и TI:

https://datasheet.lcsc.com/lcsc/2308021730_Tokmas-OPA2376_C7470935.pdf

Отдельно оцените шакалистость графиков в даташите и степень близости параметров этого поделия к «настоящему» OPA376. А теперь представьте, что любой более-менее популярный компонент обладает ну этак десятком подобных «однофамильцев» (слово «клон» тут даже близко не описывает ситуацию), выпускающихся сразу кучей китайских производителей (часть из них сразу пишет «мы только корпусируем микросхемы» — вот как тот же HGSemi). В общем, покупать на алиэкспрессе радиодетали — это теперь та еще лотерея, никто не обещает, что это будет «настоящий» TI, а не его подобие.

Хотя вот HGSemi написали в даташите (другом) совершенно честно — если вам нужны детали категорий military и aerospace — это не к нам, обращайтесь на Техасский Инструментальный.