В принципе, они делаются "на рассыпухе". Если в хозяйстве есть столько необходимых дискретных элементов, то можно собрать на них. Обратите внимание на схеме на D2, C5 и C8, когда речь пойдет о питании контроллера, мы вспомним о них.
Так как у меня не набралось и пришлось бы покупать, причем брать количество, значительно превышающее мои потребности, то я решил купить готовые микросхемы IR2104S. Именно в SMD исполнении. Они стоят дешевле своих DIP "собратьев" и плата получается компактнее, за счет двустороннего расположения элементов.
Более того, если вы имеете лишь поверхностные знания в электронике, то сборка и отладка схемы "на рассыпухе" может закончится неудачей.
С чипом подобным IR2104S вероятность успеха значительно выше. Есть целая линейка подобных драйверов IR21xx. Они отличаются сигналами управления, задержками вроде deadtime и мощностью нагрузки. Вы можете выбрать любой из них. Я же остановился на этом, потому что он был в схеме контроллера, которая показалась мне оптимальной для первоначального повторения.
Сама микросхема, в отличие, от дискретной схемы имеет дополнительные "плюшки".
Схема ниже взята из импортной статьи про BLDC контроллер на Arduino. Полная схема есть в описании процессора.
Резистор в цепи затвора устанавливают для уменьшения зарядного тока, чтобы иметь больше контроля над скоростью переключения. Это делает переключение медленнее, чем могло бы быть, но помогает контролировать электромагнитные помехи и звон затвора.
После трассировки платы я обратил внимание на то, так выглядит силовая часть китайского контроллера. Там выходные MOSFET'ы стоят в ином порядке нежели у меня (верхнее и нижнее плечо в другой последовательности). Это упрощает трассировку линий питания всех 3-х полумостов, но так как у меня отдельные модули - оставлю так.
Это прототип. Тут есть еще над чем поработать. Важно было протестировать систему в целом.
Обратите внимание - на плате силовая и сигнальная "земля" не соединены. Это сделано для подключения шунта для измерения потребляемого тока мотором во время работы. В перспективе - для ваттметра. Для этого дополнительно измеряется напряжение на батарее и этот замер так же используется для обнаружения напряжения отсечки (cut-off voltage).
Далее драйверы крепятся на радиаторы, к ним присоединяются питание, мотор и процессор. Как это работает можно увидеть на видео:
На первом тесте я прикрутил их к картонке, так как самодельный мотор не очень мощный, да и радиатор я тогда еще "не придумал".
Потом на глаза мне попался алюминиевый профиль от кухонной "шуфлядки" и проект сдвинулся с места. Отпилив нужный кусок, я использовал его как общий радиатор для драйверов.
Полумосты электрически соединены пайкой с помощью жил из ШBBП 2x0,75 (силовая часть), которые дополнительно изолированы кембриками из стеклоткани. Коммутация слаботочной части произведена монтажными проводами. С процессором (Arduino Nano) драйверы соединены стандартными проводами-перемычками Dupont. Для прототипа приемлемо.
А вот механическое соединение с радиатором - это целая эпопея.
Одни только втулки изолирующие для крепления MOSFET'ов чего стоят!
Про большой китайский сайт я ничего не знаю, интернетом пользоваться не умею и, кроме импортозамещения, ничем не занимаюсь.